Михаил, я понимаю что для школьников Unix-way это "Такое же как Windows, но бесплатное и рррреволюционное, чтобы гура какой-то стоял во главе, а то как же", но вы то, вы-то взрослый человек (хотя кажется мне, что это попытка оправдать то, что происходит с качеством Linux-систем сейчас) Специально для вас и для всех неравнодушных (хотя и для равнодушных тоже), Unix-way от Эрика Рэймонда-Правило модульности: Пишите простые части, соединяемые понятными интерфейсами. -Правило ясности: Ясность лучше заумности. -Правило композиции: Разрабатывайте программы так, чтобы их можно было соединить с другими программами. -Правило разделения: Отделяйте правила (policy) от механизма (mechanism); отделяйте интерфейс от движка (engine). -Правило простоты: Нацельтесь на простоту; добавляйте сложность, только где необходимо. -Правило экономности: Пишите большую программу только когда другими средствами выполнить необходимую задачу не удастся. -Правило прозрачности: Разрабатывайте прозрачные программы для облегчения последующего пересмотра и отладки. -Правило надёжности: Надёжность — дитя прозрачности и простоты. -Правило представления: Храните знания в данных так, чтобы логика программы была тупой и надёжной. -Правило наименьшего удивления: При разработке интерфейса всегда делайте как можно меньше неожиданных вещей. -Правило тишины: Если программе нечего сказать, пусть лучше молчит. -Правило восстановления: Если надо выйти из строя, делайте это шумно и как можно быстрее. -Правило экономии: Время программиста дорого; сократите его, используя машинное время. -Правило генерации: Избегайте ручного набора кода; при любом удобном случае пишите программы, которые бы писали программы. -Правило оптимизации: Сначала — опытный образец, потом — «причесывание». Добейтесь стабильной работы, только потом оптимизируйте. -Правило многообразия: Отвергайте все утверждения об «единственно правильном пути». -Правило расширяемости: Разрабатывайте для будущего. Оно наступит быстрее, чем вы думаете. Ну и та самая дефиниция от Гуры школьников (из just for fun) В английском 26 букв, и с их помощью можно написать все. А в китайском для каждой мыслимой вещи -- своя буква. В китайском вы сразу же получаете в свое распоряжение сложные вещи, которые можно комбинировать ограниченным образом. Это больше напоминает подход VMS: есть множество сложных вещей с интересным смыслом, которые можно использовать только одним способом. И в Windows то же самое. В Unix, напротив, основная идея: "Чем меньше, тем красивее". Здесь есть небольшой набор простых базовых строительных блоков, из которых можно строить бесконечно сложные конструкции. Похоже гуру таки взялся осваивать китайский.
|