veronica b
Цитата:
Не показательно. Значит программа была написана именно на С без использования всех особенностей С++ - шаблонов, исключений и т.д. Я имел в виду именно это.
Qraizer
Цитата:
Ну во-первых, не folk, а fork. В английском это слово означает ветвление, что, кстати, хорошо отражает его значение. ИМХО эта функция API UNIX как раз и является той изюминкой, которую "забыли" перенести в винды увлекшись многопоточностью. Мне этот (не скажу какой) createProcess кучу крови испортил, когда для связи двух процессов по каналу приходилось писать строк 150-200 очень не очевидного кода.
Согласен, что в UNIX набор вызовов ОС очень мнемоничен, но через некоторое время (после изучения определенного набора вызовов) это перестает мешать. В то же время на UNIX набор вызовов гораздо лучше систематизирован, в отличие от виндов. Но это уже совсем другая тема.
Собственно из своего опыта я и пытался понять, чем же так "хорош" WinAPI. Я, как человек испорченный UNIX, никак не могу этого понять. Не, что API есть и он достаточно полон - нет вопросов, но вот его состав...
Цитата:
Мне раз пришлось программу, написанную на С++ перевести на Си. Были только классы, которые я заменил на структуры. Программа на Си работала примерно на 5% быстрее чем Си с плюсами. Иногда, редко, но эти прценты бывают критичны!
Не показательно. Значит программа была написана именно на С без использования всех особенностей С++ - шаблонов, исключений и т.д. Я имел в виду именно это.
Qraizer
Цитата:
Если не чувствуешь, что чего-то не хватает, и удобен в использовании, то просто "хорош" подходящий термин. "В сравнении с..." потоками, объектами синхронизации, API безопасности, названия функций и структур (folk() мне лично ничего не говорит, а CreateProcess() в документировании ИМХО вообще не нуждается)
Ну во-первых, не folk, а fork. В английском это слово означает ветвление, что, кстати, хорошо отражает его значение. ИМХО эта функция API UNIX как раз и является той изюминкой, которую "забыли" перенести в винды увлекшись многопоточностью. Мне этот (не скажу какой) createProcess кучу крови испортил, когда для связи двух процессов по каналу приходилось писать строк 150-200 очень не очевидного кода.
Согласен, что в UNIX набор вызовов ОС очень мнемоничен, но через некоторое время (после изучения определенного набора вызовов) это перестает мешать. В то же время на UNIX набор вызовов гораздо лучше систематизирован, в отличие от виндов. Но это уже совсем другая тема.
Собственно из своего опыта я и пытался понять, чем же так "хорош" WinAPI. Я, как человек испорченный UNIX, никак не могу этого понять. Не, что API есть и он достаточно полон - нет вопросов, но вот его состав...