Érdekelne, hogy miben különbözik a C, C++ és Java programozási nyelv? Melyiket mire használják főleg? Milyem feladatokban a legalkalmasabbak? Valamint ma mire használják az assembly-t?
C - Főféppen beágyazott rendszerek, hardver közeli programozás, rendszer közeli programozás, driverek.
C++ - Bármi.
JAVA - szinte bármi, ahol a lényeg a multiplatformon van. De bele buzultak a cégek rendesen, úgyhogy már írnak JAVA-ban olyasmit is, amit nem biztos, hogy abban kéne.
ASSEMBLY - Driverek, sebesség-kritikus programok vagy programrészek, beágyazott rendszerek, operációs rendszerek részben, vagy egészben.
A C++ nyelv a C nagymértékű továbbfejlesztéseként jött létre; úgy, hogy a C-vel szinte 100%-ig kompatibilis maradt ("egy C program egyben C++ program is"); de a továbbfejlesztés olyan mértékű volt, hogy az már indokolttá tette, hogy új nyelvként tekintsünk rá. (Ezzel persze vitába lehet szállni, elvégre nincs semmiféle egzakt előírás, hogy mikortól lehet egy nyelvet újnak tekinteni, és meddig tekintendő pusztán egy meglévő nyelv újabb verziójának. Persze, lehetne mondani, hogy hát dehogynem van, attól függ, hogy mit milyen néven szabványosítanak... de azt hadd ne tekintem egzakt tudományos módszernek. ;))
A legnagyobb újítás egyébként minden bizonnyal az objektum-orientáltság bevezetése volt.
Aztán miután mind a C, mind a C++ óriási siker lett, elkezdtek gomba mód szaporodni azon programozási nyelvek, amik a C-t (vagy C++-t) vették valamilyen szinten alapul. (Leginkább szintaxis tekintetékben.) Ilyenek pl.: C#, Java, PHP, Perl, JavaScript, stb. Ha az egyiket ismered, a másik is többé-kevésbé ismerősnek fog tűnni.
A sok C(++)-alapú új nyelv közül a Java elsősorban az objektum-orientáltság még kiforrottabb megvalósítását, valamint a platformfüggetlen megvalósítást tűzte ki célul.
Milyen feladatokban a legalkalmasabbak? Igazából: szinte akármire, ez leginkább a programozó képességein múlik. Kivéve azon tényt, hogy a Java, mivel rendszerint egy köztes bájtkódra fordítódik, és nem egyenesen gépi kódra, ezért sebességkritikus, hardverközeli feladatokra nem a legbölcsebb választás.
Ha általános programozási feladatról van szó, a három felsorolt nyelv közül leginkább a C++-hoz szoktak nyúlni. A C-t akkor veszik elő, ha valami nagyon hardverközeli dolgot kell programozni. Bár a C++ is megfelel ilyen célokra, de mivel a C egyszerűbb, "kisebb", ezért általában a vele készült program mérete is kisebb szokott lenni.
A Java-t meg ma szerintem leginkább Androidos alkalmazásfejlesztésre használják, pl. az Android Studio fő nyelve is Java.
Assemblyvel meg egy átlagos programozó soha nem fog találkozni. Ami persze nem azt jelenti, hogy felesleges, és hogy senki nem használja semmire, de amikor már a hardverközeli dolgokat is inkább C-ben (C++-ban) írják, az assembly igen csak háttérbe szorult. Bár ha olyan alkalmazási területen dolgozunk, ahol tényleg minden órajel, meg minden egyes bájt számít, ott még ma is óriási a létjogosultsága. Mondjuk egy mikrovezérlőnél, aminek van 32 kb programmemóriája, meg 1-2 kB RAM-ja, ha komolyabb feladatot kell elvégezni egy-két szenzor kiolvasásánál, érdemes elgondolkozni az assemblyn.
Ez egy nagyon könnyű kérdés barátom.
C: Az emberi szervezet képtelen az aszkorbinsav előállítására, így azt táplálékkal kell bevinnünk szervezetünkbe. Amennyiben ez nem történik meg, hiánytünetként vérzékenység, ínysorvadás, izombántalmak, lassú sebgyógyulás, a fertőzésekkel szembeni fogékonyság, és gyulladások kialakulása figyelhető meg. Meg volt az a csávó, az az Albert, ő vette észre a matrózokkal való enyelgés közben.
C++: Ezt is Szentgyörgyi Albert találta fel, csak a továbbfejlesztett változata, Szentgyörgyi Alberto. Igazából ugyanaz, csak van benne pár más mikroműanyag.
Java: Tök szép sziget Indonéziában, egyszer elmennék szívesen. C vitamin van-e ott, azt ne kérdezd barátom, fogalmam sincsen!
Mint láthatod azért van összefüggés e három közszolgálati szféra közt. Ha lenne még más biojogi kérdésed, állok rendelkezésedre! Mi Biojogiológusok tartsunk össze :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!