Przez ostatnie niemal dwa lata nauczyłem się sporo jeśli chodzi o programowanie. Sporo też notowałem, zwłaszcza fragmenty kodu w Swifcie, które mógłbym później ponownie wykorzystać. Przydaje mi się to obecnie w mojej pracy na stanowisku dewelopera (pracuję od 1 grudnia). Dość szybko, po rozpoczęciu nauki programowania zrozumiałem, że potrzebuję do tego dobrego notatnika do kodu właśnie. Taki znalazłem całkiem niedawno.

Początkowo notowałem fragmenty kodu w Ulyssesie, który oferuje formatowanie za pomocą znaczników markdown i wyróżnianie bloków kodu w tekście. Sam kod nie jest jednak odpowiednio podświetlany. Jest w całości zielony, a więc jedynie inny krój i kolor niż zwykły tekst, poza tym skopiowanie go np do Xcode oznacza także skopiowanie znaczników markdown. W praktyce rozwiązanie to okazało się więc dla mnie nieprzydatne.

Później postanowiłem notować fragmenty kodu w systemowym notatniku, który w wielu innych zastosowaniach sprawdza się znakomicie (m.in. dzięki synchronizacji z iCloud). Niestety tutaj było jeszcze gorzej. Kod w ogóle nie jest osobno formatowany, nie jest w żaden sposób wyróżniony, pozbawiony jest wcięć. Notatnik był więc także rozwiązaniem połowicznym. Przeglądałem dostępne aplikacje przeznaczone do notowania kodu i ostatecznie mój wybór padł na SnippetsLab.

To niewielki notatnik fragmentów kodu w różnych językach programowania, oferujący podświetlanie składni dla każdego z nich. W sumie SnippetsLab oferuje podświetlenie składni dla 350 różnych języków, w tym oczywiście tych najbardziej popularnych, a C, C#, C++, Objective-C, Swift, Python, Java, JavaScript, PHP, HTML czy CSS. Aplikacja nie rozpoznaje języka automatycznie, co mi osobiście nie przeszkadza. Po wklejeniu fragmentu kodu należy w dolnej belce wybrać język, który nas interesuje (jeśli nie ma go na liście, to należy aktywować go w ustawieniach).

Do każdego takiego skrawka kodu można dodać tradycyjną notatkę, z opisem działania danej funkcji. Można dodać także tagi, które pozwolą na łatwiejsze wyszukanie go w przyszłości. Skrawki kodu można także grupować w folderach czy tworzyć inteligentne grupy, np. zbierające wszystkie, oznaczone wybranym tagiem.

Snipplety (czyli po polsku skrawki) mogą być synchronizowane z chmurą iCloud albo z repozytorium użytkownika w serwisie GitHub. Program cyklicznie wykonuje też backupy całego zbioru. Ten ostatni można też wyeksportować w formacie XML lub JSON lub każdą notatkę jako osobny plik tekstowy.

Wisienką na torcie są oczywiście różne tematy kolorystyczne, które pozwalają na wygodne czytanie zapisanych skrawków kodu. Jest oczywiście też funkcja automatycznego ich kopiowania, która pozwala na szybkie skopiowanie go i wklejenie w Xcode czy innym środowisku programistycznym.

SnippetsLab nie jest może programem specjalnie tanim, ale też jego cenę w pełni rekompensuje jego działanie. Osobiście nie wyobrażam sobie dalszej nauki (także już w pracy na stanowisku dewelopera, bo nauka programowania nie ma przecież końca) bez notowania fragmentów kodu, zarówno stworzonego przez innych deweloperów, jak i przeze mnie.

SnippetsLab w Mac App Store w cenie 47,99 zł.