Re[47]: benchmark
От: lpd Черногория  
Дата: 14.01.17 15:50
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Здравствуйте, lpd, Вы писали:


lpd>>Более значительным преимуществом является безопасность кода по сравнению с C, однако эту проблему можно решить и без байткода.


_>Эээ что? Как вообще пересекается безопасность и байт-код? Ты вообще о чём? )


В Java/C# не может быть ошибки переполнения буфера, которая встречается в коде на C.

_>Ну и если тебе всё же не интересно читать, а ты хочешь сам додумываться до правильных ответов, то могу дать один простой совет по данному вопросу. Попробуй взглянуть на ситуацию не глазами программиста, а глазами владельца бизнеса (которому надо решить конкретную задачу минимальным вложением денег).


Вот причины меньших затрат бизнеса при использовании C# я и анализирую. И думаю, что дело не только круге знаний программистов.

lpd>>Хотя идея перенести часть процесса компиляции в рантайм или на этап инсталляции интересна. Однако портабельность сужает круг задача, которые код может решить.


_>Все проблемы портабельности обычно связаны с ОС и т.п., а не с архитектурой процессора. )))


lpd>>А портабельность как раз больше нужна в embedded системах.


_>Ээээ что? )


Я имею ввиду портабельность не банально между Windows и Linux, а возможность скомпилировать какую-то библиотеку для embedded системы(например, сжатие, обработку или распознавание видео). C++ код, как известно, по большей части процессоро-независим.

Итого: причинами популярности C#/Java ты называешь портабельность и большую сложность C++. К этому списку я бы добавил наличие проработанных фреймворков веб-приложений. Единственное принципиальное преимущество байт-кода в этом списке — только переносимость между разными ОС. Однако C++ код тоже может быть переносимым при перекомпиляции. У нас по сути всего 2 ОС, поэтому отсутствие перекомпиляции — не столь большое преимущество. Возникает вопрос(единственный существенный в данном случае), стоит ли ради этого вносить промежуточный уровень байткода между бинарником и исполнением программы? Именно к этому вопросу, как я считаю, выбор между C#/Java и C++ и сводится.
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.