Здравствуйте, RI, Вы писали:
RI>Вот я смотрю сейчас наступает .NET, C#, etc.
А до этого наступали Java, Delphi, VB etc.
А потом будут наступать .DA, R# etc
RI>Есть конечно MC++, но что-то не многие на нем пишут.
Потому что с точки зрения C++ это уродство, а с точки зрения C# убожество. И никому он не угодил.
RI>Или я ошибаюсь? И вообще для каких платформ и на каких компиляторах C++ Вы разрабатываете программы?
Пишу на Visual C++ 7.1 для Windows
RI>Есть ли у C++ перспективы? Какие?
Перспективы есть по той простой причине, что некоторые вещи просто удобнее и дешевле писать на Си++.
Перспективы есть потому что на Си++ есть куча кода, который не стоит выкидывать на свалку из-за пропаганды .Net или ещё чего-то.
Вне области применения сказать труднее.
Здравствуйте, RI, Вы писали:
RI>Вот я смотрю сейчас наступает .NET, C#, etc.
RI>Есть конечно MC++, но что-то не многие на нем пишут.
RI>Или я ошибаюсь? И вообще для каких платформ и на каких компиляторах C++ Вы разрабатываете программы?
RI>Есть ли у C++ перспективы? Какие?
Я пишу на C++ 7.1 для MS Visual Studio 2003. Думаю — что переспективы у C++ есть — хотя бы потому — что сейчас это ещё основной язык и обучено огромное количество программистов — для которых, в силу костности мышления C++ ещё долго будет основным языком, даже там — где эффективнее другие языки...
Другая — причём весьма существенная причина — C++ можно применять там, где языки, подобные языкам Java или языкам семейства .NET — не применимы в принципе. Например при написании кода ОС или драйверов или в ОС реального времени. Дело в том, что как уже обсуждалось неоднократно — языки нового поколения, такие как C# — для работы своих программ требуют Framework (среду исполнения). Что в некоторых областях — как для низкоуровневых драйверов, например, недопустимо.
Однако очевидно, что в большинстве коммерческих проектов — доля языков нового поколения (C# и остальные языки .NET, J2EE...) — будет возрастать (как и спрос на программитсов на этих языках), а доля традиционных языков (C++, Pascal, Delphi, Visual Basic, C) — падать. Так как в большинстве коммерческих проектов — автоматизируются бизнес процессы или решаются задачи довольно высокого уровня (такие как построение Web сайта с базой данных), то для них языки нового поколения гораздо удобнее и пригодны лучше, что и приведёт к вытеснению ими традиционных языков.
RI>Или я ошибаюсь? И вообще для каких платформ и на каких компиляторах C++ Вы разрабатываете программы?
Windows — VC++ 6.0, VC++ 7.1
Linux, FreeBSD, Mac OS X — gcc
AIX — cc (IBM'овский компилятор)
Solaris — Sun Workshop
HP-UX — не помню какой компилятор.
RI>Есть ли у C++ перспективы? Какие?
C++ будет жить пока будут задачи для которых он более пригоден, чем другие языки, и еще долгое время после этого — пока будет поддерживаться софт, на нем написанный (вспомни Cobol).
А по большому счету — какая разница на каким языком пользоваться.
Главное чтобы программа решала какую-нибудь проблему у клиента, делала ему жизнь легче.
Здравствуйте, VladD2, Вы писали:
A>>VladD2 много раз обещал что на .Net скоро можно будет писать драйвера На R# наверное точно можно будет VD>И сможешь ссылку (ну, хоть одну) привести?
A>Или я что-то не понимаю и на Нете в будущем (с приходом LongHorn?) можно будет и драйвера клепать?
Потенциально нет особых проблем встроить джит и ЖЦ в ядро. Это будет даже надежнее. Но на данном этапе развитя вряд ли это имеет смысл.
Однако похоже не за горами времена когда разница в менеджед и анменеджед коде начнет стераться. Новые компиляторы МС будут строиться на базе единого АПИ
Здравствуйте, AndreyFedotov, Вы писали:
RI>>Есть ли у C++ перспективы? Какие?
AF> Другая — причём весьма существенная причина — C++ можно применять там, где языки, подобные языкам Java или языкам семейства .NET — не применимы в принципе. Например при написании кода ОС или драйверов или в ОС реального времени. Дело в том, что как уже обсуждалось неоднократно — языки нового поколения, такие как C# — для работы своих программ требуют Framework (среду исполнения). Что в некоторых областях — как для низкоуровневых драйверов, например, недопустимо.
Сейчас пишем IP телефонию на C++. Естестественно звук в Realtime не помикшируешь на Java. Кроме того есть сервер бизнес логики тоже на C++ — вот его бы я на какой нибудь Java переписал бы. Потому как сейчас падает иногда — не все в отделе C++ зубры. Да и следить параноидально за памятью и указателями напрягает иногда — но видимо не судьба уже.
AF> Однако очевидно, что в большинстве коммерческих проектов — доля языков нового поколения (C# и остальные языки .NET, J2EE...) — будет возрастать (как и спрос на программитсов на этих языках), а доля традиционных языков (C++, Pascal, Delphi, Visual Basic, C) — падать. Так как в большинстве коммерческих проектов — автоматизируются бизнес процессы или решаются задачи довольно высокого уровня (такие как построение Web сайта с базой данных), то для них языки нового поколения гораздо удобнее и пригодны лучше, что и приведёт к вытеснению ими традиционных языков.
Угу — просто сейчас большая часть новых приложений это бизнес системы, где realtime не требуется, а вот надежность и возможность применять низкоквалифицированных программеров при внедрении и написании некритичной функциональности очень нужна. На той же Java при правильной архитектуре плохо написанный модуль может плохо сделать только самому себе, а в C++ обычно все оканчивается падением всей системы.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Здравствуйте, RI, Вы писали:
RI>Это я так понимаю с VS.NET 2003 он идет?
Да.
RI>А какие библиотеки используете? Я так понял что MFC, ATL?
Как правило нет, хотя против ATL ничего не имею. С MFC отношения у меня традиционно плохие.
RI>Чем отличается 7.1 от 6.0?
В плане IDE это ИМХО небо и земля. Переход на семёрку оказался праздником.
В плане компилятора значительно лучшая поддержка языка (в основном шаблонов). Более совершенная оптимизация.
Здравствуйте, RI, Вы писали:
RI>Вот я смотрю сейчас наступает .NET, C#, etc.
RI>Есть конечно MC++, но что-то не многие на нем пишут.
RI>Или я ошибаюсь? И вообще для каких платформ и на каких компиляторах C++ Вы разрабатываете программы?
RI>Есть ли у C++ перспективы? Какие?
А на чем пишется soft под мобильные устройства...На плюсах...Перспективы языка огромны.
Кстати и под винды я пишу только на VC++ 7.1.
A>>Или я что-то не понимаю и на Нете в будущем (с приходом LongHorn?) можно будет и драйвера клепать?
A>Потенциально нет особых проблем встроить джит и ЖЦ в ядро. Это будет даже надежнее. Но на данном этапе развитя вряд ли это имеет смысл.
A>Однако похоже не за горами времена когда разница в менеджед и анменеджед коде начнет стераться. Новые компиляторы МС будут строиться на базе единого АПИ
Ну, то есть ты и сам понял, что слова "VlsdD2 много раз обещал что на .Net скоро можно будет писать драйвера" мягко говоря преувеличение?
ЗЫ
Будь осторожнее при ссылке на других.
... << RSDN@Home 1.1.4 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Anatolix, Вы писали:
A>Сейчас пишем IP телефонию на C++. Естестественно звук в Realtime не помикшируешь на Java. Кроме того есть сервер бизнес логики тоже на C++ — вот его бы я на какой нибудь Java переписал бы. Потому как сейчас падает иногда — не все в отделе C++ зубры. Да и следить параноидально за памятью и указателями напрягает иногда — но видимо не судьба уже.
У нас проблемы аналогичны. Есть текущие проекты на C++ из которых часть — работают с аппаратурой и в принципе должны быть реализованы на C++ или другом "традиционном" языке, плюс куча проектов с бизнес-логикой — которую по хорошему надо было бы переделать на C#, но не до того.
AF>> Однако очевидно, что в большинстве коммерческих проектов — доля языков нового поколения (C# и остальные языки .NET, J2EE...) — будет возрастать (как и спрос на программитсов на этих языках), а доля традиционных языков (C++, Pascal, Delphi, Visual Basic, C) — падать. Так как в большинстве коммерческих проектов — автоматизируются бизнес процессы или решаются задачи довольно высокого уровня (такие как построение Web сайта с базой данных), то для них языки нового поколения гораздо удобнее и пригодны лучше, что и приведёт к вытеснению ими традиционных языков.
A>Угу — просто сейчас большая часть новых приложений это бизнес системы, где realtime не требуется, а вот надежность и возможность применять низкоквалифицированных программеров при внедрении и написании некритичной функциональности очень нужна. На той же Java при правильной архитектуре плохо написанный модуль может плохо сделать только самому себе, а в C++ обычно все оканчивается падением всей системы.
Согласен. Но не только в квалификации дело. Когда проект большой или долго длится — то в случае применения хитрых фокусов с памятью (что частенько бывает на C++) — когда люди уходят и приходят, даже профи начинает писать код, который работает криво. Он отличается от новичка лишь тем, что в состоянии рано или поздно разобраться — в чём дело. Но это время и деньги.
Здравствуйте, VladD2, Вы писали:
VD>Ну, то есть ты и сам понял, что слова "VlsdD2 много раз обещал что на .Net скоро можно будет писать драйвера" мягко говоря преувеличение?
Влад, у тебя что, проблемы? Я что сказал, что ты много раз обещал поссать на памятник Энгельсу?