To zależy – Bazel
Prowadzący: Adam Szady
Czym budować kod w XXI w.
Bazel to elastyczne narzędzie do budowania i testowania mniej i bardziej złożonych projektów informatycznych.
Alternatywa dla rozwiązań typu cmake/maven/itp. Działa z większością wiodących języków programowania i można go rozszerzyć o dowolne inne – łącznie z systemem zewnętrznych zależności. Bazel to również filozofia, w której przez poprawne zdefiniowanie grafu zależności, budowanie i testowanie są szybkie i poprawne.
Opis
Warsztaty będą polegać na zapoznaniu się z Bazelem od zera, aby uzyskać podstawową umiejętność użytkowania w prostych projektach. Następnie omówione zostaną wybrane funkcjonalności, wykorzystujące rozszerzalność Bazela, do uzyskania coraz bardziej zaawansowanych rezultatów.
Ramowy plan warsztatów:
- Użytkowanie (na podstawie tego co już jest wspierane)
- Rozszerzanie (na wypadek bardziej specyficznych potrzeb)
- Zaawansowane aspekty (co innego jeszcze można robić)
Wymagania
Wymagane umiejętności i oprogramowanie:
- Ogólne umiejętności programowania.
- Podstawowa biegłość w języku Python – z większym naciskiem na składnię niż bibliotekę standardową. Do Bazela będziemy pisać w Starlarku, który jest podzbiorem Pythona.
- Ogólne zrozumienie procesów budowania oprogramowania – chociażby na przykładzie języków C(++)/Python, jak to działa że wiele plików może składać się na jedną aplikację.
- Obsługa gita – pobranie repozytorium, aktualizacja, proszenie o pociągnięcie (ang. merge request / pull request).
- Komputer z zainstalowanym zestawem Bazel+gcc+python – do użytku podczas warsztatu.
Powyższe wymagania są sprawdzane w zadaniach kwalifikacyjnych, na które odpowiedzi należy zamieścić przez stronę.