Programozási nyelv

Tartalomjegyzék

·         1 A programozási nyelvek típusai

o    1.1 Magas szintű vs. alacsony szintű

o    1.2 Deklaratív vs. Imperatív programozás

o    1.3 Funkcionális vs. procedurális

o    1.4 Stack alapú

o    1.5 Objektum-orientált

o    1.6 Áramlás-orientált

·         2 Szabályok

·         3 Objektumorientált programozás

·         4 példa

o    4.1 Visual Basic példa

o    4.2 Példa Pythonra

o    4.3 Példa a C# nyelvre

o    4.4 Példa a Haskellre

·         5 Kapcsolódó oldalak

A programozási nyelv egy olyan írott nyelv, amely megmondja a számítógépeknek, hogy mit kell tenniük, hogy működjenek. A programozási nyelveket az összes számítógépes program és számítógépes szoftver elkészítéséhez használják. A programozási nyelv olyan, mint egy utasításkészlet, amelyet a számítógép követ, hogy valamit elvégezzen.

A programozó a programozási nyelven írja a forráskód szövegét, hogy programokat hozzon létre. A programozási nyelv általában valódi szavakat használ a parancsok egy részéhez, hogy a nyelv könnyebben olvasható legyen az ember számára. Sok programozási nyelv ugyanúgy használ írásjeleket, mint egy normál nyelv. Sok programot ma már "lefordítanak". Ez azt jelenti, hogy a számítógép lefordítja a forráskódot egy másik nyelvre (például assembly nyelvre vagy gépi nyelvre), amely sokkal gyorsabb és könnyebben olvasható a számítógép számára, de sokkal nehezebben olvasható egy ember számára.

A számítógépes programokat nagyon gondosan kell megírni. Ha a programozó hibázik, vagy a program olyat próbál csinálni, amit a programozó nem erre tervezett, akkor a program "összeomolhat" vagy leállhat. Ha egy programban a kód megírása miatt van probléma, azt "hibának" nevezzük. Egy nagyon kis hiba nagyon nagy problémát okozhat.

A programozási nyelvek típusai

Sokféle programozási nyelv létezik. A legtöbb programozási nyelv nem csak egy típust követ, ezért nehéz minden nyelvhez egy típust rendelni. Az egyes típusok példáit azért adjuk meg az alábbiakban az egyes szakaszokban, mert ezek a legjobban ismert példák az adott típusra.

Magas szintű vs. alacsony szintű

[icon]

Ez a szakasz több információt igényel. (2018. augusztus)

A magas szintű programozási nyelvek kevesebb hardverismeretet igényelnek, mint az alacsony szintű programozási nyelvek. A magas szintű programozási nyelvekhez szükség van egy értelmezőre, amely a forráskódot alacsony szintű programozási nyelvekké alakítja át.

Deklaratív vs. Imperatív programozás

A deklaratív programozási nyelvek leírnak egy "problémát", de általában nem mondják meg, hogyan kell megoldani a problémát. A probléma leírása logikát használ, és a probléma "megoldása" gyakran úgy néz ki, mint egy logikai axiómákból álló rendszer automatikus bizonyítása. Ilyen programozási nyelvek például a Prolog, az XSLT, a LISP és az SQL.

Az imperatív programozási nyelvek az állapotváltozások rendszerét írják le. A program indulásakor a program egy bizonyos állapotban van, és a számítógépnek lépéseket adnak meg, amelyeket követnie kell egy művelet végrehajtása érdekében. A lépések követése a program "állapotváltását" okozza.

Általában a deklaratív programozási nyelvek biztonságosabbak és rövidebbek. Az imperatív programozási nyelvek elterjedtebbek, mert könnyebb használni őket.

Funkcionális vs. eljárási

A funkcionális programozás úgy tekint a programozásra, mint a matematikában a függvényekre. A program bemenetet kap, bizonyos információkkal együtt, és ezeket az információkat felhasználja a kimenet létrehozásához. Nem lesz közbeeső állapota, és nem is változtat meg olyan dolgokat, amelyek nem kapcsolódnak a számításhoz.

Az eljárási programok lépéssorozatokat vagy állapotváltozásokat határoznak meg vagy írnak le.

Stack alapú

A verem alapú nyelvek a program memóriájának egy részét úgy tekintik, mint egy kártyakupacot. Nagyon kevés dolog van, amit egy veremmel lehet csinálni. Egy adatelemet a verem tetejére lehet tenni. Ezt a műveletet általában "push"-nak nevezik. Egy adatelemet el lehet távolítani a verem tetejéről. Ezt a műveletet "pop"-nak nevezzük. A verem tetején lévő elemet anélkül is megnézhetjük, hogy eltávolítanánk. Ezt a műveletet "peek"-nek nevezzük.

Ha egy programot a következőképpen írunk le: "push 5; push 3; add; pop;", akkor 5 kerül a verem tetejére, 3 az 5 tetejére, a két felső értéket összeadjuk (3 + 5 = 8), a 3 és az 5 helyett 8-at adunk, és a felső (8) értéket kiírjuk. A veremalapú programozási nyelvekre példa a Postscript és a Forth nyelvek.

Objektumorientált

Az objektumorientált programozási nyelvek az adatokat és az adatokat módosító függvényeket egyetlen egységbe helyezik. Ezt az egységet "objektumnak" nevezik. Az objektumok kölcsönhatásba léphetnek egymással, és megváltoztathatják egy másik objektum adatait. Ezt általában kapszulázásnak vagy az információ elrejtésének nevezik. A legtöbb modern programozási nyelv objektumorientált, vagy legalábbis lehetővé teszi ezt a programozási stílust. Ilyen például a Java, a Python, a Ruby, a C++, a C# és más C nyelvek.

Áramlás-orientált

A folyamatorientált programozás a programozást különböző komponensek összekapcsolásaként értelmezi. Ezek a komponensek üzeneteket küldenek oda-vissza. Egyetlen komponens különböző "programok" része lehet, anélkül, hogy belsőleg változtatni kellene rajta.

Szabályok

Minden programozási nyelvnek vannak szabályai arra vonatkozóan, hogy mit lehet és mit nem. Ezek közé tartoznak:

  • Helyes számok (a számok típusai, és hogy milyen nagyok vagy kicsik lehetnek a számok)
  • Szavak (fenntartott szavak, nagy- és kisbetű-érzékenység)
  • A programozási nyelv lehetőségeinek korlátai

A legtöbb nyelvnek vannak hivatalos szabványai, amelyek meghatározzák a forráskód megírásának szabályait. Néhány programozási nyelvnek két vagy több szabványa is van. Ez akkor fordulhat elő, ha egy új szabvány váltja fel a régit. Például a Perl 5 szabvány 1993-ban felváltotta a Perl 4-et. Előfordulhat, hogy két ember egyszerre két szabványt alkotott. Például az APL-nek több szabványa is van.

Objektumorientált programozás

Az objektumorientált programozás (néha rövidítve OOP) a programozás olyan formája, amelyben a program minden része objektum. Az objektumok azonos szerkezetű memóriadarabok, amelyek újra és újra felhasználhatók. Egy bankszámla, egy bittérkép vagy egy videojáték hőse mind objektum lehet egy programon belül. Az objektumok tulajdonságokból (az objektum által tárolt információk) és metódusokból állnak, amelyek olyan dolgok, amelyeket az objektum meg tud tenni. Egy kutya objektumnak lehetnek olyan tulajdonságai, mint a height (magasság) és a hairColor (hajszín). A metódusai közé tartozhat a bark() és a waggTail().

Minden objektumot osztályoknak nevezett sablonokból hozunk létre. Az osztályokra úgy is gondolhatsz, mint egy formára, amelyből az objektumok készülnek. Az osztály határozza meg az összes olyan tulajdonságot és metódust, amellyel az objektumai rendelkeznek. Az osztályból létrehozott objektumokat az osztály példányainak nevezzük. Egy osztály kiterjeszthet egy másik osztályt, ami azt jelenti, hogy átveszi az osztály összes tulajdonságát és metódusát, de hozzáadhatja a sajátjait.

Íme egy példa arra, hogyan nézhet ki egy osztály egy programozási nyelven:

class Dog extends Mammal{ //Ezek a tulajdonságok:   String breed = "Collie" String type = "Herding Dog" //These are methods void wagTail(){ //Do some wagging } void bark(){ //Do the barking here }  }

Vegyük észre, hogy a Dog osztály a Mammal osztály kiterjesztése, így minden kutya rendelkezik az emlősök tulajdonságaival, mint például a hairLength, és metódusaival, mint például az eat() vagy sleep().

Az objektumorientált programozást napjaink legnépszerűbb programozási nyelvei közül sokan használják, például a Java, a C#, az Objective-C, a C++, a Python, a Ruby, a Javascript és az ActionScript.

Példák

Példa Visual Basic

Íme egy egyszerű, Visual Basic nyelven írt program:

  1 Dim Input 2 Input = InputBox("Hány éves vagy?? - Kód") 3 If Not IsNumeric(Input) Then 4 MsgBox & Input & "Ez nem egy szám!"  5 ElseIf Input < 0 Then 6 MsgBox "Ennél a kornál nem lehetsz fiatalabb!"  7 ElseIf Input > 100 Then 8 MsgBox "Ez öreg!"  9 Else 10 MsgBox "Te " & Input & " éves vagy." 11 End If

Ez a program megkérdezi a felhasználó életkorát, és a felhasználó által beírt adatok alapján válaszol. Ha a felhasználó olyasmit gépelt be, ami nem szám, a program ezt mondja. Ha a felhasználó nullánál kisebb számot írt be, a program ezt mondja. Ha a felhasználó azt mondja, hogy 100 évnél idősebb, a program azt mondja: "Ez öreg!". Ha a felhasználó helyes életkort írt be, a program visszamondja a felhasználónak, hogy hány éves.

Példa Pythonra

Íme egy program, amely ugyanazt teszi, mint a fenti program, de Python nyelven:

 try: age = int(raw_input("Hány éves vagy? ")) except ValueError: print ("Ez nem egy szám!") else: if age < 0: print ("Nem lehetsz kevesebb, mint nulla!") elif age > 100: print ("Ez öreg!") else: print("%s éves vagy." % age)

Példa a C#-ra

Ugyanaz, mint a fenti program, de C# nyelven:

using System; public class Hello { public static void Main() { Console. WriteLine("Mennyi az életkorod?"); int age; if (! int. TryParse(Console. ReadLine(), out age)) Console. WriteLine("Ez nem szám!"); else if (age < 0) Console. WriteLine("Nem lehet kisebb, mint nulla!"); else if (age > 100) Console. WriteLine("Az öreg!"); else Console. WriteLine("Te {0} éves vagy.", age); } }

Példa a Haskellre

Ugyanez ismétlődik, de Haskell nyelven:

import Text.Read main = do putStrLn "Mennyi az életkorod?" input <- fmap readMaybe getLine putStrLn $ case input of Just age | age < 0 -> "Nem lehetsz kevesebb, mint nulla!"              | age > 100 -> "Ez már öreg!"              | egyébként -> "Ön " ++ show age ++ " éves."     Semmi -> "Ez nem egy szám!"

Kapcsolódó oldalak

  • Programozási nyelvek listája
  • Programozó
  • Fordító
  • Számítógépes programozás

Kérdések és válaszok

K: Mi az a programozási nyelv?


V: A programozási nyelv egy olyan írott nyelv, amely megmondja a számítógépeknek, hogy mit tegyenek. Olyan, mint egy utasításkészlet, amelyet a számítógép követ, hogy valamit tegyen, és általában valódi szavakat használ néhány parancshoz, hogy az emberek számára könnyebben érthető legyen.

K: Milyen példák vannak a programozási nyelvekre?


V: A programozási nyelvek közé tartozik például a Python, a Ruby, a Java, a JavaScript, a C, a C++ és a C#.

K: Hogyan íródnak a programok egy programozási nyelven?


V: A programokat úgy írják meg, hogy egy programozási nyelv forráskódjába szöveget írnak. Általában írásjeleket is használnak.

K: Mi történik a programok programozási nyelven történő megírása után?


V: Miután a programokat megírták egy programozási nyelven, le kell fordítani őket, ami azt jelenti, hogy a számítógép megváltoztatja vagy lefordítja a forráskódot egy másik nyelvre (például assembly vagy gépi nyelvre), amelyet a számítógépek tudnak olvasni, de amelyet az emberek sokkal nehezebben olvasnak.

K: Mi történhet, ha a programok írásakor hibákat követünk el?


V: Ha a programok írásakor hibákat követünk el, vagy ha a program olyasmit próbál megtenni, amire nem volt tervezve, akkor a program leállhat, amit "összeomlásnak" nevezünk. Ha ez a kód megírása miatt történik, azt "hibának" nevezzük. Még a kis hibák is nagy problémákat okozhatnak.

K: Miért kell a számítógépes programokat gondosan megírni?


V: A számítógépes programokat gondosan kell megírni, mert még a kis hibák is nagy problémákat okozhatnak, és összeomláshoz vagy hibákhoz vezethetnek.

AlegsaOnline.com - 2020 / 2023 - License CC3