De ce programarea C este încă de învățat

De ce programarea C este încă de învățat / Programare

În 2016, C a fost al 9-lea cel mai activ limbaj pe GitHub, cu solicitări de tragere de 202k în anul. Comparați aceasta cu cele trei limbi de început: JavaScript cu solicitări de tragere de 1,604k, Java cu solicitări de tragere la 763k și Python cu 744 solicitări de tragere. Ruby, PHP, C ++ și CSS au bătut și C.

La prima vedere, poate părea că C a fost lăsat în praf de limbi mai noi, mai proaspete și mai interesante - C este 45 de ani, dar GitHub nu este exact cea mai exactă imagine Ce este Git și de ce ar trebui să utilizați controlul versiunii Dacă sunteți dezvoltator Ce este Git și de ce ar trebui să utilizați controlul versiunii Dacă sunteți un dezvoltator dezvoltatorii web, o mare parte a timpului pe care avem tendința de a lucra pe site-urile de dezvoltare locală, apoi încărcați totul când suntem gata. Acest lucru este bine atunci când este doar tine și schimbările sunt mici, ... Citeste mai mult despre industria de software. GitHub are un imens tendință față de open source și trendiness.

C nu este o limbă moartă. De fapt, IEEE Spectrum revista a clasat-o ca fiind limba de top 2 în 2017 înainte de Java, C # și JavaScript. Dacă ați fi învățat C în acest an, ar fi nu fie o pierdere a timpului sau a energiei. Iată cinci motive pentru care.

1. Înțelegerea mai profundă a computerelor

S-ar putea să fi auzit că C este a “limba inferioară.” În contextul programării, “nivel” este o descriere a apropierii de setul de instrucțiuni nativ al computerului. Cu cât este mai mică nivelul, cu atât mai aproape de scrierea codului mașinii. Cu cât este mai mare nivelul, cu atât mai multă abstracție se face de limbă pentru a vă îndepărta de codul mașinii de scriere.

C este un limbaj de nivel inferior cu o anumită abstractizare. Aveți posibilitatea să scrieți un cod destul de aproape de hardware și să manipulați direct memoria, în timp ce într-un limbaj de nivel superior, cum ar fi Java, limba în sine se ocupă de memorie printr-un colector de gunoi.

Credit de imagine: Casimiro PT prin Shutterstock

Deși acest lucru face parte din ceea ce face C dificil de învățat, de asemenea, de ce programatorii C tind să fie mai în acord cu modul în care funcționează computerele. Pentru a scrie un cod C bun, trebuie să gândiți ca un computer care gândește: gestionarea memoriei, fluxurile de intrare / ieșire, ordinea octeților etc..

Limbi de nivel mai scăzut decât C există (de exemplu, Asamblarea), dar C este la fel de scăzut ca și cum veți dori să mergeți. Acesta păstrează cea mai mare parte a puterii și controlului limbilor inferioare, dar este abstractizat doar pentru un cod care poate fi citit de om și care nu vă va face să vă rupeți ochii.

2. Ridicați alte limbi mai ușoare

Unii programatori le place să spună asta “odată ce cunoști un limbaj de programare, le cunoști pe toate.” Deși este un sentiment încurajator, nu este chiar adevărat - dacă nu-l înveți pe C.

Lucrul este că trecerea de la o limbă la alta este cea mai netedă când te miști în abstracție. Mergând de la un limbaj de nivel inferior, cum ar fi C, la un limbaj de nivel superior, cum ar fi Python, este destul de ușor deoarece Python vă ține mai mult mâna. Dar mergând de la Python la C? Nu asa de usor.

Credit de imagine: Sashkin prin Shutterstock

Sau ia în considerare un alt exemplu. C # este o primă limbă populară pentru începătorii de azi, mai ales pentru cei care doresc să intre în dezvoltarea jocului (pentru că motorul iubit de unitate folosește C # 5 Free Game Software Development Tools pentru a vă face propriile jocuri 5 Iată cele mai bune programe și instrumente gratuite de dezvoltare a jocului pe care le puteți utiliza pentru a începe să vă faceți jocul de vis astăzi. Dar, chiar dacă limbajul C # este foarte abstracționat și ușor de utilizat, începătorii se confundă adesea pentru că nu înțeleg ceea ce este abstractizat.

Prin învățarea C, învățați în esență fundamentele programării moderne. Dacă înțelegeți cu adevărat C, veți putea lua orice altă limbă, deoarece aproape orice limbă modernă este mai înaltă decât C.

3. O mai bună apreciere a altor limbi

Nivelul scăzut al lui C vine la un cost: complexitatea și tediul.

Gândește-te cum ar fi să faci un sandwich de șuncă. Într-un limbaj de nivel superior, este posibil să utilizați un makeSandwich (“șuncă”) care produce un sandwich gata de consumat. În C, va trebui să vă scrieți propria funcție makeSandwich () care adună și pregătește toate ingredientele necesare, asamblează sandwich-ul, apoi pune totul înapoi.

Credit de imagine: Zakharchuk prin Shutterstock

Pe de o parte, capacitatea de a controla fiecare aspect al sandwich-ului este minunat. S-ar putea chiar să puteți scrie un makeSandwich mai rapid () care sări peste anumiți pași care nu vă interesează. Dar, uneori, vrei doar ca cineva să-ți facă un sandwich, și mâncarea făcută pentru tine are adesea un gust mai bun decât mâncarea pe care ai făcut-o.

Cele mai multe limbi moderne s-au născut ca răspuns la deficiențe într-un alt limbaj: C ++ ca răspuns la C, Java ca răspuns la C ++, C # ca răspuns la Java etc.. Prin învățarea C, puteți înțelege mai bine de ce anumite limbi sunt proiectate așa cum sunt acestea și să aprecieze mai bine confortul oferit de limbile de nivel superior.

4. Proiecte și aplicații neconvenționale

Majoritatea limbajelor moderne de programare sunt utilizate pentru aceleași trei lucruri: aplicații de afaceri, aplicații web și mobile și analiză de date.

Limbajele de nivel superior sunt excelente pentru acestea, deoarece nu este nevoie să se scufunde în detaliile zgârcite ale arhitecturii computerelor. În schimb, ciclurile de dezvoltare rapidă și regele robust de domnie - două dintre principalele beneficii ale utilizării unui limbaj superior.

Credit de imagine: inspirat prin Shutterstock

Dar dacă doriți să dezvoltați software care interfețează direct cu hardware-ul, veți avea nevoie de un limbaj mai mic - iar C este cel mai folosit. Aplicații notabile includ sistemele de operare, limbile de programare și compilatoare, sistemele încorporate, motoarele de jocuri etc..

De exemplu, kernel-ul Linux este scris în C și Assembly. Limbi populare precum Python, PHP, Perl și Ruby sunt implementate în C. Știați că chiar și C este scris în C? Și deoarece multe sisteme încorporate au limite stricte de resurse, C este adesea limba aleasă deoarece are foarte puține cheltuieli generale.

5. Îmbunătățiți-vă oportunitățile de locuri de muncă

Există două modalități de a vă garanta un loc de muncă în industria de software:

  1. Specializați în poziții cu cerere ridicată.
  2. Specializați în poziții de aprovizionare redusă.

Cereri de locuri de muncă înalt 10 Posturi de programare pe calculator care sunt în cerere chiar acum 10 locuri de muncă pentru programarea calculatoarelor care sunt în cerere chiar acum Deoarece aterizarea unei lucrări de programare poate fi dificilă în peisajul actual, vă recomandăm să vă concentrați asupra uneia dintre următoarele concentrații pentru a vă îmbunătăți șansele de succes. Citește mai multe implică limbi moderne care pot fi utilizate în mai multe domenii: JavaScript, Python și Java sunt cele mai bune exemple. Posturile cu un nivel scăzut de aprovizionare au tendința de a implica limbi arhaice, sisteme moștenite și proiecte care nu sunt aspre. C este popular, dar programatorii C scad.

Deoarece cele mai multe tabere de codificare boot Coding Boot Camp pentru începători: ar trebui să luați una? Coding Boot Camp pentru începători: ar trebui să luați una? Taberele de încărcare cu codificare cuprinzătoare oferă o intrare în spațiul de codare. Află ce sunt, ce vei învăța și dacă e potrivit pentru călătoria ta de programare! Citiți mai multe și cursuri de formare online împingeți programatori newbie către limbi de înaltă cerere, ați putea să vă separați prin învățarea C în schimb. Acest lucru poate deschide multe oportunități de locuri de muncă care nu sunt disponibile în limbile de nivel superior.

Noțiuni de bază cu C

C nu este ușor de învățat, mai ales dacă este primul tău limbaj de programare. De aceea vă recomandăm să citiți aceste trei articole înainte de a vă scufunda în: întrebări pentru a vă întreba înainte de a învăța să codificați, cum să învățați programarea fără stres și trucuri pentru mastering un nou limbaj de programare 7 Trucuri utile pentru mastering un nou limbaj de programare 7 Trucuri utile pentru Mastering un nou limbaj de programare Este bine să fiți copleșiți atunci când învățați să codificați. Probabil veți uita lucrurile cât de repede le veți învăța. Aceste sfaturi vă pot ajuta să păstrați mai bine toate informațiile noi. Citeste mai mult .

Dar dacă sunteți serios despre învățarea C, cu siguranță începeți cu C Programming Language, ediția a 2-a (adesea denumită “K & R”). Este în principiu biblia de programare C. Este destul de bătrână, dar totul în el încă se aplică lui C astăzi. După ce ați terminat, puteți să citiți despre modificările care au avut loc în revizuirile de limbi C89, C99 și C11.

Dacă nu vă puteți permite această carte, atunci începeți cu Cartea C. Nu mai este disponibilă, dar este disponibilă online în format HTML în întregime.

Tu ce crezi? Este C depășită și inutilă sau ar trebui noi programatori să învețe încă înainte să exploreze limbi mai moderne? Împărtășiți-vă gândurile cu noi de mai jos!