Sistemi za programiranje zagotavljajo platformo za razvoj aplikacijske programske opreme in neposredno vplivajo na računalniško opremo za doseganje potrebne zmogljivosti pri izvajanju uporabniških nalog. Platformo lahko uporabite za programiranje aplikacij iPhone, iPad in operacijskih sistemov Android s programskim jezikom Java. Android Studio in vmesnik Oracle Java SDK, skupaj s potrebnim osnovnim znanjem, vam omogoča ustvarjanje najrazličnejših aplikacij.
Naj začnemo razkriti koncept programskih sistemov. Tisti, ki jih zdaj uporabljamo, spadajo v obdobje 3. generacije računalnikov. Sistemsko programiranje je programska oprema. Lahko opravlja veliko različnih nalog. Brez tega večina strojne opreme ne bi izvajala svojih funkcij. Za njihovo uporabo uporabite programsko opremo. Uporabnik mora izbrati želeni program za vsako nalogo.
Elementi klasičnega programskega sistema:
Primer sodobnega programskega sistema je servisna in osnovna programska oprema.
Splošna oblika programa namenja posebno pozornost posameznim komponentam in odnosu med njimi. Programi so dobri ali slabo strukturirani. Z dobro strukturiranim programom delitev komponent sledi načelom, kot je na primer skrivanje informacij, vmesniki med komponentami pa so jasni in preprosti. Na bolj subtilni ravni uporablja ustrezne podatkovne strukture in programske enote z eno vstopno točko in eno izhodno točko.
S slabo strukturiranim programom je razdelitev na komponente v veliki meri arbitrarna, vmesniki pa so implicitni in kompleksni. Poleg tega ima takšen program poljubne podatkovne strukture in pretok nadzora. Skoraj vsi strukturirani programi imajo splošen značaj ukrepov:
Sistemi za programiranje in pozdrav Hello World v različnih programskih jezikih jasno prikazujejo osnovne razlike.
Če želite uporabiti spremenljivko znotraj programa, mora prevajalnik vnaprej vedeti vrsto podatkov, ki bodo shranjeni v njem. Zaradi tega so spremenljivke deklarirane na začetku programa.
Deklaracija spremenljivke je sestavljena iz podajanja novega imena in tipa podatkov za spremenljivko. To se običajno opravi na samem začetku.
Naslednja slika prikazuje primer programskega sistema za strukturo zanke, ki sproži niz stavkov, dokler pogoj ni resničen.
To je tisti, ki nima delujočega postopka izstopa. Posledično se cikel neprestano ponavlja, dokler ga operacijski sistem ne zazna in zaustavi program z napako ali dokler se ne pojavi kakšen drug dogodek, na primer program se po določenem času samodejno ustavi.
V nadaljevanju so predstavljeni programski sistemi in primeri programov C za program sortiranja nizov v slovarju. Ta program od uporabnika vzame 10 besed (vrstic) in jih razvrsti v leksikografski vrstni red. Na primer 10 programskih jezikov:
Rezultat:
Za programiranje potrebujete nekaj orodij. Shema klasičnega programskega sistema:
Z uporabo predloge za oblikovanje je treba strukturirati program ali uporabiti jezikovna orodja in čim bolj jasno zagotoviti sistematičen pristop k programiranju, kot tudi povezavo s podatkovno zbirko predlog, ustvariti stran, ki bo prikazala videz po meri. Bolj splošno, vzorčni vzorec je večopravilnost in napredna rešitev.
Struktura programske opreme (ali okvir) je posebna vrsta programske opreme. Njegov prvi cilj je povezati programiranje in zagotoviti čim več orodij, ki jih potrebujete. Na primer, Django 2 je struktura v Python, ki je zasnovana tako, da omogoča ustvarjanje reaktivnih spletnih mest. Ustvarja strukturo in ponuja skupna orodja, ki jih potrebujejo vsa spletna mesta (administracijski vmesnik, storitve za preverjanje pristnosti, način prevajanja strani v več jezikov itd.).
Drug primer je prisotnost več okvirov v JavaScriptu (jQuery ali angular.js) z enim ciljem - iste akcije bi morale biti napisane drugače, odvisno od vrste brskalnika, ki ga obiskovalec uporablja na spletni strani. Imajo edinstven vmesnik, ki ga spremeni v kodo, ki jo razume vsak brskalnik. Na fotografiji je primer programskega sistema v JavaScriptu za nalogo odpiranja novega okna po kliku na gumb.
Programski jezik je niz sporazumov in abstrakcij, ki vam omogočajo, da napišete, kaj potrebuje uporabnik, tako da računalnik proizvede rezultat v bolj razumljivi obliki. Kompilacija je pretvorba izvorne kode v izvršljivo datoteko. To pretvorbo izvede prevajalnik. Razlika v hitrosti izvedbe je ogromna. Na splošno velja, da bo program na sestavljenem jeziku deloval približno desetkrat hitreje od interpretiranega. Spodaj je primer sistema za programiranje C. Prikazuje program, ki uporablja tako imenovane funkcije višjega reda in čiste funkcije.
Pri interpretiranih jezikih se izvorna koda posreduje tolmaču, ki program izvede neposredno. Ni potrebno skrbeti za operacijski sistem ali vrsto procesorja, saj mora biti nameščen na uporabnikovem računalniku. Poleg tega, ker mora biti izvorna koda "prevedena" v strojno kodo z vsakim izvajanjem, so interpretirani jeziki pogosto počasni v primerjavi z enakovrednimi prevedenimi jeziki. Hkrati pa tolmači ne optimizirajo generirane strojne kode, zaradi česar delajo počasneje, vendar je proces generiranja strojne kode hitrejši od postopka za prevajalnike.
Pogosto se skrajšajo, imenujejo se "jeziki VM" (v skladu z analogijami angleškega imena virtualnega stroja). Načelo delovanja in namen programskega sistema je, da izvorna koda ni prevedena v strojno kodo, razumljivo specifičnemu procesorju, temveč v »dummy« (bajtno kodo), ki jo bo sam interpretiral v navideznem strojnem jeziku. Takšen jezik ima prednosti in slabosti.
Tako kot pri interpretiranih jezikih se lahko program, ki ga sestavi bajtna koda, izvaja v katerem koli operacijskem sistemu in procesorju, pod pogojem, da je virtualna naprava na voljo za to kombinacijo. Po drugi strani pa, ker je bila kompilacija navzgor, program teče hitreje kot ekvivalenten interpretirani jezik. Pogosto doseže hitrost, ki je podobna hitrosti "pravega" jezika strojne kode. Vendar pa je to izravnano z dejstvom, da je lahko virtualni stroj precej intenziven, zlasti v pomnilniku.
Končno lahko ustvarite nove jezike, ki bodo prevedeni v isto bajtno kodo kot drugi obstoječi jezik, kar poenostavi njihovo interakcijo. To je ena od nalog programskega sistema. Primer je jezik Clojure in Frege, ki sta prevedena za bajtno kodo Java. Funkcionalne in radikalno se razlikujejo od Jave v svojem oblikovanju. V tem primeru lahko napišete različne dele programa z enim od najustreznejših jezikov in jih navežete, da delajo skupaj na navideznem računalniku. Java je jezik, ki ga je najbolje združiti v virtualni stroj. Vendar potrebujete aplikacijo, ki je sestavljena iz niza razredov Java. Na začetku kateregakoli razreda obstaja posebna struktura, kot je JavaClassFileFormat.
Predstavljamo najbolj znane programske jezike:
Predstavljamo primer strojne kode:
110101010010001000111001001 010101001000100001011101001 000111001101110001101101010 001111010010010101011001010 001010101111110100101010001.
Kot lahko vidite, je v tej vrsti kode zelo malo razločevalne strukture. V programskih jezikih je semantična vrzel razlika med jezikom, ki se uporablja za programiranje strojne opreme (strojna koda), in jezikom, ki ga je treba uporabiti za programiranje računalnika kot sistema. Primer sistema programiranja: stran odjemalca JavaScript bo zahtevala uporabo dveh jezikov, razen tistega, ki ustvarja JavaScript (CoffeScript ali Elm).
Za strežniško stran ima PHP najvišje položaje, vendar se aktivno uporabljajo tudi Python in Ruby. JavaScript se uporablja tudi na strani strežnika, zahvaljujoč NodeJS. Za video igre na Windows, se uporabljajo C ++, Python in C #. Vendar pa niso edini. Vsak jezik, ki omogoča enostavno ustvarjanje grafičnega vmesnika, je lahko primeren (C, Java, Ruby ali Tcl / Tk).
Za velike aplikacije C ++ in Java prevladujeta na trgu, čeprav se C # prav tako krepi. Za majhne utilitarne aplikacije, zlasti v ukazni vrstici, je enostavno najti C, Perl, Python ali Ruby. Na področju znanstvenega računalništva Fortran ostaja kralj. Vse bolj konkurira C ++, Python ali specializiranim jezikom, kot sta Matlab in R.
Skozi zgodovino računalništva je bilo narejenih na stotine poskusov, da bi bili računalniški programski jeziki, kot je pisana angleščina, lahko berljivi in razumljivi. PASCAL je rezultat enega takšnega napora. Ustvarjalec PASCAL-a, Nicholas Wirth, je želel HLL, ki bi ga lahko učili, brali in pisali. Razvil je PASCAL na podlagi naslednjih konceptov:
Spodaj je primer za določitev števila črk v besedi.
PASCAL omogoča modularno kodiranje z:
V danem primeru Pascalovega programskega sistema program prikazuje binarno izbiro (obstajata samo dva primera: ActualMark> = 50 ali ActualMark <50).
Treba se je izogibati skupnim napakam pri kodiranju. Tako bo uporabnik prihranil čas in se izognil težavam. Vrste napak:
Sintaksni poudarki in slogi zamika se pogosto uporabljajo za pomoč programerjem pri prepoznavanju elementov izvorne kode.
Hkrati je pomembno, da je barvno kodiranje poudarjeno v fragmentu kode kot primer programskega sistema, napisanega v Pythonu.