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

Hermetyzacja Python

Object Storage Arubacloud
+1 głos
887 wizyt
pytanie zadane 25 marca 2021 w Python przez Patryk01 Obywatel (1,270 p.)
Każdy wie, że pisząc klasy np. w Javie powinniśmy hermetyzować dane. Jest ku temu wiele powodów. Dlaczego więc w Pythonie nie ma hermetyzacji, a jedynie umowne nazewnictwo pól? Jest to wada czy zaleta? Jeśli wada to dlaczego nie zostało to wprowadzone?

2 odpowiedzi

+2 głosów
odpowiedź 25 marca 2021 przez Wiciorny Ekspert (270,190 p.)
wybrane 25 marca 2021 przez Patryk01
 
Najlepsza
Bo python jest typowany dynamicznie, jego składnia została opracowana tak, żę dużo lepiej wykorzystuje się go funkcyjnie niż obiektowo, a funkcyjne programowanie nie opiera się na hermetyzacji  która jest raczej cechą obiektowego programowania, python jest bardzo imperatywny, jest też obiektowym językiem jednak jego możliwości sa na tyle fajne, że w pełni można wykorzystać programowanie funkcyjne które ma całkiem inny charakter.

Tutaj nie ma stanu, tutaj tez jeśli istnieje jakiś stan obiektu on powinien być immutable  więc nie musi być hermetyczny , gdyż nawet mając dostęp z poza wnętrza, niezmienność obiektu zapewnia że nie możemy ingerować w sam obiekt. To tylko taka luźna sugestia,

Jest to zarówno zaleta jak i wada, tak samo jak sama hermetyzacja w obiektowości może być wadą i zaletą, nie da się jednoznacznie powiedzieć: gdyż PYTHON jest językiem róznego-rodzaju przeznaczenia i to co jest w danym momencie dobre zależy od kontekstu to samo z innymi językami które nie są silnie nastawione na jeden rodzaj
+1 głos
odpowiedź 25 marca 2021 przez reaktywny Nałogowiec (41,050 p.)
Python miał być maksymalnie uproszczony i taki w zasadzie jest. Moim zdaniem trochę z tym przesadzili :) Brak pól prawdziwie prywatnych to żart i kpina. W Kotlinie przykładowo też można pisać obiektowo i funkcyjnie (nie w 100%), ale nie ma tam takich dżołków jak w Pythonie :)

Niemniej jednak każdy język ma jakieś plusy dodatnie i plusy ujemne, a suma summarum Python jest naprawdę OK.
komentarz 25 marca 2021 przez Wiciorny Ekspert (270,190 p.)
kotlin tylko na kanapce :D
komentarz 25 marca 2021 przez reaktywny Nałogowiec (41,050 p.)
Zbieżność nazw jest przypadkowa. W temacie polskich keczupów - chyba najlepszy to "Pudliszki".

Wracając do FP, przypomniało mi się, że ponoć w Javie też można pisać funkcyjnie czy prawie funkcyjnie. Python ma kilka rzeczy popsutych, co i tak nie przeszkadza mu być najczęściej wykorzystywanym językiem na świecie.

Podobne pytania

+1 głos
1 odpowiedź 1,257 wizyt
pytanie zadane 10 marca 2019 w Rozwój zawodowy, nauka, praca przez Teslum_369 Gaduła (4,190 p.)
0 głosów
1 odpowiedź 199 wizyt
pytanie zadane 11 stycznia 2018 w Java przez Ohnne Nowicjusz (180 p.)
0 głosów
2 odpowiedzi 254 wizyt
pytanie zadane 26 lutego 2017 w C i C++ przez John Doe Obywatel (1,720 p.)

92,580 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,965 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...