[Powered by Google Translate] În acest videoclip, vom discuta despre stilul de cod, care este ceva
care este aproape și dragi inimii mele.
Stilul de descrie modul în care codul dvs. este formatat, care este
independent de ceea ce codul de fapt, nu.
Nu numai ca va stilul de bine te un grad mai bună în CS50,
dar va ajuta, de asemenea, să scrieți cod care este mult mai
ușor de citit și de intretinut, care, la sfârșitul zilei,
se va face viața mult mai ușoară.
>> Cele trei componente principale ale stilului cod care vom discuta
acest videoclip sunt comentarii, formatare,
și variabila nume.
Să începem cu comentarii.
Amintiți-vă, comentariile nu au nici un efect asupra
funcționalitatea codul.
Acestea servesc numai ca indicii utile pentru noi ca programatori.
Comentariile bune ar trebui să răspundă una dintre cele două întrebări.
>> În primul rând, ce înseamnă acest bloc de cod face?
Aceasta este o scurtă descriere și dulce scopul de a
In randurile care urmeaza.
De exemplu, s-ar putea nevoie pentru a găsi locul în care vă
pus în aplicare o anumită caracteristică să se stabilească o
bug-ul sau ceva schimbări.
Fără comentarii, poate fi necesar să porilor peste mai multe linii de
Codul încercând să dau seama exact în cazul în care caracteristică este.
Sau în cazul în care a fost câteva zile de când v-ați uitat la una din
programele dvs., ar putea să nu amintești ce-o anumită
Funcția sau bucla face.
Deci, comentariile vor face reacquainting-vă cu
cod vechi, sau te lua cunoștință cu altcineva e
cod, mult mai lin.
A doua întrebare un comentariu răspunsuri bune este motivul pentru care am făcut-o
punerea în aplicare a acestui bloc în acest fel?
Așa cum se scrie cod, veți avea nevoie de frecvent
pentru a lua decizii de proiectare.
Ar trebui să se utilizeze o buclă în timp ce pentru buclă sau o aici?
Ar trebui să fac din acest bloc de cod într-o funcție separată?
Using comentarii, vă puteți documenta design-ul
decizii, care vor face codul mai ușor de înțeles
pentru alții, care pot fi ei înșiși cere exact aceeasi
întrebări de proiectare pe măsură ce citesc codul.
Sau chiar te, dacă te întorci la un bloc de cod, după
o anumită perioadă de timp.
>> În C, precum și alte limbi vom vedea în CS50, există
două modalități de a adăuga comentarii la codul, in-line comentarii
și multi-line comentarii.
În linie comentariile sunt foarte bune pentru documentarea bucăți din codul
în cadrul funcțiilor.
De exemplu, un comentariu în linie ar putea descrie
sensul unei bucle de colț sau a unui caz care necesită
o condiție.
Multi-line comentariile sunt foarte bune pentru documentarea funcții.
Ori de câte ori ați scrie o funcție, trebuie mereu, mereu,
întotdeauna documenteze ceea ce face cu un comentariu.
Aceasta include ceea ce intrările la funcția sunt, ceea ce
de ieșire a funcției este, și poate de aceea funcția este
puse în aplicare în modul în care aceasta este.
Ori de câte ori vă schimbați semnătura lui o funcție, reveniți
valoare, sau punerea în aplicare, este important să se actualizeze, de asemenea,
corespunzător documentația comentariu.
O asimetrie între comentariul o funcție și
punere în aplicare poate fi foarte confuz pentru cititorii.
În mod similar, creând un comentariu pe mai multe linii în partea de sus
de fiecare C sau fișier h.. scrii., descrie ceea ce
fișier nu, este, de asemenea, o idee foarte bună.
>> Ca esti comentând codul, una dintre primele întrebări vă
ar fi este, de asemenea, cât de mult ar trebui sa comentez codul meu?
Este adesea inutil să se documenteze fiecare
singură linie de cod.
De exemplu, o linie care spune int x = 5 nu are nevoie de un
comentariu cu privire la aceasta care spune că "setat la 5 x".
Nu a comentat suficient, deși, după cum am văzut, se poate face
înțelegerea codul foarte dificil.
Deci, o regulă bună de degetul mare este de a comenta blocuri interesante ale
cod, în cazul în care un bloc este format din câteva linii conexe.
>> Deci, haideți să aruncăm o privire la un exemplu.
Iată o funcție C necomentate.
Bine, deoarece aceasta este o funcție, primul lucru pe care trebuie să adăugăm
este un comentariu explica ce intrări funcția de
sunt și ce face el.
Deci, haideți să adăugați un comentariu pe mai multe linii.
Mare.
Acum știm exact ce funcție nostru face.
Să adăugăm câteva comentarii în linie acum.
Putem împărți în două codul nostru blocuri de linii similare.
Linii 4 și 5 siruri de caractere construct bazat pe de intrare și de
liniile 6 la 9 ieșire respective
siruri de caractere în cadrul song lyrics.
Deci, haideți să documenteze asta cu comentariile.
Minunat.
Acum, funcția noastră este comentat.
>> Observați că în noastre-line comentariile nu trebuie să utilizați complet
Exemple de sau se termină cu o perioadă de.
Este important că există un spațiu între două slash
și începutul comentariu.
Aceasta este frecvența de comentarii în cadrul programelor dvs.
care ar trebui să fie fotografiați pentru.
Observați aici cum ne-am separat cele două blocuri de cod legate de
în interiorul a funcției noastre cor cu un retur de car suplimentar.
>> Acest lucru ne aduce la următoarea componentă de stil cod,
formatare.
Când am început prima programare, am lovit Enter
cheie foarte rar, care a dus la gigant, ilizibil
Blobs de cod.
Cred că am jignit de fapt, colegii mei de predare, deoarece ea
nu a fost prea fericit cu mine.
Gruparea vizual blocuri de cod aferente, folosind transportul
revine, poate face codul mai ușor să răsfoiesc și clar
delimita care linii de cod comentariile tale sunt explica.
Acestea fiind spuse, răspândindu-se codul prea mult, ca și în cazul
două sau mai multe linii între blocuri de cod sau funcții, se poate
De asemenea, face mai mult mai greu de citit.
>> Indentarea este un alt importantă
aspect al formatului cod.
Întotdeauna, întotdeauna, întotdeauna liniuță corpul unei funcții, bucla,
sau condiție.
Acest lucru face clar care sunt linii de cod în interiorul unui
buclă, de exemplu, și care de linii de cod
sunt în afara de asta.
CS50 vă recomandă să liniuță, cu patru spații, dar
dacă alegeți altceva, asigurați-vă că pentru a fi în concordanță
de-a lungul codul.
Pe această notă, CS50 recomandă să așezați aparat dentar
pe linia lor.
În acest fel, bretele vor alinia la stânga vizual același
Marja, deci e clar de cristal în cazul în care un bloc începe și se termină.
Cu toate acestea, este, de asemenea, bine de a plasa bretele pe aceeași linie ca un
condiție, de exemplu, pentru a conserva spațiul.
Dacă veți face acest lucru, deși, asigurați-vă că includeți un spațiu
înainte de bretele cret asa ca nu e apasata lângă o închidere
paren sau un cuvânt.
>> Orice ai alege, cel mai important lucru este să fie
consecventă de-a lungul codul.
Ceea ce nu vrem să vedem, însă, este
indentate acolade.
Făcând astfel, face acolade apar deconectate de la
condiție, bucla, sau funcția ei delimitarea, făcând
Codul de greu de citit.
În C, precum și alte limbi vom vedea, acoladele sunt
opțional pentru condiții singură linie sau bucle.
E bine să omită acolade în acest caz, dar dacă
veți face acest lucru, asigurați-vă că pentru a fi în concordanță
de-a lungul codul.
>> La definirea funcțiilor, CS50 recomandă scrii
a reveni tip de funcția pe aceeași linie ca și numele de
funcția.
Cu toate acestea, este, de asemenea, OK pentru a scrie tipul de retur pe cont propriu
Linia, care poate face definițiile funcțiilor ușor de găsit în
un text redactori.
>> În cele din urmă, asigurați-vă că pentru a include spații în jurul valorii de
Cuvinte cheie și operatori.
De exemplu, o linie care spune int x = 5 este mult mai ușor să
citeste dacă există spații în jurul semnul egal.
În mod similar, asigurați-vă că aveți un spațiu după cuvinte cheie doriți, dacă,
pentru, și în timp ce.
Fără un spațiu, acestea ar putea arata ca apeluri de funcții,
care acestea nu sunt.
>> Deci, haideți să aruncăm o privire la un exemplu de aplicare a stilului bună
la un bloc de cod greșit formatat.
Bine, să începem de la partea de sus.
Putem vedea că orteza deschiderea principal este pe aceeași
linie ca numele functiei.
Dacă vom face acest lucru, trebuie să existe un spațiu între
paren închidere și bretele, cum ar fi acest lucru.
Cu toate acestea, CS50 recomandă ca sta bretele
pe linia lor.
Deci, hai să facem asta.
Acum că suntem în corpul funcției principale, vom avea nevoie de
pentru a începe crestarea cod; vom folosi
recomandă patru spații.
În continuare, vom vedea că nu există nici un spațiu în jurul valorii de semnul egal
aici, asa ca hai sa adaug că.
Aici, vom vedea că nu există nici un spatiu intre în cazul în care și
paren deschis, așa că hai să adaug că, împreună cu unele spațiu în jurul valorii de
mai mare decât semnul.
Din nou, vedem nu e nici un spatiu intre paren închidere și
bretele de deschidere aici.
Dacă ne vom pune astea pe aceeași linie, este nevoie de
să fie un spațiu înainte de bretele cret.
Cu toate acestea, se pare ca organismul nostru
condiție este o singură linie.
Așa că nu trebuie să includă acolade la toate.
Acum trebuie să fie sigur de a liniuță de la corpul de fiecare dintre
condițiile noastre.
Noi cu siguranta nu vrem asta ultima linie să fie pe aceeași
pozitiv linie ca altceva, asa ca hai sa Enter si liniuță.
În cele din urmă, bretele de închidere cret pentru nevoile principale să fie pe
propria linie.
>> Putem vedea aici avem două tipuri diferite de
blocuri de cod aferente.
Linii 4 la 6 cere utilizatorului pentru intrare și
linii rămase afișa acea intrare pentru utilizator.
Deci, este logic să afișezi un spațiu între aceste două blocuri
pentru claritate.
Și acolo mergem, acum acest cod este mult mai ușor de citit, cu
bun stil.
>> În cele din urmă, hai sa vorbim despre componentă a treia de stil bun:
nume de variabile.
Numele dvs. de variabile ar trebui să descrie
valoarea pe care o reprezintă.
Să revedem exemplul nostru mai devreme.
Sticle este un nume bun descriptiv pentru variabila care
reprezintă câte sticle sunt lăsate pe perete.
Nume ca x sau numBots nu sunt foarte descriptiv și sunt
nu este bun pentru lizibilitatea codului.
În timp ce variabilele numite printr-o singură literă sunt comune în
matematica și alte domenii, ei pot face codul foarte greu
pentru a înțelege.
Excepție de la această regulă este iterator
variabile în interiorul bucle.
In pentru bucle, de exemplu, e bine să utilizați variabila
nume ca i, j, și k pentru repetare.
La crearea variabile iterator în bucle, e
recomandat să faceți acest lucru în cadrul buclei în sine, mai degrabă
decât în ​​afara buclei, astfel încât să putem păstra variabile ca
bine scoped posibil.
>> Pe de altă parte, un nume de variabilă cum ar fi numărul de sticle
lăsat pe perete este, în timp ce descriptiv, prea verbose
și nu este necesar.
În cazul în care vreți să creați o variabilă cu
mai multe cuvinte, separa aceste cuvinte cu subliniere.
De exemplu, is_ready este mult mai greu de citit decât isReady.
E bine să declare variabile multiple pe aceeași linie.
Cu toate acestea, în cazul în care faceți acest lucru, să nu inițializați unele variabile, dar
altele nu.
Asta inseamna ceva de genul Dimes int, penny
punct și virgulă, este OK.
Dar int parale = 0, maruntis
punct și virgulă nu este.
>> În cele din urmă, atunci când declararea pointerilor, se recomandă
pe care le plasați asterisc lângă tipul de indicatorul nu,
numele variabilei.
Deci, int * p este recomandat, mai degrabă decât int
spațiu * p.
Oau!
Deci, care pare ca o multime de reguli pentru a
amintesc, dar nu vă faceți griji.
Dacă vreodată aveți dubii, nu ezitați să mă refer la a lui CS50
on-line Manual de stil.
>> Să rezuma rapid importantă
puncte de stil cod.
În primul rând, codul comentariu.
Întotdeauna, întotdeauna, întotdeauna ceea ce descrie funcțiile fac
cu un comentariu pe mai multe linii și comentează la fiecare câteva linii de
cod în linie.
În al doilea rând.
Fie în concordanță cu codul de formatare.
Să acorde o atenție pentru a dvs. de plasare și utilizare a acolade
precum și distanța în jurul valorii de cuvinte cheie și operatori.
În cele din urmă, pentru a alege nume de variabile descriptive.
Variabile ar trebui să descrie valoarea pe care o reprezintă, dar
nu ar trebui să vă luați pentru totdeauna să tastați.
>> Și asta e tot.
Toate acestea vor deveni rapid oa doua natura ca tine
scrie cod mai mult și mai mult, și veți fi de codificare
cu stil în cel mai scurt timp.
Numele meu este Tommy, iar acest lucru este CS50.