Programowanie generyczne, szablony C++

Programowanie uogólnione, szablony (template)

Ratings: 4.69 / 5.00




Description

Jest to trzecia część kursu C++. Pierwsza obejmowała podstawy programowania w języku C++, druga omawiała programowanie obiektowe i wszystkie jego cechy charakterystyczne. Ta część jest poświęcona programowaniu generycznemu, czyli opartemu o szablony (programowanie uogólnione). Dzięki takiemu podejściu nie interesują nas typy danych. Tworzymy przepis na program, który powinien działać z różnym typami danych. Dane nam to bardzo dużą elastyczność w pisaniu kodu, powoduje zmniejszenie błędów spowodowanych powtarzaniem podobnego kodu. Możemy poczuć moc, jaka daje nam pisanie uogólnione, jeśli zobaczymy jak łatwo i przyjemnie korzysta się nam z biblioteki STL.  Ta biblioteka została właśnie napisana z wykorzystaniem programowania generycznego. Dodatkowo poznasz czym jest metaprogramowanie. Dodatkowo omówię, czym są inteligentne wskaźniki oraz poznasz czym faktycznie są r-wartości, l-wartości oraz referencja r-wartości.


Zanim zaczniemy naukę programowania generycznego, przejdziemy przez rozwiązywanie problemów z kompilatorem C++. Wiele osób w czasie nauki programowania w języku C++ boryka się z problemami z kompilacją programu. Inni z niewłaściwą wersją kompilatora a inni z problemem, skąd pobrać najnowszy kompilator. Te wszystkie problemy postaram rozwiązać się w materiale zatytułowanym — Kompilator.


Poniżej przedstawiam spis lekcji:

  • Wstęp

  • Kompilator

  • Przeciążenie funkcji

  • Szablon funkcji teoria

  • szablon funkcji praktyka

  • Typ zwracany przez funkcję

  • Przeciążenie szablonu

  • Prosty szablon klasy

  • Szablon metody w klasie

  • Dziedziczenie szablonu

  • Metaprogramowanie teoria

  • Metaprogramowanie praktyka

  • Inteligentne wskaźniki wprowadzenie

  • Czym jest wskaźnik

  • Dynamiczne przydzielanie pamięci

  • Unikalny wskaźnik unique_ptr

  • Przekazywanie do i z funkcji unique_ptr

  • Tablice unique_ptr

  • Wskaźnik współdzielony shared_ptr

  • Przenoszenie wskaźników shared_ptr

  • Do czego służy weak_ptr

  • r-wartość l-wartość referencja r-wartości


What You Will Learn!

  • Zasady programowania generycznego
  • Wykorzystanie szablonów
  • Zrozumienie zasad działa biblioteki STL
  • Programowanie uogólnione

Who Should Attend!

  • Dla osób chcących pogłębić znajomość C++