Kur kompleksiteti i problemeve rritet, bëhet më i vështirë shkrimi dhe menaxhimi i programeve të cilat merren me ato probleme.
Paradigmë programuese e quajmë filozofinë e shkruarjes së programeve.
Paradigma imperative
Programuesi jep urdhërat se çfarë duhet bërë gjatë ekzekutimit të programit.
Urdhërat diktojnë rrjedhën e ekzekutimit dhe ndryshimin e gjendjes hap pas hapi.
Gjuha e asamblerit
Formë imperative e shkrimit të programeve në nivel të makinës.
Programuesi ia jep hapat e ekzekutimit procesorit, si psh. add
, jump
, compare
etj.
Nuk ekziston struktura e blloqeve, kushtëzimeve, ose unazave. Urdhërat vetëm ndryshojnë gjendjen ose bëjnë kërcime të ekzekutimit.
Programimi i strukturuar
Formë imperative e shkrimit të programeve, ku urdhërat grupohen në nivel të blloqeve.
Kjo formë programimi është aplikuar gjatë kësaj lënde.
Bazohet në: blloqe, kushtëzime, unaza, switch, etj.
Programimi procedural
Formë imperative e programimit të strukturuar, ku programi ndahet në blloqe të njohura si procedura.
Shembull: Programi i një loje kompjuterike:
int main() {
inicializoFushen();
luajLojen();
shfaqPiket();
return 0; // fund
}
Programimi funksional
Filozofi e programimit që bazohet në funksione.
Bazohet në: transformimin e të dhënave, kompozimin e funksioneve, jo-ndryshueshmërinë, largimin e efekteve anësore.
Gjuhë të tilla: Haskell, Scala, ML, F#, JavaScript
Programimi i orientuar në objekte
Filozofi programimi që bazohet në struktura të dhënave dhe sjellje të tyre.
Gjërat e jetës reale pasqyrohen në objekte. Objekti mban të dhëna si dhe funksionalitet.
Bazohet në: klasa, enkapsulim, trashëgimi, polimorfizëm, abstraksione.
Gjuhë të tilla: Java, C++, C#, JavaScript
Gjuha programuese mund të jetë:
Gjuha programuese mund të jetë:
int x
) - C++, Java, C#, etj.Gjuha programuese mund të jetë:
"5" == 5
jep true
- JavaScript, C (në një nivel), etj.Memoria e programit mund të jetë:
Disa lloje arkitekturash të programit:
Programet shfrytëzohen për shumë qëllime:
Web serveri është një program që vazhdimisht shërben kërkesa për klientët.
Disa teknologji për web serverë:
Zakonisht njihet si back-end programim.
Klient aplikacioni është një aplikacion që ekzekutohet në shfletues dhe komunikon me web serverin.
Zakonisht shkruhen në JavaScript dhe njihet si front-end programim.
Disa teknologji për klient aplikacione:
Për më shumë rreth web lexoni këtu.
Desktop aplikacionet janë programe që ekzekutohen në kompjuterët lokal. Ata ofrojnë një ndërfaqe për interaksion me shfrytëzuesin.
Disa teknologji për desktop aplikacione:
Aplikacionet mobile janë programet e shkruara për pajisje mobile - kryesoret Android dhe iOS.
Disa teknologji për ueb aplikacione: