• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Hermetyzacja danych, funkcje zaprzyjaźnione w JScript.

0 głosów
641 wizyt
pytanie zadane 14 lipca 2015 w JavaScript przez Michał Gibas Pasjonat (19,630 p.)
Mam problem z kodem JS w mojej aplikacji. Chciałbym się dowiedzieć jak w JS hremetyzuje się dane (czy jest to jak w C++: public,private,protected ?), czy istnieje w JS'ie klauzula przyjaźni i jak wygląda?

| Z góry dziękuję! |

2 odpowiedzi

+2 głosów
odpowiedź 14 lipca 2015 przez Comandeer Guru (607,960 p.)

W JS istnieje kilka "standardowych" systemów modułów:

  • CommonJS Module Pattern - jego lekko uproszczona wersja to standardowy system modułów w node.js/io.js; służą do synchronicznego wczytywania zależności (stąd nie są dobre dla browserów)
  • Asynchronous Module Definition - są odpowiedzią na zapotrzebowanie na asynchroniczne wczytywanie zależności w przeglądarkach
  • Universal Module Definition - serwuje AMD browserom i CJSMP serwerom (dobre dla aplikacji izomorficznych)
  • Chainable Module Definition - czyli moduły ze składnią a'la jQuery
  • ES6 Modules - czyli moduły natywne w ECMAScript 6; obecnie jednak nie ma żadnej implementacji

Po więcej odsyłam do http://addyosmani.com/writing-modular-js/http://tutorials.comandeer.pl/js-dynamic.html (w moim są linki odsyłające dalej). Moduły na dzień dzisiejszy są jedynym sensownym sposobem hermetyzacji kodu JS.

Co prawda ES6 wprowadza składnię klas, lecz de facto pozwala tworzyć jedynie metody publiczne. Metody prywatne da się osiągnąć przy pomocy normalnych zmiennych, a chronione można jakoś wykombinować używając symboli (czyli znów nowości z ES6).

+1 głos
odpowiedź 14 lipca 2015 przez kraczo Początkujący (410 p.)
hej, nie wiem na ile moze Ci sie to przydać ale w node.js mozna udostępniać niektóre fragmęty kodu z plików i wtedy mozna blokować dostęp do obiektów czy metod.

tutaj gosc to wyjasnia

https://www.youtube.com/watch?v=9JhvjhZLsEw&index=8&list=PL6gx4Cwl9DGBMdkKFn3HasZnnAqVjzHn_

Pozdrawiam

Podobne pytania

0 głosów
1 odpowiedź 642 wizyt
0 głosów
0 odpowiedzi 1,483 wizyt
pytanie zadane 4 czerwca 2019 w C# przez Magiqon Nowicjusz (160 p.)
+1 głos
0 odpowiedzi 3,405 wizyt

93,742 zapytań

142,678 odpowiedzi

323,297 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...