Język Python obchodzi 30-lecie

20 lutego 1991 roku Guido van Rossum opublikował w grupie alt.sources pierwszy wydanie języka programowania Python, nad którym pracował od grudnia 1989 roku w ramach projektu stworzenia skryptowego języka do rozwiązywania problemów administracji systemowej w systemie operacyjnym Amoeba, który miał być językiem wyższego poziomu niż C, ale w przeciwieństwie do powłoki Bourne, zapewniałby bardziej wygodny dostęp do wywołań systemowych OS.

Nazwa projektu została wybrana na cześć grupy komediowej Monty Python. W pierwszej wersji zaimplementowano obsługę klas z dziedziczeniem, obsługę wyjątków, system modułów oraz podstawowe typy list, dict i str. Implementacja modułów i wyjątków została zapożyczona z języka Modula-3, a styl kodowania oparty na wcięciach z języka ABC, w którym Guido wcześniej brał udział.

Podczas tworzenia Pythona Guido kierował się następującymi zasadami:

  • Zasady, które pozwoliły zaoszczędzić czas podczas rozwoju:
    • Zapożyczanie przydatnych pomysłów z innych projektów.
    • Dążenie do prostoty, ale bez nadmiernego uproszczenia (zasada Einsteina „Wszystko powinno być przedstawione tak prosto, jak to tylko możliwe, ale nie prościej”).
    • Przestrzeganie filozofii UNIX, zgodnie z którą programy realizują jakąś jedną funkcjonalność, ale robią to dobrze.
    • Niezbyt martwienie się o wydajność, optymalizacje można dodawać w miarę potrzeby, kiedy zajdzie taka potrzeba.
    • Nie próbować walczyć z ustalonymi rzeczami, a płynąć z nurtem.
    • Unikać perfekcjonizmu, zazwyczaj wystarcza poziom „wystarczająco dobrze”.
    • Czasami można pójść na skróty, zwłaszcza jeśli coś można zrobić później.
  • Pozostałe zasady:
    • Implementacja nie powinna być uzależniona od konkretnej platformy. Niektóre funkcje mogą być dostępne nie zawsze, ale podstawowa funkcjonalność powinna działać wszędzie.
    • Nie obciążać użytkowników szczegółami, które maszyna może obsłużyć.
    • Wsparcie i promocja platformowo niezależnego kodu użytkownika, ale bez ograniczenia dostępu do możliwości i cech platformy.
    • Duże, złożone systemy powinny oferować kilka poziomów rozszerzenia.
    • Błędy nie powinny być śmiertelne i niezauważone — kod użytkownika powinien mieć możliwość przechwycenia i obsłużenia błędów.
    • Błędy w kodzie użytkownika nie powinny wpływać na funkcjonalność maszyny wirtualnej i nie powinny prowadzić do nieokreślonego zachowania interpretera oraz awarii procesów.

    Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster