Python zaawansowany.

Podczas zajęć dowiesz się, jak tworzyć aplikacje webowe i desktopowe, poznasz podstawy baz danych i testów jednostkowych.

Przed Tobą dwa miesiące intensywnej nauki programowania w języku Python na poziomie zaawansowanym.

Kurs obejmuje 72 godziny praktycznych warsztatów z trenerem, w tym dwa 12-godzinne hackathony, oraz 48 godzin samodzielnej pracy z kodem. Połączenie zajęć wykładowo-warsztatowych, całodziennych praktycznych warsztatów i indywidualnej pracy nad zadaniami, stanowi doskonałą kompilację różnych metod pozyskiwania wiedzy. Dzięki temu poznasz nie tylko solidnie zakres materiału, który znajdziesz w programie, ale również będziesz mieć okazję przetestować swoje umiejętności tak przy pracy w pojedynkę podczas pisania i ciągłego doskonalenia aplikacji, jak i w zespole projektowym.

120h

pracy z kodem

2x 12h

maraton programowania

Platforma

z zadaniami online

Certyfikat

ukończenia kursu

Dla kogo jest ten kurs?

Kurs przeznaczony jest dla osób posiadających podstawowe umiejętności pisania programów w języku Python i chcących poszerzyć swoją wiedzę o bardziej zaawansowane elementy języka, rozwinąć swoje umiejętności pisania aplikacji webowych i desktopowych.

Czego nauczysz się?

  • Zaawansowanych mechanizmów w języku Python.
  • Podstaw pisania aplikacji webowych przy użyciu frameworku Flask.
  • Podstaw operacji na bazie danych za pomocą SQLAlchemy.
  • Dobrych praktyk związanych z obsługą błędów oraz logowaniem.
  • Podstaw budowania interfejsów graficznych przy pomocy biblioteki Tkinter.

Co musisz wiedzieć?

  • Umiejętność pisania i uruchamiania prostych programów w języku Python.
  • Swoboda w pisaniu funkcji.
  • Umiejętność pisania klas oraz wykorzystania mechanizmu dziedziczenia.
  • Umiejętność podstaw obsługi błędów (try/except).
  • Znajomość podstawowych typów danych oraz kolekcji.
  • Umiejętność operowania na plikach.

Program kursu

1. Zaawansowane zagadnienia obiektowości

  • klasy, funkcje i moduły jako obiekty,
  • system typów danych,
  • cechy obiektów w języku Python,
  • protokoły i metody „dunder”.

2. Generatory

  • wprowadzenie do podstawowych typów danych w Pythonie,
  • wprowadzenie do generatorów,
  • różnice między generatorami a kolekcjami,
  • opis i praktyczne zastosowanie protokołu „iterable”.

3. Dekoratory

  • wprowadzenie do pisania własnych dekoratorów,
  • opis mechanizmu dekoratora i wzorca projektowego dekorator.

4. Context managery

  • wprowadzenie do kontekst menadżera,
  • protokół kontekst menadżera,
  • przykłady wykorzystania w standardowej bibliotece Pythona,
  • praktyczne zastosowanie w aplikacjach..

5. Tworzenie interfejsów graficznych

  • wprowadzenie do tworzenia interfejsów graficznych,
  • lista podstawowych pojęć oraz najpopularniejsze wzorce,
  • budowanie interfejsów użytkownika przy pomocy Tkinter,
  • tworzenie skalowalnego interfejsu przy pomocy mechanizmu grid.

6. Hackathon I

7.  Relacyjne bazy danych

  • wprowadzenie do relacyjnych baz danych,
  • cechy i zastosowanie relacyjnych baz danych,
  • podstawowe pojęcia związane z relacyjnymi bazami danych,
  • projekt prostej bazy danych przy pomocy SQLite.

8. ORM i dostęp do bazy danych

  • wprowadzenie do ORM oraz dostępu danych na przykładzie SQLAlchemy,
  • definiowanie struktury bazy danych za pomocą klas pythonowych,
  • praca na danych w bazie danych przy pomocy obiektów pythonowych,
  • podstawowe terminy związane z dostępem do bazy danych,
  • zbiór technik i dobrych praktyk przy pracy z bazami danych i ORM.

9. Protokół HTTP

  • podstawy protokołu HTTP i opisu działania stron WWW,
  • opis modelu żądania i odpowiedzi,
  • wprowadzenie do nagłówków i negocjacji typu danych.

10. Aplikacje webowe

  • wprowadzenie do budowy aplikacji internetowej,
  • podstawy frameworka Flask,
  • budowanie aplikacji internetowych przy użyciu frameworka Flask,
  • podstawy tworzenia stron przy pomocy HTML oraz szablonów Jinja2,
  • wyświetlanie danych z bazy danych na stronie,
  • tworzenie formularzy w celu dodawania danych do bazy danych.

11. Bezpieczeństwo w aplikacjach webowych

  • przedstawienie podstawowych sposobów logowania do aplikacji oraz ograniczania dostępu dla osób niezalogowanych,
  • wprowadzenie do bezpiecznego przechowywania haseł w aplikacji webowej.

12. Hackathon

Hackathon

Hackathon to 12-godzinne warsztaty, których celem jest podsumowanie pierwszej części i/lub całości kursu. Zazwyczaj odbywają się w soboty w godzinach 9:00-21:00.
Hackathon CODE:ME, w przeciwieństwie do normalnego hackathonu, to warsztaty, a nie konkurs. Tutaj nadrzędnym celem jest podsumowanie dotychczas zdobytej wiedzy, integracja grupy i dobra zabawa w efektywny i produktywny sposób.
Założeniem hackathonu jest nacisk na jak najbardziej samodzielną pracę zespołów. Nie są jednak pozostawieni sami sobie – przez cały ten czas trenerzy czuwają nad wykonywaniem zadań i wspierają w rozwiązywaniu problemów

Trener

Jakub Czapliński

Specjalista Python, C#, DevOps

Niegdyś admin, następnie przez 6 lat programista C#, ostatnie lata zakochany w Pythonie. Prowadzi realizację dużych projektów w Pythonie dla zachodnich klientów.

Statystyki dla tego kursu

2

edycja

30

absolwentów

4

hackathony

Termin:

 

 

Miejsce:

Fundacja CODE:ME
Aleja Wojska Polskiego 41
Gdańsk

Kontakt

e-mail: kontakt@codeme.pl

tel.: 724 379 836