C# Seria Programista - część 2
4.3 (135 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
845 students enrolled

C# Seria Programista - część 2

Podstawy Programowanie obiektowego w języku C#
4.3 (135 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
845 students enrolled
Created by Mariusz Jurczenko
Last updated 4/2020
Polish
Current price: $113.99 Original price: $174.99 Discount: 35% off
1 day left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • 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
Course content
Expand all 66 lectures 08:32:47
+ Wprowadzenie
4 lectures 17:03
Co to jest programowanie obiektowe
02:59
Konspekt kursu
04:02
+ Identyfikacja klas z wymagań biznesowych
7 lectures 26:17
Przeanalizuj problem biznesowy
03:26
Rozpoczynamy analizę od rzeczowników
01:32
Przechodzimy do zdefiniowania odpowiednich członków
07:46
Określenie naszych celów - abstrakcja
03:07
Enkapsulacja - ukrywanie danych
05:30
Podsumowanie
02:13
+ Budowanie klasy
7 lectures 01:18:32
Struktura Aplikacji
05:41
Utworzenie warstwy logiki biznesowej
03:12
Definiowanie właściwości
22:49
Dodajemy projekt testów jednostkowych
26:24
Tworzenie obiektów
14:04
Podsumowanie
05:07
+ Budowanie klasy - metody
6 lectures 01:02:30
Wprowadzenie Budowanie klasy - metody
01:08
Metody klasy
21:25
Kilka dodatkowych pojęć
08:08
Konstruktory
08:33
Dodanie pozostałych klas
20:25
Podsumowanie
02:51
+ Rozdzielanie obowiązków
6 lectures 57:09
Wprowadzenie Rozdzielanie obowiązków
07:16
Diagram klas
04:56
Klasa adresów
03:52
Budowanie repozytorium klienta
18:37
Repozytorium produktu i zamówienia
19:31
Podsumowanie
02:57
+ Nawiązywanie relacji
11 lectures 01:23:49
Wprowadzenie Nawiązywanie relacji
04:11
Definiowanie relacji
02:42
Typy relacji
02:15
Współpraca obiektów
02:32
Relacja kompozycji
01:46
Kompozycja: Referencje
07:47
Wypełnianie obiektów
21:11
Kompozycja: Identyfikatory
10:04
Budowanie klas o jednym przeznaczeniu
20:06
Dziedziczenie
06:00
Podsumowanie
05:15
+ Wykorzystanie ponownego użycia
9 lectures 01:13:46
Wprowadzenie Wykorzystanie ponownego użycia
06:25
Techniki dla ponownego wykorzystania
02:18
Klasa Object
13:54
Nadpisywanie funkcjonalności klasy podstawowej
07:21
Wielopostaciowość - Polimorfizm
02:55
Budowanie klasy bazowej
14:05
Dziedziczenie z klasy bazowej
11:44
Kod zapisu
09:43
Podsumowanie
05:21
+ Budowanie komponentu wielokrotnego użytku
8 lectures 59:34
Wprowadzenie Budowanie komponentu wielokrotnego użytku
06:55
Budowanie komponentu wielokrotnego użytku
14:45
Testowanie komponentu
13:22
Korzystanie z komponentu
04:33
Klasy statyczne
07:12
Metody rozszerzeń
08:27
Metoda statyczna a metoda rozszerzenia
01:44
Podsumowanie
02:36
+ Wprowadzenie interfejsów
8 lectures 54:07
Wprowadzenie interfejsów
07:42
Interfejsy .NET
03:27
Logowanie
12:31
Definiowanie interfejsu
03:43
Implementacja interfejsu
07:04
Polimorfizm oparty na interfejsie
05:39
Testy
11:00
Podsumowanie
03:01
Requirements
  • Chęć nauki programowania i dobrej zabawy !!!
  • C# Podstawy programowania
Description

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
...

Kod źródłowy dostępny na github:     /mariuszjurczenko/Kaczorek

Who this course is for:
  • 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#?