Цитата:
joker99:
Во первых маршалинг не настолько ударяет по производительности, во вторых в 99% случаев он не нужен. Всё есть во framework.
|
Скорее наоборот. Далеко не все есть в framework В 99% придется смириться с маршалиннгом. Он нужен. Никуда от него не денешься. Почти всегда при вызове API передаются параметры и получаются возвращаемые значения. И "ударяет" по производительности он достаточно сильно. Может быть не совсем правильная аналогия но можно сравнить с COM серверами inproc и outproc. Помоему это вполне очевидно и всем известно что outproc сервер работает на порядок медленнее именно из-за маршаллинга. Это вполне очевидные вещи, тут даже спорить не очём. Производительносить не самая сильная стороня C# особенно в связке с нативным кодом. На мой взгляд, реально C# имеет два серьезных преимущества - относительную быстроту и простоту разработки сложного GUI и пожалуй remoting. Все остальное так-же быстро( а иногда и и быстрее) можно написать на любом другом языке. Кроме того не стоит забывать что C++ достаточно универсальный язык, на нем можно написать все что угодно, а на C# - нет. Хотя не буду спорить, для прикладного програмирования C# - один из лучших языков.