Цитата Сообщение от F74 Посмотреть сообщение
По поводу "серебряной пули"- при проектировании бортовых систем очень часто заказчик назначает ОС и средство разработки. Пример про Аду и НИИАО приведен выше. Семейство вычислителей "Багет" идет с своей ОС и средой С++. Ну нет там ни С#, ни Java (по крайней мере не было). Так что выбора особого нет.
Конечно. Но именно об ошибках тут и веду речь. Эти ошибки обсудить здесь уместно, так как они исторические. В том смысле, что 20 лет назад, скажем, C++ был «серебряной пулей». На нём и писали крутые и дальновидные профессионалы. Хотя множество старперов убеждали, что на FORTRAN, скажем, накоплены миллионы строк «отлаженного кода», «уникальные алгоритмы». Это действовало, уверяю. Как человеку в 22 года, к примеру, не поверить? Сколько ему времени потребуется, чтобы убедиться, что эти миллионы строк проще выбросить?

Многие прекрасные _современные_ программы написаны на C++... 10-15 лет назад. То есть именно тогда принималось решение о системе разработки. И теперь нет оснований не предпочесть новое старью. Так понятно? Урок в том, что всегда наиболее успешные программистские группы выбирали самый развитый и новый инструмент.

Другой пример- обработка сигналов РЛС с помощью DSP. Там тоже своя среда разработки и свой язык (от производителя). Пытаться писать для него свой компилятор? Скорее всего- это простейший способ провалить весь проект (если, конечно, нет большого опыта в разработке компиляторов для конкретного железа).
Дык, оно конечно. Только программирование этого DSP -- крошечная задача. Полагаете, что когда заявляют о миллионах строк кода для F-22, это всё программирование какого-нибудь DSP? Для DSP достаточно полдюжины подпрограмм.

А вообще-то, самые серьезные ошибки происходят не из-за ошибок в использовании языка, а при ошибках в алгоритмах и логике работы ПО. От этого никакой язык программирования еще не спасал.
Нет, самые тяжёлые ошибки -- ошибки управления проектом. Ошибки в алгоритмах и логике неизбежны, самые успешные программные проекты -- не те, в которых меньше таких ошибок. Примеров тьма.

Кстати, несколько обещавших проектов померли из-за неверено выбранного, устарелого инструмента. Это ложное впечатление, что опыт всё равно можно будет использовать -- жизнь человека, тем более, срок плодотворной работы программиста невелик, чтобы делать, а после переделывать, чтобы плестись, пока другие едут.

ПС Fortran77- младшие курсы института, С-старшие курсы и диплом. С/С++ разработка драйверов и ПО для бортового вычислителя в ОСРВ. Так что по сравнению с уважаемым Дм. Журко практически 0 в программировании (по крайней мере в количестве языков) так что вышесказанное ИМХО.
И ладно. Повторяю, что программисты, перед которыми я ощущаю себя неполноценным, знают меньше языков, чем я. Я просто склонен к этому, мне нравится узнавать языки и испытывать их, я преподавал программирование, наконец. А настоящие программисты писали программы, большие программы, которые продаются до сих пор, много раз, а мои продавались несколько раз и давно. Так что, суждение-то Вы вполне можете выносить.

Но не надо ссылаться, пожалуйста. Дело в том, что с автором цитаты не поспоришь. Не потому что он крут, а потому что я не с ним спорю, а с вами и тут. По мне -- такая ссылка неуместна и оскорбительна. И ведь не УК РФ цитируете.

ППС "Серебряная пуля" употребляется в смысле "решение, которое в любом случае является наилучшим".
Не бывает (с) бр. Стругацкие Понедельник начинается в субботу.
Бывает, всегда бывает в программировании. Так как область эта далеко недостаточно развита, отстаёт. Даже лучшие системы не совершенны и не полны. Зато несомненные лидеры видны всегда. Главное: будущее не стоит ограничивать догмами прошлого. Прошлое надо изучить, понять, но оно не источник ответов для будущего, оттуда можно заимствовать только каие-то общие методологии. А не C++ forever -- недоразумение.

А «в любом случае» это уж слишком широко. На деле бывает!