Здравствуйте, LaptevVV, Вы писали:
ZS>>Однако, в основе любой техники всегда лежит база, некие "аксиомы" мастерства. И если научить "будущего светоча" видеть, как из этих "аксиом" рождаются приемы — это будет намного полезнее освоения какой-то техники. Проблема в том как это сделать, ну и аксиомы эти, в добавок, постояно меняются... LVV>Мне кажется — это именно техника. Только это техника программистского мышления, а не конкретного написания программных текстов. Как я понимаю теперь — именно этому и надо обучать...
Большенство людей думает на родном языке. Так что техника программистского мышления и техника написания программных текстов тесно связаны, как мне кажется. Разные языки — разные подходы. Техника императивного мыщления не очень поможет с SQL или Lisp. Под аксиомами я понимаю некие надязыковые ценности : KISS, high cohesion, low coupling, testability, maintainability, modularity... Приемчики для решения задач в каждом языке свои.
LVV>Но обучать-то придется с помощью конкретного писания конкретного кода. Вот такая диалектика — единство и борьба противоположностей...
Pascal -> C# -> SQL -> Lisp -> Prolog ?
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, ZevS, Вы писали:
ZS>>>>Цикл — тоже паттерн, не использовать goto — тоже паттерн, в своем роде. ) I>>>Это базовая техника кодирования. ZS>>Неужели. Лично я, как SQL-программист, ничего о такой технике не знаю... I>И ?
Выходит не базовая, а если и базовая то далеко не для всех языков. А вот паттерн будет — "многократное исполнение одного кода над различными (меняющимися) данными". И цикл — одна из его реализаций. Хотя согласен, это не мешет ему быть одновременно и базовой техникой кодирования. ))
Здравствуйте, ZevS, Вы писали:
ZS>Здравствуйте, LaptevVV, Вы писали:
ZS>>>Однако, в основе любой техники всегда лежит база, некие "аксиомы" мастерства. И если научить "будущего светоча" видеть, как из этих "аксиом" рождаются приемы — это будет намного полезнее освоения какой-то техники. Проблема в том как это сделать, ну и аксиомы эти, в добавок, постояно меняются... LVV>>Мне кажется — это именно техника. Только это техника программистского мышления, а не конкретного написания программных текстов. Как я понимаю теперь — именно этому и надо обучать... ZS>Большенство людей думает на родном языке. Так что техника программистского мышления и техника написания программных текстов тесно связаны, как мне кажется. Разные языки — разные подходы. Техника императивного мыщления не очень поможет с SQL или Lisp. Под аксиомами я понимаю некие надязыковые ценности : KISS, high cohesion, low coupling, testability, maintainability, modularity... Приемчики для решения задач в каждом языке свои.
Наверное да.
LVV>>Но обучать-то придется с помощью конкретного писания конкретного кода. Вот такая диалектика — единство и борьба противоположностей... ZS>Pascal -> C# -> SQL -> Lisp -> Prolog ?
Интересная последовательность...
Component Pascal -> C# (Java) -> F# (Lisp-Scala-Schema-Haskell) -> SQL -> Prolog ?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Component Pascal -> C# (Java) -> F# (Lisp-Scala-Schema-Haskell) -> SQL -> Prolog ?
Ну или так. ))
А еще, наверно, можно начать с довольно сложной общей теории, а уже из нее выводить ее частные приложения. Это может дать системное понимание конкретных приемов: зачем, когда, как... Например, в цифровой фотографии понимание того что такое цвет, цветовые пространства, контраст и так далее позволяет подойти к применению конкретных инструментов того же фотошопа гораздо осознанней. При этом, теория цвета — далеко не простая вещь. Не уверен правда, что тут можно провести прямую аналогию с программированием.
Здравствуйте, ZevS, Вы писали:
ZS>Здравствуйте, LaptevVV, Вы писали:
LVV>>Component Pascal -> C# (Java) -> F# (Lisp-Scala-Schema-Haskell) -> SQL -> Prolog ? ZS>Ну или так. )) ZS>А еще, наверно, можно начать с довольно сложной общей теории, а уже из нее выводить ее частные приложения. Это может дать системное понимание конкретных приемов: зачем, когда, как... Например, в цифровой фотографии понимание того что такое цвет, цветовые пространства, контраст и так далее позволяет подойти к применению конкретных инструментов того же фотошопа гораздо осознанней. При этом, теория цвета — далеко не простая вещь. Не уверен правда, что тут можно провести прямую аналогию с программированием.
Вот этот подход для начинающих точно не проходит — пробовали. На третьем, при обучении уже специальным дисциплинам — проходит. А новички — не получается так.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Вот этот подход для начинающих точно не проходит — пробовали. На третьем, при обучении уже специальным дисциплинам — проходит. А новички — не получается так.
Вопрос лишь в том когда человек перестает быть новичком...