#283

Wprowadzenie do języka Scala

Prawo Moore’a przestaje obowiązywać. Przyrost mocy obliczeniowej kolejnych generacji sprzętu nie zaspokaja rosnących potrzeb współczesnych systemów. Rozwiązaniem jest projektowanie aplikacji w taki sposób, by były wysoce współbieżne i umożliwiały skalowanie horyzontalne. Potrzebujemy języka, który ułatwi nam budowanie takich systemów.

Językiem odpowiadającym na te problemy jest Scala.
Scala jest językiem uruchamianym na JVM. Dzięki temu posiada pełne wsparcie dla bibliotek ze środowiska Javy. Łączy paradygmat funkcyjny i obiektowy. Funkcyjność pozwala na łatwiejsze zrównoleglanie operacji i bardziej formalne zapisywanie przepływu danych. Obiektowość natomiast często okazuje się bardziej naturalna w modelowaniu domeny systemu. Scala posiada rozbudowany system typowania, dzięki czemu wiele błędów może być wykrytych na etapie kompilacji. Jest językiem niezwykle rozszerzalnym, co umożliwia powstawanie wyspecjalizowanych DSL oraz ciekawych bibliotek zmieniających oblicze języka. Istnieje dojrzały ekosystem bibliotek, które umożliwiają budowanie aplikacji rozproszonych.

Podczas warsztatu zapewniamy dostęp do kawy, herbaty, wody i ciastek.

**Podczas warsztatu nie zapewniamy lunchu.**

Prowadzący

Bartosz Szmit:

Developer systemów Big Data. Od pięciu lat programuje w Scali. Lubi rozwiązywać problemy dotyczące systemów rozproszonych oraz wysokiej dostępności. Miłośnik programowania funkcyjnego. Absolwent Informatyki na AGH.

Program warsztatów

  1. Wstęp
  2. Konfiguracja środowiska (SBT, REPL)
  3. Hello world! – pierwszy program
  4. Zmienne mutowalne i niemutowalne
  5. Traity i klasy
  6. Companion objects
  7. Case class
  8. Modyfikatory dostępu
  9. Functional objects
  10. Kolekcje (List, Tuple, Map)
  11. Instrukcje warunkowe i pętle
  12. Pattern matching
  13. Hierarchia i inferencja typów
  14. Metody a funkcje lambda
  15. Funkcje wyższego rzędu
  16. Rekurencja w programowaniu funkcyjnym
  17. map, filter, reduce
  18. Implicits

Uwaga

W trosce o jakość warsztatów jesteśmy zmuszeni ograniczyć liczbę uczestników. **Kwalifikacja odbywa się na podstawie odpowiedzi udzielonych w formularzu zgłoszeniowym oraz - w dalszym kroku - kolejności zgłoszeń.** Potwierdzenie udziału w warsztatach wraz z instrukcją przygotowania środowiska otrzymasz najpóźniej na 7 dni przed planowaną datą wydarzenia.
Organizator zastrzega sobie prawo do zmiany lokalizacji wydarzenia.

Zapisy na wybrany warsztat zostały zakończone.