> -- Валерий Лаптев писал(а):
> Нет. Я в результате 25-летнего опыта преподавания пришел к выводу,что инструмент - вторичен. Программисты по мере "взросления" сами приходят к необходимости жесточайшей самодисциплины.Достаточно Боба Мартина почитать и Кента Бека с Мартином Фаулером. Да и собственный опыт говорит о том же.Поэтому при начальном обучении гораздо важнее ВОСПИТАНИЕ нужных качеств - о чем и говорит Дединский. Инструмент может помогать в этом (немного) или нет.
В описании графической библиотекиAmadeus-3есть обсуждение языка C++. Вот некоторые цитаты:
> -- Цитата:
> There are no circular references in Oberon-2, contrary to Modula-2, where definitionmodules make circular references possible, and most other languages, where such rules have nevereven been considered; in C/C++, nothing could stop you from building a library with chaotic crossreferences.
> -- Цитата:
> Did you ever notice how difficult it is to proof-read a document in English? Imagine that everypunctuation was fundamentally important and that missing a single comma could change themeaning of the entire text... Not so for C/C++. Single-character mistakes arepossible in many places and won't be detected by the compiler.
> -- Цитата:
> This is a really difficult problem, since we tend to like what we know. Most people don't think abouthow to design a programming language, they just pick up a manual that says how it's done.Therefore, few people will say "Oh I just love this or that style of programming", they will likewhatever they learned first, since that will save them a lot of intellectual effort - at least until theyare confronted with problems arising from that choice. If the first language learned was C/C++, as itstill is for a large majority of programmers, , just as the words "Procedure", "Begin" and"End" will be natural to the Pascal programmer.
И основной минус С++ в том, что слишком много возможностей. Нельзя просто взять студентов и обучить только 10% языка и сказать, чтобы они использовали только эти возможности. Так как всегда найдутся студенты, которые захотят показать свою крутость и использовать крутые фишки языка. Пусть они будет знать 20%. Другие студенты тоже захотят подтянуть свои знания в этом вопросе и будут использовать другие 20% языка. При коллективной работе будет получаться, что в общем проекте используется 95% языка, при этом все студенты понимают ядро, состоящее из 10%, а оставшиеся части понимают с какой-то вероятностью, что-то понятно, а что-то не понятно. У Дединского в презентации как раз сказано про коллективную работу, в этом плане С++ не способствует коллективной работе.