Słyszeliście starą historię o żółwiu i zającu? Morał z niej jest taki, że w wyścigu wygrywa się powoli i spokojnie. Jednak w przypadku tworzenia serwisów internetowych powolne tempo już nie wystarcza. W miarę rozwoju witryny będzie ona stawała się coraz bardziej złożona, a nowe funkcje będą dodawane przez cały czas. A jeśli używasz Django, chcesz być na bieżąco z najnowszymi i najlepszymi rozwiązaniami.
Jak więc zdecydować, kiedy użyć najnowszej wersji Django, a kiedy pozostać przy bardziej stabilnej wersji z długim wsparciem (LTS)?
Oto kilka rzeczy, które warto rozważyć:
1. Jakie są różnice pomiędzy obecną wersją LTS a najnowszą?
Obecnie dostępne są dwie wersje Django (dokumentacja):
- 5.1 ze wsparciem do kwietnia 2025, wydane 7 sierpnia 2024 (extended, czyli tylko łatki bezpieczeństwa, do końca 2025). Pisałem o tej wersji tutaj
- 4.2 - LTS, ze wsparciem do kwietnia 2026
Nas interesują główne różnice pomiędzy tymi wersjami. A szczególnie dużych nie ma.
2. Ile czasu pozostało do wydania kolejnej wersji LTS?
Dobrze jest sprawdzić, kiedy będzie wydane kolejne Django LTS. Może to być za kilka miesięcy. Warto się wtedy zastanowić nad użyciem najnowszej wersji frameworka i od razu zarezerwować czas na aktualizacje do wersji LTS. Zdecydowanie warto poruszyć ten temat z managerem projektu. Co ważne, aktualizacja powinna być stosunkowo prosta. Z kolei aktualizacja pomiędzy dwoma wersjami LTS to skomplikowany proces, często nie do zrobienia bezpośrednio (np. 4.2 -> 5.0 -> 5.2).
3. Zgodność narzędzi i bibliotek.
Wszyscy mamy jakieś swoje ulubione biblioteki i narzędzia. Pytanie, czy są one zgodne z najnowszą wersją Django? Jeśli nowa wersja jest "jeszcze ciepła", to mamy duże szanse na problemy z instalacją narzędzi. Być może trzeba będzie zrobić forka biblioteki i wprowadzić drobne poprawki. Może też się okazać, że projekt został porzucony.
4. Przewidywany czas życia projektu.
Jeśli wykorzystujemy projekt prywatnie, np. do nauki, to można wykorzystać dowolną wersję Django. Sprawa się komplikuje w systemach, które mają przewidziane wydanie produkcyjne. Trzeba się zastanowić, czy projekt będzie rozwijany latami, czy może jest to narzędzie, które ma wykonać konkretne zadanie tylko raz.
5. Osobiste preferencje.
Serio, to dość ważny powód, przynajmniej u mnie. Jestem leniwy, nie lubię wykonywać tej samej roboty wielokrotnie. Zwykle wybieram wersje LTS, bo po prostu nie chce za kilka miesięcy robić aktualizacji. Na przykład https://www.djangoproject.com/ – wybranie wersji 5.1 wymusi aktualizacje w grudniu 2025, podczas gdy wersja 4.2 ma rozrzerzone wsparcie do kwietnia 2026. Rożnica niewielka, prawda? Sprawda się komplikuje patrząc na wersje 5.0. Jej wsparcie się kończy w kwietniu 2025, a wersja 4.2 LTS ma rozszerzone wsparcie rok dłużej.
Ostatecznie decyzja o tym, której wersji Django użyć, należy do Ciebie. Jeśli dobrze czujesz się, debugując kod i radząc sobie z nieoczekiwanymi problemami, wybierz najnowszą wersję. Ale jeśli chcesz mieć bardziej stabilną platformę z mniejszym ryzykiem wystąpienia problemów, wybierz wersję z długim wsparciem technicznym (LTS). Niezależnie od tego, którą wersję wybierzesz, pamiętaj, aby być na bieżąco z najnowszymi wydaniami, aby móc korzystać z najnowszych funkcji i poprawek błędów.
Dołącz do społeczności PyMasters, gdzie możesz wziąć udział w ciekawych projektach i podnosić swoje umiejętności w Pythonie i Django.
Pobierz mój bezpłatny ebook: WARSZTAT JUNIORA Przewodnik po kluczowych kompetencjach i narzędziach dla początkującego programisty Pythona
Zapraszam do zadawania pytań przez formularz kontaktowy. Pamiętaj, że jeśli potrzebujesz wsparcia, możesz napisać do mnie - pomogę.
Spodobał Ci się post?
Podziel się nim!
Masz uwagi do posta, chcesz porozmawiać, szukasz pomocy z Pythonem i Django? Napisz do mnie!