Таны кодыг илүү сайн болгох хөгжүүлэгчийн чухал ур чадвар

Таны кодыг илүү сайн болгох хөгжүүлэгчийн чухал ур чадвар

Орчуулагчийн өмнөх үг: Энэ нийтлэлийг уншсаны дараа та гайхаж, бүр уурлаж магадгүй юм. Тийм ээ, бид ч бас гайхсан: зохиолч багийн шатлалын тухай, "Үүнийг хурдан, үндэслэлгүйгээр хий" гэсэн статустай даалгавар өгөх талаар хэзээ ч сонсож байгаагүй байх. Тийм ээ, энэ бол жаахан хачирхалтай текст юм. Үнэн хэрэгтээ зохиогч програмистыг системийн архитекторын үүргийг гүйцэтгэхийг санал болгож байна - яагаад танд архитектор хэрэгтэй байна вэ? Гэхдээ эдгээр бүх эсэргүүцэл нь таныг гол зүйлд харалган болгох ёсгүй - яагаад бид энэ текстийг авч, орчуулсан юм. Тэр дүрийн тухай яриагүй. Энэ бичвэр нь мэргэжлийн арга барил, мэдлэгийн тухай юм. Үнэн бол та үйлдлийнхээ утга учрыг бодолгүйгээр "хэлсэн зүйлээ хийвэл" та хэзээ ч агуу програмист болохгүй.

Шаардлагагүй кодонд үгүй ​​гэж хэлээрэй. Гурван үсгийг нийлүүлээд үгээ хэлэхэд л хангалттай. Үүнийг хамтдаа хийхийг хичээцгээе: "Ноооо!"

Гэхдээ хүлээ. Бид яагаад үүнийг хийж байгаа юм бэ? Эцсийн эцэст програмист хүний ​​гол ажил бол код бичих явдал юм. Гэхдээ танаас асуусан код бичих шаардлагатай юу? Үгүй! "Хэзээ код бичихгүй байх ёстойг ойлгох нь програмист хүний ​​хамгийн чухал чадвар байж магадгүй юм." Унших боломжтой кодын урлаг.

Бид танд сануулж байна: "Хабр" -ын бүх уншигчдад - "Habr" сурталчилгааны кодыг ашиглан Skillbox-ын аль ч курст бүртгүүлэхдээ 10 рублийн хөнгөлөлт.

Skillbox зөвлөж байна: Практик курс "Мобайл хөгжүүлэгч PRO".

Програмчлал бол асуудлыг шийдвэрлэх урлаг юм. Мөн та энэ урлагийн мастерууд юм.
Заримдаа бид ажлаа аль болох хурдан эхлүүлэхийн тулд даалгавраа дуусгахаас өөр юу ч боддоггүй. Мөн энэ нь бүр илүү ноцтой асуудал үүсгэж болзошгүй юм.

Програмистууд юунд нүдээ аниад байдаг вэ?

Таны бичсэн бүх код бусад хөгжүүлэгчдэд ойлгомжтой байх ёстой бөгөөд үүнийг туршиж, дибаг хийсэн байх ёстой.

Гэхдээ нэг асуудал байна: та юу ч бичсэн байсан, энэ нь таны програм хангамжийг улам хүндрүүлж, ирээдүйд алдаа гаргах болно.

Рич Скрентийн хэлснээр, код бол бидний дайсан. Түүний бичсэн зүйл бол:

"Код нь муудаж, ялзарч эхэлдэг тул байнгын засвар үйлчилгээ шаарддаг. Шинэ функцуудыг нэмэхийн тулд хуучин кодыг өөрчлөх шаардлагатай болдог. Энэ нь том байх тусам алдаа гарах магадлал өндөр бөгөөд эмхэтгэхэд илүү их хугацаа шаардагдана. Үүнийг ойлгохын тулд өөр хөгжүүлэгч илүү их цаг зарцуулдаг. Хэрэв дахин засварлах шаардлагатай бол өөрчлөх шаардлагатай хэсгүүд байх болно. Том код нь ихэвчлэн төслийн уян хатан байдал, үйл ажиллагааг бууруулдаг гэсэн үг юм. Энгийн бөгөөд гоёмсог шийдэл нь нарийн төвөгтэй кодоос хурдан юм."

Хэзээ код бичихгүй байхыг яаж мэдэх вэ?

Асуудал нь програмистууд өөрсдийн хэрэглээний функцүүдийн тоог хэтрүүлдэгт оршино. Үүний үр дүнд кодын олон хэсэг дуусаагүй эсвэл хэн ч ашигладаггүй, гэхдээ тэдгээр нь програмыг төвөгтэй болгодог.

Та төсөлдөө юу хэрэгтэй, юу нь хэрэггүйг тодорхой ойлгох ёстой.

Жишээ нь зөвхөн нэг ажлыг шийддэг програм юм - имэйлийг удирдах. Энэ зорилгоор захидал илгээх, хүлээн авах гэсэн хоёр функцийг нэвтрүүлсэн. Та шуудангийн менежерийг нэгэн зэрэг ажлын менежер болно гэж найдаж болохгүй.

Програмын үндсэн ажилтай холбоогүй функцуудыг нэмэх саналд та "үгүй" гэж хатуу хэлэх хэрэгтэй. Энэ бол нэмэлт код шаардлагагүй болох нь тодорхой болсон мөч юм.

Хэрэглээнийхээ анхаарлыг хэзээ ч бүү алдаарай.

Өөрөөсөө үргэлж асуу:

-Одоо ямар чиг үүргийг хэрэгжүүлэх ёстой вэ?
- Би ямар код бичих ёстой вэ?

Санаанд орж ирж буй санаануудыг асууж, гаднаас ирж буй саналыг үнэл. Үгүй бол нэмэлт код нь төслийг зүгээр л устгаж чадна.

Шаардлагагүй зүйлсийг хэзээ нэмэхгүй байхаа мэдэх нь кодын баазыг хатуу хяналтанд байлгахад тусална.

Таны кодыг илүү сайн болгох хөгжүүлэгчийн чухал ур чадвар

Замын хамгийн эхэнд програмист зөвхөн хоёр, гурван эх файлтай байдаг. Энэ бол энгийн. Програмыг эмхэтгэх, эхлүүлэхэд хамгийн бага хугацаа шаардагдана; Хаана, юу хайх нь үргэлж тодорхой байдаг.

Аппликейшн өргөжих тусам улам олон кодын файл гарч ирдэг. Тэд тус бүрдээ хэдэн зуун мөр бүхий каталогийг дүүргэдэг. Энэ бүгдийг зөв зохион байгуулахын тулд та нэмэлт лавлах санг үүсгэх хэрэгтэй болно. Үүний зэрэгцээ аль функц нь юуг хариуцаж, ямар үйлдэл нь тэдгээрийг үүсгэдэг болохыг санах нь улам бүр хэцүү болж байна; алдааг барих нь бас илүү их цаг зарцуулдаг. Төслийн менежмент нь илүү төвөгтэй болж байна; нэг биш, хэд хэдэн хөгжүүлэгчид бүх зүйлийг хянах шаардлагатай болдог. Үүний дагуу мөнгөний болон цаг хугацааны зардал нэмэгдэж, хөгжлийн явц удааширдаг.

Төсөл нь эцэстээ асар том болж, шинэ функц бүрийг нэмэх нь илүү их хүчин чармайлт шаарддаг. Маш өчүүхэн зүйлд ч гэсэн та хэдэн цаг зарцуулах хэрэгтэй. Одоо байгаа алдааг засах нь шинэ алдаа гарч ирэхэд хүргэдэг бөгөөд өргөдөл гаргах эцсийн хугацааг алддаг.

Одоо бид төслийн амьдралын төлөө тэмцэх ёстой. Яагаад?

Үнэн хэрэгтээ та хэзээ нэмэлт код нэмэх ёсгүйг зүгээр л ойлгоогүй бөгөөд санал, санаа болгонд "тийм" гэж хариулсан. Та сохор байсан тул шинэ зүйлийг бүтээх хүсэл нь таныг чухал баримтуудыг үл тоомсорлоход хүргэсэн.

Аймшгийн киноны зохиол шиг сонсогдож байна, тийм ээ?

Хэрэв та тийм гэж хэлсээр байвал яг ийм зүйл тохиолдох болно. Хэзээ код нэмэх ёсгүйг ойлгохыг хичээ. Төслөөс шаардлагагүй зүйлсийг устгана уу - энэ нь таны амьдралыг илүү хялбар болгож, хэрэглээний хугацааг уртасгах болно.

"Миний хамгийн үр бүтээлтэй өдрүүдийн нэг бол 1000 мөр код устгасан үе байсан."
- Кен Томпсон.

Хэзээ код бичихгүй байхыг сурахад хэцүү байдаг. Гэхдээ энэ нь зайлшгүй шаардлагатай.

Тийм ээ, та дөнгөж хөгжүүлэгчийн замд орж, код бичихийг хүсч байгааг би мэднэ. Энэ нь сайн байна, анхны сэтгэгдэлээ бүү алдаарай, гэхдээ урам зоригоос болж чухал хүчин зүйлсийг бүү алдаарай. Туршилт, алдаагаар бид бүх зүйлийг ойлгосон. Та бас алдаа гаргаж, тэднээсээ суралцах болно. Харин дээрхээс суралцаж чадвал таны ажил илүү ухамсартай болно.

Үргэлжлүүлээрэй, гэхдээ хэзээ үгүй ​​гэж хэлэхээ мэдээрэй.

Skillbox зөвлөж байна:

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх