Tipuri de limbaje de programare
Pentru a se arunca cu capul în programare nevoie doar de 3 lucruri:
- Decide în ce limbă / tehnologie pe care doriți să înceapă.
- Decide care resursa pe care doriți să învețe.
- Alocați timp pentru programare de sine.
Pare simplu, dar vă va lăsa o mulțime de timp pe cercetare pentru a decide ce ti se potriveste si ce resurse de studiu.
Au prezentat pe scurt argumente pro și contra. În acest articol, am să adere la împărțirea limbilor la un nivel scăzut, mediu și ridicat, dar o astfel de clasificare este, desigur, nu singurul.
nivel scăzut
Exemple: C, C ++, Assembler.
+ Control deplin peste tot aproape; utilizați doar ceea ce aveți nevoie.
- Control suplimentar înseamnă o complexitate suplimentară, care poate face sarcini simple, aparent mai dificil de implementat.
+ control mai mare asupra memoriei; poți să faci ceva care este aproape imposibil în alte limbi.
- Gestionarea memoriei poate deveni rapid foarte complicat.
+ Acesta vă va permite să înțeleagă mai bine ceea ce se întâmplă în spatele scenei în limbi de nivel înalt și să învețe să aprecieze abstractizare.
- ușor să sape în sintaxa și mai în detaliu, mai degrabă decât să înțeleagă conceptul și imaginea de ansamblu.
+ Motivantă să se gândească la eficiență.
- Necesită optimizare preliminară.
+ Este motivant să se gândească la arhitectura în avans.
- Modificări în arhitectura rău poate fi dureros. O arhitectură bună greu de a veni cu.
- standard de bibliotecă relativ slabă înseamnă că trebuie să se bazează adesea pe terțe părți, sau să reinventeze roata.
- Este necesar de multe ori pentru a insera piese auxiliare de cod (șabloane), care mărește timpul de a se dezvolta.
nivel mediu
Printre caracteristicile frecvente: se concentreze pe abstractii, dactilografiere statică puternic, mediu de rulare, restricțiile privind accesul direct la memorie.
+ Gestionarea memoriei este opțională, dar o poti face singur, dacă doriți.
- Până acum, trebuie să înțelegeți cum funcționează memoria și modul de colectare a gunoiului. dar această limbă nu este propice pentru învățare.
+ biblioteca standard Rich.
- Multe dintre abstractizare preveni novice la conceptele de bază, după cum nu este clar de ce au fost create în acest fel.
+ Compilat în bytecode. simplificarea interacțiunii cu alte limbi.
- cod de biți necesită un set de mediu de rulare.
- Până în prezent, de a introduce de multe ori piese standard de cod (șabloane), în ciuda prezenței abstracțiuni.
la nivel înalt
Printre caracteristicile comune întâlnite: o abstracție puternică, dactilografiere dinamică și / sau slab, de gestionare a memoriei complet independente și / sau a prezenței runtime.
+ Abstracție face sarcini complexe simplu.
- Add-in-uri pentru punerea în aplicare a abstractizari reduce productivitatea.
+ În general, totul este simplu și intuitiv, chiar și atunci când se fac modificări.
- Arhitectura poate suferi din cauza destul de ușor de a face modificări aproape oriunde în loc să-l facă în cazul în care aveți nevoie de ea.
+ Relativ mari biblioteci standard, înseamnă că ceea ce vrei să faci, probabil, deja puse în aplicare și disponibile.
- Din cauza pieselor ascunse dificil pentru a afla cauzele problemelor pe măsură ce apar.
+ Mai mică decât insereaza codul standard (șabloane) - sintaxa este mult mai ușor.
- dactilografiere dinamică complică căutarea de erori fără rularea codului.
concluzie
Aceasta este doar o imagine de ansamblu, dar ar trebui să dea o bază bună pentru persoanele care nu au nici o idee despre limbaje de programare. Dar fiecare programator care începe să efectueze lor de cercetare pentru a afla ce sunt modurile în predare de programare. De asemenea, ține cont de faptul că lista de argumente pro și contra nu este la fel de important ca și cea pe care o puteți învăța limba specifică. Dacă doriți să învățați cum să gestioneze memoria, trebuie să lucreze cu un limbaj de nivel scăzut și să ia toți factorii care contribuie.