CentrumXP.pl » Witamy
CentrumXP.pl
 
22 października 2009 - Premiera Microsoft Windows 7 - dowiedź się więcej w Portalu CentrumXP.pl...
Szukaj
Subskrypcja
Powiadomienie e-mailem o nowościach na CentrumXP.pl:
E-mail: Zapisz
Czy byłbyś zainteresowany mobilną wersją Portalu CentrumXP.mobi dla komórek?

CentrumXP.pl » Microsoft .NET » Kurs C#, cz. I » Dodaj do ulubionych Dodaj do ulubionych   Dodaj do ulubionych Wersja do wydruku

02. Programowanie obiektowe

Autor: Daniel Celeda    Opublikowano: 6 grudnia 2005    Odsłon: 94343    »Skomentuj...
Strona 1 z 2  Następna»
Zobacz również:

01. "Programowanie" - z czym to się je?

03. Do czego potrzebne jest nam Visual Studio 2005

04. Konfiguracja i obsługa C# 2005 Express Edition

05. Tworzenie solution i nowych projektów

06. Klasy i obiekty

07. Tworzenie oraz inicjalizacja obiektów

08. Operatory arytmetyczne

09. Porozmawiajmy o „stringach”

10. Typy proste i referencyjne

11. Wartości logiczne

12. Inne operatory logiczne

13. Instrukcje iteracyjne (tzw. pętle) - cz. I

14. Instrukcje iteracyjne (tzw. pętle) - cz. II

15. Tablice

16. Kolekcje

17. Typy generyczne (generics)

18. Przestrzenie nazw (namespaces)

19. Modyfikatory dostępu

20. Metody statyczne oraz metody instancyjne

»Uzyskaj pomoc na forum

OOP (ang. object-oriented programming) – czyli programowanie obiektowe.

Większość współczesnych aplikacji pisana jest w językach obiektowych. Czym zatem są te obiekty? Często spotykam się ze stwierdzeniem, że „wszystko jest obiektem”. Wystarczy tylko rozejrzeć się wokół siebie żeby się z tym zgodzić. Szklanka, łyżka, stół, szafka itd. To wszystko są obiekty. Obiekty składają się z innych obiektów. Np. dom składa się z dachu, drzwi, okien. Drzwi z klamki, zawiasów itd. W zależności od potrzeb, powiązania między obiektami możemy rozpatrywać na różnych poziomach. Możemy także wyróżnić pojęcie „klasy”. Klasa określa nam typy obiektów, ale ich nie konkretyzuje np. Jaś jest obiektem, a człowiek to klasa. Inaczej mówiąc, Jaś jest obiektem klasy człowiek. Dom Jasia jest obiektem klasy Dom.

A co to ma wszystko wspólnego z programowaniem?

Jak się przekonamy, bardzo dużo. Programując w językach obiektowych możemy nasze programy składać z obiektów jak z klocków.

Obiekty a programowanie

Gdy próbujemy opisać jakiś obiekt z otaczającej nas rzeczywistości trudno nam wymienić jego wszystkie cechy. W zasadzie jest to niemożliwe. Programując, nie możemy sobie na to pozwolić, tak więc obiekty w naszych programach muszą być ściśle zdefiniowane. Musimy wiedzieć z jakich cech się składają i jakie wartości mają te cechy, dlatego należy zdecydować się jakie cechy są ważne i umieścić je w definicji klasy. Pozostałe cechy należy odrzucić

Zdefiniujmy więc klasę Dom:

Cechy:   - kolor ścian
- kolor dachu
- drzwi
- okno

Tyle nam wystarczy, a więc sami decydujemy jak dokładnego opisu nam potrzeba. Definicja klas powinna być adekwatna do celu jaki chcemy osiągnąć, np. jeśli w naszym programie będziemy musieli rozróżniać obiekty klasy Dom po kolorze ścian, to tylko ta cecha nam wystarczy, pozostałe będą zbędne.

Zdefiniujmy obiekt klasy Dom:

Dom Jasia
Kolor ścian:    biały
Kolor dachu:   czarny
Drzwi:   drzwi Jasia
Okno:   okno małe

Kolory to proste typy, które nie są obiektami. Jednak drzwi i okna to też obiekty, a więc potrzeba nam definicji klas: Drzwi oraz Okno.

Drzwi
Cechy: - materiał
- kolor
- stan
Okno
Cechy: - szerokość
- wysokość
- stan

A następnie obiekty:

Drzwi Jasia
Materiał:   drewno
Kolor:   brązowy
Stan:   zamknięte
Okno małe
Szerokość:   0.5 metra
Wysokość:   1 metr
Stan:   zamknięte

Cechy możemy utożsamiać ze zmiennymi w programowaniu (w klasie są to tzw. pola). Dodatkowo obiekt może wykonywać ustalone czynności, np. drzwi i okna mogą się otwierać. Możemy także założyć, że dom potrafi zmieniać swój kolor. Funkcje te nazywamy metodami.

Ostateczne definicje klas wyglądają następująco:

Dom
Pola:   - kolor ścian
- kolor dachu
- drzwi
- okno
Metody: - zmień kolor ścian
- zmień kolor dachu
Drzwi
Cechy: - materiał
- kolor
- stan
Metody:  - zamknij
- otwórz
Okno
Cechy:  - szerokość
- wysokość
- stan
Metody:  - zamknij
- otwórz

Jak to zrobić w C#?

 Przyjrzyjmy się programowi w C#, który stworzy nam taki własny mini-świat. Przypuszczam, że nie będzie łatwo go zrozumieć, ponieważ na tym etapie nie posiadamy wystarczającej wiedzy. Wystarczy, że oswoimy się z widokiem kodu napisanego w C#, a w ramach pracy domowej możemy spróbować przeanalizować linijkę po linijce i zastanowić się co mogą znaczyć. Na dokładne opisanie poszczególnych instrukcji przyjdzie czas w dalszych częściach kursu.


1 2 Dalej» 

Aktualna ocena to: 4.30

Oceń artykuł...
Porażka Kiepski Taki Sobie Dobry Super!


Tagi:  

A teraz:    Dodaj do ulubionych Dodaj do ulubionych    Wydrukuj Wydrukuj    Wyślij link znajomemu Wyślij link znajomemu    Skomentuj Skomentuj

Komentarze do 02. Programowanie obiektowe

Dodaj komentarz»

pepe 6 czerwca 2006, 20:53

kurs się przyda tym bardziej że jutro mam sprawdzian z programowania :D

kuba565 1 czerwca 2007, 20:28

dobre:>

Paweł 31 sierpnia 2007, 9:41

Dobry Kurs łatwo się czyta :)

OwcA 3 września 2007, 21:39

Trochę to łopatologiczne jak dla ludzi którzy znają C++... Może przejdę od razu do dalszych części ;)

Gandalf 4 października 2007, 16:19

OOP (ang. object-oriented programming) – czyli programowanie obiektowe programowanie zorientowane obiektowo - but nevermind;)

e7_ 13 listopada 2007, 19:37

Już dawno chciałem rozpocząć zabawę z programowaniem, ale wszystkie kursy i inne pomoce były pisane w ten sposób jak by to wszystko było dla każdego oczywiste i jasne. A tutaj opisane dosłownie jak dla 10-latka i postrzegam to jako MEGAplus. Nawet tym starszym jak się będzie w ten sposób tłumaczyć to wszystko pochłoną błyskawicznie.

Haker 16 kwietnia 2008, 11:21

Nie czytam kursu, bo mi się nie chce. Ja tam umiem wszystko z HTML-a. Powiem więcej. Umiem też CSS i Java Script.

Taikoubou 30 kwietnia 2008, 21:45

Haker... kogo? kogo? kogo? kogo to interesuje??? nie chcesz to nie czytaj i nie wyjeżdżaj tu z przechwłkami... A co do kursu to jest w deche ^^ świetna robota!!

Mon 22 czerwca 2008, 11:35

Świetny kurs!!!!!!!!

Mon 22 czerwca 2008, 11:36

a ja mam kolos pojutrze;)

seba000 14 sierpnia 2008, 15:44

Haker taki mądry jesteś? Ja znam b.dobrze pascala, delphi, action-script, musnąłem assemblera , html"a i biorę się za c# . Pozatym co ma html , java i css do c#?

Pokorny 21 października 2008, 11:32

no akurat java ma dużo wspólnego :) ale html hmmm no nie powiem Haker prawdziwy z Ciebie hakier :D

Informatyk 17 listopada 2008, 17:50

Kto się zgodzi z moją opinnią??

ja 27 czerwca 2009, 19:59

ja sie zgadzam
 

Infoboot 12 marca 2010, 16:37

lipa na max"a brak zdefiniowanych konstruktorów i destruktorów metody żle zdefiniowane... brak opisu... i wogóle do niczego ten kurs...


Dodaj swój komentarz

»Zasady udzielania komentarzy

Autor:  
Komentarz:
Dodaj komentarz
© 2009 Onex Group
Onex Group O Onex Group  |  O CentrumXP.pl  |  Kontakt  |  Reklama
Nasze serwisy: CentrumXP.plSklep on-line  |  Komputer w firmie  |  XboxSpot.pl  |  Live Blog  |  Jama MastahaDevelopers.pl