- Acasa
- Dezvoltare de software
Incalcarea regulilor poate aduce un pic de fior – si poate produce un cod mai bun si mai eficient
Am facut-o cu totii: a prins un cookie cand mama nu se uita, a avut un pic prea mult vin pentru cina, a lasat masina sa stea intr-un loc de parcare dupa ce contorul a expirat. Am mers chiar prea curand pe Deadman’s Curve. Si da, cu totii am incalcat orice numar de reguli cardinale ale programarii, cele care sunt de acord cu toti sunt rele. Si in secret ne-a placut.
Am batut nasul dupa regulile unei bune programari, am scos codul care este total prost – si am trait. Nu existau fulgere de la zeii programatori. Desktop-urile noastre nu au explodat. matrimoniale suedia www.belchertownrealestate.com De fapt, codul nostru a fost compilat si expediat, iar clientii pareau suficient de fericiti.
Asta pentru ca programarea proasta nu este in aceeasi liga ca, sa zicem, sa linga un gard electric sau sa traga coada unui tigru. De cele mai multe ori, se rezolva. Regulile sunt mai adesea linii directoare sau sugestii stilistice, nu directivele grele si care trebuie respectate sau moartea codului va urma. Sigur, codul dvs. ar putea fi ridiculizat, eventual chiar public. Dar faptul ca te bucuri de conventii adauga un pic din entuziasm la subvertirea, chiar si din neatentie, ceea ce echivaleaza cu (mai des, nu) obiceiurile sociale ale codului placut. matrimoniale sua barbati dumbestguy.com
Pentru a face lucrurile mai complexe, uneori este mai bine sa incalci regulile. (Shhhh!) Codul iese mai curat. Poate fi chiar mai rapid si mai simplu. Regulile sunt, de obicei, un pic prea largi, iar un programator priceput poate imbunatati codul prin ruperea acestora. Nu-i spune sefului tau, dar uneori are sens sa iti codifici propriul drum.
Ceea ce urmeaza este o lista de noua reguli pe care unii le pot considera de neatins, dar multi dintre noi incalcam deseori, atat cu succes, cat si cu placere.
Obiceiul prost de programare nr. anunturi matrimoniale bucuresti gratuite theartofdentistry.org 1: Copiere
E gresit sa o faci in scoala. La locul de munca, regulile nu sunt atat de clare. Exista cu siguranta cateva blocuri de cod care nu ar trebui furate. Daca provine de la un cod proprietar, nu-l pliati in stiva, mai ales daca este marcat cu un mesaj de copyright. Scrieti-va propria versiune. Este ceea ce va platesc pentru a face.
Intrebarea mai complicata vine atunci cand creatorul initial doreste sa impartaseasca. matrimoniale jimbolia www.easylearn.com Poate ca este unul dintre acele forumuri de programare online. Poate este vorba despre codul sursa deschisa cu o licenta (BSD, MIT) care permite blocarea unei functii sau a trei. Nu exista niciun motiv legal sa va opreasca. Si esti platit pentru a rezolva probleme, nu pentru a reinventa roata.
De cele mai multe ori, avantajele copierii sunt convingatoare, iar dezavantajele pot fi limitate cu un pic de grija. Codul pe care il obtineti dintr-o sursa de renume a avut deja aplicat cel putin o runda de gandire. Autorul original a cautat o solutie si a gasit ceva. matrimoniale fete bucuresti ajsllc.us Invariante de bucla si fluxul de date a fost elaborat.
Intrebarile complicate sunt daca exista unele bug-uri nefondate sau unele ipoteze diferite despre rolul sau datele care stau la baza acestora. Poate ca codul dvs. se amesteca cu indicatoare nule, in timp ce codul original nu le-a verificat niciodata. Daca puteti remedia problemele, este ca si cum seful dvs. primeste intrarea de la doi programatori. Este programarea perechilor fara birourile fanteziste. matrimoniale public24 fatwa.com
Obiceiul de programare nr. 2: Cod nefunctional
In ultimul deceniu sau mai mult, paradigma functionala a crescut. Acolitii pentru crearea programului tau din functia cuibarita ii place sa citeze studii care arata modul in care codul este mai sigur si fara erori decat stilul mai vechi de variabile si bucle, toate stranse impreuna in orice fel il face fericit pe programator. Devotii vorbesc cu ravna credinciosilor adevarati, alungand abordari nefunctionale in revizuirile codului si solicita trageri. Pot avea chiar dreptate cu privire la avantaje.
Dar, uneori, trebuie doar sa scoti un sul de banda. Un cod minunat conceput si planificat gratios necesita timp, nu doar pentru a-ti imagina, ci si pentru a construi si pentru a naviga ulterior. site matrimoniale gratis 911load.com
- cupidon matrimoniale cu poze
- matrimoniale curtea de arges
- public 24 matrimoniale deva
- agentii matrimoniale
- public.ro matrimoniale
- publi matrimoniale
- anunturi matrimoniale neamt
- oradea online matrimoniale
- publi24 hunedoara matrimoniale
- matrimoniale casatori
- matrimoniale campina
- jumatatea mea matrimoniale
- matrimoniale sex brasov
- matrimoniale publi 24 constanta
- matrimoniale oradea femei
- matrimoniale brasov transilvania expres
- cupidon.ro matrimoniale bucuresti
- publi 24 matrimoniale caras
- matrimoniale targoviste
- monitorul de vrancea matrimoniale
Toate aceste straturi adauga complexitate, iar complexitatea este costisitoare. Dezvoltatorii unui cod functional frumos trebuie sa planifice in avans si sa se asigure ca toate datele sunt transmise pe cai adecvate. Uneori este mai usor sa ajungi si sa schimbi o variabila. Poate pune un comentariu pentru a-l explica. Chiar si adaugarea unei scuze lungi si grozave pentru generatiile viitoare in comentariu este mai rapida decat re-arhitectura intregului sistem pentru a face acest lucru asa cum trebuie.
Obiceiuri proaste de programare nr. 3: distantare non-standard
Majoritatea spatiilor din software nu au efect asupra performantei programului. matrimoniale tarnaveni mywines.biz Cu exceptia catorva limbi precum Python care folosesc distantarea pentru a indica blocuri de cod, majoritatea spatiilor au efect zero asupra modului in care se comporta programul. Cu toate acestea, exista programatori obsesivi care ii numara si insista ca conteaza. Una dintre ele i-a spus o data sefului meu pe tonul cel mai serios ca scriu „Codul Standard” si ca il poate vedea imediat. Pacatul meu? Incalcarea regulii ESLint space-infix-ops prin faptul ca nu a pus un spatiu pe ambele parti ale unui semn egal.
Uneori trebuie doar sa te gandesti la ceva mai profund decat amplasarea spatiilor. Poate va faceti griji pentru ca baza de date este supraincarcata. Poate va faceti griji pentru un fel in care un indicator nul ar putea sa va prabuseasca codul. anuturi matrimoniale alexander.sunfed.com.mx Aproape orice parte a codului este mai importanta decat spatiile, chiar daca nebunele, comitetele de standarde bossy au completat pagini de reguli cu privire la plasarea acestor spatii sau file.
Lucrul uimitor este ca exista mai multe instrumente bune care va vor reformata automat codul pentru a respecta orice reguli bine definite. Oamenii nu trebuie sa-si petreaca timpul gandindu-se la asta. Daca este atat de important, il pot rula prin instrument pentru a curata problema.
Obiceiuri proaste de programare nr. 4: Utilizarea goto
Interdictia de a folosi goto dateaza din epoca anterioara existentei multor instrumente de programare structurata. Daca programatorii doreau sa creeze o bucla sau sa sara la o alta rutina, ar trebui sa tasteze GOTO urmata de un numar de linie. matrimoniale mamaia synba.com Dupa cativa ani, echipele de compilatori ii permit programatorilor sa utilizeze o eticheta de sir in loc de un numar de linie. Asta era considerata o noua caracteristica fierbinte pe atunci.
Unii au numit rezultatul „codul spaghetti”. Era imposibil ca cineva sa-ti citeasca mai tarziu codul si sa urmeze calea de executie. A fost un salt de fire, incurcat pentru totdeauna. Edsger Dijkstra a interzis comanda cu un manuscris drolly intitulat „Declaratia de Goto considerata daunatoare”.
Dar ramificarea absoluta nu este problema. telegraf constanta matrimoniale iraniancheetah.com Este rezultatul incurcaturii. Adesea, o pauza sau o intoarcere plina de arta va oferi o declaratie foarte curata despre ceea ce face codul in acea locatie. Uneori, adaugarea de goto la o declaratie de caz va produce ceva mai simplu de inteles decat o lista mai bine structurata de blocuri in cascada daca-atunci-altceva.
Exista contraexemple. Gaura de securitate „goto fail” din stiva SSL a Apple este una dintre cele mai bune cazuri. Dar daca avem grija sa evitam unele dintre problemele grozave ale declaratiilor cazurilor si buclelor, putem insera salturi bune, absolute, care faciliteaza cititorul sa inteleaga ce se intampla. Putem face o pauza sau o intoarcere care este mai curata si mai placuta pentru toata lumea – cu exceptia, poate, a uratoarelor. transilvania expres matrimoniale inspectionlogic.org
Obiceiuri proaste de programare nr. 5: Tipuri care nu sunt declarate
Oamenii care iubesc limbile dactilografiate au un punct. Scriem un cod mai bun, fara bug, cand adaugam declaratii clare despre tipul de date al fiecarei variabile. Intreruperea unui moment pentru a preciza tipul ajuta compilatorul sa semnalizeze erori stupide inainte de a incepe sa ruleze codul. Poate fi o durere, dar ajuta. Este o abordare a centurilor-si-suspendantelor de programare care opreste erorile.
Vremurile s-au schimbat. matrimoniale publitim timisoara www.hmknyc.com Multe dintre cele mai noi compilatoare sunt suficient de inteligente pentru a deduce tipul prin examinarea codului. Ele pot lucra inapoi si inainte prin intermediul codului pana cand pot fi siguri ca variabila trebuie sa fie un sir sau un int sau altceva. Si daca aceste tipuri deduse nu se aliniaza, atunci compilatoarele pot ridica un indicator de eroare. Nu mai au nevoie sa introducem variabilele.
Acest lucru inseamna ca acum este mai usor sa salvati cativa biti, lasand la o parte unele dintre cele mai simple declaratii. Codul devine un pic mai curat, iar cititorul este de obicei destul de capabil sa ghiceasca ca variabila numita i intr-o bucla for este un numar intreg.
- matrimoniale eforie nord
- matrimoniale 3x forum
- oradea matrimoniale online
- publi 24 timisoara matrimoniale
- matrimoniale constanta telegraf
- matrimoniale bucuresti ilfov
- sait de matrimoniale
- matrimoniale timisoara femei 2018
- matrimoniale femei deva
- matrimoniale cu numar de telefon
- matrimoniale suceava publi24
- site-uri matrimoniale online
- matrimoniale iasi femei evenimentul
- matrimoniale constanta casa de cultura
- matrimoniale miercurea ciuc
- matrimoniale sibiu
- cel mai bun site de matrimoniale
- matrimoniale cupluri cu poze
- matrimoniale cu telefon
- matrimoniale sex constanta
Obiceiul de programare nr. matrimoniale bucuresti publi24 www.earthspicestudio.com 6: Cod Yo-yo
Programatorii le place sa il numeasca „cod yo-yo”. Mai intai valorile sunt stocate sub forma de siruri. Apoi sunt analizate in numere intregi. Apoi sunt convertiti in siruri. Este teribil de ineficient. Aproape ca puteti simti lupta procesorului sub toata incarcarea suplimentara. Programatorii inteligenti care scriu cod rapid isi proiecteaza arhitecturile pentru a minimiza conversiile. sait matrimoniale dormitorydesigns.com Codul lor ruleaza mai rapid din cauza planificarii lor.
Dar credeti sau nu, uneori are sens. Uneori, aveti o biblioteca de tip whiz-bang care face un bazillion lucruri inteligente in cutia sa neagra. Uneori, seful scria un cec de sapte cifre pentru a licenta tot geniul din cutia neagra. Daca biblioteca doreste datele in siruri, le dai bibliotecii in siruri, chiar daca le-ai convertit recent in numere intregi.
Sigur, puteti rescrie tot codul pentru a minimiza conversia, dar asta va dura timp. Uneori este bine ca codul sa ruleze un minut suplimentar, o ora, o zi sau chiar o saptamana, deoarece rescrierea codului ar dura si mai mult timp. anunturi matrimoniale olx kriswood.com Uneori, crearea datoriilor tehnice este mai ieftina decat construirea ei chiar in primul rand.
Uneori biblioteca nu este un cod proprietar, ci un cod pe care tu l-ai scris cu mult timp in urma. Uneori este mai rapid sa convertiti datele inca o data decat sa rescrieti totul in biblioteca respectiva. Asa ca mergi si scrii codul yo-yo. E in regula – am fost cu totii acolo.
Obicei de programare nr. 7: Scrierea propriilor dvs. publi24 ploiesti matrimoniale muetal.com structuri de date
Una dintre regulile standard este aceea ca un programator nu ar trebui sa scrie niciodata cod pentru stocarea datelor dupa ce a terminat cursul structurilor de date in anul urmator. Altcineva a scris deja toate structurile de date de care vom avea nevoie vreodata, iar codul lor a fost testat si testat de-a lungul anilor. Este inclus in limbaj si probabil ca este gratuit. Codul dvs. ar putea avea doar bug-uri.
Dar, uneori, bibliotecile de structura a datelor sunt cam lente. Uneori ne forteaza intr-o structura care poate fi standard, dar gresita pentru codul nostru. publicat 24 matrimoniale ploiesti guurus.com Uneori, bibliotecile ne imping in reconfigurarea datelor noastre inainte de a folosi structura. Uneori, bibliotecile includ protectii cu curea si suspendare, cu caracteristici precum blocarea firului, iar codul nostru nu are nevoie de ele.
Cand se intampla asta, este timpul sa ne scriem propriile structuri de date. Uneori este mult, mult mai rapid. Si uneori, face codul nostru mult mai curat, deoarece nu includem tot codul suplimentar pentru a reformata datele exact asa.
Obiceiul prost de programare nr. 8: Bucle de moda veche
Cu mult timp in urma, cineva care creeaza limbajul C dorea sa incapsuleze toate posibilitatile abstracte intr-o singura constructie. publitim matrimoniale timisoara www.google.im Au fost cateva lucruri de facut la inceput, unele lucruri de facut de fiecare data prin bucla si unele modalitati de a spune cand s-a facut totul. La vremea aceea, parea o sintaxa perfect curata pentru captarea posibilitatilor infinite.
Asta a fost atunci. Acum, unii certuri moderni vad numai probleme. Sunt prea multe lucruri care se intampla. Toate aceste posibilitati de bunatate sunt, de asemenea, la fel de capabile de rau. Iti ingreuneaza cititul si scartaitul. raid galati matrimoniale prox.us Le place paradigma mai functionala in care nu exista bucle, doar functii aplicate pe liste, sabloane de calcul mapate la unele date.
Exista momente in care modul in bucla este mai curat, mai ales cand exista doar o singura functie ingrijita si un tablou. Exista insa momente in care bucla de moda veche este mult mai simpla, deoarece poate face mult mai mult. Cautarea primului meci, de exemplu, este mai simpla cand va puteti opri imediat ce a fost gasit.
Mai mult, functiile de mapare incurajeaza codarea mai slaba atunci cand exista mai multe lucruri care trebuie facute datelor.
- matrimoniale online
- matrimoniale arad
- anunturi matrimoniale sibiu
- gds matrimoniale
- matrimoniale 2016 femei
- barbati matrimoniale sex
- matrimoniale iasi ziarul de iasi
- saituri matrimoniale
- publi 24 alba matrimoniale
- matrimoniale publi24.ro
- publitim arad matrimoniale
- xxx matrimoniale
- site-uri matrimoniale serioase
- matrimoniale adulti
- matrimoniale ludus
- matrimoniale alba
- matrimoniale timis publi24
- matrimoniale ploiești
- matrimoniale cluj
- anunturi matrimoniale
Imaginati-va ca doriti sa luati valoarea absoluta si apoi radacina patrata a fiecarui numar. Cea mai rapida solutie este sa mapam prima functie si apoi cea de-a doua, cu bucle peste date de doua ori. public24 oradea matrimoniale lamariteultrashake.com
Obiceiul prost de programare nr. 9: Ruperea buclelor la mijloc
Undeva de-a lungul liniei, un grup de creare a regulilor a declarat ca fiecare bucla ar trebui sa aiba un „invariant”, adica o afirmatie logica care este adevarata pe intreaga bucla. Cand invariantul nu mai este adevarat, bucla se termina. Este o modalitate buna de a ne gandi la bucle complexe, dar duce la interdictii nebune – cum ar fi interzicerea folosirii unei intoarceri sau a unei pauze in mijlocul buclei. Acesta este un subset al regulii care interzice declaratiile goto.
Aceasta teorie este in regula, dar de obicei duce la un cod mai complex. Luati in considerare acest caz simplu care scaneaza o matrice pentru o intrare care trece un test:
while (i <a. matrimoniale arad femei drdeanornish.de length) {
…
if (test (a [i])) apoi returneaza a [i];
…
}
Iubitorii invarianti de bucla ar prefera sa adaugam o alta variabila booleana, sa o numim notFound si sa o folosim astfel:
while ((notFound) && (i <a. matrimoniale slatina olt monetary.boydprice.net length) {
…
if (test (a [i])) atunci notFound = false;
…
}
Daca acest boolean este bine numit, este o bucata grozava de cod de auto-documentare. matrimoniale monitorul burnleyroadacademy.org Poate fi mai usor pentru toata lumea sa inteleaga. Dar este, de asemenea, un plus de complexitate. Si inseamna alocarea unei alte variabile locale si blocarea unui registru pe care compilatorul poate fi sau nu suficient de inteligent pentru a-l repara.
Uneori un goto sau un salt sunt mai curate.
Obiceiul de programare nr. 10: Redefinirea operatorilor si functiilor
Unele dintre cele mai amuzante limbaje va permit sa faceti lucruri cu adevarat jalnice, cum ar fi redefinirea valorii elementelor care par a fi constante. Python, de exemplu, va permite sa tastati TRUE = FALSE, cel putin in versiunea 2. matrimoniale sectorul 4 aaib.info 7 si anterioara. Acest lucru nu creeaza un fel de prabusire logica si sfarsitul universului; pur si simplu schimba semnificatia ADEVARA si FALSA. De asemenea, puteti juca jocuri periculoase ca acesta cu preprocesoarele C si in alte limbi. Alte limbi va permit sa redefiniti operatorii, cum ar fi semnul plus.
Aceasta este o intindere, dar vor exista puncte intr-un bloc mare de cod atunci cand este mai rapid sa redefiniti una sau mai multe dintre asa-numitele constante. Uneori, seful vrea ca codul sa faca ceva complet diferit. Sigur, ai putea sa lucrezi prin cod si sa schimbi fiecare aparitie sau ai putea redefini realitatea. Te poate face sa pari un geniu. In loc sa rescrieti o biblioteca uriasa, pur si simplu faceti un pic si face invers.
Poate ca e bine sa tragi linia aici. Nu ar trebui sa incercati acest lucru acasa, oricat de inteligent si distractiv poate fi. Este prea periculos – intr-adevar … sincer.
Peter Wayner contribuie la redactor la InfoWorld si autorul a peste 16 carti pe diverse teme, inclusiv software open source, masini autonome, calcule imbunatatite de confidentialitate, tranzactii digitale si steganografie.
Copyright © 2019 IDG Communications, Inc.








