Би гайхамшигтай бичсэн, over-engineered код дээр морилно уу ... нэг удаа би "Энэ үүнийг хийх нь гайхамшигтай арга юм" гэж бодож байна, дараагийн минут та "ямар ч энд юу байна!" Нөхцөл (You Aren't Gonna Need It) принцип нь over-engineering эсрэг сайн арга юм: функц нь зөвхөн та тэднийг хэрэглэх үед, та тэднийг хэрэглэхгүйгээр хэрэглэх ёстой. Би одоо хэд хэдэн удаа over-engineering гэж нэрлэдэг бөгөөд та энэ унших зарим нь магадгүй юу гэж бодож байна Over-engineering? Одоо YAGNI Одоо Өндөр хялбар хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн хэлбэрийн Бид тавтай морилно уу, энэ нь тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу, эсвэл тавтай морилно уу. Код суурилсан олон хүнтэй хамтран ажилладаг үед (ямар ч хэдий ч), болон код чанарыг харьцуулах шинж чанарыг илүү сонирхолтой корпорациудын хувьд, код шалгалт нь хэзээ ч байтугай ач холбогдолтой байдаг. Over-engineering болон overabstraction гэх мэт асуудал нь Традиционны шугам дараагийн код шалгалт нь ихэвчлэн Эдгээр системтэй асуудалтай байдаг. Та DRY принципеар шинж чанарыг дэмжихын тулд хоёр долоо хоногийн өмнө үүсгэсэн бүрэлдэхүүн хэсгүүдийг шалгаж, одоо бүрэлдэхүүн хэсгүүдийн хооронд холбогдсон / харьцуулахад хамааралтай 10 онцлог байдаг. Эдгээр архитекторын асуудлуудыг олж авахын тулд код шалгах хэрэгтэй. Spaghetti Dry код Бид DRY (Don't Repeat Yourself) Евангелийг дундаж байна, учир нь энэ нь ажил нь хялбардаг, хөгжүүлэгч нь байгалийн алдартай байдаг (зөвхөн сайн хэлбэрээр). DRY принцип ортогон системд сайн ажилладаг: жижиг, өөрсдийн бүрэлдэхүүн хэсгүүд нь системийг үүсгэдэг. . Системүүд нь хамтран ажилладаг модулийг багтааж байх ёстой. Эдгээр модулиуд нь өөр өөрсдийн функционалтыг гүйцэтгэдэг. Alıntılar - Прагматик программист: Journeyman нь Мастер Kitap.Guru. Ортогонал систем, DRY код дээр илүү анхааралтай байх ёстой; Хэрэв та өөр өөр өөр өөртөө үүсгэсэн өөртөө ашиглаж буй функцийг нэгтгэхийн тулд илүү хялбар байх ёстой. Репозиторийн ихэвчлэн ихэвчлэн ихэвчлэн ихэвчлэн хөндий системтэй хамаарах болно. Энэ тохиолдолд та өөртөө тухтай системтэй хамаарах болно. Хэрэв та кодыг дублируулахыг хүсч болно. Энэ нь шинэ холболт нь хуучин системд ажилладаг. Сайн байна уу, Та Spaghetti кодыг олж авсан. Үнэндээ ортогон систем ашиглах, spaghetti DRY кодыг избегахад, ямар ч кодыг өөрчлөх нь зөвхөн шинэчлэгдсэн модультэй нөлөөтэй байх ёстой. Комплекс компонент Таны бүрэлдэхүүн хэсгүүд нь зүгээр л дутагдал явахыг үгүй, гэхдээ бүх системийн жижиг апстракцийг байх ёстой. Дараа нь та бүрэлдэхүүн хэсгүүд нь хялбар нь холбогдсон бүрэлдэхүүн хэсэгт нэг өөрчлөгдөж болно. Хэвлэсэн код үүсгэх үед, арга нь ямар ч бусад код блок дээр хамааралтай байх ёстой код үүсгэх байх ёстой. Хэвлэсэн хэрэглээ нь арга хэрэгсэл, зорилгоор ашиглаж байх ёстой. Та нэг бүрэлдэхүүн хэсэгт бизнесийн эсвэл API логиктэй дутагдал хэрэглээний бүрэлдэхүүн хэсгүүдтэй байх үед та нэмэлт гадааны логик / контекст нэмэхгүйгээр бүрэлдэхүүн хэсгүүдийг өөр өөр хуудсанд ашиглаж чадахгүй. Энэ нь бага эхлэх, Хэрэв та харьцуулахад өмнө, өвчин таны репозиторын хооро Over-abstraction болон over-engineering-г ашиглахын тулд загвар модуль модуль модуль модуль модуль Modularity нь таны системийг модуль гэж нэрлэдэг багатай, тусгай кодыг / бүрэлдэхүүн хэсгүүд руу хуваалцах талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи талаархи Функцийг эхлэн Ортогонал системийг бий болгох, хялбар хязгаарлалтгүй байх нь сайн арга нь функцийг эхлээд, дараа нь шинж чанарыг бий болгох юм. Энэ нь Component-Based архитектуртэй тохиромжтой байдаг. Функционал нь шинж чанарыг гүйцэтгэхийн тулд багтаасан хамгийн бага хязгаарлагдмал код нэгж дээр төвлөрөг. Логин шинж чанарын дараах функцийг бүрдүүлэх болно: хэрэглэгчийн нэр, нунтаг (UI), хэрэглэгчийн өгөгдлийг баталгаажуулах, хэрэглэгчийн профиль руу дамжуулах / хэрэглэгчийн өгөгдлийг олж авах. Бүх функц нь зөвхөн шаардлагатай өгөгдлийг хамарна. Чөлөөт Медаль нь ихэвчлэн софистицирован код Бидний ихэнх нь компанийн зөвхөн нэг хүний редактийг эсвэл ажиллуулах боломжтой код талаархи түүхүүд мэдэж байгаа бөгөөд энэ нь оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюутнуудыг оюут Бившин компанийн ажилтан нь кодыг шалгахгүй, програм, код суурилуулалтын хэсгүүд нь түүний хатуу диск дээр байна гэж нэрлэдэг (Энэ бүтээгдэхүүнийг хадгалахад overhead гэж үзнэ үү!). "We ran out of columns" - Джимми Миллер-ийн хамгийн шилдэг, найдвартай кодыг Би энэ нь ажлын хамгийн хялбар хэрэгсэл гэж бодож байгаагүйгээр шинэ технологи / багц / библиотек ашиглахыг хүсч байна. Шинэ зүйлийг суралцах нь гайхамшигтай байдаг, гэхдээ энэ нь хэзээ ч ашиглахыг хүсч байна. Өнгөрсөн Бүх боломжуудтай, цаг хугацааны аялал жуулчлалын тохиолдолд тохиромжтой кодыг үүсгэхийн тулд хайж байгаа эсэхийг хайж байгаа эсэхийг та супер-инженерийн кодын баазтай болно. Хэрэв энэ нь бүрэн кодыг үүсгэхийн тулд хялбар байж болох боловч энэ нь маш сайн юм. DRY принцип нь үндсэн юм; дутагдал нь програм хангамжийн хөгжүүлэхэд гүн юм. DRY принцип нь ортогон системд ашиглаж байх ёстой. Бүх модулиуд нь өөр өөр нэг үзэсгэлэнт газар дээр өгөгдөл хуваалцах (функциональ модуль). Эдгээр системүүд нь хадгалах, хуваалцах нь хялбар байдаг. Зөвхөн програм хангамжийн хөгжүүлэхэд үргэлж сайн юм.