Wpis z mikrobloga

nie musi istniec w obiekcie o, to w jakim :)? k? a moze z ? :)


@strean: moze istniec w jakimkolwiek prototypie.

wczesniej mowa byla o zmiennych a nie properties a ty pieprzysz niezle farmazony


@strean: czym jest zmienna? W JS zmienna to nic innego jak REFERENCJA. Moze wskazywac na funkcje, typ prosty czy obiekt. setX nie wystawia zmiennej X na zewnatrz, ale robi dokladnie to samo wiec hermetyzacja jest
wystawienie zmiennej na zew. znacyz tyle, że można z nią robić cokolwiek


@strean: nie w przypadku JS. Jesli chcesz zapisac cos do zmiennej ktora posiada logike setowa to nie mozesz z nia zrobic niczego wiecej niz to co zostalo ci umozliwione.
nie mówię o JS, tylko Ty go tutaj dałeś jako przykład - mówię o JAVIe - czego dotyczy znalezisko


@strean: java to zle zaprojektowany jezyk dlatego nie da sie w niej tego osiagnac. Dlaczego podajesz jako przyklad jezyk ktory zostal zle zaprojektowany? Mozesz sie ze mna spierac ale na tym wlasnie moim zdaniem polega przewaga JS nad innymi jezykami typowo obiektowymi. Inne jezyki potrzebuja obiektowosci w tradycyjnej formie zeby zawrzec w
@wytrzzeszcz: getterów/setterów w Javie jak i w innych językach z tej grupy (C#, C++) nie ma różnicy, na poziomie funkcjonalności, pomiędzy dostępem przez metodę, a bezpośrednim dostępem do pola. Różnice są w przypadku gdy korzystasz z proxy, bo to nie obsługuje zmian pola. Choć już programowanie aspektowe z tym sobie poradzi.

Przykład jaki podałeś z kontrolą danych jest już czymś zupełnie innym. Jest on prawidłowy ponieważ masz tak jakąś logikę. Tyle
wyjątek to pola finalne- tych nie ma w JS


@koziolek666: w JS jest mozliwosc definiowania wlasciwosci ktorej nie da sie juz nadpisac.

W przypadku pola prywatnego możemy dać do niego dostęp za pomocą metody get/set.


@koziolek666: tutaj jest kwestia scopow wiec takie pole prywatne nie jest niczym innym jak zmienna w scope. Nie jest ona w zaden sposob zwiazana z obiektem ale ze scopem w ktorym zostala zdefiniowana. Moze sie