C# и .NET или куда мы идем

Тема в разделе "WASM.HEAP", создана пользователем sivsoft, 26 ноя 2010.

  1. sivsoft

    sivsoft New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2008
    Сообщения:
    82
    Доброго времени суток!
    Microsoft выпускает данную среду уже 9 лет. За это время значительно подросли мощности компьютеров, выросло новое поколение программистов, однако основные проблемы C# и среды .NET никуда не исчезли. Я честно пытался перейти на эту среду, накупил себе книжек от создателей и экспертов, в которых они уверяли, что все быстро работает, С отдыхает и т.д. Но тормознутость, мешок с библиотеками, который надо носить с собой и некоторые "костыли" для простейших функций сильно напрягали. Думал одно время, что может уж для совсем быстрой разработки он подойдет, но для меня лично быстрее написать в C++ Builder'e со всеми его недостатками, чем в тормозной 2010 студии на .NET.
    И вот я попытался задуматься что же такого нового несет в себе C# и среда .NET, какие у них супер преимущества перед "старыми" языками. Беру открываю сайт с преимуществами - вот список:
    По пунктам:
    1. Ничего нового - еще Simula 67 был объектно-ориентированным. С++ вобрал в себя лучшее из него, а именно идеи ООП, но реализовал так, чтобы от C по быстродействию практически не отличаться.
    2. Согласен - библиотека удобна.
    3. Это даже недостаток - зачем разводить сотни языков ничем по сути после компиляции не отличающихся друг от друга. А взаимодействовать... не знаю возможности и у старых языков хватает.
    4. Сомнительная реклама.
    5. Тоже что и выше.
    6. Гм... даже не знаю, зачем опять костыли делать?
    7. Интересно.
    8. Очередная реклама.
    9. Спасибо - смотрим пункт 1.
    Я бы добавил бы сюда еще и пункт 10, а именно:
    10. Сборка мусора. Интересно, что идея опять не нова и все из той же симулы. Страуструп тогда отказался от сборки мусора из-за существенных тормозов. Сейчас по сути мало что изменилось. Поможет разве что неряшливым и ленивым программистам, которые никак не хотят уничтожать свои объекты.
    Итак, по сути интересна только библиотека. Но что мешает подобную библиотеку добавить для C++. Ничего...
    Грустно, что сейчас появилось множество молодых C# программеров, которые влюблены в очередное монстроидное детище Microsoft. И ладно бы развитие этого языка и среды было свободным, но нет корпорация его меняет как ей вздумается.
    Хотелось бы услышать мнение уважаемых форумчан по поводу среды .NET и вообще будущего языков программирования.
     
  2. CrystalMS

    CrystalMS New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    51
    Ой да ладно грустно, холиварщик вы мой. Раньше и деревья были выше и воздух свежее. Как в 90х спорили - кто победит ООП или структурное программирование? А ни то ни другое - победили языки с автоматическим управлением памятью. Мейнстрим и так далее. Быдло довольно. Небыдло т.е. продвинутое быдло тоже довольно. Остальные потирают руки. Топег можно закрывать, а топег аффтара в бан.
     
  3. KIV

    KIV Member

    Публикаций:
    0
    Регистрация:
    16 июл 2009
    Сообщения:
    231
    ИМХО, единственный смысл компилировать программу не сразу в нативный код - кросс-платформенность без перекомпиляции. Больше не для чего байт-код не нужен, а даже наоборот вреден (работает медленее, необходима среда исполнения .NET). .NET не использует это преимущество (Mono не в счёт - это не продукт MS. к тому же в .NET легко можно достучаться до WinAPI, что для кросс-платформенных технологий должно быть не возможно). А большую библиотеку классов можно и на С++ написать. Никто не запрещает компилировать с помощью компиляторов разных языков объектные файлы, а потом линковать их вместе. Для Web есть PHP и Java. Так что моё мнение - .NET не нужен.
     
  4. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    .NET правильная и перспективная технология. Объяснять и доказывать тут что-то бессмысленно, кто знает - тот знает, а кто не знает тому значит и не надо.

    Может быть ЛЛВМ будет лучше, но этого еще дождаться надо.

    ---
    Также хочу отметить, что перед тем как что-то критиковать, надо узнать как и почему оно так сделано.
    Алсо предвижу разговоры о "тормозах виртуальной машины дотНет" и прочий бред.
     
  5. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    GoldFinch
    как? и почему?

    а разве оно не соответствует истине?

    ---------------------------------
    предвидится холивар.
    поклонники современного визуал бэйсика бкдкт доказывать тоже, что и 10 лет назад старые поклонники визуал бэйсика. приводить беспочвенные утверждения о скорости и компактности и переносимости. я не смогу удержаться. итд итп.

    очень прошу админов и модеров дропнуть этот топик
     
  6. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    GoldFinch
    Итого: написано четыре строки, в которых лишь ветер. Стоило тратить время своё и чужое?
     
  7. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    qqwe
    Тренируй характер)
     
  8. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Ага, а теперь Страуструп чего-то вдруг захотел сборку, ну может не по дефолту, а опционалом, но всё же. Насчёт тормозов сборщика, это мягко говоря не соответствует истине. Насчёт неряшливости, ну да человеку свойственно ошибаться. Вам нет? Вы не человек? С# это вообще ни о чём, так плагин к студии. Кстати С# даст много очков С++, как раз по причине что нет такого долго размусоливания со стандартном.
     
  9. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    qqwe
    Надо в каждой теме, делать кнопу "Abuse".
    Чтобы когда определённое кол-во людей нажмёт на неё топ закрывался...
    =D
     
  10. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    С++ как писал Страуструп это промежуточный язык к более человеческим. Вот майкрософт и решила сделать человеческую платформу.

    Необходимость этого проистекает из недостатка IL. Java платформа не поддерживает много языков, что плохо.
     
  11. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2008
    Сообщения:
    933
    Я не хочу спорить, просто общие соображения.

    В данном случае - в очередной раз - инициатором "передовой" технологии выступает одна отдельная (пусть с очень большим штатом и Стиви Джобсом и множеством индусов) коммерческая конторая с закрытым кодом. Интуитивно понятно что открытый международный проект (как принято в Науке) в среднем мог бы дать намного более обоснованное и универсальное решение нежели очередной выползок от (с)коммерсантов пытающихся "подмять" рынок.

    К тому же от этой "среды" за милю воняет его основным "предназначением" - максимально облегчить напейсание кода - но не конечное качество продукта! Быстрее скомпелять и продать бэта версию а потом сидеть и ждать багрепортов и править баги (но и считать прибыль!) - вот философия манагеров которые на самом деле прародители этого проекта - а вовсе не какие-то там разработчики или лидинг программерз - программеров там просто наняли чтобы как-нибудь реализовать именно эту идею.

    Да, и скажите мне чего они опять не натырили из других языков/etc? Что принципиально нового они предложили?
     
  12. sivsoft

    sivsoft New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2008
    Сообщения:
    82
    CrystalMS
    холивар не развожу, просто хотелось бы конструктивных замечаний по существу вопроса и все.
    GoldFinch
    а поконкретнее...?
    PSR1257
    согласен, кстати тоже было и с продажами и других продуктов.
    Booster
    1. Если не сложно где писал - я просто честно говоря не помню этого высказывания. уточню я не спорю - просто интересно самому еще раз посмотреть...
    2. И что плохого в том что Java не поддерживает много языков?
    3. по сборке мусора приведу цитату из вики:
    4. еще по сборке мусора - страуструп вроде просто хотел посмотреть как будет это работать и все и тогда в стандарте добавить возможность использовать сборку мусора. В новом стандарте C++0x этой возможности вроде нет.
    KIVсогласен. вообще-то реальной кроссплатформенности пока не видно.
     
  13. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    sivsoft
    берется либа сборщика мусора (http://www.hpl.hp.com/personal/Hans_Boehm/gc/) и переопределяется new, если в либе нет хидера с этой манипуляцией (include\gc_cpp.h). делов на 2 строчки. а, ну и деструктор цепляется.
    зачем для этого кругом повторять о стандарте или языке без которого.. итд.

    да и одноплатформенности тоже.

    -------------------------------------------------
    глушим. до добра этот топик не доведет
     
  14. sivsoft

    sivsoft New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2008
    Сообщения:
    82
    qqwe
    все правильно. об этом и написал - там цитата за либу.
     
  15. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    .Net и с C++ работает прекрасно, хорошая перспективная сборка для быстрого программирования.
    Программирование не заканчивается на низкоуровности и ассемблере. Для определенных задач очень даже подходит.
    Скорость: компиляция может происходить при запуске приложения. Причем может компилироваться на каждый машине под ее проц c учетом его возможностей [sse,mmx].
    Как по мне так для Гуя самое оно.
    Билдеры я бы сжог вместе с исходниками.
     
  16. Nafanya

    Nafanya Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    581
    <<Билдеры я бы сжог вместе с исходниками.
    Тоже душа к Билдерам никогда не лежала. Visual Studio, KDevelop, QNX Momentics - нормальные среды для разработки на Си++. Под всеми тремя разрабатывал, был очень доволен(особенно впечатлило когда Студия при отладке раскрутила сложный объект, внутри которого списки,вектора и показывала на каждом шаге их содержимое. Momentics так не может, только первый и последний элемент списка.).

    Может конечно и есть что-то новое, чего я не пробовал, и что лучше, но сильно сомневаюсь.
     
  17. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    Особенно нравится тэги #pragma managed и #pragma unmanaged в одном проекте где GUI на .net и логика на С/++/asm
     
  18. Nafanya

    Nafanya Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    581
    #pragma - директива препроцессора. Тэги в html же, или как?
     
  19. punxer

    punxer Андрей

    Публикаций:
    0
    Регистрация:
    16 окт 2006
    Сообщения:
    1.327
    Адрес:
    Ржев
    Nafanya
    ну так назвал просто. Твоя правда
     
  20. Blackbeam

    Blackbeam New Member

    Публикаций:
    0
    Регистрация:
    28 дек 2008
    Сообщения:
    960
    мёрд вашь нет
    лондонская биржа пошла даже на то чтобы остановить торги чтобы уйти с этого отстойно-глючного тормоза