Programski sustavi: primjeri, opis, značajke

Programski sustavi pružaju platformu za razvoj softverskih aplikacija i izravno komuniciraju s računalnom opremom kako bi dobili potrebne performanse pri obavljanju korisničkih zadataka. Platforma se može koristiti za programiranje operativnih sustava iPhone, iPad i Android pomoću programskog jezika Java. Android Studio i Oracle Java SDK sučelje, u kombinaciji s potrebnim osnovnim znanjima, omogućuju vam stvaranje raznih aplikacija.

Elementi softverskih sustava

Za početak, otkrit ćemo koncept programskih sustava. One koje sada koristimo odnose se na 3. generaciju PC ere. Programiranje sustava je stvaranje softvera. Može obavljati mnoge različite zadatke. Bez nje većina hardvera ne bi izvršavala svoje funkcije. Da biste ih učinili korisnim, koristite softver. Korisnik mora odabrati željeni program za svaki zadatak.


Elementi klasičnog programskog sustava:
  • Operativni sustav - je sučelje između softverske aplikacije i računala.
  • Komunalne usluge su mali, ali moćni programi s ograničenim mogućnostima za određene zadatke. Korisnici se obično koriste kako bi osigurali neprekidan rad računalnog sustava.
  • Knjižnični programi su kompilacija skupa potprograma, na primjer, knjižnica. Pružite mnoge funkcije ipostupcima koji su dostupni prilikom pisanja programa.
  • Softver za prevođenje: asembler, prevodilac, prevoditelj.
  • Interpreter analizira i izvršava program jezika visoke razine jedan red po jedan.
  • Aplikacijski softver dizajniran za pomoć korisniku u obavljanju određenih zadataka, kao što je GIMP - za uređivanje fotografija.
  • Primjer suvremenog programskog sustava uključuje uslugu i osnovni softver.

    Struktura programa

    Opći oblik programa posvećuje posebnu pozornost pojedinim komponentama i međusobnim odnosima. Programi su dobri ili loše strukturirani. Dobro strukturirani program razdvajanja komponenti slijedi načela poput skrivanja informacija, a sučelja između komponenti su jasna i jednostavna. Na suptilnijoj razini koristi odgovarajuće strukture podataka i programske jedinice s jednom ulaznom točkom i jednom izlaznom točkom. S loše strukturiranim programom za particioniranje, komponente su uglavnom proizvoljne, a sučelja su implicitna i složena. Osim toga, takav program ima proizvoljne strukture podataka i protok kontrole. Gotovo svi strukturirani programi su opće prirode:
  • Zahtjev za početak programa.
  • Proglašavanje varijable.
  • Programske aplikacije (kodni blokovi).

    Primjeri pozdrava "Hello World"

    Programski sustavi "Hello World" i primjeri u različitim programskim jezicima jasno pokazuju osnovne razlike.
    Za korištenje varijableunutar programa, prevodilac mora unaprijed znati vrstu podataka koji će biti pohranjeni u njemu. Zbog toga su varijable deklarirane na početku programa. Deklaracija varijable sastoji se od specificiranja novog imena i tipa podataka za varijablu. To se obično radi na samom početku.
    Sljedeća slika prikazuje primjer programskog sustava za strukturu petlje koja pokreće skup operatora dok uvjet ne postane istinit.

    Beskonačni ciklus

    Ovo je onaj koji nema funkcionalan izlazni postupak. Zbog toga se ciklus neprestano ponavlja sve dok ga operativni sustav ne osjeti i neće prekinuti program s pogreškom ili dok ne dođe do nekog drugog događaja, na primjer, program se automatski zaustavlja nakon određenog vremena. U nastavku su prikazani sustavi programiranja i primjeri programa u C jeziku za program sortiranja linija u rječniku. Ovaj program uzima 10 riječi (redaka) od korisnika i sortira ih u leksikografskom redoslijedu. Na primjer, 10 programskih jezika:
  • C.
  • C ++.
  • Java.
  • PHP.
  • Python.
  • Perl.
  • Cobol.
  • Ruby.
  • R.
  • javascript.
  • Rezultat:
  • C.
  • C ++.
  • Cobol.
  • Java.
  • javascript.
  • PHP.
  • Perl.
  • Python.
  • R.
  • Ruby.
  • Osnovni alati

    Za programiranje je potrebno nekoliko alata. Shema klasičnog programskog sustava:
  • Uređivač teksta - alati za uređivanje. Ovaj alat omogućuje vam pisanje izvornog koda. Za to je potreban jednostavan alatprogramiranje na bilo kojem jeziku. Doista, pri programiranju, prisutnost takvih funkcija kao što su: automatsko dovršavanje, označavanje sintakse, pretraživanje, uređivanje, zamjena dijela koda i uređivanje uvlačenja su dobrodošli.
  • Kompajler ili tumač. Ovaj je alat izravno povezan s programskim jezikom.
  • Debugger. Razvojni programeri, kao i svi drugi ljudi, možda nisu u pravu. Pronalaženje i ispravljanje pogrešaka zahtijeva vrijeme. Program za otklanjanje pogrešaka je alat koji će im pomoći u praćenju. Omogućuje vam da pokrenete program korak po korak, vidite njegov status u bilo kojem trenutku, te također provjerite radi li se dio koda ili ne.
  • Knjižnica potprograma.
  • Prateća dokumentacija.
  • Predlošci dizajna

    Korištenjem predloška dizajna strukturira se program ili se koriste jezični alati i osigurava što točniji sustavni pristup programiranju, kao i povezivanje s bazom predložaka, stvarajući stranicu koja će prikazati izgled sučelja. Općenitije, dizajn predložak je višezadaćno i poboljšano rješenje.

    Struktura softvera (ili okvira) posebna je vrsta knjižnice softvera. Njegov prvi cilj je sastaviti programiranje, pružajući onoliko alata koliko vam je potrebno. Na primjer, Django 2 je struktura u Pythonu osmišljena da olakša stvaranje reaktivnih web-mjesta. Stvara strukturu i nudi uobičajene alate koji mogu biti korisni za sve web-lokacije(administracijsko sučelje, usluge provjere autentičnosti, način prevođenja stranice na nekoliko jezika itd.). Drugi primjer je prisutnost više okvira u javascriptu (jQuery ili angular.js) za jednu svrhu - iste radnje treba napisati drugačije, ovisno o tipu preglednika koji koristi posjetitelj na web-mjestu. Imaju jedinstveno sučelje koje ga pretvara u kod koji je svaki preglednik razumio. U primjeru fotografije je programski sustav za javascript za zadatak da otvori novi prozor nakon klika na gumb.

    Kompilirani jezici

    Programski jezik je skup transakcija i apstrakcija koje vam omogućuju da napišete ono što korisnik treba biti u mogućnosti dati računalu rezultat u razumljivijem obliku. Kompilacija je pretvoriti izvorni kod u izvršnu datoteku. Ovu konverziju izvodi prevodilac. Razlika u brzini izvršenja je ogromna. Općenito, s drugim jednakim uvjetima, program na kompiliranom jeziku funkcionirat će deset puta brže od tumačenja. U nastavku slijedi primjer sustava za programiranje C. On demonstrira program koji koristi takozvane vrhunske značajke i čiste značajke.
    U slučaju tumačenih jezika, izvorni kod se daje tumaču koji izvršava program. Nema potrebe brinuti se o operativnom sustavu ili vrsti procesora, budući da ga treba instalirati na računalo korisnika. Štoviše, budući da se izvorni kod mora "prevesti" u stroj pri svakom izvođenju, interpretiratijezici su često spori u usporedbi s ekvivalentnim prevedenim jezicima. Međutim, tumači ne optimiziraju generirani strojni kod, zbog čega rade sporije, ali proces generiranja strojnog koda je brži od kompilatora.

    Jezici virtualnih računala

    Često se nazivaju "VM jezicima" (analogno engleskom nazivu virtualnog stroja). Princip rada i svrhe programskog sustava je da izvorni kod nije preveden u stroj koji razumije određeni procesor, već "fiktivni" (bajt-kod), koji će sam biti interpretiran jezikom virtualnog stroja. Ovaj jezik ima svoje prednosti i nedostatke. Kao i kod interpretiranih jezika, program se kompajlira u bajtni kod koji se može izvoditi na bilo kojem operacijskom sustavu i procesoru, pod uvjetom da je virtualni stroj dostupan za tu kombinaciju. S druge strane, budući da je riječ o kompilaciji uzvodnog toka, program radi brže od ekvivalentnog interpretiranog jezika. Često doseže brzinu sličnu onoj "pravog" jezika strojnog koda. Međutim, to se nadoknađuje činjenicom da virtualni stroj može biti vrlo resursno intenzivan, osobito u memoriji. Konačno, možete stvoriti nove jezike koji će se prevesti u isti bajtni kod kao i drugi postojeći jezik, što pojednostavljuje njihovu interakciju. To je jedan od zadataka programskog sustava. Primjer Clojure i Frege jezika kompajlira se kao za Java bytecode. Oni su funkcionalni i radikalno različiti od Jave u svom dizajnu. U tom slučaju možete pisati različite dijelove programajedan od najprikladnijih jezika i neka rade zajedno na virtualnom stroju. Java je jezik koji najbolje kompilira virtualni stroj. Ali trebate aplikaciju koja se sastoji od skupa Java klasa. Na početku bilo koje klase postoji određena struktura, kao što je JavaClassFileFormat.

    Primjeri jezika i programskih sustava

    Predstavljamo najpoznatije programske jezike:
  • Asembler. On nije nov, ali će podučavati mnoge stvari skrivene u drugim jezicima.
  • C. koji se najčešće koristi u svijetu. Upravo taj jezik daje vam potpunu kontrolu nad automobilom. Koristi se za šifriranje operacijskih sustava. Njezina dostojanstvena starost od gotovo pola stoljeća i veliki broj knjižnica koje odgovaraju bilo čemu postaju neophodni kako za početnike tako i za napredne korisnike.
  • Cobol. Ovo je stari jezik. Obično je teže koristiti od drugih. Međutim, iz nekih povijesnih razloga, još uvijek se široko koristi u bankarstvu, financijama i osiguranju.
  • Fortran. On je još uvijek u potražnji u području znanstvenog računanja, za koji je razvijen. Iako se sintaksa ovog jezika redovito ažurira, osjeća se njezina dob. Osim toga, neke softverske knjižnice u Fortranu nikada nisu bile usklađene s obzirom na učinkovitost.
  • Java. Ima značajku kompilacije u bajtnom kodu, koju tada interpretira virtualni stroj. To uvelike pojednostavljuje stvaranje aplikacija za korištenje na nekoliko platformi operativnih sustava. Primjerice, Java je pristupnik za kodiranje Android aplikacije.
  • Perl. To je jezik koji se uglavnom cijeni u svijetu Linuxa i Unixoidima. To je učinkovito za stvaranje malih, ali vrlo moćnih programa iz naredbenog retka. Međutim, Perl nije pogodan za kreiranje grafičkih sučelja.
  • PHP. Koji je dominantni svijet web programiranja.
  • Python. Ovaj se jezik preporučuje početnicima.
  • Ruby. Povezan s Pythonom, on redovito koristi inovacije. Općenito, vrlo su slični. Možemo reći da Ruby nudi više sintaktičke slobode i više insistira na svojoj objektno-orijentiranoj prirodi, a Python je lakši i podržan od strane veće zajednice.
  • Swift. To je prilično mlad jezik, sklon promjenama i prilagodbama, pogodan za Apple proizvode. U nadolazećim godinama može postati glavni proizvod programskih aplikacija iOS i OSX.

    Korištenje

    Predstavljamo primjer strojnog koda: 110101010010001000111001001010101001000100001011101001000111001101110001101101010 001111010010010101011001010001010101111110100101010001. U programskim jezicima, semantički jaz je razlika između jezika koji se koristi za hardversko programiranje (strojni kod) i onoga što trebate koristiti za programiranje vašeg računala kao sustava. Primjer sustava za programiranje: za klijentsku stranu JavaScript zahtijeva upotrebu dva jezika, osim onog koji generira javascript (CoffeScript ili Elm). Na strani poslužitelja, PHP drži najviše pozicije, ali Python i Ruby se također aktivno koriste. javascript se također koristi na strani poslužitelja, zahvaljujući NodeJS-u. Za videoigre u sustavu Windows koristite C ++, Pythoni C #. Međutim, daleko su od njih jedini. Bilo koji jezik koji ga čini prilično lakim za stvaranje grafičkog sučelja može biti prikladan (C, Java, Ruby ili Tcl /Tk). Za velike aplikacije na tržištu dominiraju C ++ i Java, iako C # također dobiva na zamahu. Za male uslužne programe, kao što je naredbeni redak, lako je pronaći C, Perl, Python ili Ruby. U području znanstvenog računalstva Fortran je i dalje kralj. Sve se više natječe s C ++, Python ili specijaliziranim jezicima kao što su Matlab i R.

    PASCAL programiranje. lako čitljivi i lako razumljivi. PASCAL je rezultat jednog od tih napora. Stvoritelj PASCAL-a Nicolas Wirth htio je imati HLL koji se lako može učiti, čitati i pisati. Razvio je PASCAL na temelju sljedećih pojmova:
  • PASCAL mora zatvoriti ili bitno smanjiti semantički jaz.
  • Svaka izjava PASCAL-a mora biti rečenica u engleskom tekstu.
  • Program PASCAL može se smatrati prijedlogom na engleskom jeziku.
  • Nazivi postupaka, struktura podataka i varijable u sustavu PASCAL trebali bi biti lako prepoznatljivi.
  • Primjer sustava programiranja u sustavu PASCAL

    Slijedi primjer određivanja broja slova u riječi.
    PASCAL olakšava modularno kodiranje pomoću:
  • Korištenja enkapsulacijskog koda u postupcima i funkcijama.
  • Korištenje BEGIN i END izraza za određivanje funkcionalnog bloka koda.
  • Stroga varijabla (primjerice, dodjeljivanje tipova podataka kao što su cijeli broj, pravi ili niz) zapodržavaju prijenos parametara između postupaka.
  • Prijateljska sintaksa koja sužava semantičku rupturu.
  • U sljedećem primjeru Pascalovog sustava za programiranje, program prikazuje binarni odabir (postoje samo dva slučaja: ActualMark & ​​gt; 50 ili ActualMark Zajedničke programske pogreške. 97) Loše formatiranje koda Trebalo bi biti jasno, trebalo bi imati komentare na vrhu programa.
  • Loše testiranje i provjera pogrešaka.
  • Loša praksa komentiranja.
  • Naziv nepouzdanih varijabli Vrlo je teško raditi na kodu kada su mnoge varijable kratke, ne opisne.
  • Odabir neprikladne strukture podataka
  • Sintaksno isticanje i stil otiska često se koriste kako bi programeri prepoznali elemente izvornog koda. Važno je da se kodiranje boja dodijeli u fragmentu koda kao primjer sustava programiranja, pisanog u Pythonu.

    Povezane publikacije