Puterea numelor variabile

Cum se utilizează același drept?

Numele de principii comune de selecție a variabilelor


Numele variabilei nu poate fi selectat ca porecla de câine, sprijinindu-se pe prețiozitate sau sunetul său. Spre deosebire de câini și poreclele lor, care sunt entități diferite, variabile și numele său este format de ideea unei singure entități. Prin urmare, variabila și valoarea este determinată în mare măsură de numele său. Alegeți nume de variabile cu mare grijă.
În exemplul următor, variabilele sunt numite rele:
Un exemplu de denumire variabilă a eșuat (configurațiile de costuri reale pentru care statul nu rostogoli un pic de bani):

Cel mai important principiu al variabilelor de denumire

Cel mai important principiu al variabilelor de denumire este că numele ar trebui să fie pe deplin și cu acuratețe a descrie natura, reprezintă o variabilă. O modalitate eficientă de a alege un nume bun sugerează formulare, în esență, variabilă în cuvinte. Numele variabilei optimă este de multe ori acest lucru foarte declarație. Din cauza absenței abrevierilor misterioase, lizibile; În plus, ea fără ambiguități. Deoarece este o descriere completă a entității, aceasta nu poate fi confundat cu nimic altceva. În cele din urmă, numele este ușor de reținut, deoarece este similar cu conceptul original. O variabilă care reprezintă numărul de membri ai echipei olimpice românești, ar putea fi numit „KolichestvoIgrokovOlimpiyskoyKomandyRosii“. O variabilă care reprezintă numărul de locuri în stadion - „KolichestvoMestNaStadione“. Variabila de definire a ratei dobânzii curente, ar fi mai bine numit „Bet“ sau „TekuschayaStavka“, mai degrabă decât „_S“ sau „x“. Cred că ideea este clar. Merită să acorde o atenție la caracteristicile acestor două nume. În primul rând, ele sunt ușor de descifrat. De fapt, ei nu au nevoie să descifreze în general: ele pot fi citite, pur și simplu. Ei bine, și în al doilea rând, unele nume mari - sunt prea mari pentru a fi practic. Lungimea nume de variabile, voi discuta mai jos. Câteva exemple de nume de variabile reușite și nereușite l-am dat în tabelul. 1.1

Numele de succes, o descriere adecvată

Numele Bad, descriere inadecvat

Valoarea cu care controalele emise în prezent

TSumma, tSumm, AktSumma

TD, curent, x, x1, x2, Data

Denumirile trebuie să fie cât mai specific posibil. Nume de x, temp, z și altele, destul de comune pentru ca acestea să fie utilizate mai mult de un scop, nu este informativ, deoarece acestea ar putea fi, și de obicei sunt rele.

Orientarea problemei


Bine porecla descrie adesea problema, nu soluția. Un nume bun este mai exprimă ea, nu cum. Dacă numele descrie unele aspecte de calcul, nu problema, este bancheta din spate. Preferați nume același nume de variabile ce caracterizează problema în sine.
Înregistrarea datelor angajaților ar putea fi numit inputRec sau employeeData. Nume inputRec - un termen de calculator, care exprimă ideea de introducere a datelor și de înregistrare. Numele EmployeeData se referă la zona de interes, și nu în lumea calculatoarelor. În cazul unui câmp de biți care definește starea imprimantei, numele bitFlag mai computerizat decât printerReady, iar în cazul aplicațiilor contabile calcVal mai computerizate decât suma.

Lungimea optimă a unui nume de variabilă

Tabel. 1.2. Prea mult timp, prea scurt, iar numele variabilelor optime

nume prea lung:

Numele prea scurt:

la, numărul, rupe în bucăți, quo
c ks, EIM

kolChlenovKomandy, vsegoChlenovKomandy
kolSideniyStadiona - vsegoSideny

Numele variabilelor și domeniu de aplicare


Este întotdeauna nume de variabile mai scurte nu au succes? Nu, nu întotdeauna. Dacă atribuiți un nume scurt variabilă, numele în sine spune, lungimea acestei variabile este un minor și are un domeniu de aplicare limitat.
Un programator de lectură codul va fi capabil să ghicească că utilizarea unui astfel de variabilă este limitată la câteva linii de cod. Atribuirea unui nume de variabilă, tu spui, „Această variabilă - indicele bucla cele mai comune contra / matrice, nu joacă nici un rol dincolo de aceste câteva rânduri.“ . William J. Hansen (W. J. Hansen) a constatat că mai este mai bine să atribuie nume rar utilizate sau variabile globale, și mai scurte -
variabile locale sau variabile, numite într-o buclă (Shneiderman,
1980). Cu toate acestea, cu nume scurte asociate cu multe probleme, și unele programatori prudente să adere la politica de software de protecție, în general, să le evite.

Naming indicele ciclului


Principiile de numire indicilor cicluri au apărut, deoarece ciclurile sunt printre cele mai populare modele. Ca o regulă, ca un indice de buclă utilizate variabilele i, j și k

Un nume simplu al indexului buclei (1C)
Pentru i = 0 Prin Ciclul KolichestvoStrokMassiva
StrokaDannyh DannyeMassiva = [i];

Sfaturi generale pentru a reduce nume


Iată câteva recomandări pentru a reduce nume. Unele dintre ele
contrar celuilalt, așa că nu încercați să utilizeze toate sfaturile dintr-o dată. Deci:

  • Utilizați abrevieri standard (în general acceptat faptul că puteți găsi
  • elimina toate vocalele, nu este prima literă a numelui (calculator - cmptr, ecran - SCRN, număr întreg - intgr);
  • eliminați articole și conjuncții, precum și, sau, m și d..;
  • Se păstrează una sau mai multe dintre primele litere ale fiecărui cuvânt;
  • „Prune“, cuvintele la unison: după prima, a doua sau a treia literă (selectați opțiunea relevantă în cazul particular);
  • a salva prima și ultima literă a fiecărui cuvânt;
  • Păstrați până la trei cuvinte expresive;
  • a salva sunetul cel mai expresiv al fiecărei silabe;
  • asigurați-vă că sensul numelui variabilei în reducerea nu este distorsionată;
  • Utilizați aceste metode, nu a fost încă tăiat numele fiecărei variabile la 8-20 caractere sau la limita superioară, limitând lungimea numelor într-o anumită limbă.

1. Vladislav Tomasevic (tomvlad) 3621 13/11/09 7:21 Acum subiect

Acesta poate fi deja suficient să reinventeze roata?

Procedurile de elaborare a standardelor și de configurare pe 1C: Enterprise 8 sistem

Educația numelor variabile

Numele de variabile ar trebui să formeze un domeniu de termeni, astfel încât numele variabilei să fie înțeles scopul său.

Alte denumiri ar trebui să fie format prin eliminarea spațiilor dintre cuvinte. În același timp, fiecare cuvânt în numele este scris cu majusculă. Prepoziții și pronume de la o literă, de asemenea, scrise cu majuscule.
exemplu:

Mutați DialogRabotySKatalogom; // Dialog cu directorul
Mutați KolichestvoPachekVKorobke; // Numărul de pachete pe cutie


Numele de variabile nu începe cu un caracter de subliniere.
Numele de variabile nu trebuie să constea dintr-un singur caracter. Utilizarea numelor de variabile scurte este permisă numai pentru contoare buclă.

Variabilele care reflectă starea unui pavilion ar trebui să fie numit așa, cum se scrie adevărata valoare a acestui pavilion.
De exemplu:

Mutați EstOshibki; // semn al prezenței erorilor în cadrul procedurii.
Mutați EtoTovarTara; // o indicație că produsul se referă la recipientul de retur.

2. Aleksandr Rytov (Archibald) 2660 13/11/09 7:32 Acum subiect

nume prea lung: numberOfSeatslnTheStadium
Asta e: numSeatsInStadiumrseatCount
Da. UZH.

3. Anton Stepanov (Stepa86) 834 13/11/09 8:30 Acum subiect

(1) nu toate citit standardele pentru un motiv oarecare

4. Vladislav Tomasevic (tomvlad) 3621 13/11/09 8:33 Acum subiect

(3) Bine. Deoarece din acestea și-au rescris strâmbe de configurare în care nici o caracteristică nu este clar, și cu schimbarea soprovozhdentsa, fie mor sau fără milă rescrise.

5. JERS (JERS) 13.11.09 09:02 Acum subiect

6. Anton Stepanov (Stepa86) 834 13/11/09 10:51 Acum subiect

(4) De aceea cred că împinge orice Infa programatorii să scrie mai bine de cod este foarte util

7. Vyacheslav Kadatskiy (marsohod) 120 13/11/09 11:29 Acum subiect

(5) Hehe, ați observat, de asemenea.
Ar trebui să adăugați mai mult o singură regulă:
„Numele variabilelor nu trebuie să conțină greșeli de ortografie“: |

8. Aleksandr Homyak (logarifm) 975 13/11/09 12:26 Acum subiect

Eu aduc un exemplu real al codului de configurația reală pentru care a plătit bani.

(6) Da, tocmai pentru că este comprimat și doar aspecte principale selectate. Am scris acolo că nu poleglotsvuyu manuscrise străine:

Nu este într-adevăr un om care a scris tot acest „geniu“. Aici că, cu această ocazie, a spus S.Makkonnella cartea „codul complet“.

9. Aleksandr Homyak (logarifm) 975 13/11/09 12:32 Acum subiect

10. Aleksandr Homyak (logarifm) 975 13/11/09 12:34 Acum subiect

(2) Nu mi-ai făcut un minus, și Stephen McConnell, și este o persoană foarte importantă în domeniul IT. Vă sfătuiesc toate la fel pentru a citi cartea sa „codul complet“ și susțin un minus.

11. Aleksandr Rytov (Archibald) 2660 13/11/09 12:49 Acum subiect

(10) Încă o dată, vă
numberOfSeatslnTheStadium - numele este prea lung, și
numSeatsInStadiumrseatCount - ceva care este necesar, cu toate că cele două personaje.
Și Stiven Makkonnel nu are nimic de a face cu ea. Este ia personal.

12. Aleksandr Homyak (logarifm) 975 13/11/09 12:51 Acum subiect

deoarece nu a fost - este luat din cartea lui :) Se pare că, indiferent cât de bine o persoană pe care cartea la acest nivel de vânzări ca acest „lohonulsya“, care este mai inteligent? Tu sau McConnell?

13. Aleksandr Rytov (Archibald) 2660 13/11/09 13:45 Acum subiect

(12) În al doilea caz McConnell
numSeatsInStadium
(Pagina 255)

14. Ulcer (KapasMordorov) 13.11.09 14:13 Acum subiect

„2) Nu mi-ai făcut un minus, și Stephen McConnell, și este o persoană foarte importantă în domeniul IT. Sfătuiesc toate la fel pentru a citi cartea sa“ codul complet „și susțin dezavantajul tău.“

M-am întrebat pentru ce astfel de EXPOZANfifiILOR motiv este pus profesioniști pentru plagiat ordinare?
Dacă eu „Capitalul“ lui Marx zatsitiruyu zi, eu, de asemenea, pentru puterea de gândire și spiritul se bazează pe argumente pro?

15. Aleksandr Homyak (logarifm) 975 13/11/09 14:35 Acum subiect

(14) și că nu este un rip-off, asta e ceea ce ma determinat să scriu acest articol, analiza configurației cu codul aici:

b.SKK receptacul = ();
__zn = recipient;
Dacă ZN> 0 Apoi
Dacă (PustoeZnachenie (Sotrudnik.DataUvol) = 0) ȘI
(Sotrudnik.DataUvol <НачМесяца(ДатаПериода)) Тогда
altfel
= Receptacul Int (recipient);
ENDIF;
Dacă (ZapolnitVseh = 0), atunci
Dacă ((b.Subkonto (1) .CherezKassu = 1) și (Medie (string (Invoice), 1,2) = "30")) Apoi
Newline ();
Angajat = b.Subkonto (1);
SummaVydachi = __zn;
Suma = recipient;
InacheEsli ((b.Subkonto (1) .CherezKassu = 0) și (Medie ((scor line), 1,2) = "31")) Apoi
Dacă b.Subkonto (1) .vybran () = 1 Apoi
b_s.IspolzovatVladeltsa (b.Subkonto (1));
Dacă b_s.NaytiPoRekvizitu ( "Banca", Subkonto1.Bank, 0) = 1 Apoi
Newline ();
Angajat = b.Subkonto (1);
SummaVydachi = __zn;
Suma = recipient;
InacheEsli pr_rep = 0 Apoi
Newline ();
Angajat = b.Subkonto (1);
SummaVydachi = __zn;
Suma = recipient;
ENDIF;
altfel
Raport ( "Nu vkazano s \ n rakhunok Banca");
return;
ENDIF;
ENDIF;
altfel
Newline ();
Angajat = b.Subkonto (1);
SummaVydachi = __zn;
Suma = recipient;
ENDIF;

16. Andrey Polonyankin (Apolon) 13.11.09 14:39 Acum subiect

Prevenirea tranzițiile ascuțite în 1C și 1C. Nu sunt citate alocate.
Frumos ar fi să ia ideea de carte și pe deplin traduse la 1C (mai ales în limba română) sa.
În cazul în care memoria mea mă servește, în același TTI, având în vedere recomandarea de a scrie în limba rusă.
Cu alte cuvinte, de exemplu, site-ul:

nume prea lung: numberOfPeopleOnThelJsOlympicTeam
numberOfSeatslnTheStadium
Numele prea scurte: n, etc, ntm
n, ns, nsisd
t, tr, max, literele
Asta e: numTeamMembers, teamMemberCount
numSeatsInStadiumrseatCount
teamPointsMaxrpointsRecord

S-ar putea arăta în felul următor:

nume prea lung: kolichestvoLyudeyVOlimpiyskoyKomande,
kolichestvoSidyachihMestNaStadione
Numele prea scurt pentru a, numărul, rupe în bucăți, semințe, ks, EIM,
Asta e: kolChlenovKomandy, schotchikChlenovKomandy
kolSideniyStadiona

Din nou, în contextul denumirii 1C al variabilei TekuschayaData absolut fără succes.

În general, atunci când am citit articolul un sentiment cum ar fi codul parsarea:

_s = 0; 1 = yn;
Pentru yn = 1 qk Prin Ciclul
Dacă _pr [John] = _ b.Subkonto (3) Atunci
_s = 1; Abandonare;
ENDIF;
KonetsTsikla;
Dacă _S = 0. Atunci
_pr [CC] = _ b.Subkonto (3);
qk = qk + 1;
_ss = 1;
ENDIF;

17. Ulcer (KapasMordorov) 13.11.09 14:45 Acum subiect

(15)
Dublură.
„Nu mi-ai făcut un minus, și Stephen McConnell“.

Deci, ce? Steven încarnare a lui Dumnezeu pe pământ? L-ai da un link pentru trimiterea de forum, unde a pus un minus?
Sau ai pus un minus? Pentru plagiat neînțeleasă pe merit acest lucru.
Ce motiv să displace?
P.S.
Și atât de mulți oameni a scrie cod, mai ales programatorii care nu sunt familiarizați cu zona subiect - nu contează, care înțelege sau nu. Se răcește la fel de repede.

18. Aleksandr Homyak (logarifm) 975 13/11/09 15:05 Acum subiect

(17) Și ce este răceala acestui cod, mi-ar fi spus contrariul - „prostia de ea“

19. Aleksandr Homyak (logarifm) 975 13/11/09 15:11 Acum subiect

(16) variabile în valoare de bine nu sunt legate de un anumit limbaj de programare evaziune cineva kodit pe Java, C, C #, C ++, și cineva pe 1C. De fapt, variabile în limba engleză pot fi utilizate în 1C numai că erau în mod clar lizibile. Și ce despre „TekuschayaData“ - nu există nici un exemplu, care este o funcție 1C, se arată că variabilele ar trebui să fie numit astfel încât sensul pe care îl poartă conține nici o valoare!

20. Ulcer (KapasMordorov) 13.11.09 15:16 Acum subiect

(18)
Acesta funcționează. Repede în scris.
Lung modificată mai târziu, dar asta e altă problemă.

articole similare