История изменений
Исправление grim, (текущая версия) :
И да: пишется один раз, работает мильён раз. Поэтому скорость работы в мильён раз существеннее.
все относительно.
Если мы говорим о критическом приложении где учитываются микросекунды или используем критические ресурсы - то да, С++ предпочтительнее.
Но представим проект разрабатываемый год коммандой из 10 человек на C#
При годовой зарплате $90k только на программистов уйдёт $900k
Если разработка проекта на C++ потребует на 50% больше времени, то проект будет дороже на $450k
Очевидно в данной ситуации проще потратить лишние $10k или даже лишние $100k на железо и запустить проект на пол года раньше.
Не факт что разработка на С++ потребует больше времени, особенно при квалифицированной команде, но это уже устоявшаяся пролема - востребованность к количеству разработок растёт а количество людей со способностями к программированию нет.
Поэтому и изобрели ту-же Java и так возлюбили в энтерпрайзе, что появилась возможность утилизировать человеческую массу не способную нормально писать на С++
С другой стороны возможности C# особенно linq, Async и plinq реально ускоряют разработку.
Простой пример:
Нужно написать программу сравнивающую два ~150mb XML файла
Я решил писать на C#, на что коллега - Java фанатик посмеялся и сказал что он напишет быстрее меня и боле быструю программу на Java а пока запустит професиональную тулзу - XmlSpy
Сделал на С# linq2xml за пол дня, программа сравнивала примерно за 10 мин.
XMLSpy продолжал считать а колега колдырить на Java.
После небольшой оптимизации время сравнения уменьшилось до 20 секунд.
Через 2 дня коллега пристрелил XmlSpy а через 3 дня перестал отвечать на вопросы, когда же я увижу его шуструю программу.
Исходная версия grim, :
И да: пишется один раз, работает мильён раз. Поэтому скорость работы в мильён раз существеннее.
все относительно.
Если мы говорим о критическом приложении где учитываются микросекунды или используем критические ресурсы - то да, С++ предпочтительнее.
Но представим проект разрабатываемый год коммандой из 10 человек на C#
При годовой зарплате $90k только на программистов уйдёт $900k
Если разработка проекта на C++ потребует на 50% больше времени, то проект будет дороже на $450k
Очевидно в данной ситуации проще потратить лишние $10k или даже лишние $100k на железо и запустить проект на пол года раньше.
Не факт что разработка на С++ потребует больше времени, особенно при квалифицированной команде, но это уже устоявшаяся пролема - востребованность к количеству разработок растёт а количество людей со способностями к программированию нет.
Поэтому и изобрели ту-же Java и так возлюбили в энтерпрайзе, что появилась возможность утилизировать человеческую массу не способную нормально писать на С++
С другой стороны возможности C# особенно linq, Async и plinq реально ускоряют разработку.
Простой пример:
Нужно написать программу сравнивающую два ~150mb XML файла
Решил писать на C#, на что коллега - Java фанатик посмеялся и сказал что он напишет быстрее меня и боле быструю программу на Java а пока запустит професиональную тулзу - XmlSpy
Сделал на С# linq2xml за пол дня, программа сравнивала примерно за 10 мин.
XMLSpy продолжал считать а колега колдырить на Java.
После небольшой оптимизации время сравнения уменьшилось до 20 секунд.
Через 2 дня коллега пристрелил XmlSpy а через 3 дня перестал отвечать на вопросы, когда же я увижу его шуструю программу.