Scala in Practice lato 2022/23

Język wykładowy Angielski
Opiekun Michał Kowalczykiewicz
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj Kurs inżynierski
ECTS 5
Polecany dla I roku No
Egzamin No

Opis przedmiotu:

Scala is currently one of the most popular programming languages, with a [high demand](https://survey.stackoverflow.co/2022/#section-top-paying-technologies-top-paying-technologies) amongst software development companies, globally. It’s functional & object oriented dual nature, static typing, high expressiveness & JVM integration makes it a perfect choice for many companies. User’s include the likes of Twitter, LinkedIn, Infor, Netflix & Amazon, amongst others. These companies use Scala to create web portals, big data applications... and code-generators [[ScalaUA 2019](https://www.youtube.com/watch?v=DLjALS_Lbn8&feature=youtu.be)]. The goal of this course is to introduce students to the syntax of the language, along with the frameworks and libraries associated with it, which are a standard in the industry. **Course Syllabus:** #### I. Scala syntax * Code standards * Types * Classes & objects * Traits * Functions & closures * Collections * Case classes & pattern matching * Lambdas * Implicit parameters * Futures * Cooperation with Java #### II. Frameworks & libraries * Scala in commercial applications * Build tool - [[Sbt](https://www.scala-sbt.org)] * Testing - [[ScalaTest](http://www.scalatest.org/)] * Database access - [[Slick](http://scala-slick.org/)] * Web applications - [[Play Framework](https://www.playframework.com)] * Concurrent and distributed applications [[Akka](https://akka.io)] * Functional Programming - [[Cats](https://typelevel.org/cats/)] #### III. Glimpse into the future of Scala [[Dotty compiler](https://docs.scala-lang.org/scala3/reference/)]   **Entry Recommendations**: Java, Object Oriented Programming & basics of Web Development. **Process during (possible) remote studying:** All lectures & labs are online via [meet.google.com](https://meet.google.com/). ###### Lectures: ###### * All students have cameras & mics disabled * All questions are asked via chat-box * After online session slides from lectures will be available in SKOS ###### Labs: ###### * The only way to gain points is to send the code to email (michal.kowalczykiewicz@cs.uni.wroc.pl) before the deadline * Lab hours are optional Q/A sessions

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Michał Kowalczykiewicz
zdalna
wt 18:00-20:00 (s. wirtualna4) 45 42 2

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Michał Kowalczykiewicz
zdalna
śr 18:00-20:00 (s. wirtualna1) 15 15 3
Michał Kowalczykiewicz
zdalna
cz 18:00-20:00 (s. ) 15 15 1
Dariusz Biernacki
pn 14:00-16:00 (s. 137) 15 12 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Dariusz Biernacki 242 wtorek 14-16 (po uzgodnieniu przez e-mail)
Michał Kowalczykiewicz 202 -