Здравствуйте, eao197, Вы писали:
E>Я считаю, что в той самой. Пока за программирование на конкретном языке платят, на этом языке пишут. Пока пишут, язык нельзя считать мертвым.
За кобол тоже платят и на нём тоже пишут.
E>Люди вообще находят удовольствие в странных вещах, в генерации отчетов
Ты как всегда читаешь только то, что тебя устраивает? Для тех кто в танке разжёвываю. Несколько недель ушло на написание фреймворка для генерации отчётов. CrystalReport знаешь такой продукт? Вот вроде того, только заточенный под конкретную задачу. Сами же отчёты потом — за пол часа пучок. Тут даже индусы не нужны, дольше объяснять придётся.
E>С этим я как раз не спорю. Тем не менее, это не в коем случае не является основанием для называния C++ трупом. Более того, даже для новых проектов могут быть очень веские факторы, которые значительно перевешивают недостатки языка.
Ниша C++, пока ещё, — это системный софт, да и то... С серверов и десктопов корпоративных приложений он уже давно вытеснен и возвращать обратно его никто не собирается.
E>Однако, окончание доминирования на рынке вовсе не означает смерти языка.
Я бы сказал так. Пациент скорее мёртв, чем жив. Лучшие дни плюсов прошли, оставшиеся сочтены. И чем скорее Страуструп с сотоварищами это поймёт, тем лучше. Думаю, лет пять назад было ещё не поздно внести в язык изменения, которые позволили бы ему удерживать лидирующие позиции. А сегодня уже поздно.
Если нам не помогут, то мы тоже никого не пощадим.
Re[20]: Как скрестить ужа и ежа или статическую и утиные тип
, к примеру.
IT>Ты как всегда читаешь только то, что тебя устраивает? Для тех кто в танке разжёвываю. Несколько недель ушло на написание фреймворка для генерации отчётов. CrystalReport знаешь такой продукт? Вот вроде того, только заточенный под конкретную задачу. Сами же отчёты потом — за пол часа пучок. Тут даже индусы не нужны, дольше объяснять придётся.
Это я понял, сам когда-то такими вещами занимался, только удовольствия в этом не было. Вот и странно мне, что кто-то в этом удовольствие находит. Точно так же как тебе странно, что кто-то в подобной работе удовольствия не видит.
Так что ничего личного, просто демонстрация разных взглядов на интересную работу.
E>>С этим я как раз не спорю. Тем не менее, это не в коем случае не является основанием для называния C++ трупом. Более того, даже для новых проектов могут быть очень веские факторы, которые значительно перевешивают недостатки языка.
IT>Ниша C++, пока ещё, — это системный софт, да и то... С серверов и десктопов корпоративных приложений он уже давно вытеснен и возвращать обратно его никто не собирается.
И слава богу. Пускай индусы C# и Java мучают.
А вот, например, для меня актуальная задачка -- сделать soft real-time отображение мониторинговой информации в графическом виде (порядка 100-150 значений, большая часть которых изменяется по несколько раз в секунду). И не только под Windows, но и, как минимум, под Linux. Берешь C++ и FLTK и вперед, никаких гвоздей -- все инструменты под рукой, здесь и сейчас.
Такие задачи мало кого волнуют? Так же как многих мало волнуют сервера и десктопы корпоративных приложений.
E>>Однако, окончание доминирования на рынке вовсе не означает смерти языка.
IT>Я бы сказал так. Пациент скорее мёртв, чем жив. Лучшие дни плюсов прошли, оставшиеся сочтены. И чем скорее Страуструп с сотоварищами это поймёт, тем лучше. Думаю, лет пять назад было ещё не поздно внести в язык изменения, которые позволили бы ему удерживать лидирующие позиции. А сегодня уже поздно.
Тем не менее до состояния трупа C++у еще жить и жить. Даже при том, что с выходом D 1.0 у C++ появился реальный конкурент, играющий на том же самом поле.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[21]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, eao197, Вы писали:
E>Это я понял, сам когда-то такими вещами занимался, только удовольствия в этом не было. Вот и странно мне, что кто-то в этом удовольствие находит. Точно так же как тебе странно, что кто-то в подобной работе удовольствия не видит.
Конечно странно. Без удовольствия можно вылепить только какого-нибудь уродца. А какое удовольствие можно получить от вылепливания уродцев? Да никакого. Вот и получается замкнутый круг. Мне нравится то, что я делаю без разницы то ли это формочки, то ли архитектура копроративного приложения, то ли копание в кишках компилятора.
E>Так что ничего личного, просто демонстрация разных взглядов на интересную работу.
Интересной свою работу мы делаем сами. Об этом я тоже в том же сообщении упомянул.
IT>>Ниша C++, пока ещё, — это системный софт, да и то... С серверов и десктопов корпоративных приложений он уже давно вытеснен и возвращать обратно его никто не собирается.
E>И слава богу. Пускай индусы C# и Java мучают.
Гы-гы. "Индусы" скоро доберуться и до системного софта с джавой и C#. Не сомневайся в этом.
E>А вот, например, для меня актуальная задачка -- сделать soft real-time отображение мониторинговой информации в графическом виде (порядка 100-150 значений, большая часть которых изменяется по несколько раз в секунду). И не только под Windows, но и, как минимум, под Linux. Берешь C++ и FLTK и вперед, никаких гвоздей -- все инструменты под рукой, здесь и сейчас.
Если мне будет нужно, я себе какой хош мониторинг сделаю без всяких плюсов. Эта задача не является проблемной ни для джавы, ни для C#. Причём, простейший реал-тайм мониторинг делается в течении пяти минут на PerformanceCounter'ах. А для многих вещей .NET и так уже предоставляет кучу информации.
E>Такие задачи мало кого волнуют?
Ну почему же? Я этим занимался раньше и занимаюсь сейчас. Как же без этого? Без этого никак, любое более менее уважающее себя приложение должно предоставлять статистику о своей работе. Я знаю не только что делается на моих серверах, но и кто что делает в конкретный момент. Знаю максимальное и минимальное время выполнения любого запроса, статистику по исключениям и использованию кеша. Знаю, абсолютно всё, что мне нужно. И что интересно, на решение этой задачи у меня ушло гораздо меньше времени, чем на генератор отчётов и сделано это всё было на C#.
E>Так же как многих мало волнуют сервера и десктопы корпоративных приложений.
Думаю, этих многих не более 5-10%.
E>Тем не менее до состояния трупа C++у еще жить и жить. Даже при том, что с выходом D 1.0 у C++ появился реальный конкурент, играющий на том же самом поле.
Дело не в конкуренте, дело в самом поле. Поле не то. Ниша у него слишком узкая и всё больше и больше сужается. Задач, где C++/D необходим становится всё меньше и меньше. Ещё 6-7 лет назад умельцы на плюсах даже веб-приложения писали, сегодня любой на это покрутит у виска. Долго и не надёжно, в итоге просто глупо.
Единственное место, где C++ пока может использоваться массово — это софт для домашних компьютеров. Вот если ты пишешь софт для использования на домашнем компьютере, то пожалуй C++ будет нормальным выбором. Но даже на корпоративных десктопах его уже вытесняют джава и .NET.
Если нам не помогут, то мы тоже никого не пощадим.
Re[22]: Как скрестить ужа и ежа или статическую и утиные тип
IT wrote: > Дело не в конкуренте, дело в самом поле. Поле не то. Ниша у него слишком > узкая и всё больше и больше сужается. Задач, где C++/D необходим > становится всё меньше и меньше. Ещё 6-7 лет назад умельцы на плюсах даже > веб-приложения писали, сегодня любой на это покрутит у виска. Долго и не > надёжно, в итоге просто глупо.
После того, как я увидел http://jose.med.kuleuven.ac.be/wt/Home.fcg?wtd=8cQ0zBFPXFH8epNd&js=yes&ajax=yes
я уже в этом так не уверен
Кстати, шутки шутками, а с помощью этой штуки я сделал вполне неплохой
веб-интерфейс для своей встроеной железки. Конечно, aspx или jsf/struts
оно не заменит, но в своей нише ей аналогов нет.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[12]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, Андрей Хропов, Вы писали:
АХ>Здравствуйте, FR, Вы писали:
FR>>Там подход обратный, в языке со статической типизацией есть опциональная утиная динамическая.
АХ>Это ИМХО самый лучший подход.
Так последний VB как раз оно.
now playing: Phace — 3002
Re[16]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, konsoletyper, Вы писали:
K>Действительно, от языка требуется, чтобы он был решал свои задачи. И он их должен решать быстро и просто. А вот подход C++ мне напоминает человека, который, чтобы почесать нос, просовывает руку под ногу и весь изгибается. Вот как раз C++ напоминает фичепомойку.
Весьма впечатляющий анализ компетентного эксперта
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[21]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, eao197, Вы писали:
E>Тем не менее до состояния трупа C++у еще жить и жить. Даже при том, что с выходом D 1.0 у C++ появился реальный конкурент, играющий на том же самом поле.
D пока нигде не играет. Его еще в команду не приняли. То бишь момента у него нет. Да, попал он на /. один раз. Walter не перестает воинствовать на c++.moderated. Однако D сейчас по отношению к C++ это тоже, что и C++ по отношению к C в 1983м году. D пока никто не поддерживает кроме создателя языка.
Re[15]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, Cyberax, Вы писали:
C>konsoletyper wrote: >> А вот я вижу. Прикладное ПО (за исключением игр) уже давно переходит на >> Java и .NET. Есть особые ситуации — графические библиотеки, игры, ОС и >> т.д. C>А еще: C>Прикладные программы C>Ресурсоемкие системы C>Браузеры C>Встроенный софт C>и т.п.
C>На моем компьютере сейчас не работает ни одной managed-программы. Так C>что слухи о смерти С++ — сильно преувеличены.
C>У Java/C# есть свои ниши — но вот на мировое господство они пока даже C>близко не претендуют.
Самое смешное, что мы это уже все обсуждали начиная с года так 2003-го (а может быть и раньше, только без меня). Все тоже самое говорилось про C++. Помрет мол скоро, так и гляди. Им отвечали, что, блин, где ваши программы на C#/Java? Однако, вот уже 4 года прошло и ситуация совсем не поменялась (если не считать того, что тогда я писал на C#, а теперь на C++).
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, Laughing_Silencer, Вы писали:
L_S>Использование Жабы или Шарпа для встроенного ПО просто нецелесообразно и вряд ли будет целесообразно — они нацелены на другое.
Область программ для мобильников сейчас практически полностью оккупирована J2ME. Найдешь причичины этому факту?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[22]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, alexeiz, Вы писали:
A>D пока нигде не играет. Его еще в команду не приняли. То бишь момента у него нет. Да, попал он на /. один раз. Walter не перестает воинствовать на c++.moderated. Однако D сейчас по отношению к C++ это тоже, что и C++ по отношению к C в 1983м году. D пока никто не поддерживает кроме создателя языка.
С той только разницей, что программу на С можно было откомпилировать компилятором С++ после минимальной доработки напильником. У D такого преимущества нет.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[16]: Как скрестить ужа и ежа или статическую и утиные тип
AndreiF wrote: > L_S>Использование Жабы или Шарпа для встроенного ПО просто > нецелесообразно и вряд ли будет целесообразно — они нацелены на другое. > Область программ для мобильников сейчас практически полностью > оккупирована J2ME. Найдешь причичины этому факту?
Скорее тут одна причина — нет альтернативы. BREW и прочие нормальные
решения Sun просто своим весом задавила.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[21]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, konsoletyper, Вы писали:
K>>C++ — труп. Он никуда не ползёт.
K>Вот тут много флейма развели по поводу того, является ли C++ мёртвым. Я тут такую очень близкую аналогию приведу. Латынь — мёртвый язык. Да, есть люди, которые его знают (врачи, лингвисты). Врачи, при этом, зарабатывают неплохо. Но вот того факта, что латынь — мёртвый язык, никто не отменял.
Это ты у Грэхема прочел? Так он там про LISP писал
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, IT, Вы писали:
K>>Действительно, от языка требуется, чтобы он был решал свои задачи. И он их должен решать быстро и просто. А вот подход C++ мне напоминает человека, который, чтобы почесать нос, просовывает руку под ногу и весь изгибается. Вот как раз C++ напоминает фичепомойку.
IT>Весьма впечатляющий анализ компетентного эксперта
Ну, никто не говорит, что я эксперт. Просто ИМХО ставить забываю . Но всё-таки некоторые факты лежат на поверхности и не надо быть очень уж проницательным, чтобы их заметить.
К тому же, на каких основаниях мы можем о человеке утверждать, что он эксперт в данном вопросе? Типа, есть люди, хорошо разбирающиеся в том, какие фичи нужны языкам, а какие — нет? Ну и что же они говорят, ссылки есть?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[16]: Как скрестить ужа и ежа или статическую и утиные тип
Здравствуйте, konsoletyper, Вы писали:
K>Вообще, подход с разделением на .h- и .cpp-файлы для описания модуля — штука весьма сомнительная. Она чревата дублированием кода (тратой времени) и полным отказом IDE поддерживать такое.
Есть множество причин для разделения интерфейса и реализации. Вот одна из них: расскажи мне, как в .NET ты соберешь три модуля a.dll, b.dll и c.dll со следующими зависимостями (-> — зависит от): a.dll -> b.dll, b.dll -> c.dll, c.dll -> a.dll.
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
alexeiz,
K>>Вообще, подход с разделением на .h- и .cpp-файлы для описания модуля — штука весьма сомнительная. Она чревата дублированием кода (тратой времени) и полным отказом IDE поддерживать такое.
A>Есть множество причин для разделения интерфейса и реализации. Вот одна из них: расскажи мне, как в .NET ты соберешь три модуля a.dll, b.dll и c.dll со следующими зависимостями (-> — зависит от): a.dll -> b.dll, b.dll -> c.dll, c.dll -> a.dll.
При сборке модуль будет содержать символические ссылки, а разрешение ссылок будет происходить на этапе загрузки классов в память (т.е. в рантайме). И никаких проблем.
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>alexeiz,
K>>>Вообще, подход с разделением на .h- и .cpp-файлы для описания модуля — штука весьма сомнительная. Она чревата дублированием кода (тратой времени) и полным отказом IDE поддерживать такое.
A>>Есть множество причин для разделения интерфейса и реализации. Вот одна из них: расскажи мне, как в .NET ты соберешь три модуля a.dll, b.dll и c.dll со следующими зависимостями (-> — зависит от): a.dll -> b.dll, b.dll -> c.dll, c.dll -> a.dll.
LCR>При сборке модуль будет содержать символические ссылки, а разрешение ссылок будет происходить на этапе загрузки классов в память (т.е. в рантайме). И никаких проблем.
Вопрос не про поведение рантайма. Есть код на C# для этих трех модулей. Попробуй собрать его компилятором C#. Проблемы в том, что компилятор берет описание интерфейса из метаданных уже собраного модуля.