C# Seria Programista – część 2 – Podstawy Programowanie Obiektowego

5 z 5
5
2 recenzji
Programista C# Part2

Podstawy Programowanie obiektowego w języku C#

Czego się nauczysz
   *  Bedziesz tworzyć klasy i obiekty w swojm kodzie
   *  Będziesz analizował i identyfikował klas z wymagań biznesowych
   *  Bedziesz potrafił rozdzielać obowiązki klasy
   *  Nauczysz się rozpoznawać relacje między klasami   
   *  Zrozumiesz ideę ponownego użycia
   *  Nauczysz się budować komponenty
   *  Nauczysz się korzystać z interfejsów
   *  Opanujesz Ideą polimorfizmu
   *  W krótkim czasie poznasz zupełnie od podstaw kompletny proces budowania aplikacji C#
   *  Unikania często popełnianych błędów
   *  Wiele przydatnych wskazówek i dobrych praktyk

Wymagania

Chęć nauki programowania i dobrej zabawy !!!
C# Podstawy programowania

Dla kogo jest ten kurs:

  • Programiści C#
  • Chcesz tworzyć klasy i obiekty w C#?
  • Chcesz analizować i identyfikować klas z wymagań biznesowych?
  • Chcesz potrafić rozdzielać obowiązki klasy?
  • Chcesz nauczyć się rozpoznawać relacje między klasami?
  • Chcesz zrozumieć ideę ponownego użycia?
  • Chcesz nauczyć się budować komponenty?
  • Chcesz nauczyć się korzystać z interfejsów?
  • Chcesz opanować Ideą polimorfizmu?
  • Chcesz w krótkim czasie poznać zupełnie od podstaw kompletny proces budowania aplikacji z C#?

Opis

Programowanie  obiektowe  to fundamentalna cecha języka C #.

Tematem tego kursu będzie programowanie w języku C #, a dokładnie wszystko co powinieneś wiedzieć o programowaniu obiektowym. Po podaniu specyfikacji nowej funkcji lub nowej aplikacji zacznij od zidentyfikowania klas z wymagań lub specyfikacji. Programowanie obiektowe reprezentuje encje i koncepcje aplikacji jako zbioru klas.

Następnym krokiem jest przeanalizowanie zidentyfikowanych klas i podział obowiązków w zależności od potrzeb. Chodzi o to, że aplikacja powinna zostać rozłożona na części z minimalnym nakładaniem się funkcji. Jeśli każda klasa ma jeden cel, łatwiej jest pisać, testować, a później znajdować tę klasę, gdy trzeba ją zaktualizować lub rozszerzyć. To sprawia, że kod jest łatwiejszy do modyfikacji i dostosowania do nowych wymagań i przyszłych wymagań.

Następnym krokiem jest przyjrzenie się związkom. Relacje między klasami definiują sposób, w jaki obiekty utworzone z tych klas mogą współpracować w celu wykonywania operacji aplikacji.

Ostatnim krokiem jest wykorzystanie ponownego użycia. Siła programowania obiektowego leży w obietnicy ponownego użycia. Poprzez wyodrębnienie podobieństwa między zestawami klas do oddzielnej klasy, masz więcej kodu wielokrotnego użytku. Rozbudowane ponowne wykorzystanie istniejących, sprawdzonych klas nie tylko skraca czas opracowywania, ale także prowadzi do bardziej niezawodnych aplikacji. Przykładowa aplikacja została ponownie wykorzystana poprzez klasę bazową z wykorzystaniem dziedziczenia.

Następnie zademonstrujemy ponowne użycie poprzez bibliotekę komponentów klas ogólnych. I wreszcie, zobaczymy ponowne użycie interfejsów. Interfejsy zapewniają czysty sposób interakcji aplikacji z innymi klasami, komponentami, aplikacjami lub systemami.

Kurs opisał również cztery filary lub cechy programowania obiektowego.
Abstrakcja, enkapsulacja, dziedziczenie i polimorfizm.

Abstrakcja opisuje jednostkę w prosty sposób, ignorując nieistotne szczegóły. Zmniejsza złożoność, koncentrując się tylko na tym, co jest ważne dla celów konkretnego zastosowania.

Enkapsulacja polega na enkapsulacji lub ukrywaniu danych implementacji w obrębie klasy. Dane są przechowywane w polach w klasie i dostępne dla reszty aplikacji tylko za pomocą metod pobierających i ustawiających właściwości. Kod jest również hermetyzowany w klasie i dostępny tylko poprzez interfejs klasy. Ukrywanie danych może chronić dane przed nieautoryzowanym dostępem lub nieprawidłowymi danymi. Ukrywanie implementacji pomaga zarządzać złożonością i ułatwia konserwację. Implementacja może zostać zmieniona w dowolnym momencie bez wpływu na aplikację.

Dziedziczenie pozwala klasom pochodnym lub klasom potomnym na ponowne użycie całego kodu z klasy podstawowej lub macierzystej. W demonstracji stworzyliśmy klasę bazową encji, która zawierała standardowy zestaw właściwości i metodę sprawdzania poprawności. Każda klasa encji odziedziczyła po tej klasie bazowej, aby ponownie wykorzystać jej funkcjonalność. Ale w niektórych przypadkach nie chcemy ponownie korzystać z całej funkcjonalności klasy podstawowej, więc możemy przesłonić jej części tak, jak zrobiliśmy to za pomocą metody sprawdzania poprawności.

Polimorfizm jest koncepcją, że pojedyncza metoda, taka jak metoda sprawdzania poprawności, może zachowywać się inaczej w zależności od typu obiektu, który ją wywołuje. Tak więc sprawdzanie poprawności obiektu zamówienia może zachowywać się inaczej niż obiektu klienta, który sprawdza poprawność, a obiekt klienta może zachowywać się inaczej od sprawdzania poprawności obiektu produktu i tak dalej. Metoda o podanej nazwie może mieć różne kształty, a aplikacja określa, jaki kształt metody należy zastosować w momencie wykonywania.

Ideą polimorfizmu opartego na dziedziczeniu jest to, że klasa bazowa może definiować metodę, a każda klasa pochodna może przesłonić tę metodę, aby zapewnić własną definicję i implementację, zasadniczo zapewniając własny kształt tej metody.
Ideą polimorfizmu opartego na interfejsie jest to, że interfejs może definiować metodę. Każda klasa może następnie zaimplementować ten interfejs i zdefiniować własną implementację dla tej metody, zasadniczo zapewniając własny kształt dla tej metody.

Seria Programista C# :

część 1:  C# Podstawy programowania
część 2: C# Podstawy Programowanie obiektowego w języku C#
część 3:  C# Najlepsze Praktyki – Podstawy języka
część 4:  Wprowadzenie do kolekcji C#
część 5:  C# Generics

Wprowadzenie

1
Wprowadzenie
00:02:47
2
Porównanie Obiek A Klasa
00:07:15
3
Co To Jest Programowanie Obiektowe
00:02:59
4
Konspekt Kursu
00:04:02
5
Quiz
3 pytań

Identyfikacja Klas Z Wymagań Biznesowych

1
Wprowadzenie
00:02:43
2
Przeanalizuj Problem Biznesowy
00:03:26
3
Rozpoczynamy Analizę Od Rzeczowników
00:01:32
4
Przechodzimy Do Zdefiniowania Odpowiednich Członków
00:07:46
5
Określenie Naszych Celów – Abstrakcja
00:03:07
6
Enkapsulacja – Ukrywanie Danych
00:05:30
7
Podsumowanie
00:02:13
8
Quiz
3 pytań

Budowanie Klasy

1
Wprowadzenie
00:01:15
2
Struktura Aplikacji
00:05:41
3
Utworzenie Warstwy Logiki Biznesowej
00:03:12
4
Definiowanie Właściwości
00:22:49
5
Dodajemy Projekt Testów Jednostkowych
00:26:24
6
Tworzenie Obiektów
00:14:04
7
Podsumowanie
00:05:07
8
Quiz
3 pytań

Budowanie Klasy - Metody

1
Wprowadzenie
00:01:08
2
Metody Klasy
00:21:25
3
Kilka Dodatkowych Pojęć
00:08:08
4
Konstruktory
00:08:33
5
Dodanie Pozostałych Klas
00:20:25
6
Podsumowanie
00:02:51
7
Quiz
3 pytań

Rozdzielanie Obowiązków

1
Wprowadzenie
00:07:16
2
Diagram Klas
00:04:56
3
Klasa Adresów
00:03:52
4
Budowanie Repozytorium Klienta
00:18:37
5
Repozytorium Produktu I Zamówienia
00:19:31
6
Podsumowanie
00:02:57
7
Quiz
4 pytań

Nawiązywanie Relacji

1
Wprowadzenie
00:04:11
2
Definiowanie Relacji
00:02:42
3
Typy Relacji
00:02:15
4
Współpraca Obiektów
00:02:32
5
Relacja Kompozycji
00:01:46
6
Kompozycja: Referencje
00:07:47
7
Wypełnianie Obiektów
00:21:11
8
Kompozycja: Identyfikatory
10:04
9
Budowanie Klas O Jednym Przeznaczeniu
00:20:06
10
Dziedziczenie
00:06:00
11
Podsumowanie
00:05:15
12
Quiz

Wykorzystanie Ponownego Użycia

1
Wprowadzenie
00:06:25
2
Techniki Dla Ponownego Wykorzystania
00:02:18
3
Klasa Object
00:13:54
4
Nadpisywanie Funkcjonalności Klasy Podstawowej
00:07:21
5
Wielopostaciowość – Polimorfizm
00:02:55
6
Budowanie Klasy Bazowej
00:14:05
7
Dziedziczenie Z Klasy Bazowej
00:11:44
8
Kod Zapisu
00:09:43
9
Podsumowanie
00:05:21
10
Quiz

Budowanie Komponentu Wielokrotnego Użytku

1
Podsumowanie
00:06:55
2
Budowanie Komponentu Wielokrotnego Użytku
00:14:45
3
Testowanie Komponentu
00:13:22
4
Korzystanie Z Komponentu
00:04:33
5
Klasy Statyczne
00:07:12
6
Metody Rozszerzeń
00:08:27
7
Metoda Statyczna A Metoda Rozszerzenia
00:01:44
8
Podsumowanie
00:02:36
9
Quiz
3 pytań

Wprowadzenie Do Interfejsów

1
Wprowadzenie
00:07:42
2
Interfejsy .NET
00:03:27
3
Logowanie
00:12:31
4
Definiowanie Interfejsu
00:03:43
5
Implementacja Interfejsu
00:07:04
6
Polimorfizm Oparty Na Interfejsie
00:05:39
7
Testy
00:11:00
8
Podsumowanie
00:03:01
9
Quiz
3 pytań
10
Podsumowanie kursu
33 pytań
11
Dodatkowe materiały

Z Całkiem Innej Beczki

1
Canva
00:16:11
2
Nozbe
00:18:28
3
Evernote
00:12:26
4
Generator Kalendarzy
00:06:58
5
Smash i WeTransfer
00:09:13
Abstrakcja opisuje jednostkę w prosty sposób, ignorując nieistotne szczegóły.
Jest to skrót do tworzenia właściwości C# z ukrytym polem
Składa się z nazwy i typu każdego z jej parametrów formalnych
Dekompozycja aplikacji na części. Każda część jest odpowiedzialna za osobny problem. Definiowanie części przy minimalnym zachodzeniu na siebie.

Kod źródłowy dostępny na githubie 

https://github.com/mariuszjurczenko/Kaczorek



5
5 z 5
2 Oceny

Szczegółowa ocena

Gwiazdy 5
2
Gwiazdy 4
0
Gwiazdy 3
0
Gwiazdy 2
0
Gwiazdy 1
0

{{ review.user }}

{{ review.time }}
 

Pokaż więcej
Proszę logowanie zostawić opinię