ugrás a tartalomhoz

mi az elonye hogy osztalyokban programozzunk?

pentium10 · 2005. Jún. 11. (Szo), 11.17
Szeretnem tudni milyen elonyokkel jar hogy osztalyokkal(class) keszitek egy kodot, s nem hagyomanyos fuggvenyekkel?
 
1

Sok előnye lehet...

T.G · 2005. Jún. 11. (Szo), 13.11
Azért jó, mert manapság ez olyan trendi. :)))) Na jó, nem csak ezért. :)
Általában az ilyen kódok átláthatóbbak, hordozhatóbbak, könnyebben javíthatóak... Természetesen az objektum orinántált szemlélet nélkül írt kódok is lehetnek átláthatóak, lehetnek horodozhatóak, javíthatóak, de ha ráérzel, akkor a követlemények, melyek elsőre zavaróak lesznek, természetesnek fog tűnni.

Ha van egy online boltod, akkor nem egyszerűen a kosar.inc.php -ba fogod tenni a kosarbatesz nevű függvényt, hanem azt mondod, hogy a kosar egy objektum, és a betesz nevű funkcióját hívod meg, akkor amikor az előbbi objektumhoz akarsz egy árút hozzátenni. Szerintem sokkal logikusabb. És most képzeld el, hogy valamilyen barom ötlet miatt nem egy, hanem két kosár kell neked. Átírni az összes kosarbatesz féle függvényt azért, mert elején erre nem gondoltál??? OOP mellett ilyen gondod nem lesz, adott a kosar osztály és nem egy, hanem két objetmutot hozol létre belőle...
2

Mi az elonye hogy osztalyokban programozzunk?

Balogh Tibor · 2005. Jún. 11. (Szo), 14.35
Rövid válasz: semmilyennel.

Hosszabb válasz:
Alapvetően szemléletbeli különbség van a két programozási mód között. De nincs olyan, hogy
- eljárásközpontúság rossz, objektumorientáltság jó;
- kisebb weblaphoz eljárásközpontú, nagyobbhoz oo programozás kell;
- eljárásközpontúan csak kezdők, míg oo-an profik programoznak;
- táblás weboldal rossz, táblamentes weboldal jó;
- Explorer rossz, Firefox jó;
- két láb rossz, négy láb jó; - Ha nem lenne ismerős: Orwell: Állatfarm
- stb., stb., stb.
Remélem nem tiportam senkinek a lelkivilágába.

Nem jár feltétlenül előnyökkel az objektomorientált programozás. A PHP levlistán kérdezték egyszer, hogy hogyan tehetné kisebbé valamelyik osztályát mert szerinte kicsit sok a 10000 sor.
Az oop alapvetően egy dologgal nyújt(ana) többet: a jobb átláthatósággal. De lehet oo módon is rosszul és lehet eljárásközpontú módon is jól programozni.
Szóval osztályok használatával átláthatóbb és könnyebben kezelhető lehet a kódod. De csak jó programozás esetén. Szerintem minden egyébb előny az átláthatóbb kódból ered. Ellenben cserébe - ha kisebb mértékben is, de - lassabban fog futni a programod.
4

Ha PHP-ról van szó, akkor

Anonymous · 2005. Jún. 13. (H), 07.30
Ha PHP-ról van szó, akkor nagyrészt semmilyennel.

"Szerintem minden egyébb előny az átláthatóbb kódból ered. Ellenben cserébe - ha kisebb mértékben is, de - lassabban fog futni a programod."

Ezzel énis egyetértek. De teljesítménybeli különbség más programozási nyelveknél sincs, viszont a fejlesztési időt nagymértékben lecsökkenti hosszútávon, így jótékony hatással van az iparra és a bevételekre. Nagyrész ezért is terjedt el. És ez talán mégcsak nemis nagyon cinikus megállapítás. :) Persze a teljes igazság ennél sokkal-sokkal hosszabb.
5

Nana

aurum · 2005. Jún. 13. (H), 15.14
Ha PHP-ról van szó, akkor nagyrészt semmilyennel.

Csak óvatosan az ilyen kijelentésekkel
7

Valami előnye csak van, ha alkalmazzák

Balogh Tibor · 2005. Jún. 13. (H), 16.04
"Ha PHP-ról van szó, akkor nagyrészt semmilyennel."
Tudom, hogy félreérthető volt amit írtam, és lehet, hogy nem is igaz.
3

Szoftverkrízis

aurum · 2005. Jún. 11. (Szo), 17.03
A szoftverkrízis szóra keress rá, ez váltotta ki az OOP mint programozási paradigma létrejöttét és ott megtalálod a hivatalos indokokat is.
6

Egy kérdés

Balogh Tibor · 2005. Jún. 13. (H), 15.56
Jól emlékszem, hogy ennek az elindítója egy űrakéta vagy bomba (vagy mittudoménmicsoda) irányítórendszerében felfedezett (vagy idejében fel nem fedezett) hiba volt?
8

Egy cikk a témában

Venemo · 2005. Jún. 13. (H), 20.25
Sziasztok!

Találtam egy cikket a dologról, a http://www.phpmag.net/itr/online_artikel/psecom,id,284,nodeid,114.html címen.
9

con Dairon di Archimondes

Anonymous · 2005. Júl. 1. (P), 12.52
Az az az előnye, hogy átlátható, a mindent objektumként elképzelő nyelvek használatánál észleled, hogy az IDE-k maguk kezelhetőbb eszközöket tudnak a kezedbe adni, mivel (emberi) logikus kapcsot hozol létre az adatok és a velük végzett műveletek között. Ez nem csak számodra láthatóan jó, hanem jópár optimalizációt tudnak a mai fejlesztőkörnyezetek ilyen esetekben. Ezért van az, hogy nem kell állandóan OOP-zni, de jól lezárt osztályoknál az is megeshet, hogy gyorsul a programod (a metódus memóriaterületébe gondoljatok csak bele, hogy a használt adatok egy részére referencia se kell, és lemásolni sem kell, plusz létrehozni és üríteni, mert statikus), de persze ennek ellenkezőjét könnyeb elérni...
10

Folytatás...

Anonymous · 2005. Júl. 1. (P), 12.56
Ja, PHP? bocs, akkor tökmindegy. Amire kitalálták, arra biztos hatékony, de szerintem sokkal jobb lenne, ha igazi programozási nyelveket használhatnának ilyen célokra. Lehet, hogy nem lenne ilyen hatékony (csak jobb:), de a fejlesztőknek biztos sokkal jobb lenne. Igazából PHP-ből még csak szintaktika-át láttam, de már attól röhögőgörcsöt kaptam. Szegény haverom, aki tud egy kicsit programozni, meg PHP-zni is, az úgy jellemezte, hogy mindenből akartak belerakni egy kicsit, és hát, Olyan lett... Ha pedig már az szidja, aki ezt ismeri jobban az elég sokat elárul róla.
11

"Igazi programnyelv"

saxus · 2005. Júl. 1. (P), 13.57
Miért lenne jobb, ha mindenhova egy pl C/C++-s programot raknánk be? Egyrészt hatalmas támadási felületet adna egy web-szerveren, mivel egy C/C++-s programmal több dolgot meg lehetne csinálni a rendszerben, ami támadásra adhatna okot. Megjegyzem a PHP-vel is lehet, csak egy jól bekonfolt szerveren csak biztonságosabb.

Másrészt szkriptnyelv, egyszerűen át lehet szerkeszteni, nem kell fordítgatni folyton, stb.

Egyedül amit nyernénk hagyományos, fordított programmal az a sebesség. De nekem eddig nem voltak gondjaim a PHP sebességével.

Mindenből beleraktak egy kicsit? Igen, de szerintem nagyon jól válogatták meg az alapanyagokat. Szinte mindenre van utasítás, amire meg nincs arra meg már biztos ott van valami függvénygyűjtemény. Ha egyszerűen, gyorsan kell dolgozni, akkor a php a legjobb.

Ami nekem különösen tetszett a PHP-ben, az a típuskezelés. Nem kell tökölni, hogy most milyen típusú, az értelmező nagyon rugalmasan kezeli a különböző típusokat. Az assziciatív tömbök szintén nagyon kellemes tulajdonságú dolgok. Meg az említett bő függvénykészlet.

Amúgy megjegyzem: aki "igazi programnyelv"-ben akar írni portálmotort, az is írhat nyugodtan, a Delphi-ben van CGI és ISAPI támogatás, a Visual C-ben is van... Amúgy poén az, hogy régen próbálkoztam Delphi-ben írni hasonlókat, - igaz CGI-ként futott - de egyáltalán nem volt gyorsabb, mint a mostani PHP-s munkáim. Sőt!

Ha már így benne vagyunk: ezzel az erővel mondhatnánk azt is, hogy minek írnak egyáltalán C++-ban programot, mikor ott az Assembly, lényegesen kissebb, gyorsabb és optimalizáltabb kódot lehet vele írni. Na vajon miért nem?
12

Vége

Török Gábor · 2005. Júl. 1. (P), 14.07
Ezt a vitaszálat kérem, ne folytassátok, eltértetek az eredeti témától. Nyissatok új vitafonalat, ha szeretnétek még erről diskurálni.

--
slink
http://20y.hu/
13

Re: Folytatás...

Hodicska Gergely · 2005. Júl. 1. (P), 14.10
Egy ilyen hozzászólással csak magadat minősíted. Bár névtelenül persze könnyű. Szóval az ilyen hozzászólások előtt nézz meg egy újabb közhelyszótárt, ma már nem trendi PHP-t fikázni. Csak tudd.


Felhő