Računala Windows Internet

Najzanimljiviji programski jezik. Suvremeni programski jezici i njihova uporaba

Od uvođenja prvog programskog jezika 1957 visoka razina Fortran je prošao gotovo 60 godina i ne čudi što je programiranje skočilo naprijed kroz tako dugo vrijeme. Pojavile su se nove tehnologije, novi koncepti i programske paradigme i, naravno, novi jezici. U pravilu je stvaranje programskog jezika posljedica zahtjeva vremena: novi zadaci često zahtijevaju nove alate za njihovo rješavanje, koji će posao obaviti bolje od svojih prethodnika. S tim u vezi svake se godine pojavljuje nekoliko novih jezika koji upijaju sve najbolje što se nakupilo desetljećima praktičnog programiranja i istovremeno donose nešto novo. U ovom će se članku raspravljati o nekim od najzanimljivijih programskih jezika koji su se pojavili nedavno, ali su se već etablirali kao moćni i moderni alati za programere.

Druge su vrste za koje imate jednostavan osjećaj, još uvijek se sjećate kako ste navečer uz prigušeno svjetlo noćnog svjetla slušali svoj toranj u istoj kaseti tvrdeći da ne postoji način da se poboljša glazba, muzika. Na samom kraju, još uvijek postoje oni koje nikada ne slušate, ali znate da su oni svojevrsni predak, preteča glazbene umjetnosti.

Dakle, mijenjajući teme iz glazbe u programiranje, možemo pokušati pridružiti neke jezike popularnosti - na primjer, u prvoj kategoriji koju bismo mogli uhvatiti. U četvrtoj kategoriji jedini pravi izbor možda je Assembler predak same ideje programiranja. Kako se s vremenom promijenila popularnost programskih jezika?

Brz

Slobodan jezik Opća namjena napravio od strane Applea za razvoj za iOS i OS X. Jezik je kompatibilan s Objective-C, što omogućuje korištenje oba jezika u jednom programu. Razvoj jezika započeo je 2010. godine pod vodstvom Chrisa Lattnera, Appleova voditelja razvoja. Swift je već posudio ideje od mnogih postojećih jezika vrlo različiti smjerovi: od C ++ do Haskella. Službeno predstavljanje jezika dogodilo se u lipnju 2014. zajedno s priručnikom od 500 stranica o tome kako ga koristiti. Na Swiftu možete raditi u programskom okruženju Xcode 6 za iOS. Jezična verzija 3.0 dodaje podršku za Linux.
Jezik je mnogo preuzeo od Objective-C; u isto vrijeme pozicioniran je kao sigurniji i brži. Prema programerima, Swift kod radi 1,5 puta brže od sličnog Objective-C koda.

Ažurira se mjesečno. Rezultati popularnosti izračunavaju se na temelju broja stručnjaka uključenih u razvoj softver, broj dostupnih tečajeva za taj jezik i broj vanjskih pružatelja usluga povezanih s tim jezikom. Kreatori vjeruju da se popularnost uglavnom izražava u broju ljudi koji žele naučiti jezik.

Valja napomenuti, međutim, da izbor nije bio samo izbor - jedna je osoba mogla izabrati nekoliko različiti jezici programiranje. Ovaj dijagram nije reprezentativan za programske jezike- dotiče se popularnosti tehnologije tijekom četiri godine.

Hack

Jezik koji je razvio Facebook; izgledom sličan PHP -u. Programski kod na Hacku izvršava se na posebnom virtualnom stroju koji također podržava PHP. Jezik je otvoren - izvorni kodovi Hack je otvoren za sve koji žele sudjelovati u njegovom poboljšanju. Iako se jezik temelji na dobro poznatom PHP-u, programeri su uspjeli stvoriti potpuno novi i vrlo pouzdan alat za brzo stvaranje web stranice i druge aplikacije. Rezultat je toliko impresionirao Facebook da su svi projekti tvrtke prebačeni u Hack - činjenica koja govori sama za sebe.

Kao što smo ranije napisali, rezultati se ažuriraju mjesečno i, po našem mišljenju, točnije opisuju popularnost ovog jezika. U tablici za određeni mjesec rezultati su opisani u postocima - što jezik ima više postotaka, to je popularniji. Tablica također uključuje promjene za isti mjesec prethodne godine.

Još pet najpopularnijih jezika. Tvorci ovog dijagrama došli su do vrlo originalnog pristupa. Također je vrijedno napomenuti da je ovo grafikon koji se stalno ažurira! Statistika za tri najpopularnija jezika. U nastavku je tablica koja prikazuje popularnost jezika od travnja ove godine, kao i promjenu popularnosti u posljednjih dvanaest godina. Slika 9 Grafikon prikazuje promjene posljednjih godina.

Julija

Novi jezik za matematičke izračune. Na sintaksu jezika utjecali su Matlab i drugi matematički jezici, ali postoje i značajne razlike. Sam jezik je napisan na C i C ++; programski kod jezika izvršava se na virtualnom stroju LLVM, za koji je Julia opremljena JIT kompajlerom. Zahvaljujući kompilaciji postignuta je velika brzina rada na aplikacijama, usporediva s programima napisanim u C ++.
Jezik podržava distribuirano računanje, preopterećenje funkcija i paralelizaciju koda. Glavni zadatak Julije: rad s velikim brojem izračuna uz održavanje visokih performansi. U te je svrhe jeziku dodana i podrška za računalstvo u oblaku. Osim čisto matematički problemi uz pomoć Julije moguće je i stvaranje programa opće namjene.

Kao što vidite, popularnost određenog jezika varira ovisno o tome kako se uči. Jasno je, međutim, da se neki od favorita pojavljuju među najpopularnijim programskim jezicima. Gledajući podatke iz ovih izvora, možete pokušati pronaći neke programske trendove - i pokušati predvidjeti kako će se tržište ponašati u budućnosti. Također je vrijedno napomenuti da najpopularniji ne znači da je jezik najbolji - to se jasno može vidjeti na primjeru glazbenih skupina.

A što mislite o popularnosti jezika? Ili možda bolje - s kojom biste grupom usporedili svoj omiljeni programski jezik? 🙂. Anonimni tehnički profil i specifična financijska očekivanja samo su neke od značajki koje razlikuju platformu. Registrirajte se i saznajte kako vas poslodavac vidi.

Strijelica

Jezik koji je Google stvorio kao zamjenu za JavaScript. Zbog nekih "temeljnih nedostataka" u JavaScriptu koji se ne mogu popraviti, odlučeno je da se napravi novi jezik za web programiranje. Istodobno, jezik je morao biti stvoren što je moguće sličnije postojećim, kako bi se pojednostavio prijelaz i naučilo pridošlice. Trenutno se Dart programi izvode na dva načina: kroz virtualni stroj Dart VM i prijevodom na JavaScript. U budućnosti će Dart zamijeniti JavaScript kao univerzalni jezik za web programiranje.

Na koje bi se programske jezike trebali usredotočiti sljedećih mjeseci? Što biste trebali uzeti u obzir pri traženju treninga i konferencija? Koji programeri jezika neće imati problema s pronalaženjem zanimljivih ponuda za posao? Indeks se ažurira jednom mjesečno i uzima u obzir samo potpune jezike u Turingovom smislu. Kreatori ističu da se indeks ne odnosi na jezik koji je najbolji ili kada je većina redaka koda stvorena.

Krajem siječnja prošle godine postolje se nije promijenilo, a Java je bila na prvom mjestu u nizu zaredom. Koliko je popularan ovaj jezik? To pojednostavljuje izradu aplikacija, kao i mogućnost njihovog proširenja. Preveliki plus je i generiranje koda neovisno o platformi.

Upišite Skripta

Drugi jezik koji se postavlja kao zamjena za JavaScript. Poznati Anders Hejlsberg, autor Delphi, C # i Turbo Pascal, postao je programer novog jezika. Skripta tipa je otvoren jezik unatrag kompatibilan s Java Script. Prevoditelj pretvara kod skripte tipa u JavaScript, koji zatim izvršava preglednik. Za razliku od JS-a, novi jezik podržava sve mogućnosti objektno orijentiranog programiranja, kao i povezivanje modula. Type Script i JavaScript kompatibilnost omogućuju korištenje postojećeg JavaScript koda u novim projektima Type Script, uključujući popularne JS knjižnice. Postoji podrška za generičku paradigmu programiranja.

Svi ostali alati su besplatni. Tu je i vrlo dobra dokumentacija, što je još jedno olakšanje. Pomaže i u radu programera. Neki od nekompliciranih poslova koje knjižnica može učiniti za vas. To omogućuje programerima ovog jezika da istinski uživaju u slobodi izbora na radnom mjestu. Porast popularnosti, zajedno s malom krivuljom učenja, privukao je mnoge nadobudne programere koji su popularizirali mnoge neučinkovite tehnike programiranja.

Drugi primjer je usredotočenje na ispravnu uporabu objektno orijentiranih programskih koncepata, većina okvira i knjižnica prenosivih na takav kôd, te poticanje korisnika da učine isto. Primjeri su sadržaj polja kao naziv objekta ili rezultat anonimne funkcije umjesto naziva klase.

JavaScript je dobar za dodavanje osnovne interaktivnosti web stranicama, ali kada je kôd vaše web aplikacije tisuće redaka koda, njegove slabosti postaju očite. Zato je Google stvorio Dart, jezik za koji vjeruje da će biti novi maternji jezik za programiranje weba.

Sintaksa za proglašavanje anonimne klase vrlo je slična onoj u drugim jezicima, a slučajevi upotrebe su slični. Iz tih su razloga mnoge pogreške zamijenjene iznimkama. Jezik već nudi dobre sintaktičke elemente za rješavanje iznimki koje su prirodnije i lakše se pišu nego hvatanje i rukovanje pogreškama.

Na primjer: sada možete deklarirati metode koristeći nazive poput "lista" i ili "za"; to još nije bilo moguće jer su ti nazivi zapravo ključne riječi jezika. Međutim, prošle je godine skupina ljudi odlučila da je vrijeme za to, i to su i učinili.

Kao i JavaScript, Dart koristi sintakse i ključne riječi slični onima koji se koriste u jeziku C. Međutim, jedna značajna razlika je ta što se JavaScript temelji na prototipovima, objekti u Dartu definirani su pomoću klasa i sučelja, kao u C ++ ili Javi. Dart također omogućuje programerima da dodatno definiraju varijable sa statičkim tipovima. Ideja je učiniti Dart poznatim, dinamičnim i fleksibilnim poput JavaScripta, a istovremeno omogućiti programerima da pišu kôd koji je brz i jednostavan za izvođenje, a teško napraviti teško pronaći greške.

Osim toga, snažnija podrška za Unicode znakove potvrđuje potrebu da web stranice budu dostupne na mnogim jezicima, osobito u Aziji i Africi, gdje prodor interneta, a time i novi potrošači, brzo rastu. Snažan razvoj i sazrijevanje okvira, knjižara i alata posljednjih godina i dalje je snažan dokaz u tom smislu. Nova glavna verzija nije revolucija, već samo evolucija, ali donosi mnoga poboljšanja koja će programerima olakšati život.

Za pristup tečajevima polaznici ne moraju imati znanje programiranja, jedini uvjeti za registraciju su pristup internetu i adresa E -pošta... Tinejdžeri pohađaju tečaj kodiranja! počinje 26. rujna i posvećen je djeci od 12 do 17 godina koja žele naučiti kodirati.

Postoji nekoliko mjesta na kojima možete koristiti Dart. Dizajniran je za pokretanje na klijentu ili na poslužitelju (a la Node.js), ali jedini način za pokretanje Dart koda na strani klijenta je njegovo unakrsno prevođenje u JavaScript. Međutim, ni nakon toga neće se pokrenuti u svim preglednicima. No, budući da je Dart objavljen pod besplatnom BSD licencom, svaki prodavač koji se slaže s Googleovim uvjetima slobodan je koristiti ovaj jezik u svojim proizvodima. Googleu preostaje samo uvjeriti cijelu industriju.

Nakon svake lekcije od učenika se traži da omoguće kratke testove kako bi provjerili jesu li primljene informacije. Za završetak tečaja potrebno je samo 6 sati, a diplomanti će konačno moći stvoriti vlastitu videoigru. Obrazovanje o kodiranju za mlade učenike upućeno je roditeljima, učiteljima i pojedincima uključenim u izvannastavne aktivnosti za djecu od 8 do 11 godina, a počinje također 26. rujna. Bez obzira na razinu kodiranja, ovaj je tečaj osmišljen kako bi pomogao roditeljima i učiteljima da potaknu djecu na sudjelovanje u kodiranju i programiranju od najranije dobi.


Programski jezik koji se proučava # 2: Cejlon

Gavin King negira da bi Cejlon, jezik koji razvija u Red Hat -u, trebao postati "Java ubojica". King je poznat kao tvorac okvira za hibernacijsko objektno mapiranje objekata za Javu. On voli Javu, ali misli da ima još mnogo toga za poboljšati.

Prvi softver u samo 4 tjedna

Vrijeme pomicanja je 4-6 sati, tečaj je Engleski jezik... Tečajevi će pomoći djeci da naprave prve korake u svladavanju jednostavnog i zabavnog programskog jezika. Struktura tečaja uključuje 4 tjedna nastave u modernom formatu i jedan tjedan posvećen ispitu za napredovanje.

Tečaj započinje uvodom u razmišljanje, nužnom vještinom u stvaranju novih proizvoda, posebno softvera. Nakon svake video lekcije započinju kratki tjedni kvizovi i teme koje će sudionici riješiti kako bi brzo dobili informacije koje su prikupili.

Neke stvari koje King ne voli u Javi su opširna sintaksa jezika, nedostatak prvorazrednih funkcija i funkcija višeg reda te nedostatak podrške za metaprogramiranje. Posebno ga žalosti nedostatak deklarativne sintakse za definiranje strukturiranih podataka, za koju King kaže da "izjednačava Javu s XML -om". Ceylon nastoji riješiti sve ove probleme.

Cilj razvoja ove platforme temeljio se na trenutnoj potrebi za učenjem u prikladnom formatu neovisno i brzinom svakog učenika. Koja će se područja najviše koristiti ove godine kada postoji akutni nedostatak osoblja, koja su povezana područja koja omogućuju lagano stručno prekvalificiranje, koje su najbolje plaćene kombinacije vještina i popis predloženih fakulteta koji će najvjerojatnije pronaći posao u budućnosti - sve ove goruće stavke u ovaj trenutak kada je mjehurić riječ koja najbolje odražava stanje na tržištu rada.

King i njegov tim ne planiraju izumiti kotač. Neće postojati cejlonski virtualni stroj, cejlonski prevoditelj će proizvesti java bytecode koji se može pokrenuti na JVM -u. No Ceylon će biti više od običnog prevoditelja. Strateški cilj ovog projekta je stvaranje novog razvojnog kompleta za Ceylon, koji će zamijeniti Javu, koja je, prema Kingu, "napuhana", neugodna i još uvijek nije temeljito modernizirana.

U posljednjem dijelu našeg intervjua razgovarali smo o industrijama koje su trenutno na valu, područjima i budućim vještinama, ali i nekim detaljima iza kulisa, kao što su troškovi bonusa za strane jezike kao dijela paketa plaća ili pravo vrijeme za napuštanje tvrtke u kojoj radite neko vrijeme.

Web stranica: Koja će područja ove godine najviše zapošljavati u Rumunjskoj? Ima još zamjena, postoji novi odjel, ali ništa spektakularno. To su područja gdje se preuzimaju velike obveze. No, specijalizacije s akutnim nedostatkom osoblja?

Ovo je težak zadatak, a Red Hat do sada nije objavio nikakve alate za Ceylon. King kaže da bi kompajler trebao izaći ove godine. Ali ne očekujte uskoro bilo kakav softver napisan na "100% čistom Cejlonu".


Proučeni programski jezik # 3: Idi

Traže ga u nekim dijelovima zemlje - Brašovu, Sibiuu, gdje je koncentrirana relevantna industrija - i to je jako, jako teško. Opet, u području kvalitete, tehničkom području. Morate imati iskustvo i iskustvo u određenom području, a zatim prenijeti kvalitetu ili provesti istraživanje u tom području. Ima ih puno i traže ih.

Svaka specijalizacija uz strani jezik dobro je plaćena

Ali u smislu kombinacije vještina? Koje su najbolje plaćene? Nemam običaj govoriti o plaćama jer su razlike jako, jako velike. Budite svjesni da se to odnosi i na razini početna razina v servisni centri gdje je potrebna korisnička podrška i potrebno je dobro govoriti strani jezik.

Kôd F # donekle je sličan kodu OCaml, ali sadrži vlastitu zanimljivu sintaksu. Na primjer, radi lakšeg znanstvenog izračunavanja, numerički tipovi podataka u F # mogu biti jedinice. F # također nudi konstrukcije za olakšavanje asinkronog I / O, paralelizaciju CPU -a i izlazne procese na GPU.

Najlakše preći na prodaju

Na primjer, njemačkom se plaća dodatno 400 do 600 leja uz plaću ove razine. Koliko je lako preći s jedne domene na drugu? Općenito, postoje područja koja imaju tendenciju da budu šireg opsega. Možete biti ako promijenite tvrtku.

Ili budi tako dobar da ne. No, postoje ljudi koji se žele preseliti i mogu otići na posao. Financijski je teško migrirati, obično prelazeći s financijskog na poslovni. Općenito, da biste postali generalni direktor, morate proći posao, prodaju, marketing, operacije, ali i malo financija.

Nakon dugog sazrijevanja u Microsoftovom istraživanju, F # se sada isporučuje s Visual Studio 2010. Još bolje, ali ne i za cijelu korporaciju, Microsoft je učinio F # kompajler i root knjižnicu dostupnom pod Apache licencom otvorenog koda. Možete započeti s njim besplatno, pa čak i koristiti ga na Mac i Linux sustavima (koristeći Mono runtime).

Najlakši način je skočiti u prodaju, obično ako imate skup vještina koje će vam pomoći u tom smjeru. On lako može prijeći na korisničku podršku, opet ako imate komunikacijske vještine, od prodaje do marketinga, od marketinga do prodaje. Tehnička područja obično migriraju u odgovarajuće tehničko područje.

O odlasku iz tvrtke morate razmisliti.

Kada je najbolje napustiti tvrtku prije nego nastavite s njom? Najbolje vrijeme napustiti tvrtku je mjesto gdje ste naučili sve što trebate naučiti i imate nenadmašnu priliku za svoju profesionalnu budućnost kojoj se želite obratiti.


Proučavani programski jezik # 5: Opa

Web programiranje je vrlo složeno. Čak se i najjednostavnije web aplikacije sastoje od beskrajnih redova napisanih na više jezika: HTML i JavaScript za klijenta, Java ili PHP za poslužitelj, SQL za bazu podataka itd.

Opa ne zamjenjuje nijedan od ovih jezika zasebno. Štoviše, pokušava ih zamijeniti sve odjednom, predstavljajući potpuno novu paradigmu u web programiranju. U Opa aplikaciji, korisničko sučelje klijenta, logika poslužitelja i I / O baza podataka napisani su na istom jeziku, Opa.

To se postiže kombinacijom okvira na strani klijenta i poslužitelja. Opa prevoditelj odlučuje gdje će se izvoditi ovaj program(na klijentu, poslužitelju ili i tamo i tamo), a zatim izvršava svoj kôd. Za klijentske programe, Opa se prevodi u odgovarajući JavaScript kod, uključujući AJAX pozive.

Naravno, s ovakvim integriranim sustavom na kraju bi trebalo biti nešto čarobno. Opa runtime integrira vlastiti web poslužitelj i sustav za upravljanje bazom podataka koji se ne može zamijeniti samostalnim alternativama. Međutim, to možda i nije toliko važno s obzirom na mogućnost razvoja modernih web aplikacija zasnovanih na podacima sa samo nekoliko desetaka redaka koda. Opa je besplatna i trenutno je dostupna za 64-bitne Linux i Mac OS X platforme, dok su drugi portovi u razvoju.


Proučavani programski jezik # 6: Fantom

Želite li izraditi Java ili .Net aplikacije? Ako pišete na Fantomu, možete napraviti izbor, pa čak i promijeniti platformu. To je zato što je Fantom od samog početka izgrađen za mobilnost na više platformi. Projekt Fantom ne sastoji se samo od prevoditelja koji može ispisati bajt kod za JVM ili .Net CLI, već i skup API -ja koji razdvajaju Java i .Net API -je i stvaraju dodatni sloj prenosivosti.

Planira se dodatno povećati mobilnost Fantoma. Kompilator iz Fantoma u JavaScript već je dostupan, a sljedeći ciljevi mogu uključivati ​​projekt prevoditelja LLVM, Parrot VM i Objective-C za iOS.

Fantom se besplatno distribuira pod Akademskom besplatnom licencom 3.0 i dostupan je za Windows i Unix slične platforme (uključujući Mac OS X).


Studirao programski jezik # 7: Zimbu

Zbog svoje mješovite prirode, Zimbuova je sintaksa jedinstvena i specifična, ali istodobno ima puno značajki. Koristi izraze i operatore slične onima koji se koriste u C -u, ali s vlastitim ključnim riječima, vrstama podataka i strukturama blokova. Podržava upravljanje memorijom, niti i cjevovode.

Jedino je pitanje prenosivost. Iako je Zimbu prevedeni jezik, njegov prevoditelj proizvodi ANSI C kod, a binarne datoteke mogu se stvoriti samo na platformama s ugrađenim C prevodiocem.

Nažalost, projekt Zimbu je još uvijek u razvoju. Prevoditelj i neke uzorke programa možete sami stvoriti, ali neće se svi valjani Zimbu kodovi prevesti i pokrenuti kako se očekivalo. Nisu sve deklarirane funkcije još razvijene, a neke od već prikazanih ne rade ispravno. Specifikacije jezika također će se vjerojatno mijenjati s vremenom, dodajući ključne riječi, vrste i sintaksu prema potrebi. Posljedično, i dokumentacija je nepotpuna. Međutim, ako želite isprobati, pomoćni programi za prethodno izdanje već su dostupni pod Apache licencom.


Proučavani programski jezik # 8: X10

Paralelna obrada podataka nekada je bila specijalizirana niša za razvoj softvera, ali s širenjem višejezgrenih procesora i distribuiranog računalstva, paralelizam je stekao popularnost. Nažalost, trenutni programski jezici ne prate ovaj trend. Zato IBM Research stvara X10, jezik posebno dizajniran za moderne paralelne arhitekture čiji je cilj "deseterostruka" produktivnost programera.

Paralelnost u X10 moguća je zahvaljujući programskom modelu PGAS (zajednički model globalnog adresnog prostora). Kôd i podaci se raspodjeljuju u blokovima i distribuiraju u različite "prostore", čime se olakšava skaliranje programa s jednonavojnog prototipa (jedan razmak) na višenavojni koji radi na jednom ili više procesorima s više jezgri (više razmaka) ) u klasteru visokih performansi.

X10 kod je najsličniji Javi. U biti, vrijeme izvođenja X10 dostupno je i kao ugrađene izvršne datoteke i datoteke klasa za JVM. Prevoditelj X10 može ispisati izvorni kod C ++ ili Java. U budućnosti se planira razvoj kompatibilnosti s Javom unaprijed.

U međuvremenu se jezik razvija, iako je već prilično razvijen. Prevodilac i vrijeme izvođenja dostupni su za razne platforme, uključujući Linux, Mac OS X i Windows. Dodatni uslužni programi su interaktivno razvojno okruženje (IDE) zasnovano na Eclipseu i alat za ispravljanje pogrešaka koji su licencirani pod javnom licencom Eclipse.


Proučavani programski jezik # 9: haXe

Za pisanje prijenosnog koda mogu se koristiti mnogi jezici. C kompajleri su dostupni za gotovo sve CPU arhitekture, a Java bytecode će se izvoditi gdje god se nalazi JVM. Ali haXe (izgovara se "hex") više je od prijenosnog. To je jezik s više platformi koji se može koristiti u različitim radnim okruženjima, od ugrađenih