Здравствуйте, Kluev, Вы писали:
K>Автоматическое управление памятью — это фатальный недостаток НЕТ. Программы которые манипулируют одновременно около 100000 обьектами связанными в сеть, писать на НЕТ просто нет смысла.
100000? Я когда грид отлаживал как раз дерево из этго количества строил. Загружается молниеносно.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Sinclair, Вы писали:
S>JIT, Metadata, User-Defined Metadata. Этого в С++ нет и быть не может. Некоторые из моментов поддаются эмуляции. Да и то она выглядит достаточно бледно по сравнению с тем, что есть в .Net. Одна возможность генерации кода на лету открывает совершенно новое измерение гибкости и комфорту.
Ну почему, не может. Никаких принципиальных трудностей реализовать и компиляцию в IL, и генерацию метаданных нет. Да, собственно говоря, а что такое C++/CLI?
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Plutonia Experiment, Вы писали:
VD>Да никто и не спорит, что и С++ и даже С будут жить еще очень долго. Но с каждым годом системы вроде дотнета и явы будут совершенствоваться и вытеснять плюсы из все большего количества ниш.
VD>Рассказы о приемуществах С++ в скорости сильно приувеличены. А со временем этих приемуществ вообще не будет. Если сравнить скорость VC и дотнета (C#) вресий 7.0, 7.1, 8.0, то невооруженным взглядом видно, что разрыв потихоничку сокращается. Да и не так он велик. Без проблем в алгоритмах масимальный проигрыш в 2 раза. Если же учесть простоту и скорость разработки на дотнете, то становится понятно, что проще экономить время и тратить деньги на железо. Ну, а если учесть, что аысвободившееся время можно потратить на оптимизацию алгоритмов...
Например, на алгоритм сортировки. Или на алгоритм сложения 2 и 2.
Здравствуйте, Шахтер, Вы писали:
Ш>Например, на алгоритм сортировки. Или на алгоритм сложения 2 и 2.
В дотнете та же сортировка для структур по умолчанию никуда не годиться. А если она используется в узком месте, то можно ускорить приложение в разы.
Но можно конечно фигней не заниматься. Взять С++ и все начнет летать сама. На фиг алгоритмы, безопастность... Можно же биты двигать...
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[28]: C++ versus C#
От:
Аноним
Дата:
28.02.04 12:48
Оценка:
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, naje, Вы писали:
VD>Так он на Шарп портирован. Ты ведь вроде спрашивал есть ли генераторы на Шарпе. Или ты том же самом на шаблонах?
сам генератор, это уж не такая сапер штука, фишка именно в том же самом
VD>Кстати, вот добьем R# поглядим у кого больше гибкость.
давай вы напишите, а потом смотреть будем
я это время лучше потрачу на оптимизацию алгоритмов
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, VladD2, Вы писали:
VD>>Здравствуйте, naje, Вы писали:
VD>>Так он на Шарп портирован. Ты ведь вроде спрашивал есть ли генераторы на Шарпе. Или ты том же самом на шаблонах? А>сам генератор, это уж не такая сапер штука, фишка именно в том же самом
VD>>Кстати, вот добьем R# поглядим у кого больше гибкость.
А>давай вы напишите, а потом смотреть будем А>я это время лучше потрачу на оптимизацию алгоритмов
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Sergey, Вы писали:
S>>Последний — замечательный пример Чаще не работает, чем работает.
VD>Да уж ННТП у нас еще та бяка.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Kluev, Вы писали:
K>>Автоматическое управление памятью — это фатальный недостаток НЕТ. Программы которые манипулируют одновременно около 100000 обьектами связанными в сеть, писать на НЕТ просто нет смысла.
VD>100000? Я когда грид отлаживал как раз дерево из этго количества строил. Загружается молниеносно.
Загружается всегда молниеносно, Этим никого не озадачишь. Попробуй протестировать постоянно добавляя и удаля узлы из дерева. Самое смешно начнется когда забудешь где нибудь ссылку обнулить. А ведь структуры могут быть очень сложными. ИМХО в задачах где интенсивно используются (перестраиваются) деревья, графы, сети и т.р. сборка мусора является проклятьем.
Здравствуйте, VladD2, Вы писали:
PE>>В виндовских исходниках частенько присутсвует оптимизация в таком и другом виде.
VD>Те коды могли писаться сто лет назад или для платформ гед компилятор вообще оптимизаций не делает. В тестах же где итерации делаются для того чтобы уменьшить погрешность измерения разворот циклов — это нечесный хак.
При чем здесь тесты ? Строковые операции — сравнение, конкатенация, длина и тд очень сильно влияют на производительность прилаги. Так что тут раскручивание цикла имеет смысл.
Процессоры нынче не умееют предсказываться ветвления на 100%. Частичный разворот цикла дает неслабый прирост на маленьких строках, коих большинство.
Здравствуйте, VladD2, Вы писали:
VD>Рассказы о приемуществах С++ в скорости сильно приувеличены. А со временем этих приемуществ вообще не будет. Если сравнить скорость VC и дотнета (C#) вресий 7.0, 7.1, 8.0, то невооруженным взглядом видно, что разрыв потихоничку сокращается. Да и не так он велик. Без проблем в алгоритмах масимальный проигрыш в 2 раза. Если же учесть простоту и скорость разработки на дотнете, то становится понятно, что проще экономить время и тратить деньги на железо. Ну, а если учесть, что аысвободившееся время можно потратить на оптимизацию алгоритмов...
В 2 раза. На плюсах наши алгоритмы работали и от нескольких дней до двух неделью В два раза это от недели до месяца. Очень хороший подход.
Железо реального преимущества не даст. ПО и так дорогое, а с железом его и купить то будет некому. Сколько памяти не ставь — два гигабайта на процесс это мало для дотнета.
Здравствуйте, VladD2, Вы писали:
K>>Автоматическое управление памятью — это фатальный недостаток НЕТ. Программы которые манипулируют одновременно около 100000 обьектами связанными в сеть, писать на НЕТ просто нет смысла.
VD>100000? Я когда грид отлаживал как раз дерево из этго количества строил. Загружается молниеносно.
Из чего загружается ? Попробуй загрузить 100'000 объектов, которые указывают друг на друга, по пять-десять пропертей, из файла.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Plutonia Experiment, Вы писали:
VD>Да никто и не спорит, что и С++ и даже С будут жить еще очень долго. Но с каждым годом системы вроде дотнета и явы будут совершенствоваться и вытеснять плюсы из все большего количества ниш.
Гы. плюсы тоже не стоят на месте. У плюсов нет единой библиотеки на разные случаи жизни. Все приходится по миру собирать. Это основная трудность. Было-бы что-нибудь типа QT нахаляву, тогда народ с плюсов выманить было-бы невозможно. А если появится многие вернутся обратно.
VD>Рассказы о приемуществах С++ в скорости сильно приувеличены. А со временем этих приемуществ вообще не будет.
Будут всегда. Сборка мусора всегда будет тянуть НЕТ на дно. От этого никуда не деться. Может далеть UI на НЕТ-е и просто, но работать со сложными структурами я бы на нем не стал.
VD>Если сравнить скорость VC и дотнета (C#) вресий 7.0, 7.1, 8.0, то невооруженным взглядом видно, что разрыв потихоничку сокращается. Да и не так он велик.
Смотря на чем сравнивать.
VD>Без проблем в алгоритмах масимальный проигрыш в 2 раза. Если же учесть простоту и скорость разработки на дотнете, то становится понятно, что проще экономить время и тратить деньги на железо. Ну, а если учесть, что аысвободившееся время можно потратить на оптимизацию алгоритмов...
Алгоритмы уже проблема. Возьми любую нетривиальную задачу — триангуляция поверхности, разбиение обьема и т.п. То что такие вещи неудобно делать с автоматической сборкой мусора, в языке без адрессной арифметики (или с образаной арифметикой), и без возможностей прочего хака ясно как дважды два четыре.
PE>В 2 раза. На плюсах наши алгоритмы работали и от нескольких дней до двух неделью В два раза это от недели до месяца. Очень хороший подход.
2 — это самый худший случай. К тому же просто уверен, что скорость болеш зависит от качества проработки алгоритмов. За счет упрощения реализации и ускорения ее создания ты можешь потратить лишние деньги на новый сервер(ы), а время на прспараллеливание.
PE>Железо реального преимущества не даст.
Это почему? У вас все до одного вычисления последовательны?
PE> ПО и так дорогое, а с железом его и купить то будет некому. Сколько памяти не ставь — два гигабайта на процесс это мало для дотнета.
С чего ты это взял?
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Kluev, Вы писали:
K>Гы. плюсы тоже не стоят на месте. У плюсов нет единой библиотеки на разные случаи жизни. Все приходится по миру собирать. Это основная трудность. Было-бы что-нибудь типа QT нахаляву, тогда народ с плюсов выманить было-бы невозможно. А если появится многие вернутся обратно.
QT стоит не дорого. И те кто его купили далеки от восторга. С ВинФормс — это точто сравнить нельзя.
VD>>Рассказы о приемуществах С++ в скорости сильно приувеличены. А со временем этих приемуществ вообще не будет.
K>Будут всегда.
Ошибаещся.
K> Сборка мусора всегда будет тянуть НЕТ на дно.
А это ничего, что ЖЦ в Яве работает не медленнее чем стандартные хипы С++?
K> От этого никуда не деться.
Ты алгоритм ЖЦ знаешь? Что в нем может потенциально быть проблемным?
K> Может далеть UI на НЕТ-е и просто, но работать со сложными структурами я бы на нем не стал.
Что есть сложные структуры?
K>Смотря на чем сравнивать.
Да на тех самых повседневных задачах. Именно за них идет бой. А супер навороты для мэйнфрэймов и сейчас на Фортране зачастую делают.
K>Алгоритмы уже проблема. Возьми любую нетривиальную задачу — триангуляция поверхности, разбиение обьема и т.п.
Ну, эти задачи уже давно в акселераторы зашиты. Но все равно потенциально проблем с их рассчетом на менеджед-языках нет.
K> То что такие вещи неудобно делать с автоматической сборкой мусора, в языке без адрессной арифметики (или с образаной арифметикой), и без возможностей прочего хака ясно как дважды два четыре.
А я вот так не считаю. И интересно было бы услышать обоснование последнего утверждения.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.