Middle
Кадом принсипи рушди шинос ҳастед?
sobes.tech AI
Ҷавоб аз AI
Асосий:
- DRY (Ўзингизни такрорламанг): Такрорланадиган мантиқни функцияларга, синфларга ёки модулларга чиқариб, кодни такрорлашдан сақланиш.
- KISS (Уни оддий сақланг, ахмоқ): Коднинг оддиллиги ва тушунарлилигини таъминлашга интилиш.
- YAGNI (Сизга керак бўлмайди): Ҳозирча керак бўлмаган функцияларни қўшманг.
- SOLID: Объектга йўналтирилган дизайннинг бешта принципи:
- Бир масъулият принципи: Синф фақат бир сабабдан ўзгариши мумкин.
- Очиқ/Ёпиқ принципи: Синфлар кенгайтиришга очиқ, аммо ўзгартиришга ёпиқ бўлиши керак.
- Лисков алмаштириш принципи: Туғилган синф объектлари асосий синф объектларини алмаштириши ва дастурнинг тўғри ишлашини бузмаслиги керак.
- Интерфейсларни ажратиш принципи: Мижозлар фойдаланмайдиган интерфейсларга боғлиқ бўлмаслиги керак.
- Баъзига қараб боғлиқликларни инверсия қилиш принципи: Юқори даражадаги модуллар паст даражадаги модулларга боғлиқ бўлмаслиги керак. Ҳам иккала турдаги модуллар абстракциялардан боғлиқ бўлиши керак. Абстракциялар деталларга боғлиқ бўлмаслиги керак, деталлар абстракцияларга боғлиқ бўлиши керак.
Бошқалар:
- Код конвенциялари: Белгиланган кодлаш стандартларига риоя қилинг (масалан, PSR-1, PSR-12 PHP учун) коднинг ўқилишини ва бирдеклигини яхшилаш учун.
- Тестларга асосланган ривожланиш (TDD): Функционал кодни ёзмасдан аввал тестларни ёзинг.
- Доменга йўналтирилган дизайн (DDD): Ривожланишда доменга эътибор қаратиш, бизнес логикасини акс эттирадиган модел яратиш.
- Тоза архитектура/Гексагонал архитектура: Мухитдан ажратишга қаратилган архитектура ёндашувлари.