- Istorie
- Design si implementare
- Lansare inițială
- C 2.0
- Versiune standardizată
- Actualizări recente
- Caracteristici C ++
- Limba populară
- Orientat pe obiecte
- Procedural
- Programare structurată
- Gestionarea memoriei
- pointeri
- Limbaj compilat
- Tipuri de date în C ++
- - Primar
- Int
- Pluti
- mangal
- Dubla
- Gol (Nul)
- bool
- - Secundar
- aranjamente
- pointeri
- Caracteristici
- - Definit de utilizator
- structuri
- Uniune
- Pentru ce este C ++? Aplicații
- Aplicații
- Sisteme de operare
- Compilatoare
- Jocuri
- Browsere web
- Internetul Lucrurilor
- Sisteme cloud / distribuite
- Acces la baze de date
- Exemple
- Biblioteci
- Avantaj
- Viteză
- Aproape de hardware
- Eficienţă
- Libertatea de a alege stiluri de programare
- Capacitatea de a descompune problemele complexe
- Posibilitatea de a detecta erorile înainte de executare
- Dezavantaje
- Utilizarea indicatoarelor
- Probleme de securitate
- Fără colector de gunoi
- Absența unui fir
- Programe compilate
- Poate fi complex
- Referințe
C ++ este o versiune îmbunătățită și extinsă a limbajului de programare C, care a fost dezvoltat de Stroustrup în 1979 ca parte a proiectului său de doctorat. Stroustrup a proiectat ceea ce el a numit „C cu clase”, care a fost numit ulterior C ++, pentru că el credea că limbajele de programare existente au limitări și nu erau cele mai bune pentru proiectele la scară largă.
De aceea, el a folosit C pentru a dezvolta limbajul de programare pe care îl căuta, deoarece C a fost un limbaj eficient și rapid de operat.
Sursa: pixabay.com
C ++ este un limbaj de programare cu scop general, rafinat și puternic. Acest limbaj compilat, de formă liberă, este cel mai potrivit pentru programatorii de nivel intermediar.
Cu toate acestea, cei care doresc să înceapă programarea cu C ++ vor descoperi că pot învăța rapid concepte de programare care le vor duce mult timp în carieră.
Este compatibil cu programarea orientată pe obiecte, având toate caracteristicile sale. Aceste concepte fac limbajul C ++ diferit și este utilizat în principal pentru dezvoltarea aplicațiilor într-un mod ușor și conceptualizat.
Istorie
Design si implementare
C ++ a fost proiectat și implementat în 1980 de Bjarne Stroustrup la AT&T Bell Labs, îmbinând frumos conceptele de programare procedurală și orientată pe obiecte.
În limbajul C, operatorul ++ este folosit pentru a crește o variabilă, manifestând astfel ideea lui Stroustrup că C ++ ar fi următoarea generație a limbajului C.
Lansare inițială
C ++ a fost lansat în 1985 pentru prima dată pe piață. În 1986, Stroustrup a publicat celebra sa carte numită The C ++ Programming Language, devenind manualul de referință al limbii.
C 2.0
Cea mai importantă versiune de C ++ a fost C 2.0 în 1989, documentată de Ellis și Stroustrup în The C ++ Annotated Reference Manual. Era un limbaj total orientat pe obiecte.
Versiune standardizată
Prima versiune standardizată, C ++ 98, a fost lansată în 1998. Acest standard internațional pentru C ++ a fost dezvoltat de Institutul Național de Standarde American (ANSI) și Organizația Internațională de Standarde (ISO).
În 2003, următorul standard C ++ 03 a fost publicat cu intenția de a corecta erorile identificate în C ++ 98 și de a asigura că limba are o portabilitate și o consistență mai mari.
Actualizări recente
Următoarea actualizare majoră a limbii a venit în 2011 și a fost numită C ++ 11. Mai multe funcții au fost adăugate pentru a îmbunătăți performanțele sale de rulare.
Apoi, C ++ 14 a fost lansat, unde s-au făcut unele îmbunătățiri și s-au remediat erorile C ++ 11. Următoarea versiune lansată în 2017 a fost C ++ 17, care are câteva funcții noi și o bibliotecă standard mult mai extinsă.
Caracteristici C ++
Limba populară
C ++ este utilizat pe scară largă de dezvoltatori, în principal în aplicații. Conține toate părțile importante, precum un limbaj de bază care furnizează toate blocurile de dezvoltare necesare, cum ar fi variabile, tipuri de date, litere etc.
Este al patrulea limbaj de programare cel mai popular, conform indicelui comunității de programare TIOBE.
Utilizările C ++ îl fac cel mai convenabil limbaj, datorită caracteristicilor sale. Este primul limbaj de pornire pentru orice dezvoltator care este interesat să lucreze cu limbaje de programare. Este ușor de învățat, deoarece este un limbaj bazat pe concept.
Sintaxa sa este foarte simplă, ceea ce face ușor de scris, iar erorile pot fi ușor replicate. Înainte de a folosi orice altă limbă, programatorii au preferat mai întâi să învețe C ++ și apoi să-i folosească pe alții.
Cu toate acestea, majoritatea dezvoltatorilor încearcă să rămână cu C ++ datorită numeroasei sale utilizări și compatibilității cu mai multe platforme și software.
Orientat pe obiecte
Actualizarea majoră de la C la C ++ este programarea orientată pe obiecte. Aceasta înseamnă că accentul este pus pe „obiecte” și manipularea din jurul acestor obiecte.
Urmează conceptele de polimorfism, moștenire, încapsulare și abstractizare, facilitând dezvoltarea și întreținerea.
Procedural
C ++ acceptă conceptul de proceduri și subrutine, care cuprind segmente de cod în blocuri reutilizabile, care pot fi „numite” pentru a efectua sarcini individuale.
Procedurile și subrutinele sunt cunoscute sub numele de funcții în C ++. O funcție poate lua zero sau mai mulți parametri și poate returna zero sau o valoare.
Programare structurată
Codul C ++ este modular, cu suportul funcțiilor, claselor și obiectelor, modulele adaptându-se liber.
Instrucțiunile de control al fluxului în C ++ sunt similare cu cele găsite în multe alte limbaje de programare structurate. Acestea sunt pentru a implementa logica deciziei și pentru, în timp, și pentru a implementa iterații sau bucle.
Gestionarea memoriei
C ++ acceptă alocarea dinamică a memoriei. Astfel, puteți elibera memoria alocată în orice moment.
pointeri
Sunt variabile care stochează adresa altei variabile. Indicatorul indică locația de memorie a unei variabile. C ++ acceptă indicatoarele pentru a oferi soluții la multe probleme care necesită acces la locația de memorie.
Limbaj compilat
Înainte de a putea fi executat, un program C ++ trebuie tradus în instrucțiunile native ale mașinii vizate de un program numit compilator. Fără compilare, niciun program C ++ nu poate rula. Compilatorul compilează programul C ++ astfel încât să poată fi rulat ulterior.
Tipuri de date în C ++
- Primar
Int
Este folosit pentru a stoca numere întregi. Memoria pe care o ocupă depinde de compilator (32 sau 64 biți). Ocupa 4 octeți de memorie atunci când lucrați cu un compilator pe 32 de biți.
Pluti
Este utilizat pentru a stoca fracții de până la 7 cifre zecimale Este cunoscut ca un singur tip de punct flotant de precizie. Ocupa 4 octeți de memorie.
mangal
Este folosit pentru a stoca un set de caractere. Poate include litere din alfabet, numere și, de asemenea, caractere speciale. Ocupă 1 octet de memorie, fiind cea mai mică unitate adresabilă dintr-o mașină.
Dubla
Folosit pentru stocarea fracțiilor până la 15-16 cifre zecimale. În general este cunoscut sub denumirea de tip flotant cu dublă precizie.
Gol (Nul)
Indică valoarea de retur zero sau nicio. Folosit în general pentru a atribui valoarea nulă la declararea unei funcții.
bool
Acest tip de date se referă la o valoare booleană sau logică. Poate lua valoarea de adevărat sau fals.
- Secundar
aranjamente
Este un set de date care au același tip de date, la care este accesat cu un nume comun.
pointeri
Sunt practic variabile care sunt utilizate pentru a stoca adresa de memorie a altei variabile.
Caracteristici
Este un grup de propoziții care îndeplinesc o sarcină specifică. Funcțiile sunt bibliotecile încorporate sau definite de utilizator.
- Definit de utilizator
structuri
Este un tip de date în care o colecție de diferite tipuri de date poate fi făcută și accesată printr-un obiect.
Uniune
Oferă capacitatea de a stoca diferite tipuri de date în aceeași locație de memorie.
Pentru ce este C ++? Aplicații
Aplicații
Multe aplicații pe sistemele Adobe sunt dezvoltate în C ++, precum Illustrator, Photoshop, Adobe Premiere și Image Ready.
Sisteme de operare
C ++ este utilizat în toate sistemele de operare majore, cum ar fi Linux, Windows și macOS, deoarece este un limbaj de programare la nivel scăzut.
Compilatoare
Majoritatea compilatoarelor sunt scrise în limba C ++. De asemenea, compilatoare care sunt utilizate pentru a compila alte limbi, cum ar fi C #, Java etc.
Jocuri
Servește la eliminarea complexității jocurilor 3D, contribuind la optimizarea resurselor. În plus, este compatibil cu opțiunea multiplayer din rețele.
Browsere web
Permite executarea rapidă și reprezentarea graficii, lucru esențial pentru utilizatorii actuali, care solicită conținut care poate apărea rapid în browserele web. C ++ a fost utilizat pentru a face browserele de internet Google Chrome și Mozilla Firefox.
Internetul Lucrurilor
Mai multe produse Internet of Things, cum ar fi ceasurile inteligente, mașinile, mașinile de spălat, routerele și comutatoarele, folosesc C ++ deoarece necesită un cod cât mai aproape de hardware.
Sisteme cloud / distribuite
Este utilizat în cloud în sisteme de stocare și sisteme distribuite, unde sistemele de fișiere scalabile trebuie să lucreze strâns cu hardware-ul, iar compatibilitatea cu diferite mașini este, de asemenea, critică.
Acces la baze de date
Este utilizat pentru a dezvolta software de baze de date open source. Un foarte popular software de administrare a bazelor de date folosit în organizații, MySQL, este scris în C ++ datorită beneficiilor pe care le oferă.
Există și alte aplicații bazate pe accesul la software-ul bazei de date, care sunt Wikipedia, Yahoo, YouTube, Quora etc.
Exemple
Acest program primește un utilizator întreg pozitiv și îl stochează în variabila n. Apoi, bucla for este executată, care verifică dacă numărul introdus este perfect divizibil cu io sau nu.
Bucla for începe cu o valoare inițială de i egală cu 2, crescând valoarea i cu fiecare iterație. Dacă numărul introdus de utilizator este perfect divizibil cu i, isPrime este setat pe false, iar numărul nu va fi un număr prim.
Cu toate acestea, dacă numărul nu este perfect divizibil cu i până când condiția de testare i <= n / 2 este adevărată, înseamnă că este divizibil doar cu 1 și același număr. Deci numărul dat este un număr prim.
Biblioteci
Dezvoltatorii au acces la multe funcții încorporate furnizate de limbajul C ++. Acest lucru economisește timp și accelerează dezvoltarea. Unele dintre fișierele antet C ++ cu funcționalitățile furnizate sunt:
- iomanip: conține manipulatoare de fluxuri care formatează fluxurile de date.
- iostream: conține funcții standard de intrare și ieșire.
- cstdlib: conține funcția de a converti numerele în text și invers,
- cmath: conține funcții de bibliotecă matematică, alocare de memorie, numere aleatorii și diverse alte funcții utile.
- fstream: conține funcții care efectuează intrarea și ieșirea fișierelor pe disc.
- ctime: conține funcția de a gestiona ora și data.
- memorie: conține clase și funcții utilizate de biblioteca standard C ++ pentru alocarea memoriei.
Avantaj
Viteză
Deoarece C ++ este o versiune extinsă de C, care este un limbaj de programare la nivel scăzut, acesta este unul dintre cele mai rapide limbaje disponibile. Acest lucru îl face util în acele domenii în care performanța necesară este critică.
Aproape de hardware
C ++ este unul dintre limbajele de programare cel mai apropiat de hardware. Acest lucru este foarte avantajos în acele spații în care software-ul trebuie să aibă o relație strânsă cu hardware-ul pentru a putea efectua o asistență la nivel scăzut.
Eficienţă
C ++ are o bibliotecă standard de șabloane care poate fi utilizată pe scară largă la codare. Aceste biblioteci oferă algoritmi eficienți care permit programatorului să economisească timp și efort, care altfel ar fi irosit creând cod.
Libertatea de a alege stiluri de programare
C ++ acceptă aproximativ șapte stiluri diferite de codificare, ceea ce îl face un limbaj de programare multi-model. Astfel, puteți selecta un stil care se potrivește unui anumit caz de utilizare, fără a fi necesar să folosiți obiecte.
Capacitatea de a descompune problemele complexe
C ++ poate rezolva intuitiv problemele complexe prin crearea de obiecte. În plus, funcțiile C ++ vă permit să împărțiți codul dvs. în blocuri de cod clare, ușor de înțeles și ușor de testat și modificat.
Posibilitatea de a detecta erorile înainte de executare
C ++ are un tip static, ceea ce înseamnă că compilatorul nu face presupuneri despre ceea ce scrie programatorul. Avantajul este că compilatorul poate să surprindă erori și eșecuri înainte de execuție, ceea ce poate economisi timp pe termen lung.
Dezavantaje
Utilizarea indicatoarelor
Pointerii sunt un concept relativ dificil de înțeles și, de asemenea, consumă multă memorie. Utilizarea greșită a indicelui poate determina sistemul să atârne sau să se comporte anormal.
O problemă majoră este atunci când datele indică aceeași din două puncte de pornire diferite, care provoacă o problemă semnificativă, generând probleme confuze în cadrul codificării.
Probleme de securitate
Deși programarea orientată pe obiecte oferă o multă securitate datelor care sunt gestionate, există încă unele probleme de securitate datorită disponibilității funcțiilor de prieten, a variabilelor globale și a indicatoarelor.
Fără colector de gunoi
C ++ oferă utilizatorului un control complet asupra gestionării memoriei computerului. Îi lipsește funcția unui colector de gunoi pentru a filtra automat datele inutile și, prin urmare, nu acceptă alocarea dinamică a memoriei.
Absența unui fir
C ++ nu acceptă fire încorporate. Conceptul de fir este relativ nou în C ++, deoarece nu a existat inițial. Acum C ++ este capabil să susțină funcțiile lambda.
Programe compilate
Ca limbaj de compilare, fișierele executabile produse de compilator din codul sursă nu sunt portabile și vor rula doar pe platforma țintă (hardware plus sistemul de operare) pentru care au fost compilate sau o platformă binară acceptată.
Poate fi complex
C ++ poate fi complex, deoarece permite clase, care sunt funcții cu același nume. Prin urmare, trebuie utilizat un sistem de manipulare a simbolurilor. Mai mult, este complex pentru un program la nivel înalt foarte mare. C ++ este utilizat frecvent pentru aplicații specifice platformei.
Referințe
- Simplilearn (2020). Programare C ++ pentru începători: istoric, beneficii și aplicații. Luat de la: simplilearn.com.
- Educba (2020). Utilizări ale C ++ în lumea reală. Luat de la: educba.com.
- Dmitrii Rassokhin (2020). Limbajul de programare C ++ în cheminformatică și chimie computațională. Journal of Cheminformatics. Preluat de la: jcheminf.biomedcentral.com.
- Edureka! (2020). Care sunt primele 10 caracteristici ale C ++? Luat de la: edureka.co.
- Aman Goel (2020). Limbă C ++: caracteristici, utilizări, aplicații și avantaje. Hack. Luat de la: hackr.io.
- Steemit (2020). C ++: Învață să codăm. Istoric, avantaje, dezavantaje ale limbajului C ++. Luat de la: steemit.com.
- Data Flair (2019). Aflați tipurile de date în C și C ++ cu Exemplu în doar 4 minute. Luate de la: data-flair.training.