Programmeerimiskeel

Sisu

·         1 Programmeerimiskeelte tüübid

o    1.1 Kõrgetasemeline vs. madalatasemeline

o    1.2 Deklaratiivne vs. imperatiivne programmeerimine

o    1.3 Funktsionaalne vs. protseduuriline

o    1.4 Stack põhinev

o    1.5 Objektipõhine

o    1.6 Voolule orienteeritud

·         2 reeglit

·         3 Objektipõhine programmeerimine

·         4 näidet

o    4.1 Visual Basici näide

o    4.2 Pythoni näide

o    4.3 C# näide

o    4.4 Haskelli näide

·         5 Seotud leheküljed

Programmeerimiskeel on teatud tüüpi kirjakeel, mis ütleb arvutitele, mida nad peavad tegema, et töötada. Programmeerimiskeeli kasutatakse kõigi arvutiprogrammide ja arvutitarkvara koostamiseks. Programmeerimiskeel on nagu juhiste kogum, mida arvuti järgib, et midagi teha.

Programmeerija kirjutab programmide loomiseks lähtekoodi teksti programmeerimiskeeles. Tavaliselt kasutatakse programmeerimiskeeles mõnede käskude jaoks reaalseid sõnu, et keel oleks inimesele lihtsamini loetav. Paljud programmeerimiskeeled kasutavad kirjavahemärke nagu tavaline keel. Paljud programmid on nüüd "kompileeritud". See tähendab, et arvuti tõlgib lähtekoodi mõnda teise keelde (näiteks assembler- või masinakeelde), mis on arvutile palju kiirem ja lihtsamini loetav, kuid inimesele palju raskemini loetav.

Arvutiprogrammid tuleb kirjutada väga hoolikalt. Kui programmeerija teeb vigu või programm püüab teha midagi, mida programmeerija ei ole kavandanud, võib programm "kokku kukkuda" või lõpetada töötamise. Kui programmis tekib probleem selle tõttu, kuidas kood on kirjutatud, nimetatakse seda "veaks". Väga väike viga võib põhjustada väga suurt probleemi.

Programmeerimiskeelte tüübid

Programmeerimiskeeli on palju. Enamik programmeerimiskeeli ei järgi ainult ühte tüüpi, seega on raske määrata igale keelele oma tüüpi. Iga tüübi näited on toodud igas allpool esitatud jaotises, sest need on selle tüübi parimad tuntud näited.

Kõrgetasemeline vs. madalatasemeline

[icon]

See osa vajab rohkem teavet. (august 2018)

Kõrgetasemelised programmeerimiskeeled nõuavad vähem teadmisi riistvara kohta võrreldes madala taseme programmeerimiskeeltega. Kõrgetasemelised programmeerimiskeeled vajavad interpretaatorit, et teisendada lähtekood madalatasemeliseks programmeerimiskeeleks.

Deklaratiivne vs. imperatiivne programmeerimine

Deklaratiivsed programmeerimiskeeled kirjeldavad "probleemi", kuid tavaliselt ei ütle nad, kuidas seda probleemi tuleks lahendada. Probleemi kirjelduses kasutatakse loogikat ja probleemi "lahendamine" näeb sageli välja nagu loogiliste aksioomide süsteemi automaatne tõestamine. Sellised programmeerimiskeeled on näiteks Prolog, XSLT, LISP ja SQL.

Imperatiivsed programmeerimiskeeled kirjeldavad oleku muutuste süsteemi. Alguses on programm teatavas olekus ja arvutile antakse sammud, mida ta peab järgima, et sooritada mingi tegevus. Sammude järgimine põhjustab programmi "oleku muutmise".

Üldiselt on deklaratiivsed programmeerimiskeeled turvalisemad ja lühemad. Imperatiivsed programmeerimiskeeled on levinumad, sest neid on lihtsam kasutada.

Funktsionaalne vs. protseduuriline

Funktsionaalne programmeerimine vaatleb programmeerimist nagu funktsiooni matemaatikas. Programm saab sisendi koos mingi teabega ja kasutab seda teavet väljundite loomiseks. Sellel ei ole vahepealset olekut ja ta ei muuda ka asju, mis ei ole arvutamisega seotud.

Protseduurilised programmid määravad või kirjeldavad sammude või oleku muutuste kogumeid.

Stack põhinev

Korstnapõhised keeled vaatavad mõnda programmi mälu nagu kaardipakki. On väga vähe asju, mida saab teha virna abil. Andmeelementi saab panna virna tippu. Seda operatsiooni nimetatakse üldiselt "push". Andmeelementi saab virna tipust eemaldada. Seda nimetatakse "pop". Korstna tipus olevat elementi saab vaadata ilma seda eemaldamata. Seda nimetatakse "peek".

Kui programm on kirjutatud järgmiselt: "push 5; push 3; add; pop;", siis paneb see 5 virna tippu, paneb 3 5 peale, liidab kaks ülemist väärtust (3 + 5 = 8), asendab 3 ja 5 8-ga ja väljastab ülemise (8). Korstnapõhiste programmeerimiskeelte näited on keeled Postscript ja Forth.

Objektipõhine

Objektipõhised programmeerimiskeeled paigutavad andmed ja funktsioone, mis andmeid muudavad, ühte üksusesse. Seda üksust nimetatakse "objektiks". Objektid võivad omavahel suhelda ja teise objekti andmeid muuta. Seda nimetatakse tavaliselt kapseldamiseks või teabe varjamiseks. Enamik kaasaegseid programmeerimiskeeli on objektorienteeritud või vähemalt võimaldavad sellist programmeerimisstiili. Sellised keeled on näiteks Java, Python, Ruby, C++, C# ja teised C-keeled.

Voolule orienteeritud

Voolupõhine programmeerimine näeb programmeerimist kui erinevate komponentide ühendamist. Need komponendid saadavad sõnumeid edasi-tagasi. Üks komponent võib olla osa erinevatest "programmidest", ilma et seda oleks vaja sisemiselt muuta.

Reeglid

Igal programmeerimiskeelel on reeglid selle kohta, mida ta saab ja mida mitte. Nende hulka kuuluvad:

  • Õigeid numbreid (numbrite tüübid ja see, kui suured või väikesed need numbrid võivad olla).
  • Sõnad (reserveeritud sõnad, suur- ja väiketähelepanu)
  • Piirangud programmeerimiskeele võimalustele

Enamikul keeltel on ametlikud standardid, mis määratlevad reeglid, kuidas lähtekoodi kirjutada. Mõnel programmeerimiskeelel on kaks või enam standardit. See võib juhtuda siis, kui uus standard asendab vana. Näiteks Perl 5 standard asendas 1993. aastal Perl 4. See võib juhtuda seetõttu, et kaks inimest tegid kaks standardit samal ajal. Näiteks on APLi jaoks olemas mitu standardit.

Objektipõhine programmeerimine

Objektipõhine programmeerimine (mõnikord lühendatult OOP) on programmeerimise vorm, kus kõik programmi osad on objektid. Objektid on ühesuguse struktuuriga mälu tükid, mida saab üha uuesti ja uuesti kasutada. Pangakonto, bitikaart või videomängu kangelane võivad kõik olla objektid programmis. Objektid koosnevad omadustest (objekti poolt salvestatud teabetükid) ja meetoditest, mis on asjad, mida objekt saab teha. Koera objektil võivad olla sellised omadused nagu height ja hairColor. Selle meetodid võivad olla näiteks bark() ja wagTail().

Kõik objektid luuakse mallidest, mida nimetatakse klassideks. Klassist võib mõelda kui vormist, millest objektid valmistatakse. Klass määratleb kõik omadused ja meetodid, mis tema objektidel on. Klassist loodud objekte nimetatakse klassi instantsideks. Klass võib laiendada teist klassi, mis tähendab, et ta võtab kõik klassi omadused ja meetodid, kuid võib lisada oma omadusi.

Siin on näide sellest, kuidas klass võiks programmeerimiskeeles välja näha:

class Dog extends Mammal{ //Thesis are properties:   String breed = "Collie" String type = "Herding Dog" //Thes are methods void wagTail(){ //Do some wagging } void bark(){ //Do the barking here }  }

Pange tähele, et klass Koer täiendab klassi Imetaja, seega on kõigil koertel imetajate omadused, näiteks karvapikkus, ja meetodid, näiteks eat() või sleep().

Objektipõhist programmeerimist kasutatakse paljudes tänapäeval kõige populaarsemates programmeerimiskeeltes, näiteks Java, C#, Objective-C, C++, Python, Ruby, Javascript ja ActionScript.

Näited

Visual Basici näide

Siin on lihtne programm, mis on kirjutatud Visual Basicis:

  1 Dim Input 2 Input = InputBox("Kui vana sa oled?? - Kood") 3 If Not IsNumeric(Input) Then 4 MsgBox & Input & "See ei ole number!"  5 ElseIf Input < 0 Then 6 MsgBox "Sa ei saa olla sellest vanusest väiksem!"  7 ElseIf Input > 100 Then 8 MsgBox "See on vana!"  9 Else 10 MsgBox "Sa oled " & Input & " aastat vana." 11 End If

See programm küsib kasutajalt tema vanust ja vastab selle põhjal, mida kasutaja on sisestanud. Kui kasutaja sisestas midagi, mis ei ole number, ütleb programm seda. Kui kasutaja sisestas numbri, mis on väiksem kui null, ütleb programm seda. Kui kasutaja ütleb, et ta on vanem kui 100 aastat, ütleb programm "See on vana!". Kui kasutaja sisestas õige vanuse, ütleb programm kasutajale tagasi, kui vana ta on.

Pythoni näide

Siin on programm, mis teeb sama asja nagu ülaltoodud programm, kuid Pythonis:

 try: age = int(raw_input("Kui vana sa oled? ")) except ValueError: print ("See ei ole number!") else: if age < 0: print ("Sa ei saa olla väiksem kui null!") elif age > 100: print ("See on vana!") else: print("Sa oled %s aastat vana." % age)

C# näide

Sama asi nagu ülaltoodud programm, kuid C# keeles:

using System; public class Hello { public static void Main() { Console. WriteLine("Mis on teie vanus?"); int age; if (! int. TryParse(Console. ReadLine(), out age)) Console. WriteLine("See ei ole number!"); else if (age < 0) Console. WriteLine("Sa ei saa olla väiksem kui null!"); else if (age > 100) Console. WriteLine("See on vana!"); else Console. WriteLine("Sa oled {0} aastat vana.", age); } }

Haskelli näide

Taas sama asi, kuid Haskellis:

import Text.Read main = do putStrLn "Mis on sinu vanus?" input <- fmap readMaybe getLine putStrLn $ case input of Just age | age < 0 -> "Sa ei saa olla väiksem kui null!"              | age > 100 -> "See on vana!"              | muidu -> "Sa oled " ++ näita vanus ++ " aastat vana."     Mitte midagi -> "See ei ole number!"

Seotud leheküljed

  • Programmeerimiskeelte loetelu
  • Programmeerija
  • Koostaja
  • Arvutiprogrammeerimine

Küsimused ja vastused

K: Mis on programmeerimiskeel?


V: Programmeerimiskeel on teatud tüüpi kirjakeel, mis ütleb arvutitele, mida teha. See on nagu käskude kogum, mida arvuti järgib, et midagi teha, ja tavaliselt kasutatakse mõnede käskude jaoks reaalseid sõnu, et inimestel oleks sellest lihtsam aru saada.

K: Millised on näited programmeerimiskeeltest?


V: Programmeerimiskeeled on näiteks Python, Ruby, Java, JavaScript, C, C++ ja C#.

K: Kuidas kirjutatakse programme programmeerimiskeeles?


V: Programmid kirjutatakse programmeerimiskeele lähtekoodi teksti kirjutamise teel. Tavaliselt kasutatakse ka kirjavahemärke.

K: Mis juhtub pärast programmide kirjutamist programmeerimiskeeles?


V: Pärast programmide kirjutamist programmeerimiskeeles tuleb need kompileerida, mis tähendab, et arvuti muudab või tõlgib lähtekoodi teise keelde (näiteks assembler- või masinakeelde), mida arvutid saavad lugeda, kuid mida inimestel on palju raskem lugeda.

K: Mis võib juhtuda, kui programmide kirjutamisel tehakse vigu?


V: Kui programmide kirjutamisel tehakse vigu või kui programm üritab teha midagi, milleks see ei ole mõeldud, siis võib see lakata töötamast, mida nimetatakse "crashing'iks". Kui see juhtub sellepärast, et kood on kirjutatud, nimetatakse seda "veaks". Isegi väikesed vead võivad põhjustada suuri probleeme.

K: Miks peavad arvutiprogrammid olema hoolikalt kirjutatud?


V: Arvutiprogrammid peavad olema hoolikalt kirjutatud, sest isegi väikesed vead võivad põhjustada suuri probleeme ja viia krahhide või vigade tekkimiseni.

AlegsaOnline.com - 2020 / 2023 - License CC3