Це дуже складно пояснити, оскільки просте не означає те саме для всіх.
Приклад. Деякі розробники вважають, що ?:це просто, але інші вважають, що ifтвердження є кращим. Коли його знизиться до цього рівня, ви не можете порадувати всіх.
Взагалі прості засоби без складності . Щоб зрозуміти простоту, нам потрібно зрозуміти складність.
Існує два типи складності:
Суттєва складність стосується ситуації, коли всі розумні рішення проблеми повинні бути складними (і, можливо, заплутаними), оскільки "прості" рішення не могли б адекватно вирішити проблему. - Вікіпедія
Випадкова складність - це складність, яка виникає в комп'ютерних програмах або в процесі їх розвитку (комп'ютерне програмування), що не є суттєвим для вирішуваної проблеми. - Вікіпедія
Ви можете перевірити істотну складність за допомогою наступних питань:
Це рішення просте? Чи можу я пояснити це своєму одноліткові за проміжок часу за пару хвилин, і вони отримають його? Чи є більш просте рішення проблеми? Якщо так, то чи є компроміси між складним рішенням порівняно з простим? Чи можемо ми жити з тими вигідними? Наприклад, багато програмістів роблять помилку мікро-оптимізації всього, і їх рішення (і код також) стає надмірно складним.
Перевірка випадкової складності:
Чи простий код? Якщо я повернусь до нього через три місяці, скільки часу знадобиться мені, щоб побудувати контекст у моєму мозку, щоб я зміг внести зміни, які мені потрібно внести? Чи все в моєму вихідному коді має чітке призначення, і воно ефективно передає цю мету мені та іншим розробникам ? Наскільки важко перевірити свій код? Зазвичай, чим складніший ваш код, тим складніше його одиничне тестування, тому я зазвичай використовую це як міру складності. Зазвичай ви хочете невеликих, добре названих та зосереджених занять та методів. Моделі дизайну зазвичай допомагають вам і цього досягти.
Якщо ви виявите, що хочете використовувати шаблон дизайну лише тому, що ви тільки що читали про нього, це, ймовірно, введе в собі випадкові складності. Якщо ви виявите, що хочете щось вкласти, тому що ви думаєте "його розумним", це, ймовірно, введе в себе випадковість.
Я сподіваюся, що це допомагає і не забувайте: Просте не означає ЛЕГКО .