Здравствуйте, Undying, Вы писали:
U>Если мыслишь заученными конструкциями, то заучив новые конструкции, станешь всего лишь более знающим бараном. К умению думать владение заученными конструкциями не имеет никакого отношения. А умение думать строится на совершенно других принципах, в частности на принципе минимума сущностей. Но само по себе изучение других языков никак освоить эти принципы не помогает.
Умение думать — это очень похвальное качество. Я сам всегда повторяю, что во всех случаях надо думать голой. Вот только все своей головой не придумаешь. И будь твоя голова хоть трижды золотая ты не изобретешь и тысячной доли того, что смогло придумать человечество в области программирование за какие-то 50 лет. Потому кроме умения думать надо еще уметь развиваться. Познавать новые подходы (знания добытые и обобщенные другими для нас), перенимать практики. В том числе изучать передовые языки.
U>Пример со string.Join показывал, что очень часто проблема мусорности кода может быть решена средствами имеющегося языка.
Да, КО. Но это подтверждает или опровергает? Это так же верно, как утверждать, что иногда грязь на улице можно убрать нагнувшись и подняв ее. Но не ужели это отрицает того факта, что для уборки большой и замусоренной улицы лучше применять машину или хотя бы метлу?
U>Но в силу привычки думать заученными конструкциями программисты просто не замечают, что данный код является мусорным, и соответственно не ищут способа избавиться от этого мусорного кода.
Я уверен, что тот же Лойд прекрасно осознает что можно написать фуннкцию которая сделает код чище и лучше. Но не делает он это чисто из лени. Конкатенация строк с помощью string.Join ему нужна раз в два года и ему просто лень создавать новую функцию.
Если же человек такой ламер, что не понимает этого, то ему конечно и дела не должно быть ни до новых языков, ни до малейшего саморазвития. Но не все же такие?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.