DEL420 Zaawansowane programowanie w (pakiecie) Delphi Andrzej Marciniak Politechnika Poznañska, Instytut Informatyki Uniwersytet im. A. Mickiewicza, Wydzia³ Matematyki i Informatyki Prezentacja multimedialna przygotowana za pomoc¹ systemu Corel Presentations 11 i X3 Copyright 2004-2010 by Andrzej Marciniak DEL-1(1 z 77)
... programowanie w Delphi ogólne informacje o pakiecie Borland Delphi przegl¹d konstrukcji jêzyka Delphi Pascal obs³uga warunków i stanów wyj¹tkowych Plan wyk³adów programowanie bibliotek ³¹czonych dynamicznie DEL-1(2 z 77)
... programowanie w Delphi automatyczne szacowanie b³êdów zaokr¹gleñ przygotowanie systemów pomocy dla programów okienkowych projektowanie programów multimedialnych (graficznych, dÿwiêkowych i animowanych) tworzenie i wykorzystywanie komponentów VCL i ActiveX Plan wyk³adów DEL-1(3 z 77)
... programowanie w Delphi konstrukcja programu-serwera oraz programu-klienta (przetwarzanie obiektów automatyzacji OLE) wielow¹tkowoœæ i synchronizacja w¹tków przygotowanie wersji dystrybucyjnej programu tworzenie stron dla sieci Web Plan wyk³adów DEL-1(4 z 77)
... programowanie w Delphi Literatura Andrzej Marciniak, Borland Delphi 5 Professional - Object Pascal, Wydawnictwo NAKOM, Poznañ Andrzej Marciniak, Delphi 5 Professional. Encyklopedia jêzyka Programowania Object Pascal i asemblera wewnêtrznego, Wydawnictwo NAKOM, Poznañ DEL-1(5 z 77)
... programowanie w Delphi Literatura Dokumentacja pakietu Borland Delphi 7 (6, 5) Professional (Language Guide, Developer s Guide) DEL-1(6 z 77)
... programowanie w Delphi Literatura System pomocy pakietu Borland Delphi 7 (6, 5) Professional DEL-1(7 z 77)
... programowanie w Delphi Literatura Xavier Pacheco, Steve Teixeira, Delphi 7 (6, 5) -Vademecum profesjonalisty, tom 1 i 2, Wydawnictwo HELION, Gliwice DEL-1(8 z 77)
... programowanie w Delphi Literatura Marco Cantù, Delphi 7 (6, 5) - praktyka programowania, tom 1 i 2, Wydawnictwo MIKOM, Warszawa DEL-1(9 z 77)
... programowanie w Delphi Organizacja i zaliczenie przedmiotu Organizacja: 30 godzin wyk³adów (15 2 godz.) 30 godzin æwiczeñ (15 2 godz.) Zaliczenie: Æwiczenia - samodzielne wykonanie 12. zadañ zaliczeniowych o wagach uzale nionych od stopnia trudnoœci. Ocena z egzaminu = {4 (ocena z æwiczeñ) + [(% obecnoœci na wyk³adach)/20] + 0,5} / 5. Opuszczenie ponad dwóch æwiczeñ bez usprawiedliwienia = brak zaliczenia. DEL-1(10 z 77)
... programowanie w Delphi Zadania zaliczeniowe (0.8) testowanie standardowych funkcji do wykonywania konwersji z wartoœci liczbowych na ³añcuchy i na odwrót oraz funkcji arytmetycznych (1.0) obs³uga warunków i stanów wyj¹tkowych (zastosowanie instrukcji try...except, try...finally i raise) (1.0) wyœwietlanie okienek z komunikatami przez standardowe funkcje i procedury oraz metody typu TApplication DEL-1(11 z 77)
... programowanie w Delphi Zadania zaliczeniowe (1.2) konstrukcja bibliotek ³¹czonych dynamicznie - statyczne i dynamiczne pobieranie funkcji i procedur (1.4) realizacja zmiennopozycyjnej arytmetyki przedzia³owej na przyk³adzie dowolnej metody numerycznej (1.2) system pomocy dla programu okienkowego i jego do³¹czenie do programu (1.6) analiza elementów jêzyka zwi¹zanych z grafik¹ DEL-1(12 z 77)
... programowanie w Delphi Zadania zaliczeniowe (0.1) wykorzystanie komponentu MediaPlayer (1.3) utworzenie komponentu VCL i jego wykorzystanie (0.7) wywo³anie innego programu paskalowego (inny program - test funkcji i procedur modu³u Math) (0.7) sprawdzanie obecnoœci poprzedniego egzemplarza programu DEL-1(13 z 77)
... programowanie w Delphi Zadania zaliczeniowe (1.0) wielow¹tkowoœæ - synchronizacja w¹tków, priorytety, oczekiwanie na zakoñczenie DEL-1(14 z 77)
Na tym wyk³adzie... ogólne informacje o pakiecie Borland Delphi nieco historii ogólna charakterystyka pakietu Borland Delphi podstawowe pojêcia zwi¹zane z konstruowaniem programów w zintegrowanym systemie programowania przegl¹d konstrukcji jêzyka Delphi Pascal (program, modu³, biblioteka, funkcje i procedury, klasy i obiekty, typy danych, zmienne, instrukcje) DEL-1(15 z 77)
Ogólne informacje... 1971 - Niklaus Wirth, The Programming Language Pascal, Acta Informatica 1, 35-63 1974 - Kathleen Jensen, Niklaus Wirth, Pascal User Manual and Report, Springer-Verlag, New York 1983 - Anders Hejlsberg, Turbo Pascal (1.0) Nieco historii Turbo Pascal 3.0 (1986) - grafika ó³wiowa (ang. turtle graphics) Turbo Pascal 4.0 (1987) - programowanie modularne Turbo Pascal 5.0 (1988) - nak³adkowanie oraz wykorzystanie wbudowanego asemblera i debuggera DEL-1(16 z 77)
Ogólne informacje... Nieco historii Turbo Pascal 5.5 (1989) - elementy programowania zorientowanego obiektowo Turbo Pascal 7.0 (1992) - pokonanie bariery 640 kb pamiêci operacyjnej Delphi (1) (1995) - konstruowanie aplikacji z elementów wizualnych, wykorzystanie bibliotek DLL, dostêp do mechanizmów obs³ugi baz danych Delphi 2 (1996) - Delphi dla 32-bitowego œrodowiska Windows 95 i NT, nowe komponenty, dziedziczenie formatek, wykorzystanie technologii OLE, zgodnoœæ z 16-bitowymi projektami DEL-1(17 z 77)
Ogólne informacje... Nieco historii Delphi 3 (1997) - implementacja kolejnych technologii dotycz¹cych programowania w œrodowisku Windows: obiektów COM, komponentów ActiveX, aplikacji serwerów WWW i wielowarstwowych aplikacji SQL Delphi 4 (1998) - usprawnienia zintegrowanego œrodowiska programowania (eksplorator modu³ów, edytor pokazuj¹cy uzupe³nianie definicji klas), technologie MIDAS, DCOM, MTS i CORBA Delphi 5 (1999) - elementy usprawniaj¹ce tworzenie aplikacji zwi¹zanych z Internetem DEL-1(18 z 77)
Ogólne informacje... Nieco historii Delphi 6 (2001) - zgodnoœæ z Kylix (bibioteka komponentów CLX - Component Library for Cross Platform) Delphi 7 (2002) - przystosowanie aplikacji stworzonych w Delphi do platformy Microsoft.NET (aplikacje korporacyjne), raportowanie wizualne ( Rave Reports), nowe komponenty specyficzne dla Windows XP, us³ugi sieciowe wykorzystuj¹ce XML (Extensible Markup Language) DEL-1(19 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Pakiet Borland Delphi 7 jest obiektowo zorientowanym, zintegrowanym systemem wizualnego programowania przeznaczonym do tworzenia programów uruchamianych w œrodowiskach operacyjnych Windows XP, Windows 2000 i Windows 98 firmy Microsoft. Poprzez po³¹czenie z pakietem Kylix umo liwia tak e przygotowanie programów wykonywanych w œrodowisku Linux. DEL-1(20 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Pakiet Borland Delphi 7 jest dostêpny w czterech wersjach: Personal (Standard, Desktop) - wersja przeznaczona do kontruowania autonomicznych (niezale nych) programów u ytkowych dla œrodowiska Windows, która zawiera ponad 85 gotowych do u ycia komponentów i liczne przyk³adowe programy okienkowe, polecana przede wszystkim osobom pocz¹tkuj¹cym w wizualnym programowaniu DEL-1(21 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Pakiet Borland Delphi 7 jest dostêpny w czterech wersjach: Professional - wersja przeznaczona dla profesjonalistów z pe³nym zintegrowanym œrodowiskiem programowania i komponentami internetowymi (³¹czna liczba komponentów przekracza 150), która dodatkowo umo liwia przygotowanie programów dla loklanych sieci komputerowych i do wielostanowiskowego obs³ugiwania baz danych DEL-1(22 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Pakiet Borland Delphi 7 jest dostêpny w czterech wersjach: Enterprise - wersja z ponad 200 komponentami, umo liwia tworzenie programów rozproszonych, typu klient-serwer (w sieciach sk³adaj¹cych siê z komputera centralnego - serwera - oraz podporz¹dkowanych mu stacji roboczych -klientów) i programów przeznaczonych dla Internetu, w tym typu e-commerce Architect - jw. + narzêdzia Bold for Delphi firmy BoldSoft (do tworzenia biznesowych aplikacji wielowarstwowych) DEL-1(23 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Podstawowym narzêdziem wszystkich wersji pakietu Borland Delphi 7 jest zintegrowane œrodowisko programowania s³u ¹ce do przygotowania (redagowania), kompilacji i przeprowadzania testów wykonania programów. DEL-1(24 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Wa nymi programami narzêdziowymi pakietów Professional, Enterprise i Architect, uruchamianymi ze zintegrowanego œrodowiska programowania lub bezpoœrednio s¹: Database Desktop (umo liwia tworzenie, przegl¹danie oraz modyfikowanie struktur baz danych, a tak e kierowanie do nich zapytañ), Image Editor (pozwala na modyfikacjê istniej¹cych oraz tworzenie nowych obrazów bitowych, piktogramów, kursorów i zasobów), Package Collection Editor (u³atwia dytrybucjê pakietów - specjalnych bibliotek z komponentami i modu³ami), Web App Debugger (umo liwia monitorowanie zapytañ, odpowiedzi i czasów odpowiedzi w sieci Web), Rave Designer (do redagowania raportów). DEL-1(25 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Wersja Professional zawiera tak e ró ne programy narzêdziowe, m. in.: BDE (skr. ang. Borland Database Engine) Administrator (do konfigurowania sterownkików obs³ugi lokalnych baz danych), Database Explorer (przegl¹darka hierarchicznych struktur lokalnych baz danych z mo liwoœci¹ ich redagowania), WinSight32 (wyœwietlanie informacji o okienkach i ich klasach oraz o wiadomoœciach aktualnie przesy³anych w œrodowisku Windows), InstallShield Express (tworzenie wersji dystrybucyjnych programów przygotowanych za pomoc¹ pakietu Delphi ). Dla standardowych funkcji i procedur jêzyka Delphi Pascal system pomocy pakietu Borland Delphi 7 zawiera ich odpowiedniki w jêzyku C++. Do systemu pomocy do³¹czono te podsystem z informacjami o wewnêtrznych funkcjach œrodowiska Windows (Windows SDK). DEL-1(26 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Jêzykiem programowania stosowanym w pakiecie Borland Delphi 7 jest Delphi Pascal (w poprzednich pakietach Delphi: Object Pascal) lub inaczej: wersja 15.0 jêzyka Pascal firmy Borland, póÿniej Inprise, a obecnie znowu Borland ( ). Kompilator tego jêzyka znacznie przewy sza szybkoœci¹ kompilatory innych jêzyków programowania wizualnego, w tym jêzyka C++ pakietów C++ Builder i Visual C++ oraz jêzyków Visual Basic i PowerBuilder. DEL-1(27 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Kompilator jêzyka Delphi Pascal jest 32-bitowym kompilatorem uwzglêdniaj¹cym kraj u ytkownika (ang. native code 32-bit compiler) œrodowiska Windows. Oznacza to, e kody wynikowe programów uwzglêdniaj¹ specyficzne (zale ne od kraju u ytkownika) sposoby zapisu daty, czasu, liczb, waluty itp. Z faktu, e kompilator wykorzystuje 32-bitowe adresowanie pamiêci wynika, e ³¹czne rozmiary tablic, ³añcuchów, rekordów i innych struktur danych mog¹ zajmowaæ do 2 GB pamiêci. DEL-1(28 z 77)
Ogólne informacje... Ogólna charakterystyka pakietu Borland Delphi Minimalnymi wymaganiami systemowymi do zainstalowania pakietu Borland Delphi 7 Professional s¹: œrodowisko operacyjne Windows 98, Windows 2000 lub Windows XP, procesor Intel Pentium II/233 MHz lub lepszy, 64 MB pamiêci operacyjnej (zaleca siê pamiêæ o pojemnoœci 128 MB), 110 MB wolnego obszaru na dysku sta³ym (dla instalacji Compact), przy czym pe³na instalacja wymaga ponad 400 MB, monitor obs³uguj¹cy kartê graficzn¹ SVGA lub o wy szej rozdzielczoœci, myszka (lub inne urz¹dzenie wskazuj¹ce). DEL-1(29 z 77)
Ogólne informacje... Podstawowe pojêcia zwi¹zane z konstruowaniem programów w zintegrowanym systemie programowania Projekt - program lub biblioteka DLL przygotowane w œrodowisku Delphi, na które sk³adaj¹ siê: a) zbiór programowy (.DPR), przy czym dla ka dego projektu istnieje tylko jeden taki zbiór, b) binarne zbiory z formatkami (.DFM), które zawieraj¹ obrazy formatek (okienek programu), c) zbiory z modu³ami (.PAS), które s¹ zwi¹zane z formatkami i które zawieraj¹ ich kody programowe. Za pomoc¹ odpowiednich dyrektyw kompilatora do projektu mog¹ byæ te do³¹czone zbiory z zasobami, z tekstami Ÿród³owymi funkcji i procedur, zbiory.obj i inne. DEL-1(30 z 77)
Ogólne informacje... Podstawowe pojêcia... Formatka - okienko, na którym w procesie tworzenia programu mo na umieszczaæ ró ne komponenty (przyciski, podokienka, napisy itp.), przy czym z ka d¹ formatk¹ jest zwi¹zany jeden modu³ programowy. Komponent - widoczny lub niewidoczny element ³¹cza u ytkownika programu znajduj¹cy siê na formatce lub powi¹zany z formatk¹. Element ten jest reprezentowany przez obiekt programowy. DEL-1(31 z 77)
Ogólne informacje... Podstawowe pojêcia... W³asnoœæ - cecha obiektu (np. napis na przycisku, kolor tekstu, tytu³ i rozmiar okienka). Zdarzenie - zjawisko wymagaj¹ce reakcji przez program (np. naciœniêcie klawisza myszki). Z ka dym komponentem s¹ zwi¹zane ró ne zdarzenia. Ich obs³uga polega na napisaniu odpowiedniej metody (procedury). DEL-1(32 z 77)
Przegl¹d konstrukcji jêzyka Delphi Pascal program Program jest g³ówn¹ wykonywaln¹ jednostk¹ programow¹ jêzyka Delphi Pascal. Wyró niamy dwa rodzaje programów:! okienkowe,! tekstowe. Chocia ogólna struktura obu rodzaju programów jest taka sama, to jednak ró ni¹ siê one w szczegó³ach. DEL-1(33 z 77)
Przegl¹d konstrukcji... W ogólnoœci program sk³ada siê z: nag³ówka - okreœla nazwê programu, deklaracji modu³ów - okreœlaj¹ modu³y, które bêd¹ do³¹czone do programu podczas jego kompilacji, bloku - sk³ada siê z opisu danych (w programach okienkowych zwykle nie wystêpuje) i czêœci wykonawczej, kropki - koñczy tekst programu. program DEL-1(34 z 77)
Przegl¹d konstrukcji... program Poniewa z ka dym programem okienkowym jest skojarzona co najmniej jedna formatka (podstawowy element wizualny), której opis znajduje siê w module, wiêc w programie okienkowym wystêpuje deklaracja co najmniej jednego modu³u. Tekst programu okienkowego jest tworzony automatycznie przez œrodowisko Delphi i na ogó³ programista nie musi dokonywaæ w nim zmian. DEL-1(35 z 77)
Przegl¹d konstrukcji... program program nazwa-programu (lista-identyfikatorów); {$APPTYPE CONSOLE} deklaracje-modu³ów czêœæ-opisowa begin ci¹g-instrukcji end. ogólna struktura programu tekstowego DEL-1(36 z 77)
program nazwa-programu; uses Forms, modu³-1 in nazwa-zbioru-dyskowego-1,... modu³-n in nazwa-zbioru-dyskowego-n ; deklaracje-innych-modu³ów czêœæ-opisowa {$R *.RES} begin Application.Initialize; ci¹g-instrukcji Application.Run end. Przegl¹d konstrukcji... program ogólna struktura programu okienkowego DEL-1(37 z 77)
Przegl¹d konstrukcji... Modu³y s³u ¹ do: modu³ opisu formatek (ka da formatka ma swój w³asny modu³, zapisany w oddzielnym zbiorze dyskowym), organizacji funkcji, procedur i (lub) obiektów w pojedyncze jednostki programowe, podzia³u wiêkszych programów na czêœci (które mog¹ byæ napisane przez ró nych programistów lub kompilowane oddzielnie). DEL-1(38 z 77)
Przegl¹d konstrukcji... unit nazwa-modu³u; czêœæ-opisowa-modu³u czêœæ-implementacyjna czêœci-inicjuj¹ca-i-finalizuj¹ca end. modu³ ogólna postaæ modu³u Czêœci inicjuj¹ca i finalizuj¹ca s¹ opcjonalne. DEL-1(39 z 77)
Przegl¹d konstrukcji... Postaæ czêœci opisowej: interface deklaracje-modu³ów definicje-litera³ów definicje-typów deklaracje-zmiennych lista-nag³ówków-procedur-i-funkcji modu³ DEL-1(40 z 77)
Przegl¹d konstrukcji... modu³ Postaæ czêœci implementacyjnej: implementation deklaracje-modu³ów definicje-litera³ów definicje-typów deklaracje-zmiennych definicje-funkcji-i-procedur-wewnêtrznych definicje-funkcji-i-procedur-o-nag³ówkach- -podanych-w-czêœci-opisowej definicje-metod-o-nag³ówkach-podanych- -w-definicjach-klas-w-czêœci-opisowej DEL-1(41 z 77)
Przegl¹d konstrukcji... modu³ Koñcowa czêœæ definicji modu³u mo e mieæ jedn¹ z trzech nastêpuj¹cych postaci:! przy braku czêœci inicjuj¹cej i finalizuj¹cej end.! z czêœci¹ inicjuj¹c¹ (przy braku czêœci finalizuj¹cej) initialization ci¹g-instrukcji end.! z czêœciami inicjuj¹c¹ i finalizuj¹c¹ initialization ci¹g-instrukcji finalization ci¹g-instrukcji end. DEL-1(42 z 77)
Przegl¹d konstrukcji... biblioteka Biblioteki ³¹czone dynamicznie (biblioteki DLL - skr. ang. dynamic link library) umo liwiaj¹ wykorzystanie przez ró ne programy tych samych wykonywalnych elementów sk³adowych. W programie paskalowym mo na korzystaæ z bibliotek napisanych w innych jêzykach programowania, a biblioteki napisane w jêzyku Delphi Pascal mog¹ byæ wykorzystane w programach napisanych w innych jêzykach. DEL-1(43 z 77)
library nazwa-biblioteki; deklaracje-modu³ów czêœæ-opisowa begin ci¹g-instrukcji end. Przegl¹d konstrukcji... ogólna postaæ biblioteki DLL biblioteka Sposób przekazywnia procedur i funkcji eksportowanych z biblioteki do programów lub modu³ów jest okreœlony w czêœci opisowej dodatkowymi klauzulami exports. Czêœæ wykonawcza bloku spe³nia rolê czêœci inicjuj¹cej biblioteki DLL. DEL-1(44 z 77)
Przegl¹d konstrukcji... pakiet Modu³y jêzyka Delphi Pascal mog¹ byæ ³¹czone w wiêksze jednostki programowe zwane pakietami. Pakiet jest specjalnym rodzajem biblioteki ³¹czonej dynamicznie, u ywanym albo przez programy okienkowe, albo przez œrodowisko Delphi, albo przez jedne i drugie. Dostêp do modu³ów zawartych w danym pakiecie jest mo liwy dopiero po jego zainstalowaniu w œrodowisku Delphi. DEL-1(45 z 77)
Przegl¹d konstrukcji... package nazwa-pakietu; requires lista-nazw-pakietów; contains lista-nazw-modu³ów; end. tekst Ÿród³owy pakietu pakiet Lista nazw pakietów wyspecyfikowana w klauzuli requires okreœla inne, zewnêtrzne pakiety u ywane przez dany pakiet. W klauzuli contains wymienia siê modu³y sk³adaj¹ce siê na dany pakiet. DEL-1(46 z 77)
Przegl¹d konstrukcji... procedura, funkcja Procedura lub funkcja jest to wyodrêbniona czêœæ algorytmu, posiadaj¹ca jednoznaczn¹ nazwê i ustalony sposób wymiany informacji z pozosta³ymi czêœciami programu. Wydzielenie czêœci algorytmu wraz z nadaniem jej nazwy i okreœleniem parametrów do komunikowania siê z otoczeniem nazywa siê definicj¹ procedury (definicj¹ funkcji). DEL-1(47 z 77)
Przegl¹d konstrukcji... procedura, funkcja procedure nazwa-procedury (lista-parametrów- formalnych); czêœæ-opisowa begin ci¹g-instrukcji end; postaæ definicji procedury Nag³ówek mo e dodatkowo zawieraæ dyrektywy okreœlaj¹ce konwencje wywo³ania. Treœæ procedury mo e sk³adaæ siê te z dyrektywy external lub byæ blokiem asemblerowym. DEL-1(48 z 77)
Przegl¹d konstrukcji... procedura, funkcja function nazwa-funkcji (lista-parametrów- formalnych) : typ-wyniku; czêœæ-opisowa begin ci¹g-instrukcji end; postaæ definicji funkcji DEL-1(49 z 77)
Przegl¹d konstrukcji... obiekt (klasa) Obiekt (klasa) jest pewnym specjalnym po³¹czeniem danych i metod (procedur i funkcji) operuj¹cych na nich. Umo liwia on hierarchizacjê ró nych struktur danych i metod, stanowi¹c jednoczeœnie podstawowy element programowania zorientowanego obiektowo (trzy zasady: hermetycznoœæ, dziedzicznoœæ, polimorfizm!). DEL-1(50 z 77)
Przegl¹d konstrukcji... pola (przechowuj¹ dane), obiekt (klasa) Klasa jest struktur¹ sk³adaj¹c¹ siê ze sta³ej liczby elementów, którymi mog¹ byæ: metody (m. in. procedury lub funkcje), w³asnoœci (³¹cza do danych, przechowywanych zwykle w polach, przy odczytywaniu i zapisywaniu których mo na wykonywaæ okreœlone operacje). DEL-1(51 z 77)
Przegl¹d konstrukcji... obiekt (klasa) type identyfikator-typu = class (przodek) lista-elementów-klasy end; ogólna postaæ definicji typu klasowego Przodek (element opcjonalny) oznacza identyfikator innego, zdefiniowanego wczeœniej typu klasowego. Typem klasowym pierwotnym jest typ TObject predefiniowany w module System. DEL-1(52 z 77)
Przegl¹d konstrukcji... Do opisu danych s³u ¹: opis danych definicje sta³ych, definicje typów, deklaracje zmiennych, a konkretne wartoœci danych, na których dzia³a algorytm, reprezentowane s¹ przez wartoœci zmiennych oraz przez sta³e. DEL-1(53 z 77)
Przegl¹d konstrukcji... opis danych Sta³e wystêpuj¹ w tekœcie programu (modu³u, biblioteki ³¹czonej dynamicznie) jako: litera³y (liczby, ³añcuchy, litera³y logiczne), których postaæ jest œciœle okreœlona i które nie wymagaj¹ definiowania przez programistê, nazwy litera³ów, tj. nazwy wprowadzone dla okreœlonych sta³ych i wyra eñ sta³ych. DEL-1(54 z 77)
Przegl¹d konstrukcji... opis danych Wszystkie zmienne wystêpuj¹ce w programie paskalowym (module, bibliotece DLL) powinny byæ opisane. W deklaracji zmiennej przypisuje siê jej okreœlony identyfikator (nazwê) oraz typ, który okreœla zbiór wartoœci, jakie dana zmienna mo e przyjmowaæ. Typ ten mo e byæ okreœlony bezpoœrednio w deklaracji zmiennej lub w definicji typu. W drugim przypadku w deklaracji zmiennej nastêpuje jedynie odwo³anie do odpowiedniego identyfikatora typu. DEL-1(55 z 77)
Przegl¹d konstrukcji... opis danych Elementem poœrednim pomiêdzy sta³¹ i zmienn¹ s¹ tzw. litera³y zmienne. S¹ to litera³y, którym w definicji nadano pocz¹tkow¹ wartoœæ i które mog¹ byæ stosowane w programie zarówno jako sta³e, jak i jako zmienne. Podobn¹ rolê spe³niaj¹ te zmienne z pocz¹tkow¹ wartoœci¹. DEL-1(56 z 77)
Przegl¹d konstrukcji... opis danych klasyfikacja typów DEL-1(57 z 77)
W jêzyku Delphi Pascal wystêpuj¹ dwie kategorie typów: typy podstawowe, typy ogólne. Przegl¹d konstrukcji... opis danych Postacie i zakresy wartoœci typów podstawowych s¹ niezale ne od procesora i systemu operacyjnego, co oznacza, e nie zmieniaj¹ siê one przy ró nych implementacjach jêzyka. Typy ogólne zale ¹ od procesora i systemu operacyjnego. W obecniej wersji jêzyka Delphi Pascal wystêpuj¹ cztery rodzaje typów predefiniowanych, w których rozró nia siê typy podstawowe i ogólne. S¹ to niektóre typy ca³kowite i rzeczywiste oraz typy znakowe i ³añcuchowe. DEL-1(58 z 77)
Typy dziel¹ siê na: standardowe, niestandardowe. Przegl¹d konstrukcji... opis danych Typy standardowe s¹ predefiniowane i nie wymagaj¹ adnego opisu. Wszystkie typy wprowadzone przez programistê musz¹ zostaæ przez niego opisane. Opis taki mo e byæ u ywany bez uprzedniego nadania temu opisowi nazwy (np. w deklaracjach zmiennych) albo te mo e byæ podany w definicji typu. Definicja opisuje typ i jednoczeœnie przyporz¹dkowuje mu identyfikator. DEL-1(59 z 77)
Przegl¹d konstrukcji... opis danych Sk³adnia definicji typów jest nastêpuj¹ca: type sekwencja-definicji-typów przy czym ka dy element sekwencji definicji typów ma postaæ identyfikator-typu = oznaczenie-typu; gdzie oznaczenie typu jest opisem typu lub identyfikatorem typu (identyfikatorem typu w opisie typu mo e byæ identyfikator typu standardowego lub typu zdefiniowanego wczeœniej). DEL-1(60 z 77)
Przegl¹d konstrukcji... Deklaracje zmiennych maj¹ postaæ opis danych var sekwencja-deklaracji przy czym ka da deklaracja, wystêpuj¹ca w sekwencji deklaracji, ma postaæ lista-identyfikatorów : oznaczenie-typu; gdzie oznaczenie typu jest opisem lub identyfikatorem typu, który okreœla typ zmiennej (zmiennych). Lista identyfikatorów sk³ada siê z jednego lub wielu (ró nych) identyfikatorów zmiennych, przy czym w drugim przypadku poszczególne identyfikatory s¹ oddzielone przecinkami. DEL-1(61 z 77)
Przegl¹d konstrukcji... opis danych W deklaracji zmiennej mo na nadaæ jej pewn¹ pocz¹tkow¹ wartoœæ, która nastêpnie mo e byæ zmieniana. Do zadeklarowania zmiennej z pocz¹tkow¹ wartoœci¹ s³u y konstrukcja var identyfikator-zmiennej : oznaczenie-typu = sta³a- typowa; gdzie oznaczenie typu jest identyfikatorem typu lub jego opisem, a sta³a typowa oznacza m. in. wyra enie sta³e. DEL-1(62 z 77)
Przegl¹d konstrukcji... opis danych Sta³e mog¹ byæ zast¹pione przez przypisane im identyfikatory. Przypisanie identyfikatorów do sta³ych (wyra eñ sta³ych) nastêpuje za pomoc¹ konstrukcji const sekwencja-definicji-nazw-litera³ów gdzie ka da definicja nazwy litera³u ma postaæ identyfikator = wyra enie-sta³e; lub identyfikator : oznaczenie-typu = sta³a-typowa; Druga postaæ definicji nazwy litera³u okreœla tzw. litera³ zmienny (w domyœlnym stanie {$J+} spe³nia on ten sam¹ rolê, co zmienna z pocz¹tkow¹ wartoœci¹). DEL-1(63 z 77)
Przegl¹d konstrukcji... Instrukcje s³u ¹ do opisu czynnoœci wykonywanych na danych. instrukcja DEL-1(64 z 77)
Przegl¹d konstrukcji... instrukcja podzia³ instrukcji DEL-1(65 z 77)
Przegl¹d konstrukcji... instrukcja Instrukcja przypisania: odwo³anie-do-zmiennej:=wyra enie W treœci funkcji tak e: nazwa-funkcji:=wyra enie Result:=wyra enie DEL-1(66 z 77)
Instrukcja z³o ona: Instrukcja jeœli : if wyra enie then instrukcja Przegl¹d konstrukcji... begin instrukcja-1; instrukcja-2;... instrukcja-n end lub if wyra enie then instrukcja else instrukcja instrukcja DEL-1(67 z 77)
Przegl¹d konstrukcji... Instrukcja wyboru: case wyra enie of sekwencja-instrukcji-wyboru end instrukcja lub case wyra enie of sekwencja-instrukcji-wyboru else instrukcja end DEL-1(68 z 77)
Przegl¹d konstrukcji... Instrukcja dla : instrukcja for zmienna:=wyra enie-1 to wyra enie-2 do instrukcja lub for zmienna:=wyra enie-1 downto wyra enie-2 do instrukcja DEL-1(69 z 77)
Przegl¹d konstrukcji... instrukcja Instrukcja dopóki (sprawdzenie warunku na pocz¹tku): while wyra enie do instrukcja Instrukcja powtarzaj (sprawdzenie warunku na koñcu): repeat instrukcja-1; instrukcja-2;... instrukcja-n until wyra enie DEL-1(70 z 77)
Przegl¹d konstrukcji... Instrukcja wi¹ ¹ca: with lista-zmiennych do instrukcja instrukcja DEL-1(71 z 77)
Przegl¹d konstrukcji... instrukcja Instrukcja wywo³ywania stanów wyj¹tkowych: raise stan-wyj¹tkowy raise stan-wyj¹tkowy at adres lub raise DEL-1(72 z 77)
Przegl¹d konstrukcji... Instrukcja try...except: try sekwencja-instrukcji except blok-obs³ugi-warunków end przy czym ostatnia klauzula mo e zawieraæ jednostkê else: instrukcja gdzie blok obs³ugi warunków mo e sk³adaæ siê albo z sekwencji instrukcji, albo z klauzul on postaci on identyfikator-warunku do instrukcja on identyfikator-warunku do instrukcja else sekwencja-instrukcji DEL-1(73 z 77)
Przegl¹d konstrukcji... Instrukcja try...finally: try sekwencja-instrukcji finally sekwencja-instrukcji end instrukcja DEL-1(74 z 77)
Przegl¹d konstrukcji... Instrukcja asemblerowa (pisanie fragmentów tekstów Ÿród³owych bezpoœrednio w asemblerze): instrukcja asm instrukcja-asemblera-1 instrukcja-asemblera-2... instrukcja-asemblera-n end DEL-1(75 z 77)
sta³ych, litera³ów zmiennych, zmiennych, Przegl¹d konstrukcji... Wyra enie jest sensown¹ kombinacj¹ operatorów i operandów, tj. wywo³añ funkcji. wyra enie Kolejnoœæ wykonywania dzia³añ okreœla priorytet operatorów, ale mo na j¹ zmieniæ przez odpowiednie zastosowanie nawiasów. DEL-1(76 z 77)
... i to by by³o na tyle (na dzisiaj) Wersjê PDF i skompresowan¹ wersjê multimedialn¹ tego wyk³adu (i nastêpnych) mo na pobraæ ze strony www.cs.put.poznan.pl/amarciniak/ - podstrona Dydaktyka. Na podanej podstronie znajduj¹ siê te informacje bie ¹ce dla studentów. DEL-1(77 z 77)