Która wersja Pythona jest najlepsza?

Ostatnio opisywałem kilka nowości, które weszły do języka Python wraz z wersją 3.9. Następstwem tego wpisu były pytania o to, która wersja Pythona jest najlepsza. Której wersji języka zalecam używać. Czy najnowsza jest najlepsza? A może stosować, którąś ze starszych? Odpowiedź na te i inne pytania znajdziecie w dzisiejszym artykule.

O co chodzi z tą numeracją?

Języki programowania ewoluują i są rozwijane tak długo jak jest zapotrzebowanie na nie na rynku i znajdują one zastosowanie. Naturalnym jest, że kolejne standardy czy wersje języka muszą być jakoś oznaczone. Twórcy Python przyjęli powszechnie stosowane semantyczne podejście numeracyjne (semantic versioning), w którym każde wydanie składa się z trzech liczb:

Numeracja wersji

Pierwsza cyfra oznacza numer głównego wydania (major). Ulega ona zmianie jedynie, gdy następują fundamentalne zmiany w projekcie, które naruszają wsteczną zgodność. Z taką zmianą mieliśmy do czynienia, gdy Python2 zmieniał się w Python3, gdy zmiany wprowadzone w specyfikacji języka uniemożliwiały często uruchamianie programów napisanych w nowej wersji z zastosowaniem jego starszej wersji. Oznaczenie minor odnosi się natomiast do numeracji kolejnego wydania w ramach głównej wersji. Do niedawna nowe wydania języka Python publikowane były co 18 miesięcy, jednak ostatnio cykl wydawniczy został skrócony do 12 miesięcy. Ostatnia cyfra to tak zwany release number lub patch number, oznaczający poprawki błędów (bugfix) w ramach danego wydania.

Zasady numeracji są opisane w PEP 440 — Version Identification and Dependency Specification

Którą wersję wybrać?

Język Python jest o tyle fajny, że na komputerze możesz mieć zainstalowane wiele jego wersji. Dla każdej z nich (nie wspominając już o dedykowanych wirtualnych środowiskach) w systemie instalowane są osobne zbiory bibliotek. Zarówno programista, jak i każda osoba samodzielnie, mogą wymusić uruchomienie aplikacji przy użyciu wskazanej wersji języka.

Ja obecnie tworząc aplikacje staram się zapewnić, by były kompatybilne z Python3.7.

Każdy programista musi sam podjąć decyzję o wyborze wersji języka. Warto zastosować się do kilku rad:

  • Nie używaj Python2. Wersja ta nie jest już wspierana i rozwijana.
  • Niekoniecznie używaj najnowszego wydania. Może ono zawierać błędy.
  • Sprawdź kompatybilność bibliotek, które używasz w programie z wybraną wersją języka.
  • Sprawdź czy dostępne są biblioteki, które chcesz użyć w programie, dla danej wersji języka. Zdarza się, że programiści muszą je dostosować i nie zawsze są one dostępne.
  • Sprawdź, czy narzędzia, które używasz, wspierają nową wersję języka. Przede wszystkim zwracaj uwagę na swoje środowisko IDE i zainstalowanie w nim wtyczki.
  • Jeżeli chcesz używać nowszej wersji i wprowadzonych w niej funkcjonalności zastanów się, czy jesteś w stanie zachować wsteczną kompatybilność kodu ze starszymi wersjami.

Subscribe
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

0 komentarzy
Inline Feedbacks
View all comments

ZdradziĆ Ci sekretY udanego projektu automatyzacji?

(link otwiera się w nowym oknie)