Setapp jest już na rynku od kilku lat. W tym czasie liczba aplikacji dostępnych w tej usłudze znacznie wzrosła. Obecnie jest ich już sto kilkadziesiąt, a wszystko to za 9,99 dolara za miesiąc. Za wszystkie aplikacje dostępne w Setapp, z których obecnie korzystam, zapłaciłbym tyle, ile za czteroletni abonament za tę usługę. Jest ich faktycznie tyle, że nadszedł czas, by je wszystkie opisać i rozwiać wątpliwości sceptyków, którzy na słowo „abonament” dostają gęsiej skórki.

Na pierwszy ogień idą aplikacje, z których korzystam codziennie i które stanowią - obok Xcode - mój podstawowy zestaw narzędzi deweloperskich lub pomagają mi w nauce kolejnych języków programowania. Nie będę tu wymieniał aplikacji, z których nie korzystam, a które także mogą przydać się deweloperom (np. narzędzia do zarządzania bazami danych).

SnippetsLab

O SnippetsLab pisałem już na MyApple ponad dwa lata temu. Od niemal samych początków mojej przygody z nauką programowania jest to mój podstawowy notatnik do zapisywania rożnych znalezionych w sieci fragmentów kodu, przede wszystkim rozszerzeń klas i struktur z podstawowych bibliotek dostarczanych przez Apple, a więc Foundation, UIKit, Cocoa czy SpriteKit. Przez kilka pierwszych lat zapisywałem w nim niemal wyłącznie fragmenty kodu w języku Swift i czasem w Objective-C. Jako programista Swift wykorzystuję go także jako podręczny notatnik do większych fragmentów kodu do wykorzystania na później. Od niedawna służy mi także do zapisywania podobnych skrawków kodu (po angielsku „snipplet”) w Pythonie, którego także się uczę.

To, co w tym programie jest wspaniałe, to wygodne podświetlanie bloków kodu w jednym z 350 języków programowania i języków skryptowych. Wśród nich są oczywiście te najbardziej popularne, jak C, C#, C++, Objective-C, Swift, Python, Java, JavaScript, PHP, HTML czy CSS. W jednej notatce znaleźć się może nie tylko fragment kodu w wybranym języku, ale także opis tego, co on robi.

Każdej notatce można przypisać odpowiednie tagi, dzięki temu łatwiej wyszuka się tę właściwą, kiedy notatnik stanie się już opasłym tomiszczem. Notatki można synchronizować z chmurą iCloud lub dodać do repozytorium użytkownika w serwisie GitHub. Zbiory możemy także wyeksportować jako XML lub JSON, a nawet jako plik tekstowy osobny dla każdej notatki.

SnippetsLab oferuje też wiele tematów kolorystycznych, dzięki czemu wygodnie się z niego korzysta w każdych warunkach oświetleniowych.

Code Runner

Tę aplikację odkryłem, kiedy zabrałem się do nauki Pythona i poszukiwałem jakiegoś wygodnego edytora kodu w dowolnym języku z możliwością jego uruchamiania. Pierwszym źródłem, które sprawdziłem, był oczywiście Setapp. Okazało się, że jest tam program dokładnie taki, jakiego potrzebuję, czyli właśnie CodeRunner. To w CodeRunnerze stawiam swoje pierwsze kroki w programowaniu w Pythonie. Pod wieloma względami jest to dla mnie aplikacja idealna.

Program ten wspiera ponad 25 różnych języków, poczynając od Apple Scriptu, przez C, C#, C++, Go, Haskell, HTML, Java, JavaScript, Kotlin, a także Objective-C, Objective-C++, PHP, Python, Swift po Ruby czy skrypty powłoki. Jest oczywiście autouzupełnianie kodu, automatyczne wcięcia (tak ważne choćby w Pythonie), możliwość uruchamiania tworzonego kodu bezpośrednio w programie (przynajmniej jeśli chodzi o Pythona – bo z tego korzystam). Jest wreszcie dostęp do dokumentacji danego języka. Można więc łatwo znaleźć to, czego się tam szuka bez przełączania się na przeglądarkę web.

Teacode

Chyba każdy programista wie, jak irytujące i mozolne jest ciągłe wklepywanie pewnych fragmentów kodu, czy nieraz kilku komend, które z jakichś powodów nie zostały dodane do autouzupełniania w Xcode. Ot choćby takie „weak self” czy z automatu wklejanie podstawowych metod generowania komórek tabeli lub obsługi związanych z nimi zdarzeń, a więc metod należących do protokołów UITableViewDataSource i UITableViewDelegate. Mimo autouzupełniania w Xcode brakuje większej automatyzacji. Wynika to chyba jednak z tego, że każdy deweloper ma inne preferencje i chce, by te fragmenty czy całe szablony dla poszczególnych klas wyglądały inaczej. W tym miejscu sprawdza się u mnie swietnie specjalny program do szybkiego zastępowania jednego tekstu drugim. Tego typu aplikacji jest całkiem sporo, jednak chyba tylko jedna stworzona została z myślą właśnie o kodzie. Tym programem jest TeaCode. Co więcej, został on stworzony przez polskie studio deweloperskie - Apptorium.

Korzystając z TeaCode, wystarczy wpisać odpowiedni ciąg znaków przypisany do danego fragmentu kodu i następnie użyć zdefiniowanego skrótu klawiszowego. Jak chyba każdy tego typu program także TeaCode pozwala na definiowanie odpowiednich pól, tak by w chwili zastępowania wybranego ciagu znaków wprowadzić odpowiednie wartości do wklejanego kodu, dzięki temu można stworzyć uniwersalne wklejki, które przydadzą się w wielu sytuacjach.

TeaCode działa oczywiście z wieloma różnymi edytorami kodu czy środowiskami IDE, choć ja korzystam z niego wyłącznie przy tworzeniu kodu w Swifcie w Xcode.

Expressions

Wyrażenia regularne są powszechnie wykorzystywane w każdym języku programowania. Pozwalają na tworzenie – za pomocą ustalonych z góry kombinacji liter, cyfr i znaków – szablonów umożliwiających zastępowanie wybranych znaków, całych zwrotów oraz sprawdzanie tego, czy wprowadzany tekst spełnia odpowiednie kryteria (jest np. adresem email). Z wyrażeniami regularnymi spotkałem się już w pierwszych tygodniach mojej pracy na stanowisku junior dewelopera w jednym z software house’ów. Co jakiś czas przy okazji różnych projektów w Swifcie czy w Pythonie korzystam z wyrażeń regularnych. Dzięki Expressions mogę łatwo tworzyć poprawne kombinacje i testować je na różnych ciągach znaków. Expressions to także baza tego typu wyrażeń. Dzięki temu programowi mam już ich cały zbiór, do którego mogę sięgać w razie potrzeby.

Wspomnieć też wypada, że Expressions także wyszło z tego samego polskiego studia - Apptorium.

Sketch Export for Xcode

Podczas mojej pracy nad różnymi projektami, ale często także podczas przekopywania się przez dostępne w sieci zasoby różnych projektów przygotowanych w Sketchu (aplikacja do tworzenia szczegółowych projektów interfejsów użytkownika), chcę zapisać sobie znajdujące się w projekcie kolory czy całe zestawy kolorów. Tutaj zwykle sięgam właśnie po Sketch Export for Xcode.

Wystarczy upuścić taki projekt na oknie tego programu, a zostaną z niego wyodrębnione wszystkie użyte kolory. Pozostaje wybrać te, które chcemy zapisać, a w prawym dolnym panelu pojawi się gotowy kod w Swifcie, który można skopiować i wkleić bezpośrednio w Xcode lub np. zapisać we wspomnianej wyżej aplikacji SnippetsLab.

To tylko niektóre programy dostępne w Setapp, które pomagają mi w codziennej pracy programisty czy w nauce programowania w Pythonie (choć nie ukrywam, że Swifta dalej się uczę, bo i języki programowania cały czas ewoluują). Z tych jednak korzystam najczęściej. W kolejnym odcinku zajmę się aplikacjami narzędziowymi, które pomagają mi w codziennej pracy z komputerem, dokumentami czy szerzej z plikami znajdującymi się na jego dysku.

Artykuł ukazał się pierwotnie w MyApple Magazynie nr 2/2020

Pobierz MyApple Magazyn nr 2/2020