ugrás a tartalomhoz

Introducing overload.js

Anonymous · 2008. Feb. 22. (P), 17.26
MooTools kiegészítés az objektumok metódusainak paramétertípus szerinti túlterheléséhez
 
1

Túlterhelés

vbence · 2008. Feb. 22. (P), 17.37
Gyűlölöm ezt a kifejezést...
2

Overload

Joó Ádám · 2008. Feb. 23. (Szo), 14.37
Miért a túlterhelést? Miért nem az overloadot gyűlölöd?
5

Ha muszáj...

vbence · 2008. Feb. 24. (V), 13.13
Egy idegen szót el tudok fogadni olyannak, amilyen. Ha mindenképpen magyarítani szeretnénk, akkor ezt ne stupid módon csináljuk. A közkeletű számítástechnikában a "load" szó elég rég óta jelen van, és általában töltés, betöltés szokott lenni a magyar megfelelője (ami véleményem szerint picit szerencsésebb fordítás a terhelésnél).

Az "over"-nél hasonló a helyzet. Az override-ot sem legázolnak vagy megsemmisítnek fordítjuk, inkább a felülbírál és hasonló magyar szavakat használjuk. Miér? Mert a számítástechnikában a logikai jelentésében szerepel a szó.

Ha egy teherhajóról beszélünk, lehet a túlterhelés a megfelelő magyar fordítás, de ebben a logikai értelemben nemhinném, hogy helytálló.

Ha mindenáron magyarítani akarunk, természetesen megtehetjük. Például az overload lehetne magyarul "ingyombingyom" is. De ha választhatunk, használjunk olyan tagokat, amik közelebb vezetnek a kifejezés megértéséhez.

Itt nincs "túl". Nincs semmi, amit kapacitásán felül használnánk. Arról nem is beszélve, hogy a túltöltés egyértelműen negatív hagszínű. A túl-nak van egy "valaminél tovább" jelentése is, de ilyenkor a "valamin túl" formában hazsnáljuk.

Az ingyombigyom legalább nem adna rossz tippet a szó jelentéséről egy ártatlan szemlélőnek. Amúgy meg mi baj a "felülír"-ral?
6

Magyar túlterhelés

Török Gábor · 2008. Feb. 24. (V), 14.01
Valahány magyar nyelvű szakkönyvet fogtam a kezemben, mindegyik a túlterhelés kifejezést használta. Hogy a load töltés jelente, nem tudom, ha egy szervernek a loadjáról van szó, az a terheltségét jelenti, és nem a töltését.

Szerintem a túlterhelés kifejezés szemléletes, jó fordítás. Mindazonáltal ez a hivatalos fordítása is. Ha idegennyelven elfogadott ez a szóhasználat, téged miért zavar.

A felülír nem tudom, hogy jön ide, a blogmark magyarázó szövegében is eredetileg overload volt, azt cseréltem le a magyar megfelelőjére.
7

Fordítás

vbence · 2008. Feb. 24. (V), 14.59
A szervernél pontosan a terhelés értelmében használjuk. Ugyebár ott egy mérhető dologról van szó, és kapacitásról, ami véges. Ha egy szerver túlterhelt, akkor kapacitása határait súrolja, és ez egy negatív dolog. Ugyanbban az értelemben használjuk, mint egy túlterhelt szekérnél. 100%ban egyetértek a frodítással.

Azonban programszervezésnél semmi, ezzel rokon értelme nincs. Ott egy létező dolgot (eljárást) felülbírálunk, felülírunk egy újjal. Az, hogy elterjedt egy rossz fordítás, nem jelenti azt, hogy helyes. Olyan pedig, hogy "hivatalos fordítás" nem létezik. A nyelvésznácik erre még nem tették rá a kezüket.

Itt nincs terhelés, és főleg nincs túl. Ha van egy eljárás, az vagy felülírod, vagy nem. Nincs egy határ, vagy mennyiség, amin túl kéne menni, és nincs teher sem (vagy terhelés), aminek mennyisége lenne. Egy túlterhelt metódus nem azért nem fut le, "mert ez már túl sok neki", hanem, mert felülbírálja egy másik.
9

Oké

Joó Ádám · 2008. Feb. 24. (V), 16.50
Azt hiszem, meggyőztél. De pontosan mi lenne a nyerő fordítás? Felülírás? Felülbírálás?
17

felüldefiniálás :)

vbence · 2008. Feb. 28. (Cs), 21.50
Talán a legjobban az átdefiniás, felüldefiniálás hordozza érzékelteti legjobban a dolgot. Bár szótagszámban kétszer olyan hosszú, mint angol változata, a maygar sosem volt az egytagú szavak nyelve... A "felülírás" szerintem egy józan kompromisszum a szótagszám és a tartalom érzékeltetése között.
18

Felüldefiniálás vs felüldefiniálás

presidento · 2008. Feb. 29. (P), 15.01
Ez újabb nehézségeket okozna, pl: ,,Fontos, hogy lássuk a felüldefiniálás és a felüldefiniálás közötti különbséget.'' (T.i. overloading vs overriding/redefining) ;)
19

más mondakör

vbence · 2008. Feb. 29. (P), 16.24
Nem vagyok meggyőződve róla. Ha OOP tervezésről beszélünk, akkor viszonyleg egyértelmá, hogy mit akarunk mondani. Az "overriding" pedig 100%ban azt jelenti, amit a overloading csinál :)
20

Nem.

Fraki · 2008. Feb. 29. (P), 20.22
Nem. Az overload polimorfizmus, az override felülírás. Sem a felülírás, sem a felüldefiniálás nem jó szó ezért.

Az én jelöltjeim a felültöltés vagy felülszabályzás, amik hülyénhangzásban a túlterhelés méltó társai, de legalább közelebb vannak. Vagy esetleg rá lehet menni a konkrétumokra: típusszabályzás (paramétertípus szerinti disztingválás, "szabályzás", szabályzás olyan értelemben, hogy kontrollt gyakorolsz a típusok szerint). "Típusvezéreltség" – ez milyen szép, csak ez már elvisz messzire.
21

hát pont nem

Hodicska Gergely · 2008. Már. 1. (Szo), 15.30
Az overload polimorfizmus, az override felülírás.
Az overloadnak semmi köze nincs a polimorfizmushoz, pontosan az overriding az ami ezt lehetővé teszi. A polimorfizmus az azt jelenti, hogy különböző objektumok ugyanarra a kérésre eltérően reagálhatnak.


Üdv,
Felhő
22

irodalom

Fraki · 2008. Már. 1. (Szo), 16.21
irodalom

Mindkét szó kapcsolódik a polimorfizmushoz. Az overriding öröklődéssel, az overloading pedig típusszelekcióval. A kettő közül sztem az utóbbi van közelebb a szó szoros értelméhez (de a lényeg az, hogy mást jelentenek).
23

polimorfizmus

Hodicska Gergely · 2008. Már. 1. (Szo), 17.26
Mindkét szó kapcsolódik a polimorfizmushoz.
Ez lehet, de ezzel együtt a polimorfizmusról így önmagában nem hiszem, hogy bárkinek a függvény polimorfizmus ugrana be. Ráadásul Vbence OOP-t emlegetett, ott meg végképp azt jelenti, amit fentebb írtam: ugyanarra az üzenetre (overload esetén ugye nem erről van szó) a különböző objektumok eltérően tudnak reagálni. És ezt az override-ing biztosítja, nem az overloading.


Üdv,
Felhő
24

vbence azt mondta, hogy OOP témában egyértelmű, miről...

Fraki · 2008. Már. 1. (Szo), 19.47
vbence azt mondta, hogy OOP témában egyértelmű, miről akarunk beszélni, ha felüldefiniálásról van szó. Vagyis ezek szerint ha az overloadot felüldefiniálásnak fordítjuk, akkor egyértelmű, hogy az ebbéli fordítása alatt nem az overloadot fogjuk érteni. (legalábbis ha OOP-ről van szó; csak akkor hogy fogom nevezni azt, ha egy metódust overload-olok...)

Az meg nem állja meg a helyét, hogy az overriding 100%-ban azt jelentené, amit a overloading csinál.

Erre reagáltam. De valóban, az overriding elsődleges fogalom (tőlem) OOP témában, ha polimorfizmusról van szó, mert alapvetően azzal van megvalósítva. Tehát így vitatható az állításom, csak az én felfogásomban az overload egy echte megvalósított többalakúság (nevében is közelebb áll), az override pedig inkább egy arra lehetőséget adó mechanizmus. (Az OOP polimorfizmushoz kell egy hierarchia -- szülőosztály --, ezért is áttételesebb a fogalom, míg overloadnál instant egyenrangú alakokat kapsz.)

De legyen igazad (indokolatlan volt lehagyni a típus- előtagot a polimorfizmus elől), a lényeg itt az volt, hogy nem lehet az override fordítását az overloadra használni, mert nem ugyanaz a kettő.

(Szerk. Erre nem figyeltem, OK OK, a kettő nem állítható párhuzamba, az input ugyanaz/nem ugyanaz eltérés miatt. OOP polimorfizmus: override. Megadom magam, a magyarázat nem volt helytálló.

Tehát vbencének adott válaszom helyesbítve: nem ugyanazt csinálja az override, mint az overload, mert bár mindkettő polimorfizmus, a kettő tök más. Így jó? Kösz a korrekciót.)
25

OOP

vbence · 2008. Már. 1. (Szo), 21.42
Én az "operator overloading" konstellációban hallottam eddig, ami az OOP kontextusában jelentkezik, legalábbis én C++ tanulmánaim során találkoztam vele (és kellett hozzá objektum, aminek egy metódusa futott le mondjuk a + műveletre).

Ha azt mondjuk, hogy a "Foo objektumban felülírtuk / átdefiniáltuk az összeadás műveletét", szerintem megérti mindenki aki ismeri a technikát. Ezért mondtam, hogy ebben a kontextusban nincs mivel összekeverni. (Legalább is nehéz..)
8

Hasonlóra volt már példa ;)

pp · 2008. Feb. 24. (V), 15.38
Szerencsére ma már a "szabályos kifejezések" értelmetlen de hivatalos fordítást egyre többen cserélik le a "mintaillesztő kifejezés" értelmes, jelentés tartalommal bíró, habár nem hivatalos megfelelőjére. Remélhetőleg ez lesz a hivatalos is valamikor talán.

A túlterhelés egy hülye és béna fordítás, hiába ez a hivatalos. pl. a kiterjesztés/kibővítés értelmesebb, bár nem szó szerinti fordítás lehetne. (tudom, hogy nem az, de talán egy alapot jelenthet egy értelmes eszmecsere elindításához a témakörben.)

pp
Annak idején mindig röhögő görcsöt kaptam a directory, könyvtárra való fordításától.
- Gyerekek jártok könyvtárba?
- Persze, minden nap: cd Games
:)
10

Ehh

Joó Ádám · 2008. Feb. 24. (V), 16.52
Nos igen, én is inkább a „jegyzéket” favorizálnám.
11

Akkor már inkább ...

Max Logan · 2008. Feb. 24. (V), 17.39
... mappa legyen, mert talán ez illik a leginkább a funkciójához, lévén file-okat tárol.
12

Az más

Joó Ádám · 2008. Feb. 24. (V), 22.28
A mappa a folder fordítása, és egy metafora a directoryra. Így aztán semmivel nem volna jobb fordítása ennek, mint a könyvtár (ugyanúgy távol áll az eredeti angol szó jelentésétől és ugyanúgy félreérthető, mint a directory és a library azonos fordítása).
14

A SZTAKI szótár nem számítástechnikai szakszótár, így ne

Fraki · 2008. Feb. 26. (K), 09.51
A SZTAKI szótár nem számítástechnikai szakszótár, így nem releváns, másrészt attól, hogy MTA, még nem lesz „hivatalos”.

A túlterhelés ez esetben sima fantáziátlan tükörfordítás, és szvsz helytelen. Ui. minden fordítás értelmezés is egyben, az eltérő konnotációk miatt még a túlterhelés sem feleltethető meg egy az egyben az overloadnak (ettől még az értelmezettség megmarad, legfeljebb szándéktalanul). Az angolban az overloadot bevetten alkalmazzák a polimorfizmus egy válfajára, egyfajta szemantikai túl/rá/felül-töltöttségre, tuningra utal (CPU overclock/underclock felül/alul értelmében). Ez a fajta konnotációja a magyar túlterhelésnek nincs meg, és én nem is erőltetném. Terhelés/töltés kérdésében is világos, hogy az utóbbi van közelebb.
15

Nem a SZTAKI szótár miatt hivatalos

pp · 2008. Feb. 27. (Sze), 07.31
Hanem mert számtalan szakkönyvben ezt használják. (legalábbis ahol én találkoztam vele) Első találkozásunkra jól emlékszem úgy 95-96 környékén, vagy előbb, amikor a "Bevezetés a C++ programozásba" c. könyvet olvastam. Ott volt az operator overloading-ról szó. Általában az a baj ezekkel, hogy a magyar fordítás léte fontosabb annál, hogy az adott szó milyen értelmet hordoz. Ez egyfajta vaskalapos hozzáállás, hogy mindent magyarul, mert ez az anyanyelvünk. Szóval ez azért hivatalos, mert a szakkönyek ezt használják, tehát aki olvas róla magyarul, az ehhez a szóhoz ezt a fogalmat társítja. Elvileg, mert engem spec túlterhel egy picit mindig, hogy kitaláljam, hogy akkor most az overloading-ról beszélünk. óverlódingról, így szépen magyarul ;))

A hozzászólásod többi részével pedig maradéktalanul egyetértek.
16

Tényleg?

Joó Ádám · 2008. Feb. 28. (Cs), 20.25
Általában az a baj ezekkel, hogy a magyar fordítás léte fontosabb annál, hogy az adott szó milyen értelmet hordoz. Ez egyfajta vaskalapos hozzáállás, hogy mindent magyarul, mert ez az anyanyelvünk.


Én sajnos pont nem ezt tapasztalom manapság.
3

túlterhelés?

zzrek · 2008. Feb. 24. (V), 12.30
Bocs, de a linkből nem egyértelműen sikerült kiderítem azt, amire kíváncsi vagyok:
légyszi, valaki mondja már el, hogy mi akar lenni ez a "paramétertípus szerinti túlterhelés" ???
Köszi...
4

"Túlterhelés" nélkül

vbence · 2008. Feb. 24. (V), 12.50
Például a java tudja azt, hogy:

class Foo {
    private int value;

    public void add(int num) {
        // itt hozzáadjuk a kívánt értéket valmihez
        value += num;
    }

    public void add(float num) {
        // itt mondjuk kerekítünk előtte
        int inum = Math.round(num);
        add(inum);
    }
}
Szóval egy függvényt nem csupán a neve, hanem a neve és paraméterei (azok típusa) azonosítják, így lehet két külön funkció egyazon néven, ha különbözik a paraméterlistájuk. A cikk hasonlót valósít meg a JS-ben.
13

köszi

zzrek · 2008. Feb. 25. (H), 14.55
Köszi, így már értem.
És egyben csatlakozok a "túlterhelés" kifejezés ilyen célra való használatának ellenzéséhez. (Jó mondat, ugye? :-)

javaslatom esetleg: áttöltés (benne van a töltés "load" szó és talán érthetőbb: az egyik proceduradef helyett a másikba (a megfelelőbe) töltjük a paramétereket)