JavaRush /Blog Jawa /Random-JV /Cara nulis kode sing resik

Cara nulis kode sing resik

Diterbitake ing grup
Nggawe kode sampeyan resik lan ayu minangka cara sing apik kanggo ngrampungake tenggat wektu. Robert Martin mencet kuku ing sirah kanthi salah sawijining pernyataan sing apik: "Sawijining ukuran kualitas kode sing bener yaiku unit What-The-F**ks/Minute. ." " ing asline). Kepiye carane nulis kode sing resik - 1Ayo kula nerangake apa iki tegese. Saben aku mriksa kode, otakku ngalami salah siji saka telung emosi:
  • “WTF?! Apa sih?!" (karo jijik) - ora iki ... kabeh ala banget ....
  • “WTF?! Apa sih?!" (karo nggumun) - hmm, wong pinter iku!
  • “WTF?! Apa sih?!" (karo iritasi) - sawetara jenis kebingungan, apa sing kita ngomong babagan?!
Dadi apa sing paling penting lan apa sing kita evaluasi nalika ndeleng sawetara kode? Yaiku: kemurnian lan kaendahane. Kemampuan kanggo nulis kode sing resik lan apik minangka indikator pangembang sing profesional banget. Latihan ing skill iki adhedhasar rong komponen - kawruh lan karya. Kawruh mulang sampeyan pola, prinsip, praktik, heuristik. Sampeyan perlu kanggo tuwuh kanthi profesional. Mung sampeyan kudu nyerep kawruh iki kaya spons liwat latihan terus-terusan lan kerja keras. Ing cendhak, nulis kode resik ora gampang. Iki kerja keras lan susah, lan sampeyan kudu kerja keras. Liwat nyoba lan kesalahan, sampeyan bakal nambah kanthi mbaleni langkah sing padha bola-bali nganti sampeyan nemokake solusi sing dikarepake. Ora ana cara sing luwih gampang. Ing ngisor iki sawetara tips kanggo mbantu sampeyan sinau babagan nulis kode sing resik.

Apa ing jeneng

Kendrick Lamar (artis hip-hop Amerika - cathetan editor) sapisan nyathet kanthi akurat: "Yen aku arep nyritakake crita nyata, aku kudu miwiti karo jenengku." Jeneng-jeneng ing pangembangan piranti lunak ana ing endi wae. Kita jeneng fungsi, kelas, argumen, paket, program-kabeh. Kita menehi jeneng file sumber lan buku referensi lan kabeh sing ana gandhengane. We jeneng iku endlessly, lan iki dadi bagéyan kritis makarya kanggo nggawe kode resik. Jeneng sing sampeyan menehi soko kudu nggambarake maksud. Nemokake jeneng apik ora gampang, butuh wektu, nanging uga ngirit wektu nalika sampeyan kudu ngatasi kode lan kahanan dadi rumit. Dadi ati-ati babagan proses iki lan aja wedi ngganti jeneng mengko yen sampeyan nemokake sing luwih cocog. Saben uwong sing ngurusi kode sampeyan bakal ngucapke matur nuwun banget marang sampeyan.

Elinga yen jeneng variabel sembarang, kelas, fungsi kudu njawab telung pitakonan utama: kok iku (variabel, fungsi, etc.) Ana, apa lan apa digunakake kanggo.

Iki mbutuhake ora mung katrampilan deskriptif sing apik, nanging uga kawruh umum lan wawasan sing wiyar. Lan ora ana sing bisa mulang sampeyan iki luwih apik tinimbang sampeyan dhewe.

kode resik

"Siji fungsi" - siji bab

Louis Henry Sullivan (arsitek rasionalis Amerika lan modernis) nate ujar: "fungsi nemtokake wujud . Dheweke ngomong babagan arsitektur omah, nanging iki ora ngganti inti. Saben sistem dibangun ing sawetara basa khusus domain sing digawe programer kanggo njlèntrèhaké kanthi akurat. Fungsi tumindak minangka kriya basa, lan kelas minangka nomina. Paling asring, fungsi paling penting ing organisasi basa pamrograman, lan nulis kanthi bener minangka inti kanggo nggawe kode sing apik. Mung ana rong aturan emas kanggo nulis fungsi kualitas:
  1. Padha kudu cilik
  2. Dheweke kudu nindakake siji, siji tugas, lan nindakake kanthi becik
Tegese, fungsi sampeyan kudu cilik lan ora ngemot struktur bersarang. Dadi, tingkat indentasi fungsi ora kudu luwih saka siji utawa loro. Pendekatan iki ndadekake kode luwih gampang diwaca, dimangerteni, lan dimangerteni. Kajaba iku, kita kudu yakin manawa ekspresi ing fungsi kasebut ana ing tingkat abstraksi sing padha. Campuran tingkat abstraksi ing sawijining fungsi tansah nggawe akeh kebingungan lan pungkasane nyebabake kode sing ora bisa diatur. Programer paling apik nganggep fungsi minangka crita sing bakal dicritakake, tinimbang mung kode kanggo nulis. Dheweke nggunakake alat saka basa pamrograman sing dipilih kanggo nggawe blok kode sing sugih, ekspresif, lan luwih resik sing bisa dadi juru crita sing apik.

"Komentar ora nggawe kode ala"

Venus Williams, pemain tenis Amerika lan juara Wimbledon kaping lima, nggegirisi nalika dheweke ujar: "Kabeh wong ninggalake komentar. Mangkene gosip sing katon . " Komentar iku kaya pedhang loro, komentar sing apik banget migunani. Ing tangan liyane, ora ana clutters munggah spasi luwih saka sembrono, komentar ora ana guna. Nanging komentar sing paling ngrusak yaiku sing nyebar informasi sing salah lan goroh. Ing cendhak, komentar minangka jinis ala sing dibutuhake. Ora tansah, nanging kanggo sisih paling. Kenging punapa? Iku prasaja, sing lawas komentar, luwih angel kanggo njaga, lan paling programer, sing ngerti, ora tansah ngganti komentar bebarengan karo owah-owahan ing kode. Kode kasebut obah lan berkembang. Bagean kode dipindhah bolak-balik, nanging ora ana komentar. Lan iki dadi masalah!

Elinga: kode sing resik lan cetha kanthi sawetara komentar luwih apik tinimbang kode sing rumit lan rame. Aja mbuwang energi kanggo nerangake kekacauan sing digawe ing komentar. Luwih becik nglampahi wektu kasebut ngresiki kekacoan kasebut.

kode resik

"Format kode tansah dadi prioritas"

Iki diomongake dening Robert C. Martin (Robert Cecil Martin), alias Pakdhe Bob, pangembang, penulis akeh buku babagan pangembangan piranti lunak, konsultan, penulis bareng manifesto Agile, lan liya-liyane. Lan dheweke nambahake: "Format kode minangka jinis komunikasi. Lan komunikasi minangka prioritas utama kanggo pangembang profesional. Pernyataan ing ndhuwur ora kudu disepelekake, amarga iki minangka salah sawijining ciri sing paling penting saka pangembang sing apik banget. Kode sing diformat ngidini sampeyan ndeleng jero pikiran sampeyan. Kita pengin ngematake wong kanthi rapi, perhatian marang detail, kemampuan kanggo ngatur lan nyatakake pikirane kanthi jelas. Nanging yen, nalika wong katon ing kode, padha ndeleng sawetara jenis kebingungan, kaya vinaigrette a, karo ora wiwitan utawa pungkasan, iki negates Panjenengan efforts lan lowers ajining diri saka pangembang. Aja malah mangu-mangu! Sampeyan adoh banget saka bebener yen sampeyan mikir yen sing utama ing bisnis iki yaiku "kode mung bisa digunakake." Fungsi sing sampeyan gawe saiki bakal diganti ing rilis sabanjure, nanging keterbacaan kode kasebut ora bakal diganti. Gaya kode lan keterbacaan sing apik nggampangake njaga kode kasebut nganti suwe, sanajan kode asli wis diganti ora bisa dingerteni.
Aja lali yen ing mangsa ngarep, sing bakal dieling-eling dudu kode sampeyan dhewe, nanging gaya lan konsistensi sampeyan. Mula, priksa manawa kode kasebut diformat kanthi apik lan tindakake aturan sing gampang dingerteni kabeh anggota tim.

Pisanan nggawe blok "nyoba-nyekel-pamungkas".

Georges Canguilhem (sejarawan ilmu pengetahuan, filsuf) kanthi bener kandha, "Ngawe kesalahan iku lumrah kanggo wong, nanging ngeyel yen kesalahan iku saka Iblis . " Ngatasi masalah iku kabeh programer. Data sing ora bener bisa ngetik input lan piranti bisa gagal. Lan minangka pangembang, kita kudu nggawe manawa kode kasebut nindakake apa sing kudu ditindakake. Masalahe ora mung penanganan kesalahan, nanging penanganan kesalahan "resik lan gampang diwaca". Akeh program adaptasi karo penanganan kesalahan. Yen sampeyan nindakake iki, kabeh bakal dadi kekacauan sing tujuan lan logika kode utama dirusak. Iki salah, kudune ora kaya ngono. Kode kasebut kudu resik lan dipercaya, lan penanganan kesalahan kudu dirajut kanthi lancar lan alami ing kode kasebut. Iki minangka indikator programmer kelas dhuwur. Lan salah sawijining cara kanggo nggayuh iki yaiku liwat nesting sing tepat lan jangkoan kabeh kesalahan ing blok coba-cekel. Blok kasebut nemtokake ruang lingkup kode sampeyan. Nalika sampeyan nglakokake kode ing bagean nyoba saka blok try-catch-finally, sampeyan nyatakake yen eksekusi bisa dibatalake sawayah-wayah banjur diterusake maneh. Mulane, disaranake miwiti karo try-catch-finally nalika sampeyan nulis kode. Iki bakal mbantu nemtokake apa sing bisa dikarepake pangguna saka kode kasebut, preduli saka apa sing salah karo kode kasebut sajrone nyoba.
Tansah elinga yen saben pangecualian sing dibuwang kudu ngemot konteks sing cukup kanggo nemtokake lokasi lan sumber kesalahan. Pesen kesalahan kreatif lan informatif dieling-eling suwe sawise kode kasebut ditulis, sanajan programer wis sibuk karo tugas sing beda.
kode resik

Ayo padha nyimpulake

Siji frasa sing ora biasa bakal mbantu kita ngringkes kabeh ing ndhuwur. Iki minangka kode-rasa utawa "rasa kode umum," jinis programmer sing padha karo akal sehat. Ing tembung Robert Martin: "Nulis kode sing resik mbutuhake panggunaan sistematis saka akeh teknik cilik, sing ditrapake minangka asil saka rasa "kebersihan" sing tliti lan rada nglarani. Teknik-teknik cilik iki sacara kolektif disebut code-sense . " Sawetara kita duwe "kode swara" iki wiwit wiwitan, dene liyane kudu ngembangake kanthi latihan sing terus-terusan. Naluri iki mbantu ora mung kanggo ngenali prabédan antarane kode ala lan apik, nanging uga mbantu ing tatanan saka Sastranegara ngarahke kanggo ngowahi kode ala dadi apik. Kode ala ngrusak kabeh. Ngomong kanthi kiasan, yen sampeyan nggawe kue sing paling enak karo telek asu, banjur ... uh ... meh ora ana sing seneng. Pangertosan kode mbantu programmer nggunakake alat sing tepat kanggo nggayuh tujuane nggawe kode sing resik. Programmer sing ngerti apa code-sense yaiku seniman sing bisa nggawe karya seni ing layar kosong sing bakal dikenang nganti pirang-pirang taun. Minangka Harold "Hal" Abelson, profesor ilmu komputer ing Mit lan direktur pendiri Creative Commons lan Yayasan Perangkat Lunak Gratis, nyimpulake: "Program kudu ditulis dhisik supaya wong bisa maca, banjur supaya bisa diwaca. kaleksanan.” mobil” . Apa sampeyan bisa maca babagan topik: "Buku pegangan Agile Software Craftsmanship" - Robert Martin. "Buku pegangan estimasi Agile" - Mike Cohn Babagan penulis: Ravi Shankar Rajan minangka Manajer Program IT Global saka Mumbai (India). Blogger sing misuwur, pujangga haiku, arkeologi lan penggemar sejarah. Sampeyan bisa nyambung karo dheweke ing Twitter , Sedheng , LinkedIn
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION