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
Opinie uczestników (5)
Instruktor był bardzo cierpliwy z każdym i chętnie powtarzał, jeśli osoby nie rozumiały. Upewniał się, że wszyscy zrozumieli, zanim kontynuował.
Henry - Vodacom
Szkolenie - Introduction to Programming
Przetłumaczone przez sztuczną inteligencję
Dzięki temu zdobyłem solidne podstawy, aby zanurzyć się w świat programowania :)
Andrew Jones - Vodacom
Szkolenie - Introduction to Programming
Przetłumaczone przez sztuczną inteligencję
Wykładowca miał rozległą wiedzę na temat przedmiotu i był chętny do dzielenia się nią.
Clive Lloyd - Vodacom
Szkolenie - Introduction to Programming
Przetłumaczone przez sztuczną inteligencję
Treść była wystarczająco szczegółowa, aby mogłem zrozumieć podstawy i koncepty, a przedstawienie było dobrze wykonane.
Anwar - Vodacom
Szkolenie - Introduction to Programming
Przetłumaczone przez sztuczną inteligencję
Cierpliwość i tempo
vuyisa - Vodacom
Szkolenie - Introduction to Programming
Przetłumaczone przez sztuczną inteligencję