20 законов разработки, которые должен знать каждый инженер
1. Закон Галла: Работающая сложная система вырастает из работающей простой.
2. KISS: Делай проще. Всё остальное — оверхеад.
3. Закон Конвея: Компании проектируют системы, которые повторяют структуру их коммуникаций.
4. Закон Хайрума: У достаточно большого API уже неважно, что ты обещал в контракте. Кто-нибудь уже зависит от каждого observable-поведения твоей системы.
5. CAP-теорема: Выбери два: консистентность, доступность, устойчивость к разделению.
6. Закон Завински: Любая программа разрастается до тех пор, пока не научится читать почту.
7. Закон Брукса: Добавление людей в опаздывающий проект делает его ещё более поздним.
8. Эффект Рингельмана: Производительность каждого участника группы падает с ростом группы.
9. Закон Прайса: Половину работы делают квадратный корень от всех людей.
10. Эффект Даннинга — Крюгера: Новички переоценивают свои способности, эксперты — недооценивают.
11. Закон Хофштадтера: Всё занимает больше времени, чем ты планируешь, даже с учётом этого закона.
12. Закон Паркинсона: Работа расширяется, чтобы заполнить всё отведённое на неё время.
13. Закон Гудхарта: Когда метрика становится целью, она перестаёт быть хорошей метрикой.
14. Закон Гилба: Измерять неточно лучше, чем не измерять вообще.
15. Принцип Кнута: Забудь о микрооптимизациях в 97% случаев. Преждевременная оптимизация — корень всех зол.
16. Закон Амдала: Ускорение одной части системы ограничено долей времени, которое эта часть реально используется.
17. Закон Мёрфи: Если что-то может пойти не так, оно пойдёт не так.
18. Закон Постела: Будь консервативен в том, что отправляешь, и либерален в том, что принимаешь.
19. Закон Стерджена: 90% всего на свете — фигня.
20. Закон Каннингема: Лучший способ получить правильный ответ в интернете — не задать вопрос, а написать неправильный ответ.
👉 Java Portal
Post #2460
1.67K

- 🔥 15
- 👍 5
- ❤ 4