Piszę w Pythonie od lat i instaluję te 5 narzędzi na każdym nowym komputerze
Łatwo jest skupić się na dużych frameworkach Pythona i skomplikowanych bibliotekach. Wielu programistów nie dostrzega, jak bardzo mogłoby poprawić się ich codzienne kodowanie, gdyby po prostu korzystali z mniejszych, wyspecjalizowanych narzędzi, które upraszczają całe doświadczenie.
Lubię mieć narzędzia, które mi pomagają, więc jest pięć, które zawsze instaluję na każdym komputerze. Te narzędzia zmniejszają te drobne mikro-stresy, które kumulują się podczas programowania. Zasadniczo oczyszczają drogę, pozwalając wejść w głębszą, bardziej skoncentrowaną pracę. Polecam je każdemu, kto regularnie korzysta z Pythona i chce łatwego wsparcia.
Pipx (Umożliwiacz)
- Polecenie:
pip install pipx
Zazwyczaj pip po prostu wkłada pakiety bezpośrednio do globalnej konfiguracji lub zmusza do radzenia sobie z tworzeniem środowisk wirtualnych. Pipx rozwiązuje ten problem, instalując binaria Pythona w izolowanych środowiskach, ale wciąż możesz uzyskać dostęp do narzędzi globalnie bezpośrednio z wiersza poleceń. Można to porównać do posiadania sklepu z aplikacjami dla wszystkich twoich aplikacji konsolowych Pythona, który eliminuje straszne konflikty zależności występujące między różnymi narzędziami.
Prawidłowe oddzielenie tych elementów jest kluczowe dla utrzymania zdrowego środowiska deweloperskiego. Chociaż pip jest świetny do zarządzania bibliotekami w ramach konkretnego projektu, używanie go do aplikacji systemowych zazwyczaj prowadzi do problemów z zależnościami. Jeśli zaktualizujesz bibliotekę dla jednej aplikacji, przypadkowo możesz zepsuć inną z powodu konfliktów wersji.
Pipx opakowuje standardowe narzędzia do pakowania Pythona, co naprawia większość problemów. Kiedy uruchamiasz pipx install package, automatycznie tworzy dedykowane, izolowane środowisko wirtualne tylko dla tego pakietu i jego wymaganych zależności. Następnie znajduje wykonywalne polecenia (skrypty konsolowe) i tworzy skróty (linki symboliczne) do katalogu znajdującego się w twojej ścieżce systemowej PATH, na przykład ~/.local/bin.
Thefuck (Automatyczny Poprawiacz)
- Polecenie:
pipx install thefuck
To narzędzie ma nazwę, której nie zapomnisz, ale jest niesamowite w utrzymywaniu płynności pracy w terminalu. W momencie, gdy popełnisz błąd w poleceniu, od razu wkracza i go naprawia. Analizuje komunikat o błędzie z Twojego ostatniego wpisu i sprawdza go w oparciu o mnóstwo wbudowanych reguł.
Jeśli wpiszesz git brnch i pojawi się błąd, po prostu wpisz brzydkie słowo, a zostanie ono automatycznie poprawione na git branch. Choć prowokująca nazwa oddaje frustrację z powodu literówki, narzędzie jest zaskakująco zaawansowane. Nie lubię, gdy jest ustawione na przekleństwo, więc używam 'ups', a możesz ustawić, co tylko chcesz.
Wykorzystuje system oparty na regułach do wykrywania błędów specyficznych dla kontekstu. Na przykład, jeśli uruchomisz polecenie takie jak apt-get install vim i zakończy się ono niepowodzeniem z powodu „Odmowy dostępu”, narzędzie sugeruje ponowne uruchomienie polecenia z dodanym sudo, prosząc o potwierdzenie przed wykonaniem. Obsługuje wiele różnych scenariuszy, takich jak poprawianie puthon na python, korygowanie argumentów w złej kolejności, czy sugerowanie git push --set-upstream origin master, gdy próbujesz wypchnąć nową gałąź bez przypisanego zdalnego upstream.
Pdb++ (Lepszy Debugger)
- Polecenie:
pip install pdbpp
Jeśli kiedykolwiek wpatrywałeś się w nudny, prosty output domyślnego debuggera Pythona, wiesz już, że choć pdb technicznie działa, to jest po prostu brzydki i brakuje mu funkcji. Wykonuje swoją pracę, ale naprawdę brakuje mu wygody, której oczekujemy od nowoczesnych narzędzi dla programistów.
Zawsze więc używam pdb++, który działa jako w pełni kompatybilny zamiennik modułu standardowej biblioteki. Najlepsze jest to, jak płynnie się integruje; gdy tylko uruchomisz polecenie instalacji, przejmuje stery nad standardowym modułem pdb. Oznacza to, że Twoje aktualne wywołania import pdb; pdb.set_trace() lub nowsze wbudowane breakpoint() zostają natychmiast zaktualizowane, bez konieczności zmiany choćby jednej linii kodu.
Największą funkcją, którą zauważysz od razu, jest tryb „sticky”. W zwykłym pdb ciągle musisz wpisywać l lub list, aby przypomnieć sobie, gdzie znajdujesz się w kodzie źródłowym. Jednak pdb++ rozwiązuje ten problem, trwale wyświetlając dużą część kontekstu kodu, która automatycznie aktualizuje się w miarę wykonywania kolejnych kroków. Daje to w zasadzie wizualną pomoc debuggera charakterystyczną dla środowiska IDE bez konieczności używania pełnego IDE, zapewniając, że nigdy nie zgubisz swojego miejsca w stosie.
Pyupgrade (Modernizator)
- Polecenie:
pip install pyupgrade
To narzędzie automatycznie aktualizuje Twój kod do najnowszej składni Pythona. Pyupgrade przeszukuje Twoje pliki i stosuje nowoczesne ulepszenia bezpośrednio, zapewniając, że Twój projekt może korzystać z najnowszych funkcji języka, bez konieczności spędzania godzin na refaktoryzacji. Jeśli wciąż masz kod używający starego formatowania za pomocą % lub starszych wskazówek typów, pyupgrade natychmiast zamienia je na f-stringi i aktualne style adnotacji.
Na przykład, łatwo zmienia typing.List i typing.Optional na standardowe typy kolekcji oraz czyściejszą składnię unii z użyciem pipe’a (jak str | None), którą wprowadziły nowsze wersje Pythona. Sprawia to, że sygnatury funkcji stają się znacznie bardziej czytelne. Uczy Cię, jak pisać nowoczesny Python, automatycznie usuwając pozostałości po Pythonie 2, takie jak bezużyteczne nagłówki coding: utf-8, dodatkowe prefiksy u przy stringach oraz klasy, które jawnie dziedziczą po object.
To narzędzie nie ogranicza się tylko do podstaw. Zagłębia się w to, jak korzystasz z biblioteki standardowej, aby optymalizować różne rzeczy; upraszcza wywołania super() poprzez pomijanie zbędnych argumentów, zamienia starsze aliasy unittest, takie jak failUnlessEqual, na assertEqual, a nawet przekształca defaultdict(lambda: []) w szybszy i czyściejszy defaultdict(list).
Zapewnia również większe bezpieczeństwo porównań, naprawiając sytuacje, w których możesz niepoprawnie używać is z literalami zamiast właściwych operatorów równości.
Ptpython (Lepszy REPL)
- Polecenie:
pipx install ptpython
Standardowa konsola Pythona jest dość podstawowa i nie zajmuje dużo czasu, aby ją opanować, ale ptpython ma zaawansowaną pętlę read-eval-print (REPL), która oferuje funkcje takie jak podświetlanie składni, autouzupełnianie, obsługę myszy, a nawet skróty klawiszowe emacs/vi. Daje poczucie pracy w nowoczesnym IDE. Dzięki temu prototypowanie małych fragmentów kodu Pythona jest ogólnie szybsze i przyjemniejsze, nawet przy większych zbiorach danych, które są podatne na awarie.
To narzędzie działa jako zaawansowany interfejs zbudowany na bazie biblioteki prompt_toolkit, zasadniczo przekształcając terminal w znacznie bardziej funkcjonalne środowisko pracy działające na Linuxie, BSD, OS X i Windows. Poza bezpośrednimi ulepszeniami estetycznymi, takimi jak podświetlanie składni i schematy kolorów, jedną z najważniejszych usprawnień komfortu użytkowania jest jego zaawansowany system walidacji wprowadzanych danych.
Zamiast wykonywać polecenie zawierające literówkę i zmuszać cię do przepisywania złożonego bloku wieloliniowego od nowa, ptpython wykrywa błędy składni w czasie rzeczywistym i uniemożliwia wykonanie polecenia, dopóki nie zostaną rozwiązane, przenosząc kursor bezpośrednio do błędu. Funkcjonalność edycji wieloliniowej jest płynna; automatycznie wykrywa, kiedy definiujesz funkcje lub klasy, i obsługuje wcięcia za ciebie.
Te narzędzia wygładzają wszystkie irytujące punkty tarcia, na jakie natykasz się codziennie podczas programowania. Nawet małe, konkretne ulepszenia w narzędziach mogą przynieść ogromne korzyści w produktywności i naprawdę odciążyć Twoją energię psychiczną. Dzięki nim unikam momentów, gdy programowanie jest frustrujące, i zauważyłem, że od czasu ich używania znacznie bardziej cieszę się kodowaniem.
Chodzi o to, aby te powtarzalne zadania zniknęły, dzięki czemu Twój terminal będzie mniej przypominał wielką przeszkodę, a bardziej naturalne przedłużenie Twojego sposobu myślenia. Powinieneś więc korzystać z tych poleceń, aby utrzymać swój rytm pracy i dostarczać lepszej jakości wyniki, nie musząc się aż tak trudzić.





