Najmoćniji programski jezik. Moderni programski jezici i njihova upotreba

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

U svijetu koji se dinamično mijenja, kada se do jučer cijenjena zanimanja pretvaraju u ništa, mnogi ljudi traže nešto čime će se baviti u životu tako da im to bude zanimljivo i relevantno za današnje vrijeme, a ujedno i isplativo. Vrlo često takva pretraživanja dovode do programiranja: dobri programeri, čak i u CIS-u, zarađuju tisuće dolara, imaju puno slobodnog vremena, mogućnost rada na daljinu i imaju šanse za rast u karijeri.

Osim ovih prednosti, programiranje je drugačije i po tome što da biste ga svladali ne morate godinama brisati hlače na sveučilištima. Samoobrazovanje je ovdje sve; internet ima sve potrebne materijale za uspješno samostalno učenje bilo kojeg programskog jezika: lekcije u tekstualnom obliku, video lekcije, upute, savjete iskusnih stručnjaka i druge obrazovne materijale. Na taj način možete lako savladati suvremene tehnologije programiranja i pronaći doista pristojan posao.

Ali prije nego što se bacite na posao, morate odgovoriti na jedno važno pitanje: koji će moderni programski jezici biti relevantni u 2017., a na koji biste trebali potrošiti svoje vrijeme i trud? Ovdje puno ovisi o točnom odgovoru - složenosti i brzini procesa učenja, minimalnom pragu za ulazak u pravi posao i daljnjim izgledima za karijeru.

Obećavajuća područja programiranja i jezika za 2017

Da biste se odlučili za određeni programski jezik za proučavanje (jedan ili više), prvo morate odgovoriti na pitanje: u kojem području programiranja bi osoba željela raditi. Najpopularnija i brzo razvijajuća područja sada su:

Tehnologije web programiranja. Izrada web stranice, online usluge i bankarstvo, online trgovine, landing stranice za tvrtke i slično – sve je to dio web programiranja. Sve više ljudi na planeti postaje korisnicima interneta, postaje sve brže i jeftinije, čak i zreli i stari ljudi postaju aktivni korisnici interneta. U 2017. godini ovaj trend se samo pojačava i još se ne vidi plafon za njegov razvoj. Stoga je vrlo korisno učiti internetske programske jezike. Popis najpopularnijih od njih bit će predstavljen u nastavku;

Programiranje za gadgete: pametni telefoni, tableti, pametni satovi, naočale za virtualnu stvarnost itd. Ovo je također vrlo zanimljivo i brzo razvijajuće područje djelovanja. Milijarde ljudi diljem svijeta koriste gadgete, čitaju vijesti na njima, gledaju videozapise, slušaju glazbu i rade puno drugih stvari. Sve ove elektroničke funkcije moguće su zahvaljujući dobro napisanom softveru. Često košta mnogo više od fizički uređaj. Programiranje u ovom području sada je vrlo isplativo. Vrijedno je napomenuti da se ovdje najčešće koriste programski jezici visoke razine.

Koji jezik izabrati

Nemoguće je reći koji je jezik najmoderniji. Mnogi od njih se koriste vrlo široko i aktivno. Ali ako govorimo o obećavajući jezici programiranja, onda se najbolje može nazvati sljedeće:

  • Java. Najuniverzalniji i najpopularniji programski jezik s kojim možete razvijati i aplikacije za računala i gadgete, posebno one s Android OS-om. Ima jasnu sintaksu, uči prilično lako i brzo, prvi programi u Javi mogu se napisati nekoliko tjedana nakon početka obuke. Glavna karakteristika koja ga čini vrlo obećavajućim je njegova upotreba za programiranje za Android, koji se sada vrlo brzo razvija;
  • C#. Izvrsna opcija za osobu koja svoju aktivnost želi posvetiti pisanju programa za računalni sustavi. Upravo je SI Sharp jezik (C#) osnova na kojoj je napisana većina programa za razne platforme i usluge tvrtke Microsoft. Uz njegovu pomoć možete razvijati web aplikacije koristeći .NET i Azure, kao i programe izravno za Windows OS, razne poslovne aplikacije i mnoge druge stvari. Za upoznavanje s C# potrebno je malo rada, ali će se na kraju isplatiti;
  • PHP. Ako je vaš zadatak pisati visokokvalitetne skripte i interaktivne predloške za internetske resurse ili biti administrator bilo kojeg poslužitelja, što je danas vrlo isplativo zanimanje, onda će PHP biti najbolji način ostvariti takve težnje. Moderni jezici programiranje jednostavno ne može bez ovog predstavnika. Uči vrlo brzo i lako - ako pažljivo i redovito učite PHP, nakon 2-3 godine možete se prijaviti za vrlo dobru poziciju i odgovarajuću plaću.

Naravno, ovo je daleko od toga pune karakteristike jezika i njihovu klasifikaciju, ali čak i tako mali popis sasvim je dovoljan da odaberete dobro i obećavajuće područje djelovanja za sebe.

Kompletan pregled modernih programskih jezika mogao bi potrajati previše vremena, ali to nije toliko potrebno, jer vrijedi zapamtiti glavnu stvar - osoba koja tečno govori bilo koji jezik sigurno će moći pronaći svoje mjesto na terenu programiranja. A znanje jednog od ovih jezika sigurno će biti dovoljno da zaradite dobar novac i riješite zanimljive probleme.

Jedan od najčešće korištenih sustava za procjenu popularnosti programskog jezika je TIOBE, čija je suština prebrojavanje broja web stranica koje sadrže naziv pojedinog jezika.

Međutim, to ne pokazuje uvijek koliko je ljudi zapravo unutra ovaj trenutakželite koristiti ili koristite programski jezik, pa je GitHub tim ovom problemu pristupio iz drugog kuta.

Njihov sustav nazvan PYPL (Popularity of Programming Languages) temelji se na broju upite za pretraživanje Udžbenici: Što više ljudi traži udžbenike o određenom programskom jeziku, to je on viši u PYPL-u.

10. Brza

Jezik nije dugo prisutan, ali Apple želi da postane ključni jezik u cijelom svijetu i na svim platformama, uključujući web i Android, u sljedećih 20 godina.

9. R

R je nastao 1993. godine i danas ga koriste velike tvrtke za strojno učenje i analizu velikih podataka.

8. Cilj-C

Iako je Swift izvorno objavljen kako bi zamijenio Objective-C, on je i dalje popularan i najsuvremeniji jezik za iOS razvoj. Ali to će se vjerojatno uskoro promijeniti.

7. C++

Najpopularniji proizvodi napisani u C++ su Windows i Google Chrome.

6. C

Tata može u C. Vjerojatno je to razlog zašto se ovaj jezik koristi posvuda, a kod u njemu može se izvoditi na doslovno bilo kojoj računalnoj platformi.

5. JavaScript

Upravo je taj jezik obično prvi na raznim ljestvicama. Međutim, prema GitHubu, nije najpopularniji. JavaScript se uglavnom koristi za razvoj web aplikacija, ali zapravo nema ograničenja za njega.

4. C#

C# razvijen od strane Microsofta a koristi se uglavnom u srodnim sustavima, npr. Windows Phone. Bing tražilica također je napisana u C#.

3.PHP

Ovaj je jezik najpopularniji izbor za backend razvoj. Na njoj su ispisane stranice kao što su Facebook, VKontakte, Yahoo.

2.Python

Python je nastao 1989. godine i od tada postaje sve popularniji.

JavaScript je dobar za dodavanje osnovne interaktivnosti web stranicama, ali kada vaše web aplikacije imaju tisuće redaka koda, slabosti jezika postaju uočljive. Zato je Google stvorio Dart, jezik za koji tvrtka vjeruje da će postati novi "materinji" jezik za web programiranje.

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 u tome što se JavaScript temelji na prototipu, ali su objekti u Dartu definirani pomoću klasa i sučelja, baš kao u C++ ili Javi. Dart također omogućuje programerima da opcionalno definiraju varijable sa statičkim tipovima. Ideja je učiniti Dart jezikom poznatim, dinamičnim i fleksibilnim kao što je JavaScript, a istovremeno omogućiti razvojnim programerima pisanje koda koji je brz, lak za izvođenje i koji je težak za pronalaženje pogrešaka.

Pikado danas nije u širokoj upotrebi. Dizajniran je za izvođenje na klijentu ili poslužitelju (a la Node.js), ali jedini način za izvođenje klijentske verzije Dart koda jest unakrsno prevođenje u JavaScript. Međutim, čak ni nakon toga neće raditi u svim preglednicima. Ali budući da je Dart objavljen pod besplatnom licencom tipa BSD, svaki prodavač koji prihvati Googleove uvjete može slobodno koristiti jezik u svojim proizvodima. Googleu preostaje samo uvjeriti cijelu industriju.


Programski jezik Explored #2: Ceylon

Gavin King poriče da se očekuje da će Ceylon, jezik koji razvija u Red Hatu, biti "ubojica Jave". King je dobro poznat kao tvorac Hibernate okvira objektno-relacijskog mapiranja za Javu. Sviđa mu se Java, ali misli da ima još puno toga za poboljšati.

Među stvarima koje se Kingu ne sviđaju kod Jave su opširna sintaksa jezika, nedostatak funkcija prve klase i višeg reda te nedovoljna podrška za metaprogramiranje. Posebno ga frustrira nedostatak deklarativne sintakse za definiranje strukturiranih podataka, za koju King kaže da "izjednačava Javu s XML-om". Ceylon ima za cilj riješiti sve te probleme.

King i njegov tim ne planiraju ponovno izumiti kotač. Neće postojati virtualni stroj Ceylon; prevodilac Ceylon će proizvesti java bajt kod koji se može pokrenuti na JVM. Ali Ceylon će biti više od pukog kompajlera. Strateški cilj ovog projekta je stvoriti novi razvojni kit za Ceylon koji će zamijeniti Javu za koju King kaže da je "napuhana", nezgrapna i još uvijek nedovoljno modernizirana.

Ovo je težak zadatak, i do sada crveni šešir nije izdao nikakve pomoćne programe za Ceylon. King kaže da bi kompilator trebao biti objavljen ove godine. Ali ne očekujte softver napisan na "100% čistom cejlonskom" u skorije vrijeme.


Istraživanje programskog jezika #3: Krenite

F# kod donekle je sličan OCaml kodu, ali ima vlastitu zanimljivu sintaksu. Na primjer, kako bi se olakšali znanstveni izračuni, numerički tipovi podataka u F# mogu biti mjerne jedinice. F# također uključuje konstrukcije za olakšavanje asinkronog I/O, CPU paralelizacije i GPU izlaza.

Nakon dugog razdoblja gestacije u Microsoft Researchu, F# se sada isporučuje s Visual Studio 2010. Još bolje, ali netipično za korporaciju, Microsoft je stvorio F# kompilator i korijensku biblioteku dostupnu pod Apache otvorenom licencom. Možete ga početi koristiti besplatno i čak ga koristiti Mac sustavi i Linux (koristeći Mono runtime).


Programski jezik Explored #5: Opa

Web programiranje je vrlo složena stvar. Čak se i najjednostavnije web aplikacije sastoje od beskonačnih nizova 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 pojedinačno. Štoviše, pokušava ih zamijeniti sve odjednom, uvodeći potpuno novu paradigmu u web programiranje. U Opa aplikaciji, korisničko sučelje klijenta, logika poslužitelja i I/O baza podataka napisani su na jednom jeziku, Opa.

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

Naravno, s ovakvim integriranim sustavom na kraju se mora dogoditi nešto čarobno. Opa runtime integrira vlastiti web poslužitelj i sustav upravljanja bazom podataka, koji se ne mogu zamijeniti samostalnim alternativama. Bilo kako bilo, ovo možda i nije tako velika stvar s obzirom na mogućnost razvoja modernih web aplikacija vođenih podacima sa samo nekoliko desetaka redaka koda. Opa je besplatna i trenutno je dostupna za 64-bitne Linux i Mac OS X platforme, a razvijaju se i drugi priključci.


Programski jezik Explored #6: Fantom

Želite li kreirati aplikacije za Javu ili .Net? Ako pišete na Fantomu, možete napraviti izbor, a zatim čak i promijeniti platformu. To je zato što je Fantom od samog početka dizajniran za mobilnost između platformi. Projekt Fantom sastoji se ne samo od kompajlera koji može ispisati bajt kod za JVM ili .Net CLI, već i od skupa API-ja koji odvajaju Java i .Net API-je i stvaraju dodatni sloj prenosivosti.

Postoje planovi za daljnje povećanje mobilnosti Fantoma. Kompajler iz Fantoma u JavaScript već je dostupan, a sljedeći ciljevi mogli bi uključivati ​​projekt prevoditelja LLVM, Parrot VM i Objective-C za iOS.

Fantom se distribuira besplatno pod Academic Free License 3.0 i dostupan je za Windows i Unix-like platforme (uključujući Mac OS X).


Programski jezik Explored #7: Zimbu

Zbog svoje mješovite prirode, Zimbuova sintaksa je jedinstvena i specifična, ali u isto vrijeme ima puno funkcionalnosti. Koristi izraze i operatore slične onima koji se koriste u C-u, ali s vlastitim ključnim riječima, tipovima podataka i blok strukturama. Podržava upravljanje memorijom, nitima i cjevovodima.

Jedini problem je prenosivost. Iako je Zimbu kompajlirani jezik, njegov kompajler proizvodi ANSI C kod, a binarne datoteke mogu se graditi samo na platformama s ugrađenim C kompajlerom.

Nažalost, projekt Zimbu je u razvoju. Kompajler i nekoliko primjera programa možete izraditi sami, ali neće se sav stvarni Zimbu kod kompilirati i ispravno izvoditi. Nisu sve deklarirane funkcije još razvijene, a neke od već predstavljenih ne rade ispravno. Specifikacija jezika također se može promijeniti tijekom vremena, dodajući ključne riječi, tipove i sintaksu prema potrebi. Samim time i dokumentacija je još uvijek nepotpuna. Međutim, ako želite isprobati, preliminarni uslužni programi već su dostupni pod Apache licencom.


Istraživao programski jezik #8: X10

Paralelno procesiranje je nekoć bilo specijalizirana niša u razvoju softvera, ali s porastom višejezgrenih procesora i distribuiranog računalstva, paralelizam je stekao popularnost. Nažalost, trenutni programski jezici nisu pratili ovaj trend. Zato IBM Research stvara X10, jezik dizajniran posebno za moderne paralelne arhitekture koji ima za cilj "deseterostručiti" produktivnost programera.

Konkurentnost u X10 moguća je zahvaljujući modelu programiranja PGAS (Partitioned Global Address Space). Kod i podaci raspoređeni su u blokove i raspoređeni po različitim "prostorima", čime se olakšava skaliranje programa od prototipa s jednom niti (jedan prostor) do prototipa s više niti koji radi na jednoj ili više višejezgreni procesor(više prostora) u klasteru visokih performansi.

X10 kod je najsličniji Javi. U biti, X10 runtime dostupan je i kao ugrađeni izvršni fajl i kao datoteka klase za JVM. Kompajler X10 može proizvesti izvorni kod u C++ ili Javi. Postoje planovi za razvoj kompatibilnosti s Javom u budućnosti.

U međuvremenu se jezik razvija, iako je već prilično razvijen. Kompajler i runtime dostupni su za razne platforme, uključujući Linux, Mac OS X i Windows. Dodatni uslužni programi uključuju interaktivno razvojno okruženje (IDE) temeljeno na Eclipseu i program za ispravljanje pogrešaka, oba licencirana pod Eclipse javnom licencom.


Istraživao programski jezik #9: haXe

Mnogi se jezici mogu koristiti za pisanje prijenosnog koda. C kompajleri dostupni su za gotovo sve CPU arhitekture, a Java bajt kod će se izvoditi svugdje gdje postoji JVM. Ali haXe (izgovara se hex) je više od samo prijenosnog. To je višeplatformski jezik koji se može koristiti u različitim radnim okruženjima, od ugrađenih

Naslov izvješća

Moderni programski jezici i njihova upotreba

Autor projekta

Struktura projekta

● Shema klasifikacije programskih jezika

● Klasifikacija programskih jezika

● Pregled programskih jezika

● Korisni resursi

Klasifikacijska shema programskog jezika

Klasifikacija programskih jezika

Proceduralno programiranje- odraz je von Neumannove arhitekture računala. Program napisan u proceduralnom jeziku je niz naredbi koje definiraju algoritam za rješavanje problema. Glavna ideja proceduralnog programiranja je korištenje memorije za pohranu podataka. Glavna naredba je dodjela, kojom se određuje i mijenja memorija računala. Program pretvara sadržaj memorije, mijenjajući ga iz početno stanje do rezultata.

Postoje sljedeći proceduralni programski jezici:

 Jezik Fortran nastao je ranih 50-ih godina 20. stoljeća za programiranje znanstvenih i tehničkih problema;

 COBOL – nastao kasnih 60-ih godina 20. stoljeća za rješavanje problema obrade velikih količina podataka pohranjenih na različitim medijima za pohranu podataka;

 ALGOL (1960) je višenamjenski napredni programski jezik. Po prvi put je uveo koncepte “blok programske strukture” i “dinamičke dodjele memorije”;

 Sredinom 60-ih godina 20. stoljeća nastao je specijalizirani programski jezik za početnike – BASIC. Karakterizira ga lakoća učenja i prisutnost univerzalnih alata za rješavanje znanstvenih, tehničkih i ekonomskih problema, kao i problema, na primjer, igara.

Svi gore navedeni jezici bili su usmjereni na različite klase zadataka, ali su, u jednom ili drugom stupnju, bili vezani uz određenu računalnu arhitekturu.

 1963.-1966., stvoren je višenamjenski univerzalni jezik PL-1. Ovaj je jezik vrlo prikladan za istraživanje i planiranje računalnih procesa, modeliranje, rješavanje logičkih problema i razvoj softverskih sustava.

 Jezik Pascal (PASCAL) (1968.-1971.) najpopularniji je proceduralni programski jezik za osobna računala, koji se i danas uspješno koristi. Osnova Pascal jezik Pristup je od općeg problema prema specifičnim (jednostavnijim i manjim opsegom). Osnovna načela koja ima Pascal uključuju: a) Strukturirano programiranje, koje se temelji na korištenju potprograma i neovisnih struktura podataka; b) Top-down programiranje, kada se problem dijeli na jednostavne, neovisno riješene probleme. Tada se rješenje izvornog problema gradi u cijelosti od vrha prema dolje.

 Proceduralni programski jezici uključuju jezik ADA (1979.) nazvan po prvoj programerki Adi Lovelace, Byronovoj kćeri. Ističe se modularnim dizajnom.

 SI jezik (početak 70-ih) također spada u proceduralne programske jezike. Njegova izvorna verzija planirana je kao jezik za implementaciju operacijski sustav Unix umjesto asemblerskog jezika. Jedna od značajki SI jezika je da su razlike između izraza i operatora izglađene, što ga približava funkcionalnim programskim jezicima. Osim toga, SI jezik nema koncept procedure, a korištenje potprograma temelji se na konceptu funkcije, koja može kombinirati mogućnosti procedure. S jedne strane, na temelju skupa kontrolnih konstrukcija i struktura podataka, može se klasificirati kao jezik visoke razine, as druge strane, ima skup sredstava za izravan pristup funkcionalne jedinice računalo, što znači da se može koristiti kao operativni jezik.

Objektno orijentirano programiranje (OOP) je metoda programiranja u kojoj su glavni elementi programa objekti. U programskim jezicima koncept objekta implementiran je kao skup svojstava (struktura podataka karakterističnih za dati objekt), metoda za njihovu obradu (potprogrami za promjenu njihovih svojstava) i događaja, na koje ovaj objekt mogu reagirati i koji dovode u pravilu do promjene svojstava predmeta. Kombiniranje podataka i njihovih inherentnih postupaka obrade u jednom objektu naziva se enkapsulacija i jedno je od najvažnijih načela OOP-a.

Drugi temeljni koncept je klasa. Klasa je predložak na temelju kojeg se može kreirati određeni softverski objekt; opisuje svojstva i metode koje određuju ponašanje objekata te klase. Svaki konkretan objekt koji ima strukturu ove klase naziva se instancom klase.

Sljedeći najvažniji principi OOP-a su nasljeđivanje i polimorfizam. Nasljeđivanje uključuje stvaranje novih klasa na temelju postojećih i omogućuje klasi potomku da ima (naslijedi) sva svojstva roditeljske klase.

Polimorfizam znači da rođeni objekti imaju informacije o tome koje metode trebaju koristiti ovisno o tome gdje se nalaze u lancu.

Drugi važan princip OOP-a je modularnost - objekti sadrže potpunu definiciju svojih karakteristika, definicije metoda i svojstava ne smiju se nalaziti izvan njega, što omogućuje slobodno kopiranje i implementaciju jednog objekta u druge.

Najmoderniji programski jezici su C++ i Java. Od sredine 90-ih, mnogi objektno orijentirani jezici implementirani su kao sustavi vizualnog dizajna, u kojima se dio sučelja softverskog proizvoda stvara interaktivno, gotovo bez pisanja programskih izjava. Prigovarati – orijentirani sustavi vizualni dizajn uključuje Visual Basic, Delphi, C++ Builder, Visual C++. VBA (Visual Basic for Application) jezik – jezik Microsoftove aplikacije Office (Excel, Word, Power Point i tako dalje). VBA slijedi osnovnu sintaksu jezika i pravila programiranja osnovnih jezika - dijalekata, omogućuje stvaranje makronaredbi za automatiziranje izvršavanja određenih operacija i GUI korisnik, integracija između različitih softverskih proizvoda.

Deklarativni programski jezici

To uključuje funkcionalne i logičke programske jezike. Funkcionalno programiranje je način pisanja programa u kojem je jedina radnja pozivanje funkcije. Funkcionalno programiranje ne koristi memoriju kao mjesto za pohranjivanje podataka i stoga ne koristi posredne varijable, izjave o dodjeli ili petlje. Ključni koncept u funkcionalnim jezicima je izraz. Program napisan na funkcionalnom jeziku je niz opisa funkcija i izraza. Izraz se izračunava svođenjem složenog na jednostavno. Svi izrazi napisani su u obliku lista. Prvi jezik bio je Lisp jezik (LISP, LIST Processing) nastao 1959. godine. Ovaj jezik vam omogućuje obradu velikih količina tekstualnih informacija. Logičko programiranje je programiranje u smislu logike. Godine 1973. stvoren je jezik umjetne inteligencije Prolog (PROLOG) (Programiranje u logici). Prolog program se gradi od niza činjenica i pravila, zatim se formulira izjava koju Prolog pokušava dokazati pomoću pravila. Sam jezik traži rješenje koristeći metode pretraživanja i podudaranja koje su ugrađene u njega. Logički programi nisu karakterizirani visokim performansama, budući da se proces njihovog izvršavanja svodi na konstruiranje naprijed i natrag lanaca razmišljanja pomoću različitih metoda pretraživanja.

Pregled programskih jezika

Asembler

Računalni programski jezici podijeljeni su u 2 glavne skupine:

1) jezici niska razina;

2) jezici visoke razine.

Jezici niske razine uključuju asemblerske jezike. Ime su dobili po sustavnom programu Assembler, koji izvorne programe napisane na takvim jezicima pretvara izravno u kodove strojnih instrukcija. Dijelovi su ovdje operatori, a rezultat asemblera je niz strojnih naredbi Asemblerski jezik kombinira prednosti jezika strojnih naredbi i neke značajke jezika visoke razine. Asembler pruža mogućnost korištenja simboličkih imena u izvornom programu i štedi programera od zamornog rada (neizbježnog kod programiranja u jeziku strojnih instrukcija) dodjele računalne memorije za upute, varijable i konstante.

Asembler također omogućuje fleksibilnu i potpunu upotrebu tehničke mogućnosti računalni, kao i strojni naredbeni jezik. Prevoditelj asemblerskog izvornog programa jednostavniji je od prevoditelja potrebnog za programski jezik visoke razine. U asembleru možete napisati program koji je jednako učinkovit u veličini i vremenu izvođenja kao program u jeziku strojnih instrukcija. Ova prednost je odsutna u jezicima visoke razine. Ovaj jezik se često koristi za programiranje sustava u stvarnom vremenu, tehnološki procesi i oprema, koja osigurava rad informacijskih i mjernih sustava. Takvi sustavi obično imaju visoke zahtjeve za količinu računalne memorije koju zauzimaju. Često se asemblerski jezik nadopunjuje alatima za generiranje makro instrukcija, od kojih je svaka ekvivalentna cijeloj grupi strojnih instrukcija. Ovaj jezik se naziva jezikom makrosklopa. Korištenje poppy "građevnih" blokova približava asemblerski jezik jeziku visoke razine. Asemblerski jezik je jezik ovisan o stroju, tj. odražava arhitektonske značajke određene vrste računala

Pascal

Programski jezik Pascal razvio je Nicolas Wirth, profesor na Odsjeku za računarstvo na Švicarskom federalnom institutu za tehnologiju, 1968. godine kao alternativu postojećim i sve složenijim programskim jezicima kao što su PL/1, Algol i Fortran . Intenzivan razvoj Pascala doveo je do pojave njegovog standarda u obliku revidirane poruke 1973., a broj prevoditelja s ovog jezika 1979. premašio je 80. Početkom 80-ih Pascal je dodatno ojačao svoju poziciju pojavom MS-Pascal i Turbo prevoditelji -Pascal za PC. Od tada je Pascal postao jedan od najvažnijih i najčešće korištenih programskih jezika. Znakovito je da je jezik odavno izašao iz okvira akademskog i uskostručnog interesa te se na većini sveučilišta u visokorazvijenim zemljama koristi ne samo kao radni alat korisnika. Najvažnija značajka Pascala je utjelovljenje ideje strukturiranog programiranja. Druga značajna značajka je koncept strukture podataka kao jedan od temeljnih pojmova.

Glavni razlozi popularnosti Pascala su sljedeći:

Jednostavnost jezika omogućuje brzo svladavanje i izradu algoritamski složenih programa

Razvijena sredstva za predstavljanje struktura podataka osiguravaju jednostavnost rada s numeričkim i simboličkim i bitnim informacijama

Prisutnost posebnih tehnika za stvaranje prevoditelja iz Pascala pojednostavila je njihov razvoj i pridonijela širokoj distribuciji jezika

Optimizirajuća svojstva Pascal prevoditelja omogućuju vam stvaranje učinkovitih programa. To je bio jedan od razloga korištenja Pascala kao sistemskog programskog jezika

Jezik Pascal implementira ideje strukturiranog programiranja, što program čini vizualnim i pruža dobre mogućnosti za razvoj i otklanjanje pogrešaka

Zaposlenik Bell Labsa Denis Ritchie stvorio je jezik C 1972. radeći s Kenom Thompsonom kao alat za implementaciju operativnog sustava Unix, no popularnost ovog jezika brzo je prerasla opseg specifičnog operativnog sustava i specifičnih zadataka programiranja sustava. Trenutačno se bilo koji alat i operativni sustav ne mogu smatrati potpunim ako ne uključuju kompilator jezika C. Ritchie nije samo izmislio C iz svoje glave - prototip je bio B jezik koji je razvio Thompson. Programski jezik C osmišljen je kao alat za praktične programere. U skladu s tim, glavni cilj njegovog autora bio je stvoriti jezik koji je u svakom pogledu prikladan i koristan.

C je sistemski programerski alat i omogućuje vam da duboko prodrete u najsuptilnije mehanizme obrade informacija na računalu. Iako jezik zahtijeva veliku disciplinu od programera, on nije strog u svojim formalnim zahtjevima i dopušta kratke formulacije.

C je moderan jezik. Uključuje one upravljačke strukture koje preporučuju teorija i praksa programiranja. Njegova struktura potiče programera da u svom radu koristi dizajn odozgo prema dolje, strukturirano programiranje i inkrementalni razvoj modula.

C je moćan i fleksibilan jezik. Većina Unix operativnog sustava, kompajleri i interpreteri jezika Fortran, Pascal, Lisp i BASIC napisani su uz njegovu pomoć.

C je zgodan jezik. Dovoljno je strukturiran za podršku dobar stil programiranja, a istodobno nije vezan strogim ograničenjima. U nekom smislu, jezik C je najuniverzalniji, jer... Uz skup alata koji su svojstveni modernim programskim jezicima visoke razine (struktura, modularnost, određene vrste podataka), uključuje alate za programiranje gotovo na razini asemblera. Veliki skup operatora i alata zahtijeva od programera oprez, točnost i dobro poznavanje jezika sa svim njegovim prednostima i nedostacima.

Jezik C++ pojavio se ranih 80-ih. Stvorio ga je Bjarne Stroustrup s izvornim ciljem da sebe i svoje prijatelje oslobodi programiranja u asembleru, C-u ili raznim drugim jezicima visoke razine.

Prema autoru jezika, razlika između ideologije C i C++ je otprilike sljedeća: C program odražava “način razmišljanja” procesora, a C++ odražava način razmišljanja programera. Udovoljavajući zahtjevima suvremenog programiranja, C++ stavlja naglasak na razvoj novih tipova podataka koji najbolje odgovaraju konceptima odabranog područja znanja i zadaćama primjene. Klasa je ključni koncept u C++. Opis klase sadrži opis podataka potrebnih za predstavljanje objekata ove vrste i skup operacija za rad sa sličnim objektima.

Za razliku od tradicionalnih C i Pascal struktura, članovi klase nisu samo podaci, već i funkcije. Funkcije članice klase imaju povlašteni pristup podacima unutar objekata te klase i pružaju sučelje između tih objekata i ostatka programa. Tijekom daljnjeg rada uopće nije potrebno prisjećati se unutarnje strukture klase i mehanizma rada ugrađenih funkcija. U tom smislu, klasa je poput električnog uređaja - malo ljudi zna za njegovu strukturu, ali svi znaju kako se njime služiti.

Jezik C++ je alat objektno programiranje, nova tehnika za dizajn i implementaciju programa koja će vjerojatno zamijeniti tradicionalno proceduralno programiranje u ovom desetljeću. Glavni cilj tvorca jezika, dr. Björna Stroustrupa, bio je opremiti jezik C++ konstruktima koji bi povećali produktivnost programera i olakšali proces svladavanja velikih softverskih proizvoda.

Apstrakcija, implementacija, nasljeđivanje i polimorfizam neophodna su svojstva jezika C++, zbog kojih on nije samo univerzalan, poput jezika C, već i objektni jezik. Fortran Fortran je široko korišten jezik, posebno među korisnicima koji se bave numeričkim modeliranjem. To je zbog nekoliko razloga:

Postojanje ogromnih fondova Fortran aplikacijskih programa nakupljenih tijekom godina, kao i prisutnost ogromnog broja programera koji učinkovito koriste ovaj jezik;

Prisutnost učinkovitih Fortran prevoditelja na svim vrstama računala, a verzije za različite strojeve prilično su standardizirane i prijenos programa sa stroja na stroj obično nije jako težak;

Početni fokus Fortrana bio je na fizičkim, matematičkim i tehničkim primjenama; osobito se to očitovalo u činjenici da je dugo vremena ostao jedini jezik s ugrađenim tipom složenih varijabli i velikim skupom ugrađenih funkcija za rad s takvim varijablama.

U proteklom razdoblju formirana je nova metodologija i filozofija programiranja. Od ranih 1970-ih, Fortran se našao pod zasluženom kritikom. Godine 1977. usvojen je novi jezični standard, Fortran 77. Za izradu novog standarda bilo je potrebno dosta vremena, ali sada možemo smatrati da je njegov razvoj završen i da je novi standard Fortran-90 počeo ulaziti u praksu Fortran korisnika. Samo na strojevima kao što je IBM PC postoji nekoliko prevoditelja, na primjer, Watfor, Lap-Fortran, itd. Ali najviše se koriste na strojevima ovog tipa različite verzije Fortran-77 prevoditelja. Izdan 1990. godine, prevoditelj MS-Fortran 5.0 gotovo je u potpunosti u skladu sa standardom Fortran-90. Većina glavnih znanstvenih i inženjerskih aplikacija napisana je u Fortranu jer je prenosiv i robustan te jer ima ugrađene matematičke i trigonometrijske funkcije. Dodatni, sastavni dio svakog Fortran aplikacijskog programa je proširena grafička biblioteka koja omogućuje korištenje različitih grafičkih podataka i slika.

Jezik je nastao uglavnom 1975. - 1980. kao rezultat grandioznog projekta koji je poduzelo američko Ministarstvo obrane s ciljem razvoja jedinstvenog programskog jezika za takozvane ugrađene sustave (tj. sustave upravljanja za automatizirane komplekse koji rade u stvarnom vremenu) . To je prije svega značilo ugrađene sustave upravljanja vojnim objektima (brodovima, zrakoplovima, tenkovima, projektilima, granatama itd.). Stoga odluke autora Ade ne treba smatrati univerzalnima. Potrebno ih je sagledati u kontekstu karakteristika odabranog predmetnog područja. Jezik Ade nastao je kao rezultat međunarodnog natjecanja jezičnih projekata održanog 1978.-1979. Sudionici su morali zadovoljiti prilično stroge zahtjeve detaljno razrađene pod pokroviteljstvom američkog Ministarstva obrane. Zanimljivo je da su svi jezici koji su došli do završnih krugova ovog natjecanja bili temeljeni na Pascalu. U tom smislu, Ada se može uvjetno okarakterizirati kao Pascal, razvijen uzimajući u obzir pet osnovnih zahtjeva navedenih gore. Pritom su autori uglavnom išli putem proširenja Pascala novim elementima. Rezultat je bio znatno složeniji jezik.

COBOL

Kobol je komparativ stari jezik, namijenjen prvenstveno istraživanju u gospodarskom području. Jezik vam omogućuje učinkovit rad s velikom količinom podataka; bogat je raznim mogućnostima pretraživanja, sortiranja i distribucije. O Cobol programima temeljenim na širokoj upotrebi na engleskom, kažu da su razumljivi i onima koji ne govore Cobol, jer tekstove u ovom programskom jeziku ne treba posebno komentirati. Takvi se programi obično nazivaju samodokumentirajući. Druge prednosti Cobola obično uključuju njegovu strukturu. Prilično moćni prevoditelji iz ovog jezika dizajnirani su za osobnih računala. Neki od njih su toliko učinkoviti da se program otklonjen na osobnom računalu može lako prenijeti na glavna računala.

Dok nabrajamo nedostatke, ne možemo ne zaboraviti da se u Cobolu mogu programirati samo jednostavni algebarski izračuni. Za inženjerski proračuni ovaj jezik nije dobar. Drugi razlog koji u određenoj mjeri koči razvoj jezika je prisutnost u Sjedinjenim Državama posebno stvorenog industrijskog odbora koji razvija standarde, čije poštivanje nadzire vladina komisija. Kao što uvijek biva u takvim slučajevima, tvrtke uključene u razvoj softver, ne žure prilagoditi svoje radove strogim zahtjevima komisije, nema konkurencije među verzijama, a na kraju gubi širenje jezika

PL/1 je razvio IBM 1964-1965. PL/1 je jedan od univerzalnih jezika, tj. omogućuje rješavanje problema iz različitih područja: numerički proračuni, obrada teksta, ekonomski problemi itd. Po svojim mogućnostima preklapa se s jezicima kao što su Fortran, ALGOL-60 (stvoren za numeričke proračune), Cobol (za ekonomske probleme), iako iz više razloga PL/1 nije mogao istisnuti te jezike.

PL/1 sadrži sve osnovne konstrukcije karakteristične za takozvane jezike visoke razine, kao i niz specifičnih alata pogodnih za praktično programiranje. Jezik nalikuje konstruktoru s veliki broj detalji - korisnik treba savladati samo one dijelove jezika koji su mu praktično potrebni. Njegovi su operatori prilično sažeti, što često omogućuje da se program napiše kompaktnije nego u drugim jezicima. Programer koji poznaje PL/1 može lako svladati bilo koji drugi jezik iste ili slične klase.

U isto vrijeme, PL/1 ima i brojne nedostatke koji otežavaju učenje i korištenje jezika. Glavni su sljedeći. Prvo, postoji mnogo alata koji se dupliraju, teško ih je zapamtiti, nije jasno što koristiti kada, osim toga, to smanjuje i brzinu prijevoda i brzinu izvršavanja programa. Drugo, programi nisu potpuno neovisni o stroju.

Modula

Možemo smatrati da povijest jezika Modula počinje 1980. godine, kada je Niklaus Wirth, jedan od istaknutih teoretičara informacija, poznat većini računalnih znanstvenika uglavnom kao tvorac jezika Pascal, objavio opis novog programskog jezika koji je nazvao Modula . Za razliku od Pascala, koji je zamišljen kao jezik za podučavanje programiranja, Modula je od samog početka bio jezik za profesionalne sistemske programere, nastavljajući najbolje tradicije svog prethodnika i obogaćujući ih novim idejama koje zadovoljavaju zahtjeve za programske jezike kao što su kao struktura, modularnost i sposobnost proširenja. Kao i mnogi drugi programski jezici, Modula je prošao kroz evoluciju, tijekom koje je njegovo izvorno ime preinačeno u naziv Modula-2. Istovremeno s razvojem jezika Modula, stvoreni su novi prevoditelji za njega, međutim, nijedan od njih nije se mogao natjecati s najboljim implementacijama jezika Pascal i C, na primjer, koje je razvio Borland. Tijekom ovog prijelaznog razdoblja za jezik Modula, najboljim implementacijama su se smatrale one koje je napravio Logitech, čije su karakteristike bile inferiorne u odnosu na Turbo Pascal i Turbo C. Tek 1988. godine, nakon što se Top Speed ​​​​sustav pojavio na američkom tržištu, Modula-2 je zauzeo svoje pravo mjesto među proceduralnim jezicima namijenjenim programiranju sustava. Nekoliko je čimbenika pridonijelo rastućoj popularnosti sustava Top Speed ​​​​: prikladno i, osim toga, lako promjenjivo radno okruženje na zahtjev korisnika, brz kompajler i selektivni uređivač veza. Ali najvažnije se pokazalo da stvorenih programa Bili su vrlo brzi i nisu zauzimali puno memorijskog prostora.

OSNOVNI, TEMELJNI

BASIC (Basic - Beginner’s All-Purpose Symbolic Instruction Code - "univerzalni simbolički instrukcijski kod za početnike"). Izravni potomak Fortrana i još uvijek najpopularniji programski jezik za osobna računala. BASIC se pojavio 1963. (teško bi bilo imenovati autora, ali glavne zasluge za njegovu pojavu nedvojbeno pripadaju Amerikancima Johnu Kemenyu i Thomasu Kurtzu). Kao i svaka prednost, jednostavnost BASIC-a došla je do izražaja, posebno u ranije verzije poteškoće strukturiranja; Osim toga, BASIC nije dopuštao rekurziju - zanimljivu tehniku ​​koja vam omogućuje pisanje učinkovitih, au isto vrijeme kratkih programa.

Razvijeni su moćni BASIC prevoditelji koji pružaju ne samo bogat rječnik i visoke performanse, već i mogućnost strukturiranog programiranja. Prema nekim programerima, najzanimljivije verzije su GWBASIC, Turbo-Basic i Quick Basic.

Svojedobno je pojava Quick Basica označila rođenje druge generacije programskih sustava u jeziku BASIC. Pružao je mogućnost modularnog i proceduralnog programiranja, kreiranja biblioteka, sastavljanja gotovih programa itd., što ga je dovelo na razinu klasičnih programskih jezika kao što su C, Pascal, Fortran itd. Štoviše, zbog nedostatka službenog jezičnog standarda BASIC, njegova implementacija u obliku Quick Basica postala je de facto standard. Neosporni lideri među različite verzije BASIC je bio Quick Basic 4.5 i PDS 7.1 od Microsofta, koji su se pojavili u kasnim 80-ima.

Lisp

Jezik Lisp predložio je J. McCarthy 1960. godine i namijenjen je razvoju programa za rješavanje nenumeričkih problema. Engleski naziv ovog jezika, LISP, je skraćenica za izraz LISt Processing (obrada popisa) i dobro ističe glavno područje njegove primjene. Koncept "popisa" pokazao se vrlo prostranim. Pogodno je prikazati algebarske izraze, grafove, elemente konačnih grupa, skupove, pravila zaključivanja i mnoge druge složene objekte u obliku popisa. Popisi su najfleksibilniji oblik predstavljanja informacija u memoriji računala. Stoga ne čudi da je prikladan jezik posebno dizajniran za obradu popisa brzo stekao popularnost.

Nakon pojave Lispa, razni autori predložili su niz drugih algoritamskih jezika usmjerenih na rješavanje problema iz područja umjetne inteligencije, među kojima su Planner, Snoball, Refal, Prolog. Međutim, to nije spriječilo Lisp da ostane najpopularniji jezik za rješavanje takvih problema. Tijekom gotovo četrdesetogodišnje povijesti njegovog postojanja pojavio se niz dijalekata ovog jezika: Common LISP, Mac LISP, Inter LISP, Standard LISP, itd. Razlike među njima nisu fundamentalne i uglavnom se svode na malo drugačiji skup ugrađenih funkcija i neke razlike u programima notnog oblika. Stoga programer koji je naučio raditi na jednom od njih može lako svladati bilo koji drugi. Velika prednost Lispa je njegova funkcionalna orijentacija, tj. programiranje se provodi pomoću funkcija. Štoviše, funkcija se shvaća kao pravilo koje povezuje elemente određene klase s odgovarajućim elementima druge klase. Sam proces uparivanja nema nikakvog utjecaja na rad programa; važan je samo njegov rezultat - vrijednost funkcije. To čini relativno lakim pisanje i debugiranje velikih softverskih sustava. Jasnoća programa, jasno razgraničenje njihovih funkcija i odsutnost škakljivih nuspojava tijekom njihova izvođenja obavezni su zahtjevi za programiranje tako logički složenih zadataka poput onih umjetne inteligencije. Disciplina u programiranju postaje posebno važna kada na programu ne radi samo jedna osoba, već cijela grupa programera.

Programski jezik Lisp prvenstveno je dizajniran za obradu simboličkih informacija. Stoga je prirodno da u svijetu Lispa brojevi igraju daleko od glavne uloge. Osnovni tipovi podataka u Lispu nazivaju se atom i par točkica.

Prolog

Logički programski jezik dizajniran je za predstavljanje i korištenje znanja o određenom predmetnom području. Programi u ovom jeziku sastoje se od određenog skupa relacija, a njegovo se izvođenje svodi na izvođenje nove relacije na temelju zadanih. Prolog implementira deklarativni pristup, u kojem je dovoljno opisati problem korištenjem pravila i iskaza koji se odnose na zadane objekte. Ako je ovaj opis dovoljno točan, tada računalo može samostalno pronaći traženo rješenje.

Objekt PAL

Object PAL je moćan programski jezik. Object PAL je objektno orijentiran, vizualni programski jezik vođen događajima. Na početna razina S Object PAL funkcionalnošću možete izvoditi podatkovne operacije, kreirati posebne izbornike i upravljati sesijom unosa podataka. Događaji u Object PAL-u generiraju naredbe koje simuliraju učinak interaktivne upotrebe Paradoxa. Moguće je automatizirati često izvršavane zadatke, kao i izvršavati radnje na tablicama, obrascima i izvještajima koji nisu bili dostupni tijekom interaktivnog rada. Object PAL također nudi sve mogućnosti potpuno opremljenog programskog jezika Windows okruženje. Možete koristiti Object PAL za stvaranje kompletnih sustava koji implementiraju poseban sustav izbornika, sustav pomoći i razne provjere podataka. U Object PAL-u svoj rad možete spremiti u dinamički povezanu biblioteku kojoj se može pristupiti putem nekoliko obrazaca. Osim toga, možete uspostaviti veze s drugim dinamičkim bibliotekama koje sadrže programe napisane na jezicima kao što su C, C++ ili Pascal.

Object PAL se može koristiti kao alat za izradu samostalnih programa. Možete napisati kompletnu Windows aplikaciju i pokrenuti je pod Paradoxom.

Object PAL podržava dinamički mehanizam razmjene podataka i kao klijent i kao poslužitelj. Dodatno, Object PAL podržava mehanizam za rad sa složenim dokumentima kao klijent. Osim navedenog, moguće je uključiti multimediju u svoju aplikaciju tako da pokrenutoj aplikaciji omogućite zvučne i animacijske efekte.

Borlandova implementacija jezika dBase uspješan je hibrid objektne orijentacije i tradicionalnih metoda programiranja. Omogućio je stvaranje sustava korištenjem dizajna objekata i korištenjem konvencionalnih tehnika obrade zapisa. Veliko postignuće tvrtke Borland bilo je to što je vrlo uspješno kombinirala tehnike objektnog i proceduralnog programiranja. Prva verzija za Windows dala je korisniku najmoćniji alat temeljen na objektima na tržištu softvera za baze podataka. Omogućuje stvaranje novih klasa objekata koji imaju svojstva nasljeđivanja, enkapsulacije i polimorfizma. Također vam omogućuje programiranje ovih objekata korištenjem tradicionalnih dBase naredbi, idealnih za upravljanje jednostavnim tabličnim bazama podataka. Sve to daje neospornu prednost - izvršiti prijelaz na tehnike objektnog programiranja bez većih poteškoća, prijelaz tako težak, na primjer, kao u Paradox DBMS-u.

Jezik Java nastao je kao dio projekta izrade naprednog softvera za različite kućanske aparate. Projekt je započet u C++-u, no ubrzo su se pojavili brojni problemi, a najbolji način za rješavanje kojih je bila promjena samog alata - programskog jezika. Postalo je očito da je potreban programski jezik neovisan o platformi, koji bi omogućio stvaranje programa koji se ne bi morali kompilirati zasebno za svaku arhitekturu i koji bi se mogli koristiti na različitim procesorima pod različitim operativnim sustavima. Jezik Java bio je potreban za stvaranje interaktivnih proizvoda za Internet. Zapravo, većina arhitektonskih odluka donesenih u stvaranju Jave bila je vođena željom da se pruži sintaksa slična C i C++. Java koristi gotovo identične konvencije za deklariranje varijabli, prosljeđivanje parametara, prosljeđivanje operatora i za kontrolu tijeka izvršavanja koda. Java dodaje sve dobre značajke C++-a.

Tri ključna elementa zajedno čine tehnologiju jezika Java

Java omogućuje široku upotrebu svojih apleta - malih, pouzdanih, dinamičnih, aktivnih mrežnih aplikacija neovisnih o platformi ugrađenih u Internet stranice. Java Appleti može se prilagoditi i distribuirati potrošačima jednostavno kao bilo koji HTML dokument.

Java oslobađa snagu objektno orijentiranog razvoja aplikacija kombinirajući jednostavnu, poznatu sintaksu s robusnim razvojnim okruženjem koje je jednostavno za korištenje. To omogućuje širokom rasponu programera da brzo kreiraju nove programe i nove aplete.

Java pruža programeru bogat skup klasa objekata za jasno apstrahiranje mnogih funkcija sustava koje se koriste u prozorima, umrežavanju i I/O. Ključna značajka ovih klasa je da pružaju apstrakcije neovisne o platformi za širok raspon sistemskih sučelja.

Programski jezici za računalne mreže

Tumače se programski jezici za računalne mreže. Tumači za njih dijele se besplatno, a sami programi su u izvornom kodu. Takvi se jezici nazivaju skriptni jezici.

Perl je interpretirani jezik koji je stvorio programer Larry Wall za obradu velikih tekstova i datoteka i označava Practical Extraction and Report Language. S Perlom, na primjer, možete stvoriti skriptu koja otvara jednu ili više datoteka, obrađuje informacije i zapisuje rezultate.

Perl je jezik prilagođen za obradu proizvoljnih tekstualne datoteke, izvlačeći iz njih potrebne informacije i izdavajući poruke. Perl je također koristan za pisanje raznih sistemskih programa. Ovaj jezik je jednostavan za korištenje, učinkovit, ali teško je reći da je elegantan i kompaktan. Sintaksa Perl izraza je bliska sintaksi C-a. Rekurzija može biti proizvoljne dubine. Iako je Perl dizajniran za skeniranje tekstualnih datoteka, također može obraditi binarne podatke. Perl vam omogućuje korištenje regularni izrazi, stvarati objekte, umetati dijelove Perl koda u C ili C++ program, a također vam omogućuje pristup bazama podataka, uključujući Oracle.

Izumom World Wide Weba, Perl se pokazao izvrsnim alatom za interakciju s web poslužiteljima putem Common Gateway Interface (CGI). Perl naredbe mogu jednostavno uzeti podatke iz HTML obrasca ili drugog izvora i učiniti nešto s njima.

Jezik PHP(1995-1997) ima alate za pristup bazi podataka i koriste ga kreatori dinamičkih stranica diljem svijeta.

Jezik Tcl/Tk(kasnih 80-ih) sastoji se od snažnih naredbi dizajniranih za rad s apstraktnim netipiziranim objektima i omogućuje vam stvaranje programa s grafičkim sučeljem.

Jezik VRML(1994) stvoren je za organiziranje virtualnih trodimenzionalnih sučelja na Internetu.

Jezik XML. Od 1996. godine radi se na stvaranju univerzalnog jezika strukture dokumenta. Može postati zamjena za HTML.

Zaključak

Korisni resursi

Recenzija Aizili

Gdje je izvješće?

Recenzija Ranifka

Re: Gdje je izvještaj?
Sve će biti :-D

Recenzija Shamagulova Elite

Recenzija Mishina Alexandra

Izvrsno izvješće. Naučio puno novih stvari o programskim jezicima.

Recenzija Alexandra Morozova

Naravno da bih volio vidjeti izvještaj ili barem prezentaciju u nekom obliku.

  • Prijevod

Ako programske jezike podijelimo po popularnosti, oni se dijele u tri ešalona. Prvi nivo uključuje mainstream jezike kao što su Java, JavaScript, Python, Ruby, PHP, C#, C++ i Objective-C. Dok neki od najpopularnijih jezika možda nestaju, bilo bi bolje da znate jedan ili više njih ako želite lako pronaći posao.


Drugoslojni jezici pokušavaju se probiti u mainstream, ali to još nisu postigli. Dokazali su svoju vrijednost stvaranjem jakih zajednica, no još uvijek ih ne koristi većina konzervativnih IT tvrtki. Scala, Go, Swift, Clojure i Haskell su jezici koje bih klasificirao kao drugorazredni. Neke tvrtke koriste te jezike za pojedinačne usluge, ali široko usvajanje je rijetko (s izuzetkom Swifta, koji počinje preuzimati Objective-C kao primarni jezik za iOS). Go i Swift imaju dobre šanse prijeći s druge na prvu razinu u sljedeće dvije do tri godine.


Većina jezika u prvom ešalonu čvrsto je ukorijenjena na svojim pozicijama. Stoga je potrebno dosta vremena da jezik ispadne s vodeće pozicije, a za jezik drugog reda vrlo je teško probiti se u prvi.


Obećavajući jezici iz ovog članka pripadaju trećem ešalonu i tek počinju svoj put prema vrhu. Neki jezici ostaju u trećem sloju mnogo godina bez stjecanja popularnosti, dok drugi izbijaju na scenu u samo nekoliko godina. Kao, na primjer, jezici o kojima će se raspravljati u članku.

Obećavajući jezici: zašto ovih pet?

Pet programskih jezika o kojima će biti riječi vrlo su novi (moguće je da ćete za neke čuti po prvi put), i očito imaju izvrsne šanse da se probiju u drugi ešalon u sljedeće 2-3 godine. Možda će jednog dana jedan od ovih jezika moći zamijeniti jezike prvog ešalona.


Evo zašto je ovih pet jezika odabrano za ovaj popis:


Elm postaje sve popularniji u JavaScript zajednici, prvenstveno među onima koji preferiraju funkcionalno programiranje, koje je u porastu. Kao TypeScript ili Dart, Elm se prevodi u JavaScript.


Rust je sistemski programski jezik prvenstveno usmjeren na niše u kojima se koriste C i C++. Stoga je iznenađujuće vidjeti da popularnost ovog jezika sve brže raste među web programerima. Ova činjenica ima više smisla kada shvatite da je jezik kreirala Mozilla, koja je željela pružiti bolju opciju za web programere koji su prisiljeni pisati kod niske razine koji je učinkovitiji od PHP-a, Rubyja, Pythona ili JavaScripta. Rust je također izglasan kao najbolja "najomiljenija tehnologija" u StackOverflowovoj anketi za razvojne programere 2016. (što znači da bi većina korisnika željela nastaviti koristiti jezik).


Kotlin postoji oko pet godina, ali tek je ove godine stigao do verzije 1.0 spremne za proizvodnju. Iako još nije dostigao popularnost Scala, Groovy ili Clojure - tri najpopularnija i najzrelija (ne računajući Javu) JVM jezika - izdvaja se iz gomile drugih JVM jezika i čini se da je spreman preuzeti svoje mjesto među vodećima ove skupine . Jezik je nastao od JetBrainsa (kreatora popularnog IntelliJ IDEA IDE). Stoga je dizajniran s fokusom na produktivnost programera.


Crystal je još jedan jezik koji se nada donijeti izvedbu programa na razini C u vrhunski svijet web programera. Crystal je namijenjen Ruby zajednici jer... sintaksa mu je slična, a ponekad i identična Rubyju. S već velikim brojem Ruby startupa koji nastavlja rasti, Crystal može odigrati ključnu ulogu u podizanju performansi ovih aplikacija na višu razinu.


Elixir također crpi inspiraciju iz Ruby ekosustava, ali radije nego da pokušava donijeti prednosti slične C-u, fokusiran je na izgradnju vrlo dostupnih, responzivnih sustava, tj. nešto za što kritičari kažu da Rails ima problema. Elixir postiže ove prednosti koristeći Erlang VM, koji ima snažnu reputaciju temeljenu na 25 godina uspješnog korištenja u telekomunikacijskoj industriji. Phoenix (web okvir za Elixir), zajedno s velikim i uspješnim ekosustavom, daje ovom jeziku dodatnu privlačnost.


Sada pogledajte kako se četiri od ovih pet jezika penju na ljestvici popularnosti (na temelju podataka sa StackOverflowa i GitHuba):




Svaki od ovih jezika može se pohvaliti strastvenom zajednicom i vlastitim tjednim biltenom. Ako razmišljate o učenju mladog jezika s uzbudljivim mogućnostima za budućnost, pročitajte kratke prezentacije za svaki od ovih pet jezika koje su napisali iskusni entuzijasti i vođe u svojim ekosustavima.

Brijest

Elm je funkcionalni programski jezik usmjeren na upotrebljivost i jednostavnost korištenja koji se kompilira u JavaScript kod visokih performansi. Možete ga koristiti, uključujući i zajedno s JavaScriptom, za stvaranje korisničkih sučelja na Internetu. Glavne prednosti Elma u odnosu na JavaScript su njegova pouzdanost, jednostavnost podrške i fokus na zabavu programiranja. Konkretnije:

  • Nema iznimaka vremena izvođenja: Elm kod ima reputaciju nikada ne bacajući iznimke tijekom izvođenja. Nimalo kao "nedefinirano nije funkcija."
  • Legendarno ljubazan kompilator: Elm prevodilac često hvaliti za najkorisnija izvješća o programskim pogreškama među konkurentima. "Ako se kompajlira, obično samo radi" je uobičajeno uvjerenje, čak i nakon velikog refaktoriranja. To čini velike Elm projekte puno lakšim za održavanje od usporedivih JS projekata.
  • Semantička verzija: elm-package automatski provodi semantičke verzije. Ako autor paketa pokuša napraviti izmjene koje kvare API bez podizanja glavnog broja verzije, elm-package će to otkriti i odbiti objaviti nova verzija paket. Nijedan drugi poznati upravitelj paketa ne nameće semantičku verziju tako pouzdano.
  • Brzo i funkcionalno: Elm je čisti funkcionalni jezik koji ne jamči nikakve mutacije ili nuspojave. Ovo ne samo da Elm kod čini visoko skalabilnim, već mu također pomaže da brže renderira korisničko sučelje nego React, Angular ili Ember.
  • Snažni alati: formati elm-formata izvor prema standardu zajednice. Nema više argumenata oko konvencija kodiranja. Samo kliknite gumb "Spremi" u uređivaču i vaš kod postaje prekrasan. elm-test dolazi s baterijama koje podržavaju i jedinično i nasumično testiranje. elm-css vam omogućuje pisanje Elm koda koji se kompajlira u css datoteku, tako da možete dijeliti kod između svoje aplikacije i stilova kako biste osigurali da vaše konstante nikad ne budu sinkronizirane.

Elm kod također može komunicirati s JavaScriptom. Odnosno, možete ga uvesti u malim dozama u svoj JS kod, a i dalje možete koristiti ogroman JS ekosustav i ne izmišljati kotač.

Kotlin

Kotlin je statički tipiziran jezik koji cilja na JVM i JavaScript. Kotlin je rođen iz potrebe koju je JetBrains tražio novi jezik da razviju svoj alat (koji je uglavnom napisan u Javi). Nešto što bi im omogućilo korištenje postojeće baze kodova i istodobno riješilo neke od problema koje je Java uzrokovala. Rješenja ovih uobičajenih problema koji se javljaju pri pisanju softvera određuju većinu karakteristika Kotlina.

  • Konciznost: smanjiti količinu standardnog koda potrebnog za izražavanje određenih konstrukcija.
  • Svestranost: stvoriti jezik koji je prikladan za bilo koju vrstu industrijske aplikacije, bilo da se radi o webu, mobilnom razvoju, stolnim ili poslužiteljskim aplikacijama.
  • Sigurnost: Neka sam jezik rješava neke od uobičajenih pogrešaka povezanih s problemima kao što su iznimke nulte reference.
  • Interakcija: Omogućite međuoperativnost jezika s postojećim bazama Java koda, bibliotekama i okvirima, omogućujući postupno usvajanje i korištenje postojećih ulaganja.
  • Alati: JetBrains izrađuje alate i izrađuje ih na temelju uvjerenja da mnogi rutinski poslovi može se automatizirati i dovesti do učinkovitijeg i produktivnijeg razvoja. Dakle, jezik bi trebao lako omogućiti korištenje pomoćnih alata.

Kotlin se uvijek bavio pragmatizmom - tražeći uobičajene probleme s kojima se često susrećemo prilikom pisanja koda i pokušavati pomoći u njihovom rješavanju. To se proteže kroz različite jezične značajke, kao što su:

  • Null-safe prema zadanim postavkama: Kotlin tipovi prema zadanim postavkama ne mogu nullirati, čime se izbjegavaju dosadne iznimke povezane s null referencama/pokazivačima.
  • Delegacija prve klase: mogućnost delegiranja funkcionalnosti člana klase vanjskoj funkciji, što olakšava ponovnu upotrebu i poboljšava sastav.
  • Ugovori: skup konvencija koje vam omogućuju pisanje ekspresivnog koda, utirući put DSL-u sa strogim tipovima koji poboljšava čitljivost i olakšava refaktoriranje.
    html ( glava ( naslov (+"XML kodiranje s Kotlinom") ) tijelo ( p ( + "Ovo je neki HTML") ) )

Kotlin 1.0 objavljen je u veljači 2016., nakon više od pet godina razvoja i opsežnog testiranja u stvarnim projektima. Trenutno više od deset JetBrains proizvoda koristi Kotlin. Koriste ga i tvrtke kao što su Amex, NBC Digital, Expedia i Gradle.


Za dobivanje dodatne informacije posjetite kotlinlang.org


Ovaj odjeljak napisao je



reci prijateljima
Pročitajte također