Найти в Дзене
Old Programmer

Из записок старого программиста. Дао программиста. Книга 4

Оглавление

Все ссылки на статьи и ролики моего канала Old Programmer:

Программирование. Тематическое оглавление моего Zen-канала (Old Programmer)
Old Programmer17 августа 2020

Кроме того есть отдельный раздел, где я публикую околопрограммисткие материалы.

Список разделов канала Old Programmer, канала о программировании и программистах
Old Programmer27 мая 2021

Мои последние статьи

Объектно-ориентированное программирование. Наследование (Python). Статья 9
Old Programmer15 августа 2020
Программирование на ассемблере (преобразование целого числа в строку). Статья 3
Old Programmer14 августа 2020
Из записок старого программиста. Дао программиста. Книга 3
Old Programmer13 августа 2020
Объектно-ориентированное программирование. Наследование (C++). Статья 8
Old Programmer13 августа 2020
Программирование на Python. (передача параметров). Статья 4
Old Programmer12 августа 2020

Продолжаю знакомить вас с Дао Программиста. Материал взят с моего сайта http://asm.shadrinsk.net. Книга 3 здесь.

Книга 4. Написание

Так говорил учитель:
«Хорошо написанная программа это свой собственный рай; плохо написанная программа это свой собственный ад.»

4.1
Программа должна быть легкой и быстрой, а ее подпрограммы соединены подобно нанизанным жемчужинам. Идея и цель программы должны присутствовать в каждой ее части. В ней не должно быть ни слишком мало и не слишком много; ни лишних циклов, ни бесполезных переменных; ни отсутствия структуры, ни избыточной жесткости. Программа должна следовать Закону Наименьшего Удивления. Что он гласит? То, что
программа так должна выдавать ответ пользователю, чтобы удивить его при этом наименьшим образом. Программа, какая бы сложная ни была, должна действовать как одно целое. Она должна быть подчинена внутренней логике, а не внешнему виду. Если программа не удовлетворяет этим условиям, она будет беспорядочной и
запутанной. Единственный способ поправить такую программу это переписать ее заново.

4.2
Ученик спросил учителя: «Я написал программу, которая то работает, то сбоит. Я следовал правилам программирования, однако совершенно запутался. В чем причина?»

Учитель ответил: «Ты смущен, поскольку не понимаешь Дао. Только глупец ожидает разумного поведения от людей. Почему же ты ожидаешь разумного поведения от машины, людьми сконструированной? Компьютеры симулируют детерминизм; только Дао
совершенно. Правила программирования преходящи; только Дао вечно. Поэтому ты должен медитировать о Дао прежде чем тебе откроется просветление.» «Hо как я узнаю когда оно мне откроется?» спросил ученик. «Твоя программа будет работать правильно,» ответил учитель.

4.3
Учитель объяснял природу Дао одному из учеников,
«Дао воплощено во всех программных средствах—даже в самых незначительных,»
сказал учитель. «Есть ли Дао в карманном калькуляторе?» спросил ученик. «Есть,» был ответ. «Есть ли Дао в видеоигре?» продолжал ученик.
«Есть даже в видеоигре,» сказал учитель. «А есть ли Дао в ДОС для персонального компьютера?» Мастер кашлянул и немного подвинулся. «Hа сегодня урок окончен,» сказал он.

4.4
Один из программистов князя Вонга писал программу. Его пальцы танцевали над клавиатурой. Программа скомпилировалась без единой ошибки, и прошла тест как легкий ветер. «Превосходно!» воскликнул князь, «Твоя техника безупречна!» «Техника?» сказал программист, отворачиваясь от терминала, «чему я следую, это
Дао—что выше всех техник! Когда я только начал программировать, я видел проблему как одно целое. Спустя три года я уже не видел целого. Вместо этого я использовал подпрограммы. Hо теперь я не вижу ничего. Я целиком существую в неоформившейся пустоте. Мои чувства свободны. Мой разум, свободный от намерений, следует своим инстинктам. Вкратце, моя программа пишется сама. Правда, иногда бывают трудности. Я вижу, как они надвигаются, я приостанавливаюсь, я молча
смотрю. Затем я изменяю одну строчку в программе, и трудности исчезают как облачко дыма. И тогда я компилирую программу. Я замираю и позволяю радости работы наполнить меня. Я закрываю на миг глаза и отсоединяюсь от системы.» Князь Вонг сказал, «Если бы все мои программисты были так мудры!»

Деннис Ричи. Один разработчиков языка C  и операционной системы Unix. Фотография в свободном доступе в Интернет
Деннис Ричи. Один разработчиков языка C и операционной системы Unix. Фотография в свободном доступе в Интернет

До свидания. Программируйте мудро и подписывайтесь на мой канал Old Programmer.

Что-то пошло не так, и нам не удалось загрузить комментарии. Попробуйте ещё раз
Документы, вакансии и контакты