ugrás a tartalomhoz

Does JavaScript need classes?

Joó Ádám · 2012. Okt. 17. (Sze), 20.12
Akkor most lesznek osztályok a JavaScriptben?
 
1

Szerintem félrevezető a

MadBence · 2012. Okt. 23. (K), 21.53
Szerintem félrevezető a magyar leírása a blogmarknak. Mármint az nem kérdés, hogy lesznek-e (hisz lesznek), hanem hogy szükség van-e rájuk.
Mondjuk számomra ez a kérdés sem teljesen világos, hisz eddig is voltak (bár nem igazi osztályok voltak, de úgy lettek megkonstruálva, hogy úgy viselkedjenek. Ami vízen úszik, és hápog, az kacsa). Az új szabvány, mint azt a cikk is említi, csak lehetővé teszi, hogy kompaktabban írjuk le azt, amihez eddig kicsivel többet kellett dolgozni. A prototípus alapú öröklődés ugyanúgy megmarad, szóval az új szintaktika semmit sem "vesz el" a meglévő nyelvből, csak hozzáad, ennélfogva nem tudok olyan érvet mondani, ami miatt egyáltalán a címben szereplő kérdésre a válasz "nem" lenne.
Olyan ez nekem, mint hogy pl PHP-ban szükség van-e a foreach kulcsszóra. Eddig is teljesen jól megvolt az egyszeri fejlesztő nélküle, ott volt a for, csak kicsit többet kellett gépelni. Csupán egy kényelmi szolgáltatás, ami semmit sem "vesz el" a nyelvből, csak hozzáad.
Vagy talán jobb példa a C# yield return kulcsszava, ami valójában a háttérben valami állapotgépes dologra fordul le, nincs benne semmilyen fekete mágia, a használata nélkül is meg lehet oldani minden problémát, csak esetleg sokkal több kódot kell hozzá írni.
2

Szerintem nem félrevezető,

Endyl · 2012. Okt. 24. (Sze), 09.01
hiszen a class kulcsszó ellenére továbbra sem lesznek klasszikus értelemben vett osztályok a JavaScriptben (ahogyan eddig sem voltak, csak egyeseknek -talán- könnyebb úgy megszokni a nyelvet, ha osztályként hivatkoznak az egyedi típusokra), csak ahogy te is írtad, az eddigi megvalósításokat lehet majd tömörebben leírni. Ettől viszont még a nyelv koncepciója nem változik erre vonatkozólag.
4

Köszönöm.

Joó Ádám · 2012. Okt. 24. (Sze), 21.09
Köszönöm.
3

Mitől?

eddig bírtam szó nélkül · 2012. Okt. 24. (Sze), 09.10
"az nem kérdés, hogy lesznek-e (hisz lesznek), hanem hogy szükség van-e rájuk."

Átírta valaki a címet? Mert a "Does ... need ..." pontosan azt jelenti, hogy szükség van-e rájuk.
5

Egy osztály ami nem osztály, csak egy kulcsszó a kényelemért

dropout · 2012. Okt. 25. (Cs), 18.07
Nem megtévesztő ez így? Legalábbis azoknak akik olyan OO nyelvekből érkeznek ahol a class kulcsszó tényleg azt jelenti ami.
Szerintem az emberek nem egy kulcsszóra vágynak, hanem valódi osztályokra. Nekem speciel teljesen mindegy egyébként - abból főzök ami van - de elég sokan próbálják imitálni, így azt gondolnám, hogy igény az lenne valódi osztályokra, nem pedig egy kulcsszóra...
6

Részben emiatt idegenkedek

Pepita · 2012. Okt. 26. (P), 11.09
én is a js-től. Amit csak lehet / érdemes, azt csak szerveroldalon. (Persze nem mindent.)
Egyszerűen "nincs eldöntve", hogy OOP vagy nem... De muszáj használni - valamennyire.
7

PHP

Poetro · 2012. Okt. 26. (P), 11.35
Miért, a PHP-ban jobb a helyzet? Szerintem semennyivel. Nekem teljesen jónak tűnik a prototype alapú öröklődés a JavaScript-ben, elvégre az objektumok megléte nem kérdés, nem úgy, mint például a PHP-ban.
8

PHP-ban nem valós objektumok

Hidvégi Gábor · 2012. Okt. 26. (P), 13.04
PHP-ban nem valós objektumok vannak?
9

String, Array, Hash? Ezek

Poetro · 2012. Okt. 26. (P), 13.27
String, Array, Hash? Ezek metódusai, tulajdonságai?
10

Ja, így már értem, köszi. Azt

Hidvégi Gábor · 2012. Okt. 26. (P), 14.02
Ja, így már értem, köszi. Azt hittem, arra gondoltál, hogy ha létrehozol egy class-t, akkor az nem is igazi objektumként viselkedik.
11

Talán igen

Pepita · 2012. Okt. 26. (P), 16.17
Ez mondjuk szubjektív véleményem, a típusosság hiányában nem tudom komoly érvekkel alátámasztani. Viszont - számomra - közelebb áll egy valódi OO nyelvhez, mint a JS. De utóbbival is egyre inkább "barátkozom", mert kell és kész.
12

Miért?

Poetro · 2012. Okt. 26. (P), 16.30
A JavaScriptben a kevés kivételtől tekintve (undefined, null) minden objektum, vagy implicit objektummá alakul. Ezeknek vannak metódusai és tulajdonságai. Ennél több nem igazán kell az OOP-hez.
Object-oriented programming (OOP) is a programming paradigm using "objects" – usually instances of a class – consisting of data fields and methods together with their interactions – to design applications and computer programs.

Object-oriented programming
13

Nem tudom

Pepita · 2012. Okt. 26. (P), 18.52
Én korábban Object Pascal (Delphi) nyüstölő voltam, azzal nagyon jól kijöttem. Persze a PHP is és JS is messze van ettől, de valahogy nekem a PHP közelebbi. Nem tudom miért.
14

A Ruby is pont így működik,

Joó Ádám · 2012. Okt. 27. (Szo), 14.13
A Ruby is pont így működik, csak még jobban álcázza a felületes szemlélő előtt.