воскресенье, 5 июня 2016 г.

Свойства. Понятный

Понятность — это главный способ достижения защиты от ошибок. Человек должен глубоко понимать то, что он пишет и читает, а не приблизительно догадываться о смысле. Любые инструменты разработчика должны быть лишь вспомогательным средством.

Язык должен быть простым, возможно, даже скучным. Он должен хорошо восприниматься разработчиком без требования к его длительной подготовке и изнурительного поддержания в форме. В нём не должно быть никаких подводных камней, никаких граблей, умением обходить которые могли бы гордиться адепты тайных знаний, ощущая своё превосходство перед новообращёнными.

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

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

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

Описание языка не должно быть предназначено только для разработчиков инструментария, как это часто происходит в современной практике, так как это подобно договору, полное содержимое которого известно только одной стороне. Полное описание языка*, не содержащее неоднозначных мест, должно быть по возможности кратким. В идеале, средний разработчик должен иметь возможность тщательно изучить его за один рабочий день.

* не следуеть путать описание языка и стандартной библиотеки

Комментариев нет:

Отправить комментарий