Podstawy programowania obiektowego - Dariusz Rataj(1).pdf
(
451 KB
)
Pobierz
www.pbtorrent.pl
Podstawy
programowania
obiektowego
Ćwiczenia laboratoryjne nr 1
Temat: Wstęp do programowania obiektowego
Prowadzący:
mgr inż.
Dariusz Rataj
Koszalin 2001
Podstawy programowania obiektowego
Skrcony spis treści:
Część 1 - Programowanie obiektowe w języku C++
Część 2 - Programowanie obiektowe w środowisku Borland C++Builder
1.
Programowanie obiektowe w języku C++
1.1.
Cel programowania obiektowego
Programowanie obiektowe jest prbą "przeniesienia" rzeczywistości na platformę maszyn liczących zwanych
komputerami. Człowiek w życiu codziennym postrzega przedmioty (obiekty) rzeczywiste w sposb intuicyjny nie
zwracając uwagi na szczegły zachowania czy stanu przedmiotu. W programowaniu strukturalnym programista jest
zmuszony do znajomości wielu parametrw symulowanego obiektu. Celem programowania obiektowego jest
uzyskanie możliwości wydawania poleceń dla symulowanego obiektu rzeczywistego bez konieczności zagłębiania się
w szczegły jego konstrukcji czy stanu.
1.2.
Przykład symulacji obiektu rzeczywistego
W tej części przedstawiony zostanie prosty przykład opisu obiektu rzeczywistego - samochodu. Widząc samochd
jadący ulicą przeciętny człowiek zwrci uwagę jedynie na oglne cechy pojazdu, np.: wielkość (duży, mały), kolor
itd. Jadąc samochodem "wydajemy polecenia": przyspiesz, zwolnij, zatrzymaj itd. Opis obiektu rzeczywistego na
poziomie języka programowania powinien umożliwić wydawanie tego typu poleceń. Każdy obiekt rzeczywisty
posiada trzy elementy:
tożsamość
(nazwa),
stan
lub cechy obiektu,
zachowanie
(działania na obiekcie).
Przykładowy samochd jest oczywiście obiektem rzeczywistym złożonym z wielu podzespołw, części i możemy
opisać go bardzo szczegłowo. W wielu zastosowaniach wystarczy nam jednak opis tylko niektrych cech obiektu.
Takie podejście do opisu (pewne cechy są istotne inne są bez znaczenia) określane są w teorii obiektowej mianem
abstrakcji
. Programista operuje jedynie na pewnym poziomie abstrakcji niezbędnym do zrealizowania celu
oprogramowania, np. inaczej będzie wyglądał opis obiektu programisty piszącego grę "wyścigi samochodowe", a
inaczej opis do celw symulacji wypadkw wykonany dla firmy produkującej samochody. Poniżej przedstawiony
został prosty przykład opisu obiektowego (obiektu - samochodu) demonstrujący zasady tworzenia symulacji
obiektu rzeczywistego.
Obiekt rzeczywisty
Opis obiektu
rzeczywistego
Definicja typu
obiektowego
(Zgodnie ze składnią języka
programowania C++)
1.
Tożsamość
(nazwa) - samochd
2.
Stan obiektu
(cechy opisujące obiekt):
-
Marka
-
Model
-
Kolor
-
Pozycja (wspłrzędne x i y)
3.
Zachowanie
(działania na obiekcie):
-
Nazwanie marki
-
Nazwanie modelu
-
Zmiana koloru
-
Przesunięcie samochodu - zmiana
położenia (pozycji)
class
samochod {
public
:
char
marka[
20
];
char
model[
20
];
int
kolor;
int
pozX, pozY;
samochod();
void
ustawMarke(
char
*s);
void
ustawModel(
char
*s);
void
ustawKolor(
int
k);
void
przesun(
int
x,
int
y);
};
Prezentowany przykład ogranicza się tylko do elementarnych cech samochodu: marka, model, kolor, pozX (pozycja
X), pozY (pozycja Y) i czterech czynności: ustawMarke, ustawModel, ustawKolor, przesun operujących na cechach.
W terminologii programowania obiektowego cechy opisujące stan obiektu będziemy nazywać
polami obiektu
(lub
zmiennymi składowymi obiektu) natomiast czynności nazwiemy
metodami
(lub procedurami i funkcjami
składowymi obiektu).
Strona
2
Podstawy programowania obiektowego
Po zdefiniowaniu obiektu możemy wykorzystać obiekt w programie głwnym. Na początek należy zdefiniować
zmienną obiektową klasy
samochod
:
samochod car1;
// deklaracja obiektu (utworzenie instancji obiektu)
Następnie w ciele programu głwnego możemy wywołać wcześniej zdefiniowane funkcje i procedury obiektu.
Przykładowy program głwny symuluje jazdę samochodu po ekranie monitora (kursory: gra, dł, prawo, lewo).
Pełny kod programu definiującego i wykorzystującego obiekt
samochod
:
#include
<conio.h>
#include
<stdio.h>
#include
<iostream.h>
#include
<string.h>
class
samochod {
public
:
// pola (zmienne)
char
marka[
20
];
char
model[
20
];
int
kolor;
int
pozX, pozY;
// metody (funkcje)
samochod();
// konstruktor
void
ustawMarke(
char
*s);
// ustawienie marki samochodu
void
ustawModel(
char
*s);
// ustawienie marki samochodu
void
ustawKolor(
int
k);
// ustawienie koloru samochodu
void
przesun(
int
x,
int
y);
// przesuniecie po ekranie
};
samochod::samochod()
{
pozX =
0
; pozY =
0
;
}
void
samochod::ustawMarke(
char
*s)
{
strcpy(marka, s);
// kopiowanie parametru do zmiennej marka
cout <<
"Marka:"
<< marka << endl;
}
void
samochod::ustawModel(
char
*s)
{
strcpy(model, s);
// kopiowanie parametru do zmiennej model
cout <<
"Model:"
<< model << endl;
}
void
samochod::ustawKolor(
int
k)
{
kolor = k;
// zmiana zmiennej kolor
textcolor(k);
// zmiana koloru znaku na ekranie
cout <<
"Kolor(nr):"
<< kolor << endl;
}
void
samochod::przesun(
int
x,
int
y)
{
pozX += x; pozY += y;
// zmiana zmiennych pozX i pozY
if
(pozX >
80
) pozX=
1
;
if
(pozY >
25
) pozY=
1
;
Strona 3
Podstawy programowania obiektowego
if
(pozX <
1
) pozX=
80
;
if
(pozY <
1
) pozY=
25
;
gotoxy(pozX, pozY);
// przesuniecie kursora
cprintf(
"%c"
,
'X'
);
}
void
main()
{
int
key;
clrscr();
samochod car1;
// utworzenie obiektu typu samochod
car1.ustawMarke(
"Audi"
);
car1.ustawModel(
"A4"
);
car1.ustawKolor(RED);
car1.przesun(
40
,
12
);
do
{
key = getch();
// pobranie kodu klawisza
switch
(key) {
case
72
: car1.przesun(
0
,-
1
);
break
;
// kody kursorow: gora
case
80
: car1.przesun(
0
,
1
);
break
;
// dol
case
77
: car1.przesun(
1
,
0
);
break
;
// prawo
case
75
: car1.przesun(-
1
,
0
);
break
;
// lewo
}
}
while
(key !=
27
);
// rozne od Esc
textcolor(WHITE);
clrscr();
}
2. Programowanie obiektowe w C++ Builder
2.1. Środowisko programowania pod Windows - C++ Builder
Nowoczesne środowiska programowania pod system Windows takie jak Borland C++ Builder
umożliwiają stworzenie programu okienkowego wykorzystującego gotowe obiekty zdefiniowane
w środowisku graficznym systemu operacyjnego lub w samym środowisku C++Builder. W większości
prostych zastosowań nie będzie konieczne "ręczne" definiowanie własnych obiektw tak jak ma to
miejsce w programowaniu strukturalnym. Większość mozolnej pracy (tworzenie plikw, okien,
obiektw kontrolnych itp.) wykonuje za nas środowisko programowania. Proces tworzenia aplikacji
Windows w tego typu środowiskach można ująć w kilku podstawowych etapach:
a)
Utworzenie projektu
(nazwanie projektu, wskazanie katalogu w ktrym przechowywane będą
wszystkie pliki składające się na projekt). Na tym etapie tworzone jest (automatycznie) głwne
okno aplikacji i głwne pliki źrdłowe aplikacji.
b)
Dodanie obiektw kontrolnych
do głwnego okna aplikacji (menu, napisy, pola tekstowe,
przyciski itp.).
c)
Utworzenie okien dodatkowych
posiadających rwnież obiekty kontrolne, ktre należy
zdefiniować (podobnie jak w głwnym oknie aplikacji: patrz pkt. 2 i 3). Okna dodatkowe
najczęściej są aktywowane przez okno głwne aplikacji (są aktywowane w metodach obsługi
zdarzeń obiektw kontrolnych), np.: zdarzenie "kliknięcie na przycisku" w głwnym oknie aplikacji
spowoduje uruchomienie (aktywowanie) okna dodatkowego.
d)
Zdefiniowanie odpowiednich "zdarzeń"
i przypisanie ich do obiektw kontrolnych, np.
zdefiniowanie metody (funkcji, procedury), ktra zostanie wykonana po kliknięciu na przycisku.
e)
Skompilowanie
i
uruchomienie
(jeżeli nie ma błędw) oraz
przetestowanie
działania aplikacji.
Strona
4
Podstawy programowania obiektowego
2.2. Przykład prostej aplikacji w CBuilder - "Ankieta"
Program "Ankieta" będzie umożliwiał przeprowadzenie prostej ankiety osobowej (np. ucznia, studenta)
zawierającej pytania o imię, nazwisko, wiek i klasa. Po wypełnieniu ankiety użytkownik może
wygenerować podsumowanie wykorzystujące dane z ankiety. Podsumowanie zostanie umieszczone w
dodatkowym oknie aplikacji a następnie zapisane do pliku o nazwie wybranej przez użytkownika. Do
zapisania pliku o wybranej nazwie i w wybranym katalogu na dysku można użyć standardowego
obiektu SaveDialog z grupy obiektw Dialogs.
Okno dodatkowe aplikacji
Okno głwne aplikacji
Okno zapisu do pliku (okno
standardowe z grupy Dialogs)
a)
Utworzenie projektu
Z menu grnego wybieramy polecenie
File
-
New Application
. Następnie polecenie
File -
Save
Project as...
. Otworzy się okno dialogowe w ktrym wybieramy katalog naszego projektu i nazwę
plikw (pliku źrdłowego Unit1.cpp - plik okna głwnego aplikacji; pliku projektu Project1.bpr). Po
wykonaniu tych czynności utworzy się puste okno głwne aplikacji gotowe do edycji o nazwie
Form1
.
Strona 5
Plik z chomika:
matipoczta
Inne pliki z tego folderu:
48 Lekcji programowania w C i C(1).pdf
(1505 KB)
Borland C Builder 5. Ćwiczenia praktyczne - Andrzej Daniluk.pdf
(1268 KB)
dragonia_programowanie_C(1).pdf
(7241 KB)
Kurs Autocad.part1.rar
(78125 KB)
Kurs Autocad.part2.rar
(34649 KB)
Inne foldery tego chomika:
Gimp
Komputer swiat
PC Format
podręczniki (wmartin88)
Standard (osiolek_74)
Zgłoś jeśli
naruszono regulamin