fbpx

Dlaczego warto inwestować w język Python

Maciej Mazurek, 13 stycznia 2020

1. Rosnąca popularność

W rankingu najpopularniejszych języków programowania TIOBE Programming Community Index (z października 2019 roku) Python plasuje się na trzecim miejscu (po Javie i C). To o jedno oczko wyżej, niż rok wcześniej. Ta tendencja nie powinna dziwić – prostota składni, wysoki poziom abstrakcji oraz bogaty zbiór bibliotek i pakietów sprawia, że liczba użytkowników tego języka stale rośnie.


2. Ekosystem

Python ma niezwykle bogaty ekosystem. Najpopularniejszy zbiór pakietów PyPI (Python Package Index) zawiera w sobie ponad 200 tysięcy pakietów. Wykorzystywanie gotowych rozwiązań istotnie przyspiesza proces tworzenia oprogramowania. Co więcej, popularność pakietów z PyPI jest niemalże gwarancją ich poprawności. Pakiety te są w większości przetestowane przez wielu programistów na wielu środowiskach, a znalezione bugi zgłaszane i naprawiane.

Co ciekawsze biblioteki i narzędzia języka Python opisaliśmy w osobnym artykule.


3. Społeczność

Istnieje bardzo duże prawdopodobieństwo, że podczas pracy nad oprogramowaniem programista natrafi na problem, którego nie potrafi sam rozwiązać (lub podjęcie próby samodzielnego rozwiązania problemu znacząco wydłużyłoby jego czas pracy). Tu z pomocą przychodzi bardzo liczna społeczność programistów języka Python.

Całe mnóstwo postów na internetowych forach, bogaty zbiór tutoriali oraz kursów dostępnych w sieci nie tylko ułatwia rozwiązywanie problemów powstałych podczas tworzenia oprogramowania. Te liczne zasoby sprawiają również, że Python jest językiem, którego łatwo się nauczyć i stale poszerzać swą wiedzę.



4. Poziom abstrakcji

Python jest językiem o wysokim poziomie abstrakcji. Wiele operacji, na przykład na ciągach znakowych, które w językach programowania takich jak C, Java czy C# wymagają nieco wysiłku, w Pythonie można zrealizować za pomocą jednolinijkowej instrukcji. To znacząco poprawia jakość kodu oraz skraca czas jego powstawania. Krótszy kod jest ponadto czytelniejszy i łatwiejszy w utrzymaniu.

Oczywiście nic nie ma za darmo. Python jest językiem znacznie wolniejszym od C, C++ czy nawet Javy. Warto jednak zdać sobie sprawę z tego, że w zdecydowanej większości przypadków nie ma to znaczenia. Dla zwykłego użytkownika jest zupełnie obojętne, czy pewna czynność, powiedzmy w sklepie internetowym, zajmie 0.1, czy 0.001 sekundy (tak, przy obecnych standardach hardware’u to właśnie oznacza 100 razy wolniej). Wybór szybszego niż Python języka najprawdopodobniej znacząco wydłuży czas powstawania oprogramowania oraz skomplikuje proces utrzymania kodu, dając w zamian optymalizację często niezauważalną dla użytkownika.

To tak jakby upierać się, że na zakupy do galerii handlowej lepiej jeździć Ferrari zamiast zwykłym samochodem osobowym. Można. Pewnie będzie szybciej. Ale z pewnością nie będzie taniej.


5. Łatwa integracja z wieloma platformami

Python jest językiem interpretowanym. Każdy program (w tym kontekście można mówić skrypt) napisany w języku Python jest przechowywany w postaci kodu źródłowego i dopiero w momencie uruchamiania jest wczytywany, interpretowany i wykonywany przez interpreter języka. Oznacza to, że uruchomienie programu na danej platformie wymaga jedynie tego, aby ta platforma posiadała interpreter Pythona. Dlatego kod napisany na komputerze PC z systemem Windows będzie dobrze działał na platformie Mac OS czy na systemie Linux.

Każdy język programowania (również Python) może być kompilowany i interpretowany. De facto dla każdego języka można stworzyć interpreter lub kompilator. Rozróżnienie na języki kompilowane i interpretowane wynika z najczęściej stosowanych rozwiązań – nie jest właściwością języka. Dlatego nie powinno dziwić, że powstało wiele narzędzi przekształcających kod do przeróżnych plików wynikowych. Najpopularniejszym przykładem jest py2exe, który służy do kompilowania skryptów napisanych w języku Python do plików wykonywalnych *.exe.


Podsumowanie

Mimo wielu bezsprzecznych zalet języka Python, nie jest on narzędziem idealnym. Liczna społeczność programistów, przyjazna dla człowieka składnia, bogaty zbiór bibliotek oraz narzędzi czy przenośność kodu sprawia, że warto go stosować wszędzie tam, gdzie jest to uzasadnione. Ale są sytuacje, gdy zdecydowanie lepiej sprawdzą się inne technologie.

Aby lepiej poznać możliwości języka Python oraz jego zastosowania w nauce i w biznesie odsyłamy do zastosowań języka Python.



  • Zobacz także