Неприятные ощущения возникают у меня, когда я читаю о таких вещах как .NET. Очень многие склоняются к тому, что настаёт конец Java и всему что с ней связано от Sun.Источник
Хотя меня эти технологии не касаются, но касается, например, такой язык программирования как С++. Не хочется изучать что-то, чему может в скором времени настать конец, так же не хотелось бы завязываться на такой вариант как MC++. Он расширяет стандарт, умудряясь при этом не поддерживать многие его интересные части (специализация шаблонов, например).
К чему всё это я? Гложет меня сомнение, что в недалёком будущем действительно большие проекты больше не будут выполняться на С++. А мне бы хотелось заниматься именно этим. Посему возник вопрос: есть ли будущее у больших проектов на С++? Есть ли какие-нибудь компаниии, которые занимаются этим и будут заниматься, независимо от желаний Microsoft?
Ведь не всё же будет Web Services, или в этом я ошибаюсь? Если да, то впору
M>Ведь не всё же будет Web Services, или в этом я ошибаюсь? Если да, то впору
разве паникеров вешают ? их расстреливают — хотя это конечно дело извращенного вкуса
А если серьезно — то какая разница на чем и как писать — было бы что писать — вот что главное
... хотя наверно главное — что бы было бы кому втулить написанное ...
Здравствуйте Mishka, Вы писали:
M>К чему всё это я? Гложет меня сомнение, что в недалёком будущем действительно большие проекты больше не будут выполняться на С++. А мне бы хотелось заниматься именно этим. Посему возник вопрос: есть ли будущее у больших проектов на С++? Есть ли какие-нибудь компаниии, которые занимаются этим и будут заниматься, независимо от желаний Microsoft?
Сейчас любой язык программирования ассоциируется не только с его синтаксисом, но и с его окружением. Возьми, к примеру, вечные войны C++ vs Delphi, все они в результате скатываются не к с выяснения разницы между C++ и Object Pascal, а к тому какая среда программирвания лучше, удобнее и т.п. .NET должен в корне изменить эту ситуацию. Если ты хочешь писать под .NET, то учить нужно не только и даже не столько какой-то язык программирования, сколько .NET Framework и всё вокруг него.
Если же тебя волнует судьба самого C++, то я не думаю что он отомрёт так уж быстро. Как ты думаешь сколько он ещё сможет протянуть? 5 лет, 10? Я думаю, что не меньше, учитывая то море исходного кода, которое наколбасили программеры всех стран и народностей за то время, которое C++ применяется как коммерческий язык, это примерно где-то начиная с 1991-1992 года (+- год). Так что C++ только на середине своего пути ;) Да и потом C# после C++ — это детский сад. К тому же тенденция очень хорошо просматривается, видимо большинство будущих коммерческих языков будут в той или иной степени клонами C++ и вбирать из него всё лучшее. Кстати, следующая версия того же C# будет поддерживать шаблоны.
Ну, а если ты ищешь язык на котором будешь писать до пенсии, то это вряд ли. :)
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте Igor Soukhov, Вы писали:
IS>Здравствуйте Mishka, Вы писали:
M>>Ведь не всё же будет Web Services, или в этом я ошибаюсь? Если да, то впору IS>разве паникеров вешают ? их расстреливают —
Правильно, вешают — предателей, расстреливают — паникеров и мародеров. Шпионов жгут в топке (хотя и не всегда, иногда меняют), а диверсантов допрашивают в разведроте.
IS>хотя это конечно дело извращенного вкуса
Это серьезный идеологический вопрос.
IS>А если серьезно — то какая разница на чем и как писать — было бы что писать — вот что главное IS>... хотя наверно главное — что бы было бы кому втулить написанное ...
Да, VC++, хотя бы и от 7-й студии, рассматривается микрософтом как obsolete. Но по настоящему большие проекты редко когда делались на одном языке. Обычно — на дьявольской смеси языков и технологий. А дотнет с CLR и есть средство для облегчения интеграции.
Ну, и всегда остаются ниши типа компайлеров, embedded, драйверов, операционок, которые делались и будут делаться на языках под которыми хорошо просматривается ассемблер. C/C++ то есть.
GS
Re[3]: Мысль о будущем
От:
Аноним
Дата:
13.05.02 13:48
Оценка:
Здравствуйте George_Seryakov, Вы писали:
GS>Да, VC++, хотя бы и от 7-й студии, рассматривается микрософтом как obsolete.
Здравствуйте Аноним, Вы писали:
А>Здравствуйте George_Seryakov, Вы писали:
GS>>Да, VC++, хотя бы и от 7-й студии, рассматривается микрософтом как obsolete.
А>Почему ты так думаешь?
Ну, не obsolete, а типа legacy code. Ощущение такое, подкрепленное обмолвками разных людей.
Здравствуйте Mishka, Вы писали:
M>К чему всё это я? Гложет меня сомнение, что в недалёком будущем действительно большие проекты больше не будут выполняться на С++. А мне бы хотелось заниматься именно этим. Посему возник вопрос: есть ли будущее у больших проектов на С++? Есть ли какие-нибудь компаниии, которые занимаются этим и будут заниматься, независимо от желаний Microsoft?
Всему хорошему когда-то наступает конец. С++ это не есть чисто объектно-ориентированный язык. Это смешанный язык (смотри Страуструпа.). А дело идёт к тому что большие проекты — это будут программы с объектно ориентированным кодом. В тоже время С++ все же слишком много позволяет в плане отступлений от нотаций Буча и иже с ним.
В моей конторе в соседнем проекте революция — отказываются от С++ технологий. Переходят на Java, потому что разработка на ней идёт быстрее (так им опыт подсказал), а результат быдет крутится у заказчика на двухпроцессорном Sun'e (какой-то из Spark) (просто у Sun политика такая — с ними легче было договорится о его выгодной покупке). Написать так, что бы на этой машинне тормозило — нужно сильно стараться...
А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть.
Но я их не боюсь — ведь это такие же ОО языки. Более того, даже синтаксис оччень похож.
Так что на мой взгляд твоя боязнь оправданна — если ты под словами знать С++ подразумеваешь знание глюков компилятора или каких-то системно-зависимых фенек. Если же ты считаешь что разница между class и struct не в том что у одного есть конструктор а у дрогого нет, а в том что первое — это, скорее всего, какая-то сущность реального мира, а второе — это, наверное,сильно связанный набор данных, то тебе не грозит забытие С++.
Хотя я согласен с IT — С++ еще 5-10 лет как минимум будет жить.
Жизнь, как игра —
идея паршивая,
графика обалденная...
Re[5]: Мысль о будущем
От:
Аноним
Дата:
14.05.02 05:22
Оценка:
Здравствуйте George_Seryakov, Вы писали:
GS>Здравствуйте Аноним, Вы писали:
А>>Здравствуйте George_Seryakov, Вы писали:
GS>>>Да, VC++, хотя бы и от 7-й студии, рассматривается микрософтом как obsolete.
А>>Почему ты так думаешь?
GS>Ну, не obsolete, а типа legacy code. Ощущение такое, подкрепленное обмолвками разных людей.
Да вроде бы нет. Microsoft считает, что на C# будут переходить в основном те, кто раньше программировал на Visual Basic. С++ по-прежнему будет основным языком для приложений, которые должны быть эффективными, занимать мало памяти и т.д. Иначе зачем Microsoft прилагать усилия, чтобы реализовать полную поддержку стандарта и нанимать для этого Липпмана и Саттера?
Здравствуйте Micker, Вы писали:
M>Всему хорошему когда-то наступает конец. С++ это не есть чисто объектно-ориентированный язык. Это смешанный язык (смотри Страуструпа.). А дело идёт к тому что большие проекты — это будут программы с объектно ориентированным кодом. В тоже время С++ все же слишком много позволяет в плане отступлений от нотаций Буча и иже с ним.
=) не язык позволяет отступать — ты сам себе позволяешь отступать
от нотаций, которые в общем-то и не единственно верные — следовательно
не обязательно их придерживаться.
M>В моей конторе в соседнем проекте революция — отказываются от С++ технологий. Переходят на Java, потому что разработка на ней идёт быстрее (так им опыт подсказал), а результат быдет крутится у заказчика на двухпроцессорном Sun'e (какой-то из Spark) (просто у Sun политика такая — с ними легче было договорится о его выгодной покупке). Написать так, что бы на этой машинне тормозило — нужно сильно стараться...
Вечный цикл на крее выполняется на 6 секунд =)
M>А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть.
почему ?
M>Хотя я согласен с IT — С++ еще 5-10 лет как минимум будет жить.
это будет не жизнь =)
Здравствуйте Igor Soukhov, Вы писали:
IS>Здравствуйте Micker, Вы писали:
IS>=) не язык позволяет отступать — ты сам себе позволяешь отступать IS>от нотаций, которые в общем-то и не единственно верные — следовательно IS>не обязательно их придерживаться.
Тут я с тобой полностью согласен, но ведь в Java такое отступление позволить себе сложнее....
M>>А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть. IS>почему ?
Потому что, IS>Вечный цикл на крее выполняется на 6 секунд =)
А на обычных машинах, выполняется ещё дольше.
С++ более низкоуровневый, им легче добится более быстрой обработки.
M>>Хотя я согласен с IT — С++ еще 5-10 лет как минимум будет жить. IS>это будет не жизнь =)
Всем бы такую не жизнь, это будет праздник!
Жизнь, как игра —
идея паршивая,
графика обалденная...
Здравствуйте Аноним, Вы писали:
А>Здравствуйте George_Seryakov, Вы писали:
GS>>Здравствуйте Аноним, Вы писали:
А>>>Здравствуйте George_Seryakov, Вы писали:
GS>>>>Да, VC++, хотя бы и от 7-й студии, рассматривается микрософтом как obsolete.
А>>>Почему ты так думаешь?
GS>>Ну, не obsolete, а типа legacy code. Ощущение такое, подкрепленное обмолвками разных людей.
А>Да вроде бы нет. Microsoft считает, что на C# будут переходить в основном те, кто раньше программировал на Visual Basic. С++ по-прежнему будет основным языком для приложений, которые должны быть эффективными, занимать мало памяти и т.д. Иначе зачем Microsoft прилагать усилия, чтобы реализовать полную поддержку стандарта и нанимать для этого Липпмана и Саттера?
Не знаю что считают в мелкософте но наша фирма целиком и польностью разрабатывающия на плюсах сейчас под дотнет использует повсемесно шарп, а "управляемые" плюсы только для одной библиотечки. Все довльны.
Здравствуйте Micker, Вы писали:
M>Всему хорошему когда-то наступает конец. С++ это не есть чисто объектно-ориентированный язык. Это смешанный язык (смотри Страуструпа.). А дело идёт к тому что большие проекты — это будут программы с объектно ориентированным кодом. В тоже время С++ все же слишком много позволяет в плане отступлений от нотаций Буча и иже с ним.
От нотаций Буча отступают все XP-программисты. Причём среди них есть достаточно известные люди. Сейчас большинство сходится на мысли, что CRC-карточки это максимум, что нужно использовать, а UML — это от лукавого.
M>А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть. M>Но я их не боюсь — ведь это такие же ОО языки. Более того, даже синтаксис оччень похож.
Дык, на то их клонами С++ и называют
M>Так что на мой взгляд твоя боязнь оправданна — если ты под словами знать С++ подразумеваешь знание глюков компилятора или каких-то системно-зависимых фенек. Если же ты считаешь что разница между class и struct не в том что у одного есть конструктор а у дрогого нет, а в том что первое — это, скорее всего, какая-то сущность реального мира, а второе — это, наверное,сильно связанный набор данных, то тебе не грозит забытие С++.
А что у struct правда нет конструктора? Вот это номер. А я то, дурак, Страуструпу поверил, что (п. 10.2.8):
struct s{...
это всего лишь короткая форма записи
class s{public:...
Re[3]: Мысль о будущем
От:
Аноним
Дата:
14.05.02 07:48
Оценка:
Здравствуйте Mishka, Вы писали:
M>Здравствуйте Micker, Вы писали:
M>>Всему хорошему когда-то наступает конец. С++ это не есть чисто объектно-ориентированный язык. Это смешанный язык (смотри Страуструпа.). А дело идёт к тому что большие проекты — это будут программы с объектно ориентированным кодом. В тоже время С++ все же слишком много позволяет в плане отступлений от нотаций Буча и иже с ним.
M>От нотаций Буча отступают все XP-программисты. Причём среди них есть достаточно известные люди. Сейчас большинство сходится на мысли, что CRC-карточки это максимум, что нужно использовать, а UML — это от лукавого.
M>>А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть. M>>Но я их не боюсь — ведь это такие же ОО языки. Более того, даже синтаксис оччень похож.
M>Дык, на то их клонами С++ и называют ;)
Но похож только синтаксис. Java и C# больше похожи на Smalltalk, чем на C++.
Здравствуйте Mishka, Вы писали:
M>Неприятные ощущения возникают у меня, когда я читаю о таких вещах как .NET. Очень многие склоняются к тому, что настаёт конец Java и всему что с ней связано от Sun.Источник M>Хотя меня эти технологии не касаются, но касается, например, такой язык программирования как С++. Не хочется изучать что-то, чему может в скором времени настать конец, так же не хотелось бы завязываться на такой вариант как MC++. Он расширяет стандарт, умудряясь при этом не поддерживать многие его интересные части (специализация шаблонов, например). M>К чему всё это я? Гложет меня сомнение, что в недалёком будущем действительно большие проекты больше не будут выполняться на С++. А мне бы хотелось заниматься именно этим. Посему возник вопрос: есть ли будущее у больших проектов на С++? Есть ли какие-нибудь компаниии, которые занимаются этим и будут заниматься, независимо от желаний Microsoft?
M>Ведь не всё же будет Web Services, или в этом я ошибаюсь? Если да, то впору
На мой взгляд (взгляд системного программиста), всё очень и очень плохо. Если 3 года назад я устраивался программистом и большинство предложений о работе были С++ и немного Java, то сейчас практически не встретишь серьезных предложений писать на C++. Сейчас большинство вакансий Visual Basic, развивается С#. Кроме того, сейчас почти повсеместно переходят на более простые языки программирования; есть знакомые конторы, которые полностью перешли на C#
Может это и к лучшему, но переучиваться на Basic ой как неохота. Пристрелите меня, если я не прав.
возможно я в корне не прав,но ...
ИМХО .Net = Delphi + VB + Builder от Микрософт, только круче . Это навароченная среда быстрой разработки. Безусловно в среде таких сред(масло масленное ) это прорыв... АДНАКА никакой тест не убедит меня что интерпретатор(чем собственно и является .NET) будет раюотать юыстрее чем аналогичный код на Ассемблере и тем более не убедит меня в том, что использование смеси языков прослоенной СОМом будут работать быстро, потому что за вызовом, например, нескольких команд на бэсик стоит огромное кол-во реального кода. Из чего следует что .NET займет ту нишу, которую сейчас занимают среды быстрой разработки и никак не коснется С++, VC++ и т.д.
Другое дело, что Микрософт сейчас проводит грамотную PR компанию и вкладывает, видимо, огромные деньги в рекламу .NET. Что может очень сильно повлиять на рынок... Еще Микрософт может сделать такую бяку типа у нас есть .NET и больше нам ничего не нада и забить на VC и и т.п. Тогда хочешь — не хочешь пересядешь.
Не смотря на все это С++ учить стоит(как по-моему уже писалось), потому что после него любой язык(ну может быть кроме пролога) осваивается очень быстро.
P.s. С#=JAVA
Здравствуйте Slayer, Вы писали:
S>возможно я в корне не прав,но ...
ещё как не прав
S> ИМХО .Net = Delphi + VB + Builder от Микрософт, только круче . Это навароченная среда быстрой разработки. Безусловно в среде таких сред(масло масленное ) это прорыв... АДНАКА никакой тест не убедит меня что интерпретатор(чем собственно и является .NET) будет раюотать юыстрее чем аналогичный код на Ассемблере
Про интерпретатор это да, да вот только в .NET нет интерпретации, так же как уже и VB можно делать выполняемый код и в Java. Даже в ASP.NET крутится чистый нативный код. Поотстал ты малость лет на несколько
S> и тем более не убедит меня в том, что использование смеси языков прослоенной СОМом будут работать быстро, потому что за вызовом, например, нескольких команд на бэсик стоит огромное кол-во реального кода.
.NET поддерживает COM, но это вовсе не значит, что он на нём базируется. Это разные вещи. А смеси из языков нормально работают уже и сейчас. Возьми напиши dll на C++ и вызови её на Delphi, никаких особенных накладных расходов.
S> Из чего следует что .NET займет ту нишу, которую сейчас занимают среды быстрой разработки и никак не коснется С++, VC++ и т.д.
А что тогда C++ останется?
S>Другое дело, что Микрософт сейчас проводит грамотную PR компанию и вкладывает, видимо, огромные деньги в рекламу .NET. Что может очень сильно повлиять на рынок... Еще Микрософт может сделать такую бяку типа у нас есть .NET и больше нам ничего не нада и забить на VC и и т.п. Тогда хочешь — не хочешь пересядешь.
А ты просто попробуй что-нибудь сделать на C#, поковыряйся с ним хотя бы с месяцок, а потом поговорим... в форуме по .NET
S>P.s. С#=JAVA
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте IT, Вы писали:
IT>Сейчас любой язык программирования ассоциируется не только с его синтаксисом, но и с его окружением. Возьми, к примеру, вечные войны C++ vs Delphi, все они в результате скатываются не к с выяснения разницы между C++ и Object Pascal, а к тому какая среда программирвания лучше, удобнее и т.п. .NET должен в корне изменить эту ситуацию. Если ты хочешь писать под .NET, то учить нужно не только и даже не столько какой-то язык программирования, сколько .NET Framework и всё вокруг него.
Все это правильно. Собственно судьба самого С++ не так критична. Люди находили способ изложить мысли всегда. Обидно другое. В мире должно быть какое-то противостояние, движение. Иначе смерь, застой. А, что произойдет если все крутится по сценарию одного автора? Совместимость -> бесконечность, развитие -> ноль.
Когда говорят, что .net еще и переносимый на другие платформы будет, то становится совсем смешно. А зачем это Microsoft надо. (MS Office довольно мощный пакет, приносит немало денег, а вы его видели на Linux? Без эмуляторов Win конечно).
Здравствуйте asutpman, Вы писали:
A>Все это правильно. Собственно судьба самого С++ не так критична. Люди находили способ изложить мысли всегда. Обидно другое. В мире должно быть какое-то противостояние, движение. Иначе смерь, застой. А, что произойдет если все крутится по сценарию одного автора? Совместимость -> бесконечность, развитие -> ноль.
Т.е. ты считаешь, что Sun'у уже пришёл кирдык с его джавой?
Мне вот кажется, что конкуренция как раз на лицо. Не было бы Java, возможно не было бы и шарпа с дотнетом. Просто сейчас вперёд вырвалась MS, слово за Sun. Прикинь, а вдруг они воткнут в свою JVM компилятор C++ и вообще сделают многоязыковую поддержку.
A>Когда говорят, что .net еще и переносимый на другие платформы будет, то становится совсем смешно. А зачем это Microsoft надо. (MS Office довольно мощный пакет, приносит немало денег, а вы его видели на Linux? Без эмуляторов Win конечно).
Да не будет он никогда переносимым, легкая переносимость — миф, трюк маркетологов. Не напрягаясь перенести можно только программу занимающуюся выводом на консоль сообщения "Hello, compatible world!!!". В любом случае, в создание переносимых программ нужно вкладывать деньгу и немалые, при этом теряется производительность и эффективность. Зачем это надо. Тем более в GUI приложениях.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте Micker, Вы писали:
M>В моей конторе в соседнем проекте революция — отказываются от С++ технологий. Переходят на Java, потому что разработка на ней идёт быстрее (так им опыт подсказал), а результат быдет крутится у заказчика на двухпроцессорном Sun'e (какой-то из Spark) (просто у Sun политика такая — с ними легче было договорится о его выгодной покупке). Написать так, что бы на этой машинне тормозило — нужно сильно стараться...
M>А я занимаюсь обработкой изображений, и мне переход на Java или C# просто смерть.
Здравствуйте IT, Вы писали:
IT>Т.е. ты считаешь, что Sun'у уже пришёл кирдык с его джавой? :-\
Упасть, покрайней мере, сразу не дадут, тот же Oracle и прочие гиганты, которые уже вложились в JAVA. IT>Мне вот кажется, что конкуренция как раз на лицо. Не было бы Java, возможно не было бы и шарпа с дотнетом. Просто сейчас вперёд вырвалась MS, слово за Sun.
Может быть. Только это не конкуренция в рамках общих правил, как это было в случае библиотек и компиляторов С++, где клеем был стандарт С++. А значит выбор будет принципиальный, или с нами или против нас. IT>Прикинь, а вдруг они воткнут в свою JVM компилятор C++ :wow: и вообще сделают многоязыковую поддержку.
Это уже не С++ будет а что-то типа "управляемый С++" и чего — нибудь такое. По теме топика ничего оптимистичного. IT>Да не будет он никогда переносимым, легкая переносимость — миф, трюк маркетологов. Не напрягаясь перенести можно только программу занимающуюся выводом на консоль сообщения "Hello, compatible world!!!". В любом случае, в создание переносимых программ нужно вкладывать деньгу и немалые, при этом теряется производительность и эффективность. Зачем это надо. Тем более в GUI приложениях.
Переносимость это не блажь. Это острая необходимость. Если заведомо на 90% известно в какой среде будет работать программа, то естественно не надо забивать себе голову разными проблемами. Только, что делать оставшимся 10%? Вообще судьба именно JVM сейчас решается именно как соотношение сред исполнения 90-10 или 50-50 или еще лучше 20-40-3-... Так, что я лично поаплодирую 1000000000$ IBM вкладываемые в Linux ежегодно.
Жаль, что не учавствую в крупных проектах, о которых пишет Mishka, может и разделял его беспокойство, а так по долгу службы приходится на таких языках писать, по сравнению с которыми переход С++ на С# это вообще не вопрос, так недоразумение.