Kezdőoldal » Számítástechnika » Programozás » OOP megy a szemétbe?

OOP megy a szemétbe?

Figyelt kérdés
Az MI kapcsán mostanában történt gyökeres változások arra késztettek, hogy átgondoljam a programozói státusz jelenlegi állapotát és annak jövőbeli szerepét. Arra jutottam, hogy ha a programkód generálás olyan magas szintre jut, mint az várható, akor talán maguk a programozási nyelvek is megváltozhatnak, akár meg is szűnhet a használatuk. Így látom ezt a paradigmák esetében is. Arra vagyok kiváncsi, más hogyan látja ezt? Ugye, az OOP egy emberközeli paradigma, de ami jó az embernek, az nem feltétlenül jó a gépnek. Az viszont tény, hogy az OOP nagyon erőforrásigényes, így valószinűleg ki fogják szorítani más, hatékonyabb paradigmák. Nem?

2023. aug. 2. 17:41
1 2 3 4
 31/37 anonim ***** válasza:
15%

"De nem én találom ki ezeket."


Nem hát, hanem egy képzetlen, földbuta, beképzelt ökör, aki janosen-nek hivatja magát és két kézzel szórja a baromságokat. De a legrosszabb, hogy vannak segédei is.

2023. aug. 5. 17:10
Hasznos számodra ez a válasz?
 32/37 anonim ***** válasza:
18%

"Biztosan megoldható procedurálisan is, jó kis spagetti kóddal."


Érdemes lenne utánanézned, hogy mi is az a spagetti kód.

2023. aug. 5. 17:36
Hasznos számodra ez a válasz?
 33/37 anonim ***** válasza:
79%
Jelentse bátran mindenki egypipás delfipapát. Akkor pihen egy kicsit amíg kijózanodik és újra tud regisztrálni.
2023. aug. 6. 15:25
Hasznos számodra ez a válasz?
 34/37 anonim ***** válasza:
Nem szeretem az OOP szemléletet (legalábbis kisebb projekteknél, nagyobbaknál kétségtelenül komoly előnyei vannak), de az ilyen alaptalan, kattintásvadász, valós tudást nélkülöző háborgásoktól agybajt tudnék kapni.
2024. jan. 9. 21:29
Hasznos számodra ez a válasz?
 35/37 anonim ***** válasza:
100%

A probléma az, hogy a feltételezésed téves következtetéseken alapul. Illetve az egész OOP-vel kapcsolatban nagyon komoly tévedésekben élsz.


"ha a programkód generálás olyan magas szintre jut, mint az várható"

És ki mit vár? Ezen a ponton a nagy többség irreálisan sokat remél a nagy nyelvi modellektől, és a gépi tanulástól.


"akor talán maguk a programozási nyelvek is megváltozhatnak"

Nyitott ajtókat döngetsz, mert a programozási nyelvek folyamatosan változnak. Új nyelvek jönnek létre, régi nyelvek szorulnak perifériákra, illetve a meglévő nyelvek is komoly fejlődésen mennek keresztül. Elég csak a C++-t megnézni: olyan szinten változott a nyelv, hogy egy '90-es évek eleji, Borland C++-ban írt program 99%, hogy le sem fordulna a mai legfrissebb GCC alatt. Illetve ugyanez visszafelé is igaz.


"akár meg is szűnhet a használatuk"

Akár egy élien invázió is jöhet holnap...


"Ugye, az OOP egy emberközeli paradigma, de ami jó az embernek, az nem feltétlenül jó a gépnek."

Ez egyrészt téves, másrészt meg "nesze semmi, fogd meg jól". Az OOP semmivel nem emberközelibb, mint pl. a procedurális programozás. Az, hogy a tankönyvek - a könnyebb érthetőség kedvéért - szeretik a kicsit esetlen kutyás-macskás példával illusztrálni, az csak azért van, hogy jobban érthető legyen a tanulók számára, és semmi köze nincs az OOP létrejöttéhez.

Az meg, hogy mi a jó a gépnek, értelmetlen. A gép nem egy szentimentális haver, akinek a lelkét ápolni kellene. Neki minden jó, amit fel tud dolgozni. Az egyes programozási nyelvek, illetve pontosabban a fordítók pedig mindent átalakítanak neki úgy, hogy "jó legyen", azaz gépi kóddá.

De tudom, te mire gondolsz. Arra, hogy mi az, ami közelebb áll a gépi logikához, és mi az, ami nem. Nos, groteszk módon pont, hogy az MI az, ami rémesen távol áll a gépi logikától. Mesterséges idegsejtek működését emulálni, és ezekkel tanítóminták alapján, valószínűségi alapon döntéseket hozni? Pont ez az, ami nagyon távol áll a tiszta gépies logikától.


"az OOP nagyon erőforrásigényes"

A "nagyon" szó meglehetősen szubjektív fogalom. Az erőforrásigénye tényleg potenciálisan nagyobb, mint pl. a procedurális paradigma szerint készült programoké, bár ebben azért a programozó kompetenciájának is van némi ráhatása.


"valószinűleg ki fogják szorítani más, hatékonyabb paradigmák"

Az a baj, hogy te a hatékonyságot mindössze a felhasznált RAM függvényének tekinted. Közben meg baromira nincs így. A hatékonysághoz hozzá tartozik az is, hogy egy feladatot mekkora ráfordítással lehet megoldani. Szerinted miért nem kódolunk mindent ma is Assemblyben? Hiszen potenciálisan az abban készült szoftvereknek a legkisebb az erőforrásfelhasználása. Azért, mert a fejlesztés költsége és ideje nagyon komoly szempontok. A hardver pedig egyre olcsóbb. A Commodore 64 kezdetben egy kisebb vagyonba került, ás összesen 64 kB RAM-ja volt. Meg egy 1 MHz-es procija. Ott tényleg kulcskérdés volt, hogy mindent a lehető leggyorsabban, a legkisebb RAM felhasználásával megoldj. (Abba most ne menjünk bele, hogy a nagyon egyszerű programocskákat leszámítva már ez a kettő is egymással ellentétes folyamat...) Ott tényleg volt, hogy minden egyes bájt számított. De ma már a processzorok számítási kapacitása ennek a többezerszerese, a munkamemória pedig pár majdnem a milliószorosa. Szép dolog, és egyáltalán nem elbagatelizálandó az optimalizálás, de ma már nem kifizetődő a végletekig optimalizálni valamit, mert egyszerűen anélkül is megfelelő teljesítményt lehet elérni, a fejlesztési idő pedig így a töredéke.


"A hatékonyabb azt jelenti, hogy beéri kevesebb erőforrással"

Nem, nem azt jelenti. Ez csak egyik lehetséges aspektusa a hatékonyságnak. (És mint írtam, már itt is van egy jókora belső ellentmondás, ugyanis a memóriaigény, és a processzorigény egymással ellentétben van.) Hatékonyság alatt érthetjük még a fejlesztés gyorsaságát és költségeit, a kód újrafelhasználhatóságát, a kód továbbfejlesztésének egyszerűségét, a hibatűrését, stb, stb. Te ezek közül egyetlenegyet ragadtál ki, és végig azon lovagolsz. Azt az egyet, amelyik ma már messze nem a leglényegesebb.


"Az OOP-t alapvetően azért találták ki, hogy a gyengébb képességű programozók is használhatóak legyenek"

Pont, hogy nem.

Az OOP-t azért találták ki, hogy a kód könnyebben karbantartható legyen, és hogy a fejlesztést felgyorsítsák.

Pont, hogy az OOP-hez kell nagyobb tudás, és pont, hogy a gyengébb programozók azok, akiknek hatalmas nehézségeik vannak az OOP-vel.


#10 "Eleve mára kiderült, hogy a Delphi zsákutca."

Dehogy volt az. Egy vitathatatlanul lényeges eleme volt a RAD fejlesztőeszközök fejlődésének. Mint ahogy a Visual Basic is. Ezek alapozták meg az összes RAD IDE létrejöttét, amik nélkül manem igazán lenne elképzelhető modern szoftverfejlesztés.

Attól, hogy mostanra a perifériákra szorult, nem azt jelenti, hogy zsákutca lett volna, hanem azt, hogy más technikák túlhaladák azt.

(Bár tapasztalatom, hogy ha a divatot és fintorgást leszámítjuk, Delphiben sem kevésbé hatékony fejleszteni, mint akármi másban.)

2024. jan. 9. 23:08
Hasznos számodra ez a válasz?
 36/37 anonim ***** válasza:
83%

#35 Most tévedtem ide és öröm volt olvasni, hogy mennyire szívemből beszéltél :)


Senior Softver Engineer kolléga.

2024. jan. 10. 07:03
Hasznos számodra ez a válasz?
 37/37 anonim ***** válasza:
50%
Senior Softver Engineer
2024. jan. 10. 12:53
Hasznos számodra ez a válasz?
1 2 3 4

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!