Bądźmy w kontakcie

Plan Szkolenia

Wprowadzenie

  • Czym jest programowanie i dlaczego warto się nim zainteresować
  • Historia programowania
  • Możliwość automatyzacji zadań za pomocą oprogramowania
  • Rola programisty i komputera w przedsiębiorstwie
  • Programowanie dzisiaj – rozwój obecnych trendów rynkowych
  • Programowanie deklaratywne i imperatywne. Jak czy co?
  • Maszyna Turinga
  • Konsolidacja, kompilacja i interpretacja "w locie".

Przypomnienie zagadnień logiki i algebry Boole’a

  • Predykaty
  • Zdania logiczne
  • Tautologie
  • Algebra Boole’a

Pierwszy program

  • Strukturalnie
  • Funkcjonalnie
  • Obiektowo
  • A jak inaczej?

Proste typy

  • Reprezentacja ciągów znaków
  • Liczby całkowite
  • Liczby zmiennoprzecinkowe
  • Wartości logiczne
  • Typ Null
  • Puste lub niezainicjalizowane
  • Silne i słabe typowanie

Struktury danych

  • Koncepty FIFO i FILO
  • Stosy
  • Kolejki
  • Deklarowanie tablic i list
  • Indeksowanie
  • Mapy
  • Rekordy
  • Drzewa

Operatory

  • Operatory przypisania.
  • Operatory arytmetyczne.
  • Operatory porównania
  • Porównanie wartości w różnych językach
  • Operatory bitowe
  • Konkatenacja
  • Operatory inkrementacji i dekrementacji
  • Najczęstsze błędy

Sterowanie programem

  • Instrukcje if, if else
  • Instrukcje goto, omówienie problemów ich zastosowania.
  • Instrukcja switch
  • Pętla for, for-in
  • Pętla while, do-while
  • Pętla foreach
  • Zatrzymanie pętli

Tworzenie kodu wielokrotnego użytku

  • Programowanie funkcyjne
  • Programowanie obiektowe

Paradygmaty programowania funkcyjnego

  • Czym jest funkcja
  • Funkcja a procedura
  • Podstawy rachunku lambda
  • Argumenty funkcji
  • Zwracanie wartości
  • Funkcje jako argumenty
  • Funkcje anonimowe
  • Domknięcia
  • Rekurencja

Paradygmaty programowania obiektowego

  • Reprezentacja bytów ze świata rzeczywistego w filozofii, ontologii
  • Decyzja, co ma być obiektem, a co innym typem
  • Deklaracja klas
  • Tworzenie instancji klas
  • Pola, stan obiektu
  • Metody, jako zachowanie obiektu
  • Abstrakcja
  • Enkapsulacja
  • Dziedziczenie
  • Polimorfizm
  • Asocjacja i agregacja
  • Delegacja i rozdzielenie relacji między obiektami
  • Moduły, pakiety i biblioteki
  • Udostępnianie API
  • Modelowanie systemu jako klas i obiektów
  • Opisywanie i programowanie relacji między klasami
  • Programowanie z perspektywy biznesowej

Dobre praktyki programowania

  • Pułapki i częste błędy
  • Kod wysokopoziomowy w interpretacji niskopoziomowej
  • Optymalizacja kodu
  • Zasada KISS
  • Zasada DRY
  • Zasada Worse is Better
  • Rozdzielenie abstrakcji od implementacji
  • Metody wykrywania błędów w programach logicznych
  • Konwencje nazewnictwa
  • Komentowanie kodu
  • Metryki oprogramowania

Przegląd technologii i języków

  • Obszar zastosowania tych języków
  • Główne cechy języka
  • Perspektywy rozwoju
  • Kierunki rozwoju: algorytmy, optymalizacja kodu, implementacja wzorców, wzorce projektowe, wzorce architektoniczne, standardy analityczne
  • Redukcja struktury kontrolnej – wykorzystanie sztucznej inteligencji i automatycznego podejmowania decyzji
  • Którą platformę wybrać? Indywidualne konsultacje
 35 godzin

Liczba uczestników


Cena za uczestnika (netto)

Opinie uczestników (5)

Propozycje terminów

Powiązane Kategorie