OOP - kezdő kockáknak
Egyszerű megközelítésű, a lényeges jellemzőket összesítő rövid leírás az objektumorientált programozásról
■ H | K | Sze | Cs | P | Szo | V |
---|---|---|---|---|---|---|
25 | 26 | 27 | 28 | 29 | 30 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 | 1 | 2 | 3 | 4 | 5 |
Geolokáció és nyelv felismerés
Eddig többnyire a böngésző nyelve alapján próbáltak kényelmet adni a látogatónak azáltal, hogy feltételezték, hogy a felhasználó a böngésző/oprendszer nyelvén beszél, így az oldal is azon a nyelven jelenik meg. De ezt könnyű megkerülni, és könnyű tévesen feltételezni is. Sokan használunk angol nyelvű oprendszert ugyebár. Így ez nem volt számottevő jelenség, illetve engedték a váltást is.
De a geolokáció más. HTML5 Apin keresztül, vagy IP adatbázis alapján, ha te bizony Németországban vagy, akkor hótziher, hogy fricc vagy, és a pillangó neked Schmetterling. Nincs hibalehetőség, nincs kecmec, nincs apelláta. Azt kapod, amit adnak, minden választástól, vagy változtatási lehetőségtől megfosztva.
Szégyen, nem szégyen: Németországban vagyok, angol nyelvű Windowst használok, és magyar tartalmakat (is) olvasok.
Azaz olvasnék...
A szégyenlistámon eddig a következők voltak:
- eBay.de
- amazon.de
- xbox live
Eddig...
Igazából nincs is ott
Azt a szöveget a
Csak mert nálam „Resolving jck-.github.io (jck-.github.io)... failed: Name or service not known.”
(Jó, a tartalmat azt megtaláltam. Csak ez az URL dolog piszkál.)
Más is jelezte, hogy
+1
Ennek semi köze a
Kösz,
forditva?
Szerinted egy kezdo erti?
igaz is...
A Nőn, mint osztályon mindent meg lehet tanítani:
- példányosítás
- kivétel kezelés (azt főleg)
- öröklődés
- interfészek (muhaha)
- rejtett funkciók (mindig vannak)
- nyilvános funkciók (elég kevés)
- stb.
+100 ;)
Interfész: egy olyat írj nőre, ami mindig ugyanúgy működik. ;) (értsd: soha nem mondják el a teljes igazságot)
Public functions: főzés, mosás, dųgås, ... Ezek többnyire megvalósíthatók vagy te vagy túl kezdő...
Nagyon tetszett a példád, írjuk meg közösen a tanulmányt. ;)
És akkor megy a sírás, hogy
a "SZAKMÁBÓL"...
Hagyjuk meg a vulgaritást az
Bocsánat
"A szexualitást hagyjuk meg a hanyatló nyugat ópiumának."
Virág elvtárs
Énaljanépségem jót
+100
Utolsó poén mára :)
Ha nem a hangnemet kéne itt megütni, akkor kit kéne itt megütni? :D
...Gondolom, engem... :(
Bocsánat, nem tehetek róla, fáradt vagyok, ilyenkor nincs fék, és mindenből ki tudok hozni valamit, amin legalábbis én elmosolyodok :)
Ó, de sok szaktanárit kaptam anno az ilyen kontextusból kiragadott szó szerinti értelmezésekért...!
Tényleg sajnálom, de ha már érkezett rá válasz, akkor nem tudom szerkeszteni...
Részemről a túlérzékenységet
A vulgáris beszéd
A vulgáris beszéd tünet.
Minek a tünete?
Szerintem érthető magyarázat
Nem érthető. Nem tudom, mitől
Ennyi
Ahogy jó lenne, hogy más is megértené, ha el nem is tudja fogadni, hogy nekem meg részem a kacifántos káromkodás. De ettől nem tartom magam alávalóbbnak, vagy műveletlenebbnek bármi másnál, sem pedig aljanépnek - amin egy kicsit meg is sértődtem egy fél másodpercre. Csupán az én általános nyelvezetemnek szerves részét képezik, a magyar nyelv nem minden körben szívesen látott szócikkei is. Persze nem olyan szinten, hogy a "B+" már, mint kötőszó jelenik meg, hanem csupán nevén nevezem a dolgokat. Illetve egy-egy feszültebb pillanatban könnyebben csúszik ki a számból egy Kazinczy-díjas szófordulat. De ezeket sem használom fölöslegesen a kontextusba fűzve.
Ami viszont az angol-magyar szóviccemet illeti, kissé meglepett, hogy ennyire kiakadtak itt páran, hisz semmi egyebet nem kell belemagyarázni. Pont ugyanolyan, mint a "Fakanál", meg a "Fáklya". Magyarul csak hétköznapi szavak, angolul már persze a vulgaritás mezsgyéjére tévedünk, de pont ez a kis lehelletnyi asszociáció adja meg a humor pikáns ízét.
De a kiváltott reakció számomra már a pironkodó túlérzékenység kategória, de fejet hajtok és elfogadom, mert mindig a békességre és komprumisszumra törekszek. Nekem meg nem probléma nem használni. Ezért is kértem bocsánatot. És egyébként is ez itt egy szakmai fórum, és ezek szerint hibásan feltételeztem, hogy helye van itt a humoromnak.
De ez már tényleg off topic. Legyen tanulság a számomra, hogy nem szól szám, nem fáj fejem.
Még egyszer mély és őszinte megbánást tanúsítva kérek bocsánatot.
Ezzel kérem zárjuk le ezt a civakodást és térjünk vissza a fővágányra.
Üdv,
Iván Gábor
Szerintem a 14-es
Valóban nem szoktam káromkodni, azon egyszerű oknál fogva, hogy egyszerűen nincs értelme, nincs hozzáadott értéke a szöveghez, ugyanúgy, mint például a "szerintem" vagy az "úgymond" szavaknak. A nyomatékosítást szokták felhozni a vulgaritás mellett, de mivel annyira gazdag a magyar nyelv, hogy egyrészt van miből válogatni, másrészt vegyük a 20. század második fele előtti írókat, akik tudtak enélkül is nagyot alkotni, innentől kezdve a káromkodás szerintem csak a cselekvő szegénységét bizonyítja. Emiatt az "aljanép" kifejezésem nem volt pontos.
Mindenkinek szíve joga
Szerintem a káromkodás a kultúra és a nyelv fontos része, és fontos érzelmi/jelentésbeli többletet képes hordozni. Abszolút van tehát hozzáadott értéke, főleg értő kezekben (az általad említett művészek is káromkodtak, legfeljebb a műveikben nem - különböző okokból -, vagy ha mégis, ezek a műveik nem váltak ismertté). Aki műveltnek vagy úrnak akar látszani, az histórikus okok miatt nem káromkodik, emiatt bizonyos körökben én sem szoktam, még ha manírnak tartom is.
Egyetértek.
De hogy, és miért?
Van egy olyan hatása, hogy a
Másrészt ha nyomatékosításra használják, akkor előbb-utóbb felmerül az a probléma, hogy amit mondtam, az nyomatékos, de mi lesz, ha valamit még nyomatékosabban szeretnék kifejezni? Akkor még erősebben káromkodok? Tehát hasonló a hatása az alkoholéhoz és az egyéb, függőséget okozó pszichoaktív szerekéhez, amelyekből egyre többet és többet kell az embernek bevinnie, ha eredményt szeretne elérni.
Tehát lehet trágárkodni, csak nincs értelme.
Lehet csak én nem látom a
Azt kéne észre venni, hogy magában a káromkodásban csak annyi ördögtől való van, amit a hallgató beleképzel.
Tiszteletben tartom egyébként, hogy nem káromkodsz, és nem is várom el tőled :).
Illedelmesség
Ha valaki eldob egy banánhéjat az út mellett a fűbe, meg tudja magyarázni, hogy az komposzt, gazdagítja a környezetet, lebomlik. Jó dolog végülis.
De néhány embernek nem tetszik. Na és? Attól még nem kell leszokni róla, ízlések és pofonok.
Na de ha mindenki csinálná? Csupa banánhélytrutyi lenne az útszéle, jönnének rá a legyek, aztán az útra is esne jónéhány, megaztán ilyen szokás mellett mindenki dobálgatna a végén mindent...
Az "illendő" viselkedés nem csak amiatt fontos, mert másokat zavar, nem csak amiatt kérünk meg valakit rá, hogy ne tegye, hanem azért is, mert rossz lenne, ha csúnyán elszaporodna. Logikus?
Ne köpjünk a járdára, mert nem illendő. Senkinek, semmikor. Ilyen a káromkodás is. Egy úriember képes magát visszatartani, képes megkülönböztetni az illendő és illetlen viselkedést, és ehhez tartja magát. Szégyent érez, ha mégsem sikerül. Ad abszurdum elég erős hozzá, hogy kifejezze mások felé is megbotránkozottságát. Akár még egy hozzászólást is ír miatta egy fórumban, ha ez használhat.
Aki nem ezt teszi, az minden illetlen tettével bizonyítja, hogy (1) nem képes rá, (2) nem érti, vagy (3) nem érdekli. Ez a háromfajta hozzáállás három negatív személyiségi jegy, amit jobb magunkból nem sugározni. Vagyis személyes megfontolásból is logikus az illetlen cselekedetekről leszokni. Szerintem logikus. Nem csak historikus.
csak annyi ördögtől való van, amit a hallgató beleképzel
Ez konkrétan nem így van. Sok káromkodás pont az ördögről szól, vagy másmiatt annyira szennyes, hogy ördögi.
Vannak persze vicces káromkodások is, ezekkel tulajdonképp semmi baj. "Hogy nőne be az orra lika!" :-)
Nem hiszem, hogy a szó lenne
Az ördögről is lehetne elmélkedni, hogy vajon mi az és hol van, meg van-e vasvillája, de talán jobb, ha ezt most kihagyjuk. Lassan úgyis ki leszek innen toszva, elnézést, penderítve, ha így folytatom :).
Lassan úgyis ki leszek innen
Mi alapján érzed így?
Csak szófordulat, nem tartom
Arra utaltam, hogy ha nagyon belemegyek ebbe az ördög témába, azzal már vallási húrokat is pendíthetek, ami megint csak érzékeny terület :).
Ördög?
A szennyes szó nem a hallgatóban keletkezik, hanem a kimondóban. Igazad van, hogy vannak dolgok, amiket félre lehet értelmezni, de a trágár káromkodások pont olyanok, amik kimondják, konkrétan tartalmazzák azokat a fogalmakat, amik a hallgatóban csak megbotránkoztató értelmében csapódhatnak le. Már akkor persze, ha nincsenek túl hozzászokva (mint utaltam rá, jobb is lenne, ha nem lenne mindenki hozzászokva).
Most nem akarok mélyebben a trágárkodások lélektanába belesüllyedni, de mondj ki magadban néhány durvát, és próbáld meg őket pozitívan értelmezni... Nyilván értelmetlen. Ez pont az az eset, amikor nem a befogadó felfogása hibáztatható, hanem inkább a kibocsátó a ludas a dologban.
Érdekes kérdések ezek.
Hát
Sajnos csak ugyanazt tudom elmondani, amit már elmondtam, és megerősíteni tudom, hogy ha nem érted, akkor benned van a hiba (mint hallgató), talán rugaszkodj neki még egyszer (olvasd vissza amit írtam), hátha megérted. Szerintem érdemes lenne leszoknod a trágár szavak használatáról, ha túl sokat használod (ezt nem tudom megítélni), szóval ebben próbáltam segíteni.
Csak ennyit akartam mondani :-)
Szokjunk le
- Aki káromkodik, az nem úriember, hanem alja nép.
Tehát nincs metszet, vagyis az úriemberek és az alja nép diszjunkt halmazok. Ez így elég szélsőséges és kirekesztő szerintem, és bevallom, még mindig rosszul esik. De hogy bizonyítsam, hogy mennyire így van, engedtessék meg, hogy hasonló egyszerűséggel definiáljam az úriember halmazt. A terminus világos, és többször is kifejtésre került a hozzászólásokban, így én megfordítva az állítást a következőt mondom:
- Aki nem káromkodik, az úriember. Akkor is, ha közben nőket ver, vagy erőszakol meg, ne adj Isten még pedofil is szegény.
Teszem ezt az állítást mindezt azért, mivel a vélt káromkodásom révén az alja nép egy tagjának lettem titulálva, ugyanakkor én nem verek, és nem erőszakolok nőket, és pedofil sem vagyok. És mivel csak káromkodós, de nem erőszakoskodó embereket ismerek személyesen, így a számomra ismeretlen "úriember" halmazra nyugodtan alkalmazhatom a szélsőséges kirekesztés egyértelmű szabályait. Mivel mindkét táborba nem tartozhatok - ez a diszjunkt halmazok lényege -, így a saját élő entitásommal sikerült indirekt módon bizonyítani az állításom igazát.
Ez pontosan olyan, mint Hofinak a vicce a logikáról, amit sajnos nem áll módomban idézni a csattanóban elhangzó vulgáris kifejezés miatt.
Mindezek ellenére én nem haragszok senkire, mert a vita - még ha ilyen stílusú is - számomra tanulságos és hasznos. Nem mellesleg remekül szórakozok rajta. Bár ez esetben belátom jobb lett volna bele sem kezdeni, mert a vita lassan vitatkozásba torkollik.
Köszönöm a megtisztelő figyelmet, nyugodalmas jó éjszakát kívánok minden kedves Weblabor olvasónak.
csakhogy a káromkodást
Ezért a képért érte meg ma felkelni :D
Bocs
Részemről azért nem akartam
Sajnos a "káromkodók" nem tartoznak azon csoportok közé (lásd még nők), akiket divat lenne megvédeni mindenféle vélt vagy valós megalázás/kirekesztés/stb ellen :).
Éljenek az úriemberek.
Emlékeztetlek, hogy az "alja
Á
Pont levezettem
Igen, zzrek csak annyit állított, hogy az úriember nem káromkodik. Mivel én szoktam káromkodni, ezért nem lehetek úriember. Mert semmilyen már ismérve nem lehet az úriemberségnek.
- lehetek előzékeny és udvarias a nőkkel (igyekszek az lenni): nem számít
- lehetek alázatos (bízok benne, hogy az vagyok)
- segíthetek az időseknek átkelni a zebrán (szoktam, ha igénylik): nem számít
- átadhatom az ülőhelyemet a buszon (csak akkor nem szoktam, ha alszok): nem számít
- tegnapelőtt épp egy mozgássérültet kísértem haza, mert megkért rá, pedig pont az ellenkező irányba lakott, mint amerre mentem. De ez sem számít.
Tehát mindezek nem érnek semmit. És ebből jött az én számításom: minden, ami vagyok az nem része az úriemberségnek, mert és én bizony káromkodok. Ebből egyenesen az következik, hogy minden, ami nem vagyok, az maximálisan ismérve az úriemberségnek:
- gyilkos, erőszaktevő, pedofilok gyülekezete, akik nem káromkodnak.
Kérlek gondold át, olvasd el, és vedd figyelembe, hogy már oly sokan rávilágítottak a történelem során, hogy a világ nem fekete és fehér.
Lehetsz úriember attól, hogy nem viselsz cilindert és frakkot. Lehetsz úriember, ha nem kézi újságtartóval olvasod a napilapot a kávéházban. Lehetsz úriember, ha nem csak kizárólag szivart vagy pipát szívsz (én például nem dohányzok). Lehetsz úriember csokornyakkendő nélkül is. És igen, lehetsz úriember, ha borostás vagy, és káromkodsz.
És ennek az ellentettje is igaz. Lehetsz egy sztereotíp, kirekesztő senkiházi seggfej, aki saját jogán, a saját értékítélete alapján ítél meg, és ítél el másokat, és dönti el, hogy kinek mennyire szegényes a jelleme.
És mielőtt megint baj lenne, leszögezem, hogy nem rád, vagy a személyedre célzok - mert mindig is nagyra tartottalak -, de ennyire egyértelműen kijelenteni - mégha csak általánosságban is -, hogy ez meg ez jellemtelen, alja és nem úriember, eléggé veszélyes dolog. Javaslom tedd hozzá, hogy "szerény véleményem szerint".
Meglátásom szerint az alázat teljes hiánya volt itt a gond. Amit persze az én összecsapott sztereotíp példám indukált, amivel teret engedtem, hogy mindenki azt lásson a mondandómba, amit akar. De ezért már bocsánatot kértem.
Nem mártírkodás, nem önfeláldozás, nem önsajnálat, amit most kérek, csak ismerem magamat, és tudom, hogy újabb konfliktusokat fogok szülni, amennyiben módom van írni. És nekem nem esnek jól a konfliktusok, főleg, ha én vagyok az okozója. Ezt megelőzendő kérem az accountom törlését, hogy így passzív olvasói státuszba kényszerüljek. Szerencsére újra regisztrálni lusta vagyok.
Ne vedd
Nem éreztem, hogy hozzá kell tennem ilyenkor, hogy "szerény véleményem szerint", mert úgy gondolom, hogy másoknak is ez a véleménye általában (legalábbis úgy gondoltam ez az amit a többség gondol, és gondolnia kéne) (konkrétan: ha azt mondom, hogy az alma piros, akkor nem teszem hozzá, hogy a véleményem szerint, vagy ha azt mondom, hogy az úriember nem káromkodik, szintén)
Nem különösebben érdekel egyébként az "úriember" fogalma, (és nem feltétlenül gondolom, hogy az úriember, mint sztereotip modell, egy követendő példa minden szempontból) ezzel csak érzékeltetni akartam valamit. Nem kétséges, hogy te lehetsz nagyon rendes ember attól, hogy (szerintem sajnos, és állításod szerint) szoktál trágár módon káromkodni.
Ezt a posztot nem azért írtam, hogy a magam oldalán kardoskodjak, és ezzel a vitát folytassam. Azért írtam, mert szeretném simítani a helyzetet, hogy érzékeltessem, nem volt szándékom hogy megsértselek. Nekem tetszik a jelenléted a weblaboron, légyszi ne töröltesd magad.
tanulság magamnak
Off
Tegyük fel, hogy az úriember ismérvei a következők (a felsorolásodból): előzékeny, udvarias, alázatos, segít az elesetteknek, nem káromkodik
Amit írsz ("Tehát mindezek nem érnek semmit. És ebből jött az én számításom: minden, ami vagyok az nem része az úriemberségnek, mert és én bizony káromkodok."): mivel káromkodsz, ezért nem vagy úriember, de abból nem következik, hogy ettől átkerülsz az ellenkező csoportba (nevezzük mondjuk gazembernek, akikre jellemző a gyilkosság, erőszaktevés, pedofília stb.).
Hangsúlyozom, zzrek a következőt írta: úriember nem káromkodik. Amit te írsz, az alapján te úgy fogalmazod meg magadban: aki nem káromkodik, az úriember. Nagyon mást jelent a két mondat, már ettől az apró szórendbeli eltéréstől. Emiatt nem értem a logikád.
Tehát: ha átkísérsz egy vakot a zebrán, de közben egy cifrát káromkodsz, mert közel húz el mellettetek egy autó, akkor nem fognak úriembernek tartani (azért, amit zzrek korábban írt, hogy nem tudod az ösztöneidet visszafogni). De gazember sem, hanem csak egy normál ember.
Már feljebb jeleztem, hogy a
Az olaj úszik a vízen.
Józan ész
Szerintem ez sértő az
Valóban?
Na pont azért írtam
Egyébként ez már nálam is túlmegy azon a ponton, ami szerintem belefér, de te vagy az úriember, majd te eldöntöd.
Kettős mérce
A második mondatod ismét a lejáratás, a csúsztatás és a manipuláció szép példája, de ezt már megszoktuk tőled.
Hol állítottam, hogy zavar a
A többire csak annyit reagálnék, hogy lejáratod te magadat nélkülem is.
Ha te mondod, akkor biztos
Ennek örülök. Ha elérted,
Ez sem.
Igaz, az ingerküszöb már elég magas, így általában az ilyen megjegyzésre csak legyint az ember, de ha már arról megy az eszmecsere, hogy mi fér bele és mi nem, akkor szavaznék ismét egyet, hogy ez sem.
Lehet, hogy igazad van, majd
A konfliktust nem te szülted,
Egyébként fingom sincs, mit jelent ez az "úriember" kategória. Valószínűleg semmit, illetve mindig azt, ami éppen kapóra jön, ha valaki erkölcsileg mások fölé akar emelkedni. Mindenesetre én a helyedben nem akarnék ennyire beletartozni, mert a követelmények mindig mozgásban vannak.
Nem értek egyet
Amikor neked válaszolok például, akkor tudom, hogy ha kellemetlen a téma, ki fogod forgatni a szavaimat, félreérted vagy félreértelmezed.
A befogadó ennek ellenére
Akkor lehet, hogy az igazság
Nyilván a kibocsátónak is van
Most már engem is érdekel,
Mindezt egy hölgy által küldött blogmark alatt.
A magam részéről ennyit akartam jelezni, nem tudom, ki mit lát bele.
Ennyi 2
2: a "nyilvános funkció - elég kevés" belátom félreérthető. Mert nem azokra gondoltam, amit te is idéztél az egyik válaszból, hanem hogy a nők nem tűrik a parancsolgatást. Ezt illett volna alaposabban kifejtenem, amikor írtam. Még egy tévedés a sorban.
3: soha nem állt szándékomban lealacsonyítani a nőket. Szeretem és tisztelem őket. Persze van akit kevésbé, de őt a személyisége miatt, és nem azért mert ő egy nő. Egyébként is... nők nélkül mind - HG kedvéért - saját nemünkhöz vonzódó emberek lennénk, amihez nekem nincs sok kedvem.
Én is eleinte erről
Szerintem az említett hozzászólások csak jeleznek egy problémát, jelenséget. Semmi nem lesz jobb azzal, ha betiltjuk az ilyen megnyilvánulásokat, hiszen ami ezeket kiváltja, továbbra is létezni és érvényesülni fog. Ez normális dolog, ott van mindenkiben, csoportokkal azonosítjuk magunkat és igyekszünk azokat a csoportokat, amelyekbe nem tartozunk, alacsonyabb rendűeknek beállítani. Ez igazából csak akkor veszélyes, ha gyűlölettel is párosul.
A társadalom okítását nem ott kéne kezdeni, hogy tiltjuk az ilyen viselkedésformákat, hanem ott, hogy meg kéne tanulni nem megsértődni olyan dolgokon, amik nem ellened szólnak (ha ez sikerült, akkor ki kell terjeszteni olyanokra is, amik ellened szólnak). Én is megsértődhetnék például, ha valaki a kockákat, a magyarokat, a férfiakat, stb. szidja/kifigurázza, de ez ostoba dolog lenne. Ez a túlzott érzékenység csak oda vezet, hogy az árkokat még mélyebbre ássuk a csoportok között.
Amúgy szerintem teljesen irreleváns kéne, hogy legyen egy szakmai oldalon, hogy valaki melyik nemhez (valláshoz/etnikai csoporthoz/stb) tartozik.
A társadalom okítását nem ott
A társadalom okítása szerintem ott kellene kezdeni, hogy felhívjuk a figyelmet arra, ha valaki átlép bizonyos normákat. Szerintem itt pontosan ez történt.
OFF az OFF-ban: nagyon nagy szükség lenne egy-egy kommentnél a +1/-1 re. Ha az első sértő kommentek megkapták volna a megfelelő mennyiségű negatív pontot, akkor lehet, hogy utána mások nem akarnák azt teljesen feleslegesen megvédeni.
+1
Lehet, hogy a normákat kéne
Egyébként pontosan kit sértettek azok a kommentek (komolyan)? Szerintetek a nők tényleg ilyen ostobák, vagy csak mindenki a fénylő páncélú lovagot akarja játszani?
Fontos: én nem védeni akarom azokat a kommenteket. Különösebben nem érdekelnek.
Egyébként pontosan kit
Nyilván nem ismersz eléggé, de legkevésbé sem arról vagyok híres, hogy túlérzékeny lennék ilyen kérdésekben, éppen ellenkezőleg, a hideg kiráz tőle, ami ma ebben a műfajban műsoron van.
De eleget hallottam a vádat a szebbik nem képviselőitől, hogy minden férfi használati tárgynak tartja őket. Vedd úgy, hogy a saját jól felfogott érdekeim védem.
Értem én a helyzetedet,
Többször visszaolvasva sem találok semmit egyik hozzászólásban sem, ami a nőket sértené, pedig erősen próbáltam. Van egy kis viccelődés, még a szörnyűséges "dugás" szó is elhangzik. Akinek nem inge, ne vegye magára.
Ennek is számtalan oka lehet, el lehet gondolkodni rajta, stb. Az tuti nem megoldás, hogy tegyetek már úgy, mintha nem tartanátok annak.
Többször visszaolvasva sem
…
Public functions: főzés, mosás, dųgås, ...
Ezekből az szűrhető le, hogy a szerzőik szerint a nők buták (kevés nyilvános funkció, nem sok mindenre jók), illetve a szerepük a házimunka elvégzése és a férfi kielégítése. Gixx már tisztázta, hogy nem így értette, és Pepitáról sem feltételezem hogy így gondolná, de az ott írtak szerintem ezt az üzenetet hordozzák.
Se a „dugás” (semmi bajom a szókimondással), se a viccelődés (szerintem a legtöbb nő is úgy tartja, hogy a nők szeszélyesek) nem zavart.
Társadalmi szempontból valóban nem, de a site szempontjából az. Ha egy szakmai oldalon nem szembesülök a megvetéseddel, amiért kék a szemem, akkor nem érdekel, hogy megvetsz, amiért kék a szemem. Ha viszont erről írsz, akkor lehet, hogy én odébbállok.
Az, hogy én egy csúcsmodern
Leszűrök én neked bármit bármiből, aztán jönnek az ürgebőrbe varrt békaemberek :). Aki egy ilyenből eljut a "megvetés" feltételezéséig, az mit akar mégis egy szakmai oldalon? Hogy fogja viselni a kritikát? Vagy ha valaki vitatkozik vele? Nem jobb, ha odébbáll, mielőtt komolyabb képzelt kár éri a kis lelkét?
Akkor is úgy gondolnád, hogy
Intézzük el azzal, hogy ez harcedzett szakemeberek fóruma, az érzékenyek úgyis kihullanának?
Biztos, hogy csak az adott hozzászólás szerzőjére vetne rossz fényt?
Túlzásokba esel, ami miatt
Ha néger lenne banánetetéssel, akkor közbelépnék és törölném a hozzászólást. Ha néger lenne rappeléssel és kosárlabdázással, akkor nem. A zsidóval is simán beleférne egy "garastFogáhozVer" metódus (aki sértőnek találja, a zsidót helyettesítse skóttal, voilá). Szerintem ez kb egyenértékű azzal, ami történt. Ezek nagyon fontos különbségek, árnyalatok. Sztereotipikus hülyeség, de nem tartalmaz gyűlöletet, simán belefér.
És igen, akit ez sért, az úgyis megsértődne máson. Nem harcedzettség kérdése.
Egyébként asszem már mindent elmondtunk, amit el lehetett.
Tudatosan túloztam, hogy
Részemről az „ember legyen a talpán, aki kezelni tudja egy nő szeszélyét” a vonal egyik oldalán van, az „a nők feladata a házimunka és a szex” pedig a másikon.
Szubjektív, máshol húzzuk meg.
+1
Most viszont mar javasolnam, hogy az oop-t mutassuk be noi es ferfi peldan.
;)
Egyébként pontosan kit
Lehet, hogy többeket, mint gondolnánk: A Gentlemen’s Guide To Rape Culture.
Nem feltétlenül várok erre bármilyen választ, viszont szerintem érdemes elolvasni (bár tény, hogy hosszabb lélegzetvételű írás) és elgondolkodni rajta, ha már felbukkant ez a téma.
Vannak értékes gondolatok
ami itt történt, az nem ez a
Nem milyen kategória?
Kérdeztem meg nőismerősömet erről, és azt mondta, hogy bár ez szokványos, de eléggé sértőnek találja, adott esetben ijesztőnek, vagy az ilyen nézetet kifejező közösséget kerülendőnek.
A szexuális vágy nem bűn. Viszont ha a főtéren szeretkezel, akkor bizony bezárnak közszemérem sértésért. Lehet vonzónak találni a nőket, de nem biztos, hogy mindig ki kell azt fejezni, pláne olyan formában, ami kellemetlenül érint(het) másokat.
És nem betiltani kell az ilyet, hanem jelezni, hogy ez bizony rosszul eshet valakinek és jobb lenne mellőzni ezt a hozzáállást. Ha kifejezzük, hogy ez nem szerencsés, akkor a dolgokat kevésbé átgondoló random olvasó nem fogja azt hinni, hogy ez a norma.
If you are a man, you are
A cikk ezzel a mondattal indít. Erre írtam, hogy veszélyes. Az átlagember nem elég intelligens ahhoz, hogy egy ilyen mondatot a helyén tudjon értelmezni.
Az, hogy egy random nőismerősöd mit gondol, nem túl releváns, ne haragudj. Nálunk például szokás dugni és takarítani is, és egyikünk sem érzi ezt megalázónak. Egy ilyen kijelentésből (nő publikus metódusai főzés, takarítás, dugás...) eljutni az erőszaktételig szerintem már beteges. Szerencsére humorérzékkel és lazasággal gyógyítható.
Természetesen én is fontosnak tartom, hogy valahol meghúzzuk a határt. Csak kicsit odébb.
Ha azzal a mondattal indítani
Nálunk is van sokminden otthon, a négy fal között. A nyilvános közeg az más tészta. Otthon (jobbára) tudom, hogy mi az, amit a másik/többiek elfogadnak, szeretnek és ismerik az én hozzáállásomat, szándékaimat. Egy nyilvános helyen már nehezebb ezt felmérni, biztosítani, ezért inkább legyünk figyelmesek.
Ha ez, és más ilyen "ártatlan" megjegyzések miatt ment el a kedve a regisztrációtól, akkor lehet, hogy releváns. Miből gondolod, hogy egyedi eset, hogy valaki ezt gondolja? Honnan tudod, hogy nem zavar-e mást is, csak mondjuk nem mer szólni? És ha egyedül is lenne (amire valljuk be, elég kicsi az esély), miért kell ignorálni? Szerintem nem az élettel összeegyeztethetetlen, hogy ne tegyünk tárgyi megjegyzést (vagy annak érthetőt) a másikra.
Akkor menjünk bele, én nem
Férfi = rapist (függetlenül attól, mekkora baromság) egy igen sommás kijelentés, ami egy undorító, erőszakos cselekedettel azonosítja a férfiakat. A linked ily módon akár meg is valósíthatná ugyanazt, amit kifogásolsz, de ettől most eltekintek (pedig eljátszottam a gondolattal, hogy "megsértődök" rajta a hatás kedvéért). Később felhozza a kígyót is példának, ami igen ostoba és hatásvadász dolog. A kígyóban valóban én is azt látom, hogy lehet, hogy mérgező, félek, hogy megharap. A férfi azonban amellett, hogy lehet erőszakoló, lehet szerető apa, férj, tűzoltó, aki életeket ment, vadakat terelő juhász, stb.
Ezzel szemben áll a "(Nő:) Public functions: főzés, mosás, dųgås, ...". Egyrészt szerintem a ... nagyon-nagyon fontos, másrészt a felsorolt tevékenységek közül egyik sem undorító, erőszakos vagy megalázó, hanem természetes dolgok és a nők jelentős része valóban szokott ilyesmivel foglalatoskodni. Nincs benne semmi bántó, csak amit az ember beleképzel. Ha valamiben nincs semmi bántó, szerintem illene megadni a másiknak annyi bizalmat, hogy nem igyekszünk belemagyarázni valamit, amin megsértődhetünk.
Ha ettől a konkrét hozzászólástól (a kirekesztő hozzáállást én is tiltanám) elmegy a kedve a regisztrációtól, akkor ez van. Mindenki mérje fel maga, hogy egy adott oldal mit adhat neki, pozitív és negatív oldalon egyaránt. Halkan jegyzem meg, hogy egyesek még hangot is adtak annak, hogy egy bizonyos WL tag kommentelési stílusa miatt hagyták el az oldalt, az mégsem érdekel senkit (hú mi lesz ebből, namindegy, benne hagyom).
Részemről elmondtam mindent, amit akartam.
Hol van a cikkben leírva az,
Tehát minden kígyó mérgező? Nem. Van ami egyáltalán nem veszélyes az emberre. De ha egy ismeretlen példányt látsz, mégis távolmaradsz tőle, mert akár mérgező is lehet. De lehet, hogy ártatlan, kiműtött fogú, elveszett háziállat, akit haza kéne vinni.
Egy másik embert, annak szándékát sem tudod felmérni előben azonnal (sokéves ismerettség után is tudnak emberek meglepetést okozni), írásban meg még nehezebb. Lehet a férfi jószándékú, de lehet erőszakoló is. Gondolom senki sem úgy nevelné a gyerekét, hogy nyugodtan üljön be bárkinek a kocsijába, mert akár a jószándékú, milliárdos, amerikai nagybácsi is lehet. Vajon miért?
A ... nagyon fontos lehet, de vegyük figyelembe, hogy az összes felsorolt megjegyzésnek inkább az "Ember" ősosztályon/interface-en lenne a helye (ti. semmi nőspecifikus nincs bennük), valamiért mégis a "Nő" és pont ezek a metódusok lettek kiemelve. Ez itt a probléma.
És a kettős mérce:
A nők legyenek elég értelmesek ahhoz, hogy ezt a könnyen félreérthető, nem magyarázott "viccelődést", ami semmi praktikus mondandót nem tartalmaz, a helyén tudják értelmezni, az átlagembernek viszont nem szabad azt mondani (magyarázattal), hogy "If you are a man, you are part of rape culture.", olyan kontextusban, ahol egy valós társadalmi probléma kerül megvitatásra.
Asszem már nem fog közeledni
.
Ha esetleg az első ellenérzésén át birna lendülni valamelyiktek és elolvasná a pdf-et, majd megosztaná élményeit, azt tényleg megköszönném, kéne a visszajelzés. (tervezem, hogy írok majd egy linkehető kódmegjelenítő html modult - egyelőre nem futotta rá).
Az angol readme-ért a felszólalóktól elnézést kérek. Azért nem kétnyelvű, mert a találatok nyelvi eloszlását becsülve erre a döntésre jutottam.
Én az interface-eknek nagyobb
(szerk.: a "." a hozzászólás témájaként azért nem jó ötlet, mert nehéz rákattintani a Friss szekcióban :))
Ha te lennél a doki lova,
Heh, jó kérdés. Ahogy
Egyébként nekem jónak tűnik a cucc, kéne tesztelni kezdőkön :).
Köszi szépen az ötletet,
good job
Elég régóta olvasgatom a
1) Az írásod, hogy mint szinte a legtöbb hasonló, egy elvont példán keresztül akarja megértetni az OOP alapjait, ennél sokkal közérthetőbb és általánosabb példán kellett volna bemutatnod. De hogy akár egy konkrét példát is mondjak, minden programnyelvben van input, annak típusonkénti (int, string) ellenőrzése (Validator, IntValidator, StringValidator, stb.) sokkal általánosabb és közérthetőbb lett volna.
2) Az egyszerűbb jobb (drawHandle() -> draw()), rossz programozási stílust mutatsz (_currenttarget): aláhúzás, camelcase be nem tartása.
3) Amiben nem vagyok biztos, mivel a pdf nem túl jó áttekintésre, de szerintem hibás az OOP megvalósítás, konkrétan a "factory" rész felesleges benne, anélkül is meg lehet valósítani az adott modellt, nem tesz hozzá az adott példában semmi értéket, nem indokolja semmi a létjogosultságát.
4) Ami szerintem a legnagyobb "hiba" és nem is találtam a neten sem még ilyet, hogy bemutat egy model-t az írásod, viszont az OOP-ben vannak olyan "trükkök" amire nem térsz ki (példányok számának minimumon tartása, adat/model szétválasztás, stb.)de valószínű azért mert (szerintem) a példa nem jó.
Amit még én nagyon hiányolok, hogy nincs benne "evolúció", amin azt értem, hogy én elindultam volna 1-3 plain osztályból és utána végigvezettem volna logikusan, hogy ahhoz miként "csapódik" még pár osztály/interface, ugyanis szerintem nem az egyszerű OOP a nehéz, hanem arra ráérezni, miként kell egy OOP osztályt/"rendszert" végig gondolni és megvalósítani.
Hozzáteszem, nem ismerem az ActionScript-et, egyszer volt csak vele dolgom, Java-ban programozok.
Köszi a részletes és
1) Már a tervezés fázisában úgy határoztam, hogy egy inverz állatorvosi lóra van szükség - vagyis kódra :) -, amin végig lehet mutogatni az OOP-re jellemző összes lényeges "tünetet". Itt hangsúlyozom az EGY-et, egy összetartozó osztályháló felépítése volt a cél. Nem hiszem, hogy néhány validator felépítése közérthetőbb lenne, mert ott még az a probléma is felmerül, hogy valaki nem tudja, mi az a validator. A kör és háromszög fogalma viszont adott.
2) A CamelCase tudom, hogy szentírás a Jávában, más nyelvek ennél kicsit lazábban tolják, pláne egy pszeudonyelv ;)
3) Itt bevallom elakadtam, milyen "factory" rész? Az egész szemléltető kódot érted alatta? Mivel egyetlen factory részről beszélhetünk, a design pattern megvalósításáról.
4) A MVC bemutatásának hiánya és az összes általad említett "hiba", meg a "trükkök" nem említése szerintem egy dolog miatt lehetett - nem ez volt a cél ;)
Nem brillírozni akartam egy faja és bazinagy kóddal, hogy még annak is probléma legyen végiggondolni, aki már évek óta OOP-vel alszik és kel. A cél az objektumorientáltság fogalmának bevezetése volt egy érintetlen elmébe :)
A rendszer-megvalósítás egy későbbi fejezet a tanulás folyamatában.
Az írásnak köze nincs az AS-hez, ezt hidd el bemondásra (mivel egyszer volt csak vele dolgod :)
Köszi, hogy nem sértődtél
(Ha arra jársz egy bunkóval, leállíthatnád az itteni embereket, mert ahogy olvasom minden téma, csak a beküldésed nem.:)
A "factory" rész alatt a Factory szerkezetet értettem.. de megértelek a design pattern-t akartad bemutatni.
Egyébként szerintem nagyon is köze van az írásodnak az AS-hez, példának okáért a BOX-os osztályoknál egy java-s (is) csak tippel, hogy egyáltalán mi történik (gondolom "valami" meghívja a draw() függvényt), hogy minek kell bele a getBox()/setBox()/setColor() mikor nincs használva és sok köze nincs az OOP-hez, minek bele a box_instance változó, vagy ha már, akkor miért nem a Point-ot tárolod el.. őszintén ez nekem rejtély és azért gondolom, hogy ezt csak az AS-ben programozók, fogják tudni igazán értelmezni. Szóval én is évek óta alszom és kelek OOP-vel, de csak lestem, hogy miről van szó.:)
Még egy észrevétel, ez így nem pontos: "A memóriából soha, egyik nyelven sem örülnek:) a példányra vonatkozó bejegyzések..", mert a java-ban (is) léteznek "gyenge" referencia tárolók, amik "mögül" bizony törölheti a JVM az objektumot.
Nem kell ide bunkó, vagyunk
Nem, nem
Az OOP-t akartam bemutatni és mutattam be. Az írásban a példák szekció alatti kódoktól eltekintve csak pszeudokódot láthatsz. Ha nem, magadra vess, mivel "kódunk nyelve csak a képzelet szüleménye, minden hasonlóság a valóságban létező nyelvekkel csakis a véletlen műve lehet..". :D
Szerintem próbálj meg kicsit lazítani a csonton és elvonatkoztatni a napi rutinodtól (egyébként a példány hívja a draw függvényt, de nem probléma, hogy nem látod). Getter/setter-t nem csak akkor épít az ember a kódba, ha instant fel is használja :D - tanulmányozd még egy kicsit a kódot, ha nehezedre esik értelmezni...
Amikor létrehozod a gyenge- vagy puhareferenciás példányaidat és egyebeidet (pl. értékek), eleve parancsba adod a GC-nek, hogy daráljon, ha arra jár.
A virtuális masina (JVM) maga egyébként nem darál - az a bájtkódodat olvassa fel főként - működteti a cuccaidat, amíg még elérhetők. A szemétgyűjtő csak egy kiegészítő része a masinának több más elem mellett.
Valóban, átnéztem újra a
A getter/setter-ben abszolút nem értünk egyet.. ahogy mondja a mondás, lustaság fél egészség.:)
Egyébként van rajtam sapka.:)
Az állítás, hogy nem törlődnek példányra vonatkozó bejegyzések, akkor sem igaz, ha átfogalmazod a mondatot, hogy nem a JVM csinálja, hanem a GC.:) Persze lehet tovább kötözködni, hogy akkor sem törlődik csak teret vált.:-)
De lényegtelen, örülök, hogy megcsináltad ezt az írást, én csak jeleztem, hogy szerintem nem elég fapad.
én csak jeleztem, hogy
nagyon nagy szükség lenne
Függetlenül attól, hogy szerintem a többség rosszallása nem volna szabad senkit megakadályozzon benne, hogy támogató véleményt formáljon, a -1-gyel súlyos szemantikai problémák vannak (a +1-gyel is van, de kevésbé komoly, így azt alapvetően támogatom).
Szemantika
Jó meglátás
Kitöröltem, amit írtam, mert rájöttem, hogy a javaslatom nem tud működni az adott hozzászólás tekintetében, csak mint a hozzászólásra adott válasz. Azt meg be lehet gépelni :)
Szerintem nem kell +1/-1.
Alapvetően én is hasonlóan
Nincs szó tiltásról, nem lett cenzúrázva semmi, egyszerűen jeleztem azt, hogy úgy érzem, problémás ez a megnyilvánulás. A véleményét mindenkinek tiszteletben tartom, legyen szó arról, hogy szerinte a nők csak a házimunka elvégzésére és dugásra valók, vagy akár arról, hogy szerinte minden buddhistát fel kellene gyújtani. De egyrészt jelezni fogom az erre tévdő nőknek és buddhistáknak, hogy ez nem ennek a közösségnek a konszenzusa, másrészt kérni fogom, hogy lehetőleg ezt a véleményt itt ne fogalmazza meg, mert árt.
Nem egy ideális világban élünk.
Alapvetően egyetértünk, de
Ráadásul ontopik is volt, mivel a Nő valóban jó OOP példa lehet. Adott esetben nőként én inkább rosszul érezném magam, hogy miattam nem szabad ezt meg azt.
Ha én most leírom ide, hogy a nőknek büdös a lábuk, nem hiszem, hogy ezen megsértődnek (bár az óvodában még ez működött). Vagy ha elmondok egy cigányviccet, attól még nyilvánvalóan nem leszek rasszista.
Alapvetően egyetértünk, de
Én nem látok lényegi különbséget. Ha valaki úgy gondolja, hogy bizonyos embereket felgyújtva a világ jobb hely volna, akkor, ha lehetősége adódna, ugyanúgy megtenné ezt, ahogy az is bezárná a nőket a lakásba, aki szerint a dolguk csak a házimunka és a dugás, ha lehetősége adódna.
Én úgy gondolom, fontos, hogy bárki szabadon meg lehessen győződve róla, hogy bizonyos embereket fel kellene gyújtani, és ennek hangot is adhasson nyilvánosan, de ez a kérdés nem tartozik minden fórumra, és ha már valaki hangot ad neki, akkor mások adjanak hangot az esetleges ellenkező véleményüknek.
Többször jeleztem, hogy nem önmagában a példával, és még csak nem is az általánosítással volt problémám.
Az utóbbival azért sokan nem értenének egyet. Én igen, de ettől még valószínű, hogy a cigányvicc alatt is jelezném, hogy itt nem kívánatos.
ne itelj tobbnek valamit
Azt belemagyarazni, hogy szerintem csak ezekre valok a nok - igen eros tulzas. Trefa volt, elismerem hogy lehet kicsit eros, de ettol meg nagyon tisztelem a noket.
Megegyszer elnezest azert a k... kommentert.
ActionScript?
Nem jellemző,
Mindenesetre az írás független kódot használ az elmélet gyakorlati bemutatásához, hogy ne vonják el nyelvi sajátosságok a figyelmet a lényegről. Az, hogy elgyengültem egy pillanatra és megmutattam mit tud a partra vetett hal - az AS3, ha... (ezer dolog) - az a szent maga felé hajló keze volt :)
Kezdőknek szól?
Nem tudom úgy olvasni, mintha sosem hallottam volna a témáról, de nekem olyan érzésem van, hogy a teljesen kezdőknek ez azért elég nehéz olvasmány lehet. A másfél oldalas kóddal indítás szerintem nem segít ebben. De írom ezt úgy, hogy valójában pontosan tudom, hogy miről szól és csak megpróbálom elképzelni, mintha nem tudnám.
Igen, itt van a kutya elásva,
Már az elején tisztában voltam vele, hogy egy igen ellentmondásos feladatkiírásnak kell eleget tennem: a bealvásgyanús részek eliminálása, a lehetőségeken belüli egyszerű nyelvezet használata, használható és meggyőző kód beleszövése az írásba, a keresztutalások kezelése, az új fogalmak egy feltételezett tudáshoz kötése és nem akarom tovább sorolni mennyi minden volt még szempont a végső formára hozásnál.
Az ActionScript címkénél igazad lehet - mert magának az írásnak semmi köze sincs az AS-hez, többek között ez is egy kiemelten fontos szempont volt a tervezésnél.
Az olvasmány még sokadszorra is nehéz egy kezdőnek, ez nem kérdés. Természetes folyamatként szándékoztam bevezetni az új fogalmakat, a kiváncsiság felkeltést használva eszközként. Mélyen gyökerező akadály egy ilyen írás megszületésénél, hogy mindenki máshogy tanul meg új dolgokat. Próbáltam a saját metodikámat felhasználni, nem volt más ötletem. Szándékaim szerint többszöri, más-más módon való újraolvasást igényel az írás.
Tudnál esetleg konkrét javaslatot mondani a változtatásra, hogy mit csinálnál másként? A negatív irányúakkal nemigen tudok mihez kezdeni.
Bevezetés, indokok + egyéb magyarázatok
A Refactoring könyvben van egy konkrét példa, ugyanaz a kód refaktorálás előtt illetve utána. Az meggyőző. Szerintem arra a kérdésre, hogy mi pluszt ad, nem jó válasz, hogy ez más.
Ha részletesen nézem a kódokat, felmerülnek kérdések, a Point osztálynak van egy publikus eleme (point), ami csak a konstruktorban szerepel. Ha ennek oka van, akkor azért ezt meg kellene magyarázni, ha nincs oka, akkor törölni kellene onnan.
Köszi a választ,
Csakhogy kiragadjak egy részt belőle:
Milyen lenne egy olvashatóbb kód? Ezen sokat rágódtam, annyire futotta.
Olvashatóbb kód...
Amikor én még anno az OOP-vel először találkoztam, akkor úgy tanították, mint egy új eszközt. Semmit sem kellett az eddigi tudásból eldobni, hanem az eddigieket új lehetőségekkel egészítettük ki. Emiatt is gondolom azt, hogy OOP-re áttérni szakmai fejlődés, nem csupán egy másik érdekes megközelítés megismerése.
Nem tudom definiálni az olvasható kódot, legalábbis most semmi egzakt megfogalmazás nem jut eszembe. Leginkább olyanokra gondolok, hogy olvasás közben nem merülnek fel megválaszolatlan kérdések, pl. a box konstruktorában át vannak adva egy pont, de a draw metódusban valami fix értékek vannak írva. A set color miért rajzolja újra, de a set box miért nem? Igaz, nekem az egész box_instance is furcsa. Továbbá, ha valamelyik függvény beépített függvény, akkor ott azt lehetne jelölni, nem egyértelmű, hogy a drawRectangle-t ki hajtja végre, ahogy az addChild is nekem hiányzik. Szerintem itt egy-egy komment elférne. Persze pozitívumok is vannak. :) A sorrend kifejezetten tetszik, pont ettől lesz valami olvasmányos, hogy ha elkezdem olvasni, akkor a következő új elem pont ott található, ahol éppen tartunk. Például nagyon sokat rontana az olvashatóságon, ha a Point lenne először definiálva.
Véleményem szerint az OOP használata közben az egységbezárás miatt sokkal könnyebb a többi programozónak is érthetőbb kódot készíthetünk. Az OOP nem csodafegyver, amivel csak jól lehet dolgozni, de segítségével könnyebb jól dolgozni.
A HTML oldalon is lehet linkeket készíteni, emiatt nem kellett volna PDF-fel bajlódni. :)
Arról ne beszéljunk,
Elgondolkodtam azon, hogy ez a gondolatod
Ezt kihagytam a válaszadásból,
Egyrészt azt gondolom, hogy "minél előbb, annál jobb" - még begyöpösödés előtt, rutinkialakítás előtt jó, ha képbe kerül az OOP, tehát a pályakezdőket, a tanulófázisban levőket kell megcélozni.
Másrészt a programozás csínyját-binyját is be lehet mutatni egy OO nyelven, nem kell feltétlenül C hozzá például.
DE! - jobb a C, sokkal jobb. Pont az van benne és nem több, mint amire szükség van az alapok elsajátításához. Ezért sem választottam az "élő" nyelvek közül a magyarázó kódoláshoz, hanem egy lecsupaszított, lényegre koncentráló vázat használtam illusztrációnak.
És itt kerül a képbe az, hogy miért gondolom az OOP-ről, hogy nem szakmai fejlődés és nem állíthatunk fel kisebb-nagyobb relációt a paradigmák közé. Amikor elkezdtem a napi szintű használatát egy nagylevegő-fejesugrás végén, azt gondoltam, igen, hogy AZ, fejlődés. Aztán teltek az évek és azt kezdtem el gondolni, hogy a szakmai fejlődés az a minél szélesebb látókör kialakítása ÉS ebbe beletartozik az OOP (is). Képtelenség mindent objektumorientáltan megoldani - csak egy példa: a sitebuild. Akadtak persze kisérletek ott is a strict OOP bevezetésére, de egy egyszerű oknál fogva bukásra ítéltettek: nem erre való az OOP - a neten a lomhaság megengedhetetlen. A bytecode-ra forduló értelmezővel futtatott OO nyelveknek (pl. Java, AS) volt egy sanszuk, de nehézkes a lejátszó állandó "tisztántartása", natívan nem voltak támogatva soha.
Tehát vannak olyan területek még a web bűvkörben mozgók között is, ahová maradandóan - véleményem szerint - nem fog betörni a klasszikus objektumorientáltság. Így kerekecske gombocska, nem lesz belőle oroszlánkirály (csúcsragadozó)... :)
Miért a cikk?
Mielőtt veresbe fordulnának a dolgok,
Azt meg csak csendben és szomorúan jegyzem meg, hogy olthatatlan a lelkesedésem az OOP iránt majd egy évtizede (immáron trillárom), ezt még a napi rutin sem pusztíthatta ki belőlem – szóval gyorsan és elhamarkodottan ítélkezel. Ha felülemelkedem a helyzeten, akkor meg kell állapítsam, hogy elvesztetted az objektivitásodat, ezért nem érdemes tovább beszélgetnünk.
Ettől függetlenül köszönöm a gondolatébresztő megmozdulásaidat, azokba energiát öltél és hasznosak voltak.
.
A weblabort feltérképezve
Ha valaki admin esetleg a társulatban, gondolja át, micsoda előnyökkel jár egy ilyen gőzlevezető :)
+1
Valóban probléma ez a
URL változtatás
Feszes :)
Jól peng,
Lehet egy kéréssel több?
Megtennéd esetleg, hogy kicsippented a ActionScript-et címkék közül? Beláttam, hogy nem segíti az erre tévedőket.
Alászolgája :)
aszta! éjnek évadján...
Kérdések
- Mikortól/mitől lesz nagyobb bonyolultságú egy feladat?
- Mik az OOP hátrányai?
Nem megyek az utcádba :)
- ezek szerint nem sikerült átadnom a lelkesedést az OOP lehetőségei iránt, ez baj.
- fair enough, tapasztalat szerint mindenkinél egy kicsit máskortól...
- hát az, hogy nem lehet belevágni a közepébe. Ez nem lecsó. Ha azonnal kell valami, akkor NO OOP, vagy kód újrafelhasználás (amire egyébként meglehetősen alkalmas).
Szerinted ezt egy kezdő szárnybontogató orra alá kell sürgősen dörgölni? hiszen a cél épp egy hirtelen segélykéz nyújtása a már elhatározott lépéshez: "akarom tudni mit hájpolnak ezek itt..."
Ne gyere : )
Elhessintettem a gondolatot,
A "szükséges és elégséges" definíciójára feszített keretben ez még elférhet, köszi a szempontot.
Másik szempont viszont, hogy amíg valami totál idegen, addig nem bírsz vele gondolkodni és maximum a padlásra fér fel egy ilyen mondandó - alkalomadtán talán bevillan a tudatalattiból :)
Hopp
1, Ha valakivel ki szeretnél tolni, használj az ősosztályban privát tagokat és metódusokat. Mert ha a későbbiekben Allah úgy akarja, hogy egy leszármazott osztályban mégis szükség lenne bármelyikre (ti. a privátra), akkor lehet újraírni a megfelelő kódrészletet. A Drupál kódolási szabályzata például előírja, hogy nem szabad privát dolgokat használni. Ebben a kombinációban az egységbezárás inkább hátrány, mint előny.
2, Ha a sors úgy hozza, hogy bármelyik ősosztályban módosítást kell elvégezni, lehet átnézni az összes leszármazottat, hogy mi törhetett el. Ha öröklődést használunk, akkor emiatt rendkívül rideg és törékeny lesz a kód, az OOP pártolói már nem is ajánlják ezt a kódszervezési modellt, egyre inkább a kompozíciót favorizálják helyette (aminek ugyanígy megvannak a saját csapdái). Kompozíció esetén meg érdemes elgondolkodni azon, mire is jó tulajdonképpen a protected tag vagy metódus.
3, Az öröklődéssel könnyű elszállni, mi ebbe futottunk bele anno az Ext.js esetében, ahol egy listbox objektum hat vagy nyolc láncszemen keresztül jött létre, ami nem gond egy olyan Móricka típusú űrlapon, ahol van mondjuk három belőle, de ahol ennek a többtízszerese, akár egy egyszerű számlán, ott a legerősebb gép is csuklik egyet kirajzoláskor.
4, Ha egy metódusról kiderül, hogy más objektumban is használni kéne, akkor legrosszabb esetben a kódját másolhatjuk át oda is. Ilyenkor kiderül az OOP-ről, hogy kódújrafelhasználhatóság tekintetében nem túl hatékony módszer. Ha meg kompozícióval állítjuk elő osztályainkat, majdnem ugyanott vagyunk, mintha elemi függvényeket használnánk programunkban.
5, Egy nagy projekt esetében van egy csomó objektumunk, amelyek egymással interakcióba lépnek, egymás állapotát (belső változóit) változtatgatják, az objektumok számával az összefüggések is exponenciálisan nőnek. Bár a programozók logikai intelligenciája nagyobb az átlagnál, de ennyi Einstein azért mégsincs a világon, nem beszélve arról, hogy az újonnan becsatlakozók mennyi idő alatt látják át a rendszert.
6, Amit leírsz (öröklődés, polimorfizmus és társaik), az csak a kezdet. Ezután jön, hogy ha jó OOP-s akarsz lenni, tisztában kell lenned a SOLID elveivel, át kell látni minden függőséget, hogy jól tesztelhető kódot írhass, a különböző hasonló helyzetekben a megfelelő programozási mintát (factory, builder és társaik) célszerű használni. Arról nem is beszélve, hogy egy komoly IDE is szükséges, hogy a kódot átlásd.
Azt írod, hogy az OOP előnyei nagyobb projekteknél jönnek elő. Hogyan? Az 5-ös és 6-os pontból következik, hogy minél nagyobb a rendszer, annál komplexebb lesz a sok-sok követelmény miatt. Ez alapján legfeljebb közepes méretnél lehet elgondolkodni rajta, node mi van, ha bejön az üzlet, és tovább növünk? Ki fogja átírni, leegyszerűsíteni?
, jön Vuk!
Nekem az az álláspontom, hogy az OOP-vel, mint paradigmával alapvetően nincs baj. Nyelvenkénti megvalósítása persze más és más, de nagy eltérések nincsenek. Azt meg nem lehet elvárni még egy alaposan megtervezett programnyelvtől sem, hogy egy shapeshifter szupernyelv-szerű jelenség legyen minden valaha létező pozitívumot magába olvasztva - valahol mindig kilóg majd egy kicsit a (ló)láb a takaró elól :).
Ha nem akarod készakarva elgáncsolni magad, mi végre definiálnál private tulajdonságokat egy ősben a tervezés során? :D - a protected fokozat inkább megfelel egy ilyen helyzetben és akkor nem köptük szembe az egységbezárást sem. Amiket a továbbiakban így sorra veszel mint negatívumokat, azok is inkább a megvalósítás negatívumai, nem a programozási módszertané magáé. Az egyre fejlődő és növögető kódbázisban természetes módon jönnek elő a visszásságok - időről időre szükséges egy kis (vagy nagyobb) refaktor, ezzel mindig számolni kell, nem megúszható. De ez sem a paradigma rovására írható jelenség.
Nekem az tetszik ebben az egészben – és máig a bűvöletében tart – hogy olyan, mint egy óriási és heroikus logikai kirakósjáték, amiben folyamatosan küzdesz, hogy végül te kerülj ki győztesen és ne temessen maga alá a kód :)
Egy kész, a piszkálgatás szakaszába tartó OOP projektbe bekapcsolódni rémálomszerű, igen stresszes mutatvány, ez kétségtelen. De ugyanez várhatóan "szor tíz" egy procedurális megvalósítású kód esetében, hacsak nem egy igen felkészült architect kezében futnak össze a szálak. (nagyobbacska projekteket vizualizáltam)
Ami még megragadta a fantáziám az írásodban, az az utolsó kérdéskör. Te melyik nyelvet vagy programozási paradigmát szavaznád az "óriásprojektek megvalósításának fejedelme" cím méltó birtokosának?
;)
Ha nem akarod készakarva
1, Ha valakivel ki szeretnél
3, Ahogy fentebb is írtam, az osztályhierarchia fordítási időben kerül kiértékelésre, ezért ennek alapesetben nem szabadna runtime megjelenjen, valószínűleg más volt a gondotok. Lehet JS ezt kicsit máshogy csinálja, nem tudom, de a JS-tel példálózni OOP témában szerintem értelmetlen.
A hatost nem is értem :) Bedobtál csomó mindent, ami szerintem nem áll össze egésszé. Az IDE dolog előtt mindig meglepetten állok. Akármilyen paradigma szerint is programozol, egy IDE nagyon nagy segítség a munkában, főleg ha nagyon nagy kódbázisról van szó. Egy összetettebb rendszert egy sima editorral úgysem fogsz átlátni, akár OOP, akár nem.
»1, Ha valakivel ki szeretnél
Ha erre később valakinek szüksége van, akkor az tervezési, nem pedig paradigma hiba.
Túl sok "favor composition over inheritance" című cikk jelenik meg az utóbbi időben, hogy kikerülhető lenne az, miszerint az öröklődéssel rengeteg probléma van, és igazából hatékonyan nem túl sok helyen használható.
Ez a probléma így ebben a formában teljesen ellentétes az OOP szemléletével. OOP-ben nem metódusokban (implementációkban) gondolkodunk, hanem interface-ekben.
A közös pont: kitöltött kör rajzolása. Egyik helyen a nap objektumban kell használni, a másiknál meg az autó objektumban. Hogyan érdemes ezt a problémát OOP megoldani?
A 6-os pont lényege, hogy az OOP nem merül ki abban, hogy ismered az öröklődés, a polimorfizmus és a zártság fogalmát, ha jó OOP-s szeretnél lenni, jönnek az újabb elvek, amiket felsoroltam, valamint a különböző eszközök ismerete.
Aki megmondja nekem tervezési
Composition over inheritance: a rideg, merev kódot nem tudom értelmezni. Azt sem tudom miért olyan nagyon problematikus az ősosztályok módosítása. Vagy érinti a leszármazottakat a módosítás, vagy nem. Ha érinti, akkor is csak véges számú osztályt. És a mai IDE-kben egy combosabb refaktor se olyan kemény dió. Ami a valódi probléma, és amiért a cikkeket írják az, amit írtam. Talán túlerőltették a suliban az öröklődést, nem tudom, de sokan mindent arra akarnak ráhúzni. Ez a probléma, nem az öröklődés maga.
Ovis példa: mindkettő felhasznál egy olyan objektumot, ami tud neki kitöltött kört rajzolni. De itt ez a példád nem jó. Úgy esetleg, hogy a napocska rajzoló tudott ilyet, kell az autó rajzolóba is. Akkor a megoldás, hogy ki kell emelni egy külön osztályba a rajzolni tudást a napocskából. Nem az, hogy metódusokat másolgatunk ide-oda.
Józan ész: azért ezek egy részét procedurális megközelítésben macerásabb kicsit megvalósítani (pl encapsulation, laza csatolás).
Nem néztem meg inf3rno kódját, de nem is tartom túl értelmes dolognak azt, hogy 2 implementáció minőségét a méretük összahasonlításával kezdjük. Ennél kb az összes többi szempont fontosabb. De ha valóban 2 függvény procedurálisan, akkor az látatlanban nekem azt mondja, hogy jó kis spagettikódból indult, annál meg minden jobb.
Kezdjük előlről témakörönként!
1.
Egy tervezési hibás implementációval nem érdemes véres-kardozni, mert senki nem fogja komolyan venni és az OOP bűnének betudni a dolgot.
A
2.
A tervezés szakasza kiemelten fontos a fejlesztésben. Ekkor dönti el az ember (vagy csapat), hogy melyik eszközt és milyen módon érdemes használni a megvalósításhoz. Amennyiben egy OOP nyelvre (is) esett a választás, még mindig csak egy töredékén vagyunk túl a tervezésnek, most jön a design része, ahol sok szempont alapján kell dönteni és rizikófaktor mindig van.
Az öröklődés kontra kompozíció témaköre mostanában ismét üstökösként szántja a fejlesztés egét, de ha belegondolunk, csak egy logikus és igen egyszerű kérdést kell megválaszolnunk: milyen változásokra számíthatunk a közeljövőben, illetve számolhatunk-e a példányok közötti állandó kapcsolatra a teljes életciklus alatt, vagy nem.
A protected hozzáférésnek egy kompozíción belül a dolog természeténél fogva nem sok értelme van :D
3.
Neten (front-end), bytecode-ra fordulás nélküli OOP fejlesztésről inkább ne beszéljünk. Ez az a klasszikus helyzet, ahová NEM VALÓ az OOP. Ha csak „csuklott”, akkor még elég jók voltatok :)
4.
Kis tervezési hiba ismét? :)
Próbálom elképzelni a helyzetet, amikor ilyesmibe keveredik az ember, de nem sikerül.
5.
Sosem szempont a cég és a fejlesztők szemszögéből, hogy egy esetleges newbie hogyan fogja venni az akadályt. Ez legyen az ő problémája.
Az
6.
Idézném magamat, de a pdf-ből: „Ez az írás csak egy kezdőcsomag a legszükségesebb tudnivalókkal” – szóval aszondod "round two"? :)
Ezt az IDE-vel szembeni ellenérzésedet én sem vágom, bár engem még úgy tanítottak, hogy az a jó programozó, aki papíron egy szál ceruzával... azt gondolom ezek az hősidők már a múlt árnyai :)
De ugyanez várhatóan "szor tíz" egy procedurális megvalósítású kód esetében, hacsak nem egy igen felkészült architect kezében futnak össze a szálak.
TE: Tapasztalataim szerint ez nem igaz. Te is írod a pdf-ben, hogy az OOP kód mindenképp hosszabb, mégpedig a sok díszítés és ceremónia miatt (tervezési mintáknak, SOLID elveknek való megfelelés stb.). Procedurálisban mindezt meg lehet spórolni.
...és most, ha senki nem sérült, tisztelgés és hátra arc :)
(jólesett egy kis birkózás)
Neten (front-end),
Miért ne? Elég sok nyelv van, ami OOP és nem fordul byte-kódra. Vannak ugye a JavaScript-re forduló nyelvek: Clojure, TypeScript, CoffeeScript. Utóbbi kettővel igencsak egyszerű OOP kódot írni a netre (elsővel közel lehetetlen). Ezen kívül szimplán JavaScript-ben is lehet elég szép, és hatékony OOP kódot írni.
Vegyük továbbá a neten használt nem fordított OOP nyelveket: PHP, Python, Ruby. Szerintem ezek is igen szépen működnek OOP-val, nem látok komolyabb problémát (mondjuk PHP esetén sokszor feleslegesnek érzem, hogy egy hatalmas objektum hierarchiát építsünk fel 100ms alatt, amit később soha nem használunk, mivel az oldal renderelése után a program futása befejeződik).
Az írást az itt nyert ötletek
Köszönöm mindenkinek, aki segítséget nyújtott hozzá.
j