Oprogramowanie i wykorzystanie stacji roboczych. Wykład 11

Wielkość: px
Rozpocząć pokaz od strony:

Download "Oprogramowanie i wykorzystanie stacji roboczych. Wykład 11"

Transkrypt

1 Wykład 11 p. 1/5 Oprogramowanie i wykorzystanie stacji roboczych Wykład 11 Dr inż. Tomasz Olas Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska

2 Wykład 11 p. 2/5 Jam Jednym z ciekawszych projektów, które w przyszłości moga zastapić program make jest Jam. Zalety: Zwiększenie projektu nie prowadzi do tak drastycznego zwiększania się pliku konfiguracyjnego jak ma to miejsce w przypadku programu make. Automatycznie generowane sa zależności od plików nagłówkowych. Jam buduje duże projekty rozmieszczone w wielu katalogach za jednym podejściem, bez rekursywnego nawracania jak to robi make, śledzac wszystkie pliki jednocześnie. Może pracować na wielu procesorach. Jam jest mały (np. 92 kb), praktycznie nie obciaża procesora, i nie tworzy dodatkowych plików (jak np. nmake, SunOS make). Może być dowolnie konfigurowany poprzez tzw. reguły (Jamrules).

3 Wykład 11 p. 3/5 Jam kontra Make Plik konfiguracyjny dla programu Make: progam: data.o main.o io.o gcc data.o main.o io.o -o progam data.o: data.c gcc -c data.c main.o: main.c gcc -c main.c io.o: io.c gcc -c io.c io.o: io.h main.o: io.h data.h data.o: data.h io.h Plik konfiguracyjny dla programu Jam: Main progam : data.c main.c io.c ;

4 Apache Ant (I) Wykład 11 p. 4/5 Apache Ant jest częścia projektu Apache Jakarta. Opiera się na podobnym założeniu co make jeżeli chodzi o zależności i reguły, ale nie zakłada że sa to pliki i że głównym celem reguł jest uaktualnienie zadań. Używa języka XML. Jest w pełni niezależny od platformy. Został napisany z myśla o Javie, ale posiada również wsparcie do tworzenia projektu w innych językach programowania (również w C++). Ant jest napisany całkowicie w Javie.

5 Wykład 11 p. 5/5 Apache Ant (II) Plik konfiguracyjny dla programu Ant jest plikiem w formacie XML. Zazwyczaj nosi nazwę build.xml. Składa się on z różnej ilości różnych tagów, zwanych <target> (cel). Może to być np. kompilacja, utworzenie archiwum, utworzenie dokumentacji czy też wysłanie poczty elektronicznej. Każdy cel składa się z dowolnej ilości wykonywanych zadań <task>. Jest to prosta czynność, która będzie wykonywana, np. tworzenie katalogu, kopiowanie pliku, kompilacja kodu źródłowego. Każde zadanie może posiadać parametry i być zależne od innych zadań.

6 Apache Ant - przykładowy plik build.xml Wykład 11 p. 6/5 <?xml version="1.0" encoding="iso "?> <project name="first" basedir="." default="compile"> <path id="log4jclasspath"> <pathelement location="${basedir}"/> <pathelement location="/../wspolne.jar"/> </path> <target name="compile"> <javac srcdir="." classpathref="classpath" /> </target> <target name="run"> <java classpathref="" classname="org.gridwise.simple" /> </target> </project>

7 Kontrola wersji Wykład 11 p. 7/5 Kod ewoluuje. W czasie gdy projekt zmienia się z prototypu w wersję ostateczna przechodzi przez wiele cykli, w których programiści badaja nowe trendy, usuwaja błędy i stabilizuja swoje osiagnięcia. Ewolucja kodu powoduje wiele problemów, które moga być źródłem konfliktów i dodatkowej pracy, zmniejszajac w ten sposób efektywność. Jednym z ważniejszych problemów jest możliwość powrotu do starej wersji. Równie ważna jest możliwość rejestracji zmian. Kolejnym problemem jest śledzenie błędów. Często otrzymywany jest raport o błędzie w konkretnej wersji programu, podczas gdy jego kod uległ już zmianie. Czasem można rozpoznać, że bład został już usunięty, ale znacznie częściej nie ma takiej możliwości.

8 Systemy kontroli wersji Wykład 11 p. 8/5 Ręczna kontrola wersji - polega na okresowym tworzeniu kopii bezpieczeństwa całego projektu. Do plików źródłowych dopisywane sa komentarze z historia zmian. Automatyczna kontrola wersji - polega na stosowaniu systemu kontroli wersji (ang. version control system - VCS). SCCS (CSSC) - powstał w 1980 roku i w chwili obecnej jest już przestarzały. RCS - obecnie najszerzej stosowany. Doskonale nadaje się dla pojedynczych programistów i małych grup projektowych. Operuje na pojedynczych plikach. CVS - powstał na poczatku lat 90 jako front end systemu RCS, ale stosowany przez niego model kontroli wersji kwalifikował go jako zupełnie odrębny projekt. Nowe implementacje nie korzystaja już z RCS. Operuje w przeciwieństwie do RCS na katalogach, czy też całych projektach. Subversion - rozwiazuje problemy zwiazane z systemem CVS i ma największe szanse na jego zastapienie.

9 Mechanizm automatycznej kontroli wersji Wykład 11 p. 9/5 Pracę z systemem kontroli wersji rozpoczyna się od rejestracji zbioru plików źródłowych, to znaczy nakazania systemowi rozpoczęcia ich archiwizacji wraz z historia zmian. Następnie chcac wprowadzić zmiany do któregoś z plików projektu należy go wymeldować (ang. check out). Po zakończeniu pracy należy plik z powrotem zameldować (ang. check in), co powoduje dokonanie zmian w archiwum.

10 Wykład 11 p. 10/5 CVS W przypadku CVS archiwum nazywa się repozytorium (ang. repository). Projekt znajdujacy się w repozytorium to moduł (ang. module). Każdy plik w repozytorium ma przypisany numer wersji (ang. revision number). Za każdym razem, kiedy plik jest modyfikowany (czyli zatwierdzane sa zmiany), CVS zmienia (zwiększa) numer jego wersji. Podczas dodawania pliku do repozytorium nadawany jest mu numer 1.1. Pierwsze zatwierdzenie modyfikacji to numer 1.2, kolejne to 1.3 itd. Numery rewizji ida niezależnie dla każdego pliku. Istnieje możliwość zaznaczenia, że zbiór plików w konkretnych rewizjach stanowi wersję pakietu jako całości poprzez symboliczne nazwy zwane znacznikami (ang. tag). Podstawowym programem systemu CVS jest program o nazwie cvs.

11 CVS - tworzenie repozytorium Wykład 11 p. 11/5 Aby utworzyć repozytorium należy: Ustawić zmienna CVSROOT na odpowiednia wartość: export CVSROOT=katalog Zainicjować cvs: cvs init W katalogu, który podaliśmy zostanie utworzony katalog CVSROOT zawierajacy pliki niezbędne do prawidłowego funkcjonowania repozytorium. Utworzenie modułu: cvs import modulename vendorname release

12 CVS - przykładowa sesja Wykład 11 p. 12/5 Pobranie kopii modułu first: cvs checkout first Dokonanie zmian w plikach Zatwierdzenie zamian komenda comit: cvs commit -R first

13 Wykład 11 p. 13/5 Generowanie dokumentacji Istnieje szereg narzędzi wspierajacych proces tworzenia dokumentacji na podstawie komentarzy umieszczonych bezpośrednio w plikach źródłowych: javadoc doc++ doxygen Doxygen jest systemem dokumentowania kodu dla języków C++, C, Java, IDL (Corba, Microsoft i KDE-DCOP), PHP. Doxygen został utworzony dla systemu Linux, ale jest dostępny również na inne systemy Unix, jak również dla systemów Windows 9x/NT i Mac OS.

14 Wykład 11 p. 14/5 Koszty błędów Szacunkowe koszty błędu w różnych fazach projektu: Faza Koszt Analiza $1 Projekt $5 Kodowanie $10 Testy jednostkowe $15 Testy integracyjne $22 Testy systemowe $50 Po wdrożeniu $100+

15 Testy jednostkowe Wykład 11 p. 15/5 Wyrażenie test jednostkowy należy rozumieć jako test pojedynczej jednostki, poprzez która będziemy rozumieli: funkcję, metodę lub klasę. Zadaniem takiego testu jest sprawdzenie czy dana jednostka działa poprawnie. Testy jednostkowe pozwalaja na wykrycie błędów (a przynajmniej ich części) u źródła, często w bardzo prostym kodzie, a więc ich poprawienie może być znacznie szybsze i mniej kosztowne. Testy jednostkowe powinny być wykonywane cały czas wraz ze zmiana kodu programu aby sprawdzić, czy zmiany wynikajace, np. z poprawienia wykrytych błędów nie wprowadziły nowych usterek. Aby było to możliwe, to testy powinny być łatwe do wykonania czyli zautomatyzowane (może być dodatkowo zintegrowany z innymi narzędziami programistycznymi).

16 CppUnit - tworzenie testu Wykład 11 p. 16/5 Dla każdej jednostki, która chcemy testować budujemy tzw. TestCase, czyli oddzielna klasę grupujac a wszystkie testy zwiazane z dana jednostka. Testy tworzymy wykorzystujac makra CPPUNIT_ASSERT_... Stworzenie pojedynczego testu polega na umieszczeniu w tej klasie nowej metody. Jej nazwę rozpoczynamy fraz a test, np. testoblicz. Z utworzonych metod budujemy jest zestaw testów - makra CPPUNIT_TEST_... Następnie uruchamiamy proces testowania. Wykonanie każdego testu poprzedzone jest automatycznym wykonaniem standardowej metody inicjalizujacej setup, a po zakończeniu testu wykonywana jest metoda teardown.

17 CppUnit - przykład (I) Wykład 11 p. 17/5 #ifndef OBLICZENIA_H #define OBLICZENIA_H class Obliczenia { public: int oblicz(int a, int b) { return a + b; } }; #endif /* OBLICZENIA_H */

18 CppUnit - przykład (II) Wykład 11 p. 18/5 #include "obliczenia.h" #include <cppunit/testcase.h> #include <cppunit/extensions/helpermacros.h> class ObliczeniaTest : public CppUnit::TestCase { private: CPPUNIT_TEST_SUITE( ObliczeniaTest ); CPPUNIT_TEST( testoblicz ); CPPUNIT_TEST_SUITE_END(); public: void testoblicz(); }; CPPUNIT_TEST_SUITE_REGISTRATION(ObliczeniaTest);

19 CppUnit - przykład (III) Wykład 11 p. 19/5 void ObliczeniaTest::testOblicz() { Obliczenia obl; CPPUNIT_ASSERT(obl.oblicz(1, 1) == 2); CPPUNIT_ASSERT(obl.oblicz(0, 0) == 0); CPPUNIT_ASSERT(obl.oblicz(-1, -1) == -2); }

20 CppUnit - przykład (IV) Wykład 11 p. 20/5 #include <cppunit/brieftestprogresslistener.h> #include <cppunit/compileroutputter.h> #include <cppunit/extensions/testfactoryregistry.h> #include <cppunit/testresult.h> #include <cppunit/testresultcollector.h> #include <cppunit/testrunner.h> int main( int argc, char* argv[] ) { CPPUNIT_NS::TestResult controller; CPPUNIT_NS::TestResultCollector result; controller.addlistener( &result ); CPPUNIT_NS::BriefTestProgressListener progress; controller.addlistener( &progress ); CPPUNIT_NS::TestRunner runner; runner.addtest( CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest() ); runner.run( controller ); CPPUNIT_NS::CompilerOutputter outputter( &result, std::cerr ); outputter.write(); return result.wassuccessful()? 0 : 1; }

21 Debuger Wykład 11 p. 21/5 Debugowanie jest procesem lokalizacji tych fragmentów programu, które powoduja jego nieprawidłowe działanie. Najczęściej w procesie tym wykorzystywane jest specjalne narzędzie zwane debugerem. W większości przypadków debuger pozwala na: uruchomienie programu, określajac warunki, które moga wpłynać na jego działanie, zatrzymanie programu w określonych okolicznościach (poprzez ustawienie tzw. pułapek (breakpoints), krokowe wykonanie programu (linia po linii), sprawdzenie co się stało, w momencie zatrzymania (poprzez wyświetlenie wartości poszczególnych zmiennych), dokonywanie zmian w programie w czasie jego trwania.

22 Wykład 11 p. 22/5 GDB GNU Debuger (GDB) - debuger będacy częścia projektu GNU. Został utworzony w 1988 r. przez Richarda Stallmana. GDB działa w trybie tekstowym. Zdecydowana większość zintegrowanych środowisk programistycznych posiadajacych interfejs graficzny potrafi prezentować wyniki działania GDB. stnieja nakładki na GDB (front-end) pozwalajace wykorzystywać jego funkcjonalność przy użyciu graficznego interfejsu użytkownika (GNU Visual Debugger, Data Display Debugger). Przy użyciu gdb możemy debugować: program w czasie działania, na podstawie zrzutu pamięci (plik core), aktualnie działajacy proces (przez podanie PID).

23 GDB - przykładowa sesja (I) Wykład 11 p. 23/5 Kompilujemy program (lub debugowane pliki źródłowe) z opcja kompilatora -g: g++ -g -o test test.cpp Uruchamiamy debuger z parametrem określajacym debugowany program: gdb test Ustawiamy breakpoint (pułapkę) w funkcji main: (gdb) break main Uruchamiamy program: (gdb) run Wyświetlamy linię kodu otaczajacej miejsce zatrzymania: (gdb) list

24 GDB - przykładowa sesja (II) Wykład 11 p. 24/5 Wykonujemy kolejna linię programu (bez rozwijania funkcji): (gdb) next Wyświetlamy wartość zmiennej a: (gdb) print a Wymuszamy śledzenie wartości zmiennej result: (gdb) watch result Wykonujemy kolejna linię programu (rozwijajac funkcję): (gdb) step Ustawiamy wartość zmiennej result: (gdb) set result = 1 Kończymy pracę z debugerem: (gdb) quit

25 DDD Wykład 11 p. 25/5

26 Valgrind (I) Wykład 11 p. 26/5 Valgrind może służyć do sprawdzenia, czy program posiada poprawna liczbę odwołań przydzielajacych i zwalniajacych pamięć (new/delete, malloc/free). W tym celu uruchamiamy narzędzie Valgrind w następujacy sposób: valgrind --tool=memcheck --leak-check=yes przyklad1 Dla przykładu: int main() { char *x = new char[10]; return 0; } Otrzymamy: ==20871== 10 bytes in 1 blocks are definitely lost in loss record 1 of 1 ==20871== at 0x4C214F7: operator new[](unsigned long) (in /usr/lib64/valgrin ==20871== by 0x400629: main (przyklad1.cpp:3)

27 Wykład 11 p. 27/5 Valgrind (II) Valgrind może służyć również do lokalizacji błędnych odwołań do pamięci. Dla przykładu: int main() { char *x = new char[10]; x[10] = a ; return 0; } Otrzymamy: ==21196== Invalid write of size 1 ==21196== at 0x400676: main (przyklad2.cpp:4) ==21196== Address 0x58f703a is 0 bytes after a block of size 10 alloc d ==21196== at 0x4C214F7: operator new[](unsigned long) (in /usr/lib64/valgrin ==21196== by 0x400669: main (przyklad2.cpp:3)

28 Wykład 11 p. 28/5 Valgrind (III) Valgrind może służyć również do wykrywania przypadków użycia niezainicjowanych zmiennych. Dla przykładu: int main() { int x; if(x == 0) std::cout << "x jest rowne zero" << std::endl; return 0; } Otrzymamy: ==21246== Conditional jump or move depends on uninitialised value(s) ==21246== at 0x4008F0: main (przyklad3.cpp:6)

29 Wykład 11 p. 29/5 Profiler Profilowanie jest w wielu wypadkach bardzo istotnym etapem tworzenia aplikacji. Zadaniem profilera jest zbadanie programu pod katem częstości i czasu wykonania poszczególnych funkcji, czy też linii kodu. Informacje uzyskane z etapu profilowania pozwalaja na wyodrębnienie fragmentów kodu programu, które powinny zostać zoptymalizowane. Dzięki temu moga zostać zlokalizowane i zlikwidowane tzw. waskie gardła oprogramowania (bottle neck).

30 gprof Wykład 11 p. 30/5 Jednym z narzędzi do profilowania aplikacji w systemach Linux jest narzędzie gprof (GNU GProf). W celu wykorzystania narzędzia gprof należy: skompilować program w taki sposób, aby dodane zostały informacje dla profilera: g++ -pg -g przyklad.cpp -o przyklad uruchomić wcześniej odpowiednio skompilowany program (utworzony zostanie plik gmon.out zawierajacy informacje dotyczace wykonania programu):./przyklad uruchomić narzędzie gprof w celu analizy wygenerowanego wcześniej pliku z profilem: gprof [opcje]./przyklad

31 gprof - tryby pracy Wykład 11 p. 31/5 GNU Gprof może pracować w jednym z trzech trybów: profil płaski, graf wywołań, wydruk kodu wraz z komentarzem (profilowanie pojedynczych linii). Główne opcje narzędzia gprof: -A - włacza wydruk kodu z komentarzem, -J - wyłacza wydruk kodu z komentarzem, -p - włacza płaski profil, -P - wyłacza płaski profil, -q - włacza graf wywołań, -Q - wyłacza graf wywołań. Domyślnym zestawem opcji jest -p -q.

32 gprof - przykład Wykład 11 p. 32/5 double f2(int a, int b) { double r = 0.0; for (int i = 0; i < 10000; ++i) r += b/a + sin(0.5) + cos(0.7); return r; } double f1() { double res = 0.0; for (int i = 1; i <= 100; ++i) for (int j = 1; j <= 10; ++j) res += f2(i, j); return res; } int main() { std::cout << f1() << std::endl; return 0; }

33 gprof - profil płaski Wykład 11 p. 33/5 Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls ms/call ms/call name f2(int, int) global constructors keyed to _Z f1() static_initialization_and_des

34 gprof - graf wywołań Wykład 11 p. 34/5 index % time self children called name <spontaneous> [1] main [1] /1 f1() [3] /1000 f1() [3] [2] f2(int, int) [2] /1 main [1] [3] f1() [3] /1000 f2(int, int) [2] /1 atexit [6] [8] global constructors keyed to _Z2f2ii [8] /1 static_initialization_and_destruct /1 global constructors keyed to _Z2f2ii [9] static_initialization_and_destruction_

35 gprof - wydruk kodu z komentarzem Wykład 11 p. 35/ > double f2(int a, int b){ double r = 0.0; for (int i = 0; i < 10000; ++i) r += b/a + sin(0.5) + cos(0.7); return r; } 1 -> double f1(){ double res = 0.0; for (int i = 1; i <= 100; ++i) for (int j = 1; j <= 10; ++j) res += f2(i, j); return res; } ##### -> int main(){ std::cout << f1() << std::endl; return 0; 1 -> }

36 KProf Wykład 11 p. 36/5

37 Doxygen Doxygen wspiera tworzenie dokumentów poprzez: Bezpośrednie generowanie dokumentacji z plików źródłowych. Dzięki temu łatwiejsze jest utrzymywanie spójności dokumentacji z plikami źródłowymi. Umożliwia generowanie dokumentacji on-line (HTML), jak również plików w formacie L A T E X ze zbioru udokumentowanych plików źródłowych. Umożliwia również generowanie plików z dokumentacja w formatach RTF, (MS-Word), PostScript, PDF, oraz plików pomocy systemu Unix (man pages). Doxygen może zostać tak skonfigurowany, że jest możliwe tworzenie struktury z nieudokumentowanych plików źródłowych. Relacje pomiędzy poszczególnymi elementami projektu moga być automatycznie tworzone i wyświetlane w postaci grafu zależności oraz diagramu dziedziczenia. Doxygen może zostać również użyty do tworzenia normalnych dokumentów. Wykład 11 p. 37/5

38 Wykład 11 p. 38/5 Doxygen - użycie Doxygen używa pliku konfiguracyjnego do określenia swoich ustawień. Każdy projekt powinien posiadać swój własny plik konfiguracyjny. Generowanie pliku konfiguracyjnego: doxygen -g <config-file> Format pliku konfiguracyjnego: TAGNAME = VALUE or TAGNAME = VALUE1 VALUE2... Plik konfiguracyjny może być edytowany ręcznie, lub poprzez graficzne narzędzie doxywizard. Uruchamianie programu Doxygen: doxygen <config-file>

39 Wykład 11 p. 39/5 Doxygen - opcje pliku konfiguracyjnego PROJECT NAME - nazwa projektu dla którego generowana jest dokumentacja, INPUT - katalogi gdzie znajduja się pliki źródłowe i nagłówkowe dla których będzie generowana dokumentacja, OUTPUT LANGUAGE - język w jakim ma być wygenerowana dokumentacja (polski - Polish). OUTPUT DIRECTORY - katalog w którym zostanie umieszczona dokumentacja, HTML OUTPUT - generowana będzie dokumentacja w formacie HTML oraz analogiczne opcje - RTF OUTPUT, LATEX OUTPUT oraz MAN OUTPUT.

40 Doxygen - dokumentowanie kodu Wykład 11 p. 40/5 Blok dokumentacji jest komentarzem w stylu języka C lub C++ z dodatkowymi znacznikami. Rozróżnia się dwa rodzaje opisów: opis skrócony (brief description) opis szczegółowy (detailed description) Komentarz umieszczamy zazwyczaj przed opisywana funkcja, struktura danych itp. Pierwsze zdanie (do kropki), służacy jako krótki ogólny opis. Potem można umieścić trochę szczegółów (jeżeli potrzeba). Dobrym zwyczajem jest opisanie wszystkich parametrów np. funkcji używajac a zwracana nazwa opis

41 Doxygen - opisy szczegółowe Formaty opisów szczegółowych: /** *... opis szczegółowy... */ /*! *... opis szczegółowy... */ /*!... opis szczegółowy... */ /// ///... opis szczegółowy... /// //! //!... opis szczegółowy... //! ///////////////////////////////////////////////// ///... opis szczegółowy... ///////////////////////////////////////////////// Wykład 11 p. 41/5

42 Wykład 11 p. 42/5 Doxygen - opisy skrócone Format opisu skróconego może być jednym z poniższych: /*! \brief opis skrócony * kontynuacja opisu skróconego * * opis szczegółowy * kontynuacja opisu szczegółowego */ /// opis skrócony /** opis szczegółowy */

43 Wykład 11 p. 43/5 Doxygen - opis zmiennych Opis do zmiennych może być umieszczony za deklaracja zmiennej: int var; /*!< opis szczegółowy */ int var; /**< opis szczegółowy */ int var; //!< opis szczegółowy //!< int var; ///< opis szczegółowy ///< int var; //!< opis skrócony int var; ///< opis skrócony

44 Doxygen - przykład opisu funkcji Wykład 11 p. 44/5 Przykład: /** * Funkcja nic nie robi (opis ogólny). Ta funkcja naprawdę nic nie robi * (opis szczegółowy). par1 naprawdę wszystko jedno, co podasz par2 też nie ma znaczenia zawsze -18 coś_robi */ int nic_nie_robi(int par1, char *par2) { return -18; } Opis funkcji może być umieszczony zarówno przy deklaracji, jak również przy definicji funkcji.

45 Doxygen - przykład Wykład 11 p. 45/5 /// Opis dla pierwszej klasy class First { }; /// Opis skrócony dla Second /** Opis szczegółowy dla Second */ class Second: public First { public: /// Opis zmiennej wartosc. double wartosc; Second(); }; /// Opis metody przy definicji. Second::Second() { }

46 Eclipse Wykład 11 p. 46/5 Eclipse to udostępniona na zasadzie open source platforma służaca do integracji różego typu narzędzi (głównie programistycznych, ale nie tylko). Działaja one w ramach jednego środowiska, co sprawia, że użytkownik przekonany jest, że ma doczynienia z zaawansowanym, ale pojedynczym programem. W prosty sposób środowisko Eclipse może być dostosowywane do potrzeb użytkownika poprzez konfigurację polegajac a w głównej mierze na dodawaniu modułów (pluginów) dostosowanych do realizacji poszczególnych zadań. Pierwsza wersja środowiska Eclipse została zaprezentowana w listopadzie 2001 roku przez IBM oraz Object Technology International (OTI).

47 Wykład 11 p. 47/5 Środowisko Eclipse Po uruchomieniu Eclipse pojawia się okno będace obszarem roboczym składajacym się z kilku paneli. Służa one do edycji poszczególnych plików projektu oraz do prezentacji struktury projektu i jego elementów. Projekty znajduja się w tzw. przestrzeni projektów. Podstawowymi elementami środowiska eclipse sa: edytor, widok, perspektywa.

48 Edytor Wykład 11 p. 48/5 Edytor (Editor) jest to część środowiska, która pozwala na edycję zasobów (plików) określonego typu.

49 Wykład 11 p. 49/5 Widok Widok (View) służy zazwyczaj do nawigacji w ramach projektu badź do wyświetlania informacji o strukturze jego elementów lub różnych komunikatów.

50 Perspektywa Wykład 11 p. 50/5 Perspektywa (Perspective) oznacza odpowiednia zapamiętana konfigurację edytorów i widoków, przywołana w momencie, gdy ma zostać wykonane określonego typu zadanie.

51 Standardowe perspektywy Wykład 11 p. 51/5 Bezpośrednio po zainstalowaniu środowiska Eclipse do dyspozycji użytkownika sa następujace perspektywy: Java, Debug, Java Browsing, Java Type Hierarchy, CVS REpository Exploring, Plug-in Development, Resource, Team Synchronizing.

52 Projekty Wykład 11 p. 52/5 Projekt jest podstawowa jednostka organizacyjna w Eclipse w stosunku do zawartych w nim elementów (plików). Projekt odpowiada najczęściej pojedynczej aplikacji. Wszystkie pliki tworzace aplikacje musza być zawarte w projekcie. Projekt może składać się z jednego lub wielu folderów, które moga być zagnieżdzone. Projekt opisany jest zestawem parametrów, które dotycza sposobu kompilacji, dołaczonych bibliotek, ścieżek, itp. Projekty zgrupowane sa w tzw. przestrzeni projektów (workspace).

53 Instalacja Eclipse Wykład 11 p. 53/5 Instalacja Eclipse polega na rozkompresowaniu pojedynczego pliku, który można pobrać ze strony (np. eclipse-sdk linux-gtk.tar.gz). W powstałym katalogu eclipse będzie znajdował się plik eclipse, który należy uruchomić. Do uruchomienia środowiska Eclipse niezbędna jest maszyna wirtualna javy (JRE). JRE firmy IBM można również pobrać ze strony Eclipse (np. IBMJava2-SDK-142.tgz) - po rozkompresowaniu należy do ścieżki przeszukiwań dla plików wykonywalnych dodać podkatalog jre/bin.

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache

Bardziej szczegółowo

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po

Bardziej szczegółowo

Programowanie w Javie

Programowanie w Javie Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student

Bardziej szczegółowo

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka Javadoc Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka Wprowadzenie do Javadoc Treść prezentacji: http://students.mimuw.edu.pl/~as219669/javadoc.pdf Zadania: http://students.mimuw.edu.pl/~as219669/zadanie.rar

Bardziej szczegółowo

CVS system kontroli wersji

CVS system kontroli wersji CVS system kontroli wersji Agenda Podstawowe pojęcia Podstawowe polecenia Metody dostępu do repozytorium Konfiguracja i używanie aplikacji klienckich Konflikty i ich rozwiązywanie Dodatkowe możliwości

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

Załącznik 1 instrukcje instalacji

Załącznik 1 instrukcje instalacji Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych

Bardziej szczegółowo

1.Wstęp. 2.Generowanie systemu w EDK

1.Wstęp. 2.Generowanie systemu w EDK 1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).

Bardziej szczegółowo

Java jako język programowania

Java jako język programowania Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

Programowanie niskopoziomowe

Programowanie niskopoziomowe W. Complak, J.Kniat, M. Antczak, K. Kwarciak, G. Palik, A. Rybarczyk, Ł. Wielebski Materiały Programowanie niskopoziomowe http://www.cs.put.poznan.pl/arybarczyk/c_w_0.pdf Spis treści 1. Instalacja środowiska

Bardziej szczegółowo

Wybrane narzędzia wspomagające dokumentowanie programu

Wybrane narzędzia wspomagające dokumentowanie programu Wybrane narzędzia wspomagające dokumentowanie programu Krzysztof Gogól Paweł Konieczny Uniwersytet Warszawski 18 III 2008 Plan prezentacji 1 Wprowadzenie 2 Wstęp Dobre praktyki Przykłady 3 - co to? - pierwsze

Bardziej szczegółowo

Ćwiczenie 1. Przygotowanie środowiska JAVA

Ćwiczenie 1. Przygotowanie środowiska JAVA Ćwiczenie 1 Przygotowanie środowiska JAVA 1. Wprowadzenie teoretyczne Instalacja JDK (Java Development Kit) NaleŜy pobrać z java.sun.com środowisko i zainstalować je. Następnie naleŝy skonfigurować środowisko.

Bardziej szczegółowo

Delphi podstawy programowania. Środowisko Delphi

Delphi podstawy programowania. Środowisko Delphi Delphi podstawy programowania Środowisko Delphi Olsztyn 2004 Delphi Programowanie obiektowe - (object-oriented programming) jest to metodologia tworzeniu programów komputerowych definiująca je jako zbiór

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Programowanie Proceduralne

Programowanie Proceduralne Programowanie Proceduralne Makefile Bożena Woźna-Szcześniak bwozna@gmail.com Akademia im. Jana Długosza Wykład 14 Co to jest Makefile Makefile jest plikiem reguł dla programu make. Wykorzystywany jest

Bardziej szczegółowo

1. System kontroli wersji. 1.1. Instalacja programu kontroli wersji CVS

1. System kontroli wersji. 1.1. Instalacja programu kontroli wersji CVS 1 1. System kontroli wersji Już przy tak małym projekcie niezbędnym okazało się wdrożenie systemu kontroli wersji, co umożliwiło grupową pracę uczestników projektu. CVS jest narzędziem pomagającym w organizacji

Bardziej szczegółowo

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika Warsztaty AVR Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR Dariusz Wika 1.Krótki wstęp: Eclipse to rozbudowane środowisko programistyczne, które dzięki możliwości instalowania

Bardziej szczegółowo

C++ - [1-3] Debugowanie w Qt Creator

C++ - [1-3] Debugowanie w Qt Creator Slajd 1 z 10 C++ - [1-3] Debugowanie w Qt Creator Nysa 2004-2013. Autor: Wojciech Galiński. wersja dnia 15 maja 2013 r. Slajd 2 z 10 Pojęcia związane z debugowaniem DEBUGOWANIE (z ang. debugging odrobaczanie)

Bardziej szczegółowo

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 4

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 4 Wykład 4 p. 1/1 Oprogramowanie i wykorzystanie stacji roboczych Wykład 4 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Obsługa sieci Wykład

Bardziej szczegółowo

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor

Bardziej szczegółowo

Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski

Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski Sposoby wykrywania i usuwania błędów Tomasz Borzyszkowski Mylić się jest rzeczą ludzką Typy błędów: błędy specyfikacji: źle określone wymagania błędy projektowe: nieodpowiednie struktury danych i algorytmy

Bardziej szczegółowo

Wprowadzenie do środowiska Qt Creator

Wprowadzenie do środowiska Qt Creator 1.Instalacja środowiska Qt Creator Qt Creator jest wygodnym środowiskiem programistycznym przeznaczonym do tworzenia projektów, czyli aplikacji zarówno konsolowych, jak i okienkowych z wykorzystaniem biblioteki

Bardziej szczegółowo

Ćwiczenia 9: Zarządzanie konfiguracją Zadania:

Ćwiczenia 9: Zarządzanie konfiguracją Zadania: Ćwiczenia 9: Zarządzanie konfiguracją Zadania: Konfiguracja repozytorium CVS: 1. Ściągnij i zainstaluj serwer CVS: CVSNT (www.cvsnt.org). 2. W konfiguracji repozytoriów (Panel Sterowania -> CVSNT) wybierz

Bardziej szczegółowo

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem. WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy

Bardziej szczegółowo

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest

Bardziej szczegółowo

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga! Programowanie I O czym będziemy mówili Podstawy programowania w językach proceduralnym ANSI C obiektowym Java Uwaga! podobieństwa w podstawowej strukturze składniowej (zmienne, operatory, instrukcje sterujące...)

Bardziej szczegółowo

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010

System kontroli wersji - wprowadzenie. Rzeszów,2 XII 2010 System kontroli wersji - wprowadzenie Rzeszów,2 XII 2010 System kontroli wersji System kontroli wersji (ang. version/revision control system) służy do śledzenia zmian głównie w kodzie źródłowym oraz pomocy

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans. GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego

Bardziej szczegółowo

Programowanie poprzez testy z wykorzystaniem JUnit

Programowanie poprzez testy z wykorzystaniem JUnit Programowanie poprzez testy z wykorzystaniem JUnit Programowanie ekstremalne (XP) XP zaproponowano w 1999 (K. Beck: Extreme Programming Explained ) XP dedykowane jest do projektów: O małym lub średnim

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl Prezentacja współfinansowana przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach projektu Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR

Programowanie mikrokontrolerów AVR Programowanie mikrokontrolerów AVR Czym jest mikrokontroler? Mikrokontroler jest małym komputerem podłączanym do układów elektronicznych. Pamięć RAM/ROM CPU wykonuje program Układy I/O Komunikacje ze światem

Bardziej szczegółowo

Systemy zarządzania wersjami

Systemy zarządzania wersjami 24 października 2007 Po co? Dla kogo? Dlaczego? aby ułatwić kontrolę nad projektem aby panować nad wersjami aby móc śledzić zmiany dla każdego projektu, przy którym pracuje więcej niż jedna osoba dla ludzi

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8 Programowanie Urządzeń Mobilnych Laboratorium nr 7, 8 Android Temat 1 tworzenie i uruchamianie aplikacji z użyciem Android SDK Krzysztof Bruniecki 1 Wstęp Platforma Android jest opartym na Linuxie systemem

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Pobieranie edytora CodeLite

Pobieranie edytora CodeLite Pobieranie edytora CodeLite Wejdź na stronę http://codelite.org/ a następnie przejść do ekranu pobierania (bez wykonywania dobrowolnej wpłaty). Kliknij na zakładkę Download a następnie No thanks, just

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny

Bardziej szczegółowo

Partnerzy: Laboratorium 15

Partnerzy: Laboratorium 15 Laboratorium 15 System kontroli wersji. Mercurial wraz z Subversion, CVS czy też programem Git należy do grupy aplikacji określanych mianem systemów kontroli wersji. Umożliwiają one sprawną prace wielu

Bardziej szczegółowo

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

Tworzenie oprogramowania

Tworzenie oprogramowania Tworzenie oprogramowania Język C Budowa programu napisanego w języku C podział na pliki z definicjami funkcji, korzystanie z bibliotek systemowych i własnych automatyzacja kompilacji za pomocą make dzielenie

Bardziej szczegółowo

Instrukcja laboratoryjna cz.3

Instrukcja laboratoryjna cz.3 Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:

Bardziej szczegółowo

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pierwsze kroki Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Co znaczy

Bardziej szczegółowo

Adam Wójs git --wprowadzenie

Adam Wójs <adam[shift+2]wojs.pl> git --wprowadzenie Adam Wójs git --wprowadzenie Życie programisty A) Rozwój projektu B) Naprawianie błędów C) Refaktoryzacja kodu Ekstremalny przykład Wersja jądra Lb-a programistów Lb-a linii kodu

Bardziej szczegółowo

Java Podstawy JUST JAVA 28.03.2007. Michał Bereta Intytu Modelowania Komputerowego Wydział Fizyki, Matematyki i Informatyki Stosowanej

Java Podstawy JUST JAVA 28.03.2007. Michał Bereta Intytu Modelowania Komputerowego Wydział Fizyki, Matematyki i Informatyki Stosowanej Java Podstawy JUST JAVA 28.03.2007 Michał Bereta Intytu Modelowania Komputerowego Wydział Fizyki, Matematyki i Informatyki Stosowanej beretam@torus.uck.pk.edu.pl http://torus.uck.pk.edu.pl/~beretam Hello

Bardziej szczegółowo

IBM SPSS Statistics - Essentials for R: Instrukcje instalacji dla Linux

IBM SPSS Statistics - Essentials for R: Instrukcje instalacji dla Linux IBM SPSS Statistics - ssentials for R: Instrukcje instalacji dla Linux Przedstawione poniżej instrukcje dotyczą instalowania IBM SPSS Statistics - ssentials for R w systemach operacyjnych Linux. Przegląd

Bardziej szczegółowo

Podstawy programowania w Qt4

Podstawy programowania w Qt4 Podstawy programowania w Qt4 Rafał Rawicki 21 kwietnia 2007 Co to jest Qt? Zestaw bibliotek dla języka C++ oraz narzędzia roszerzające jego możliwości Ponad 400 klas Introspekcja oraz mechanizm sygnałów

Bardziej szczegółowo

Przygotowanie platformy projektowo-programowej

Przygotowanie platformy projektowo-programowej Przygotowanie platformy projektowo-programowej Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej dr inż. Łukasz Szustak Agenda System Kontroli Wersji (SVN) Zintegrowane

Bardziej szczegółowo

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016 Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal

Bardziej szczegółowo

X P.I.W.O. Portowanie Tizena na nowe architektury na przykładzie ARMv6. Maciej Wereski Samsung R&D Institute Poland. 17 Maj 2014 - Poznań, Polska

X P.I.W.O. Portowanie Tizena na nowe architektury na przykładzie ARMv6. Maciej Wereski Samsung R&D Institute Poland. 17 Maj 2014 - Poznań, Polska X PIWO 17 Maj 2014 - Poznań, Polska Portowanie Tizena na nowe architektury na przykładzie ARMv6 Maciej Wereski Samsung R&D Institute Poland Plan prezentacji Środowisko budowania Tizena Infrastruktura GBS

Bardziej szczegółowo

IBM SPSS Statistics Wersja 23. Konfigurowanie ułatwień dostępu

IBM SPSS Statistics Wersja 23. Konfigurowanie ułatwień dostępu IBM SPSS Statistics Wersja 23 Konfigurowanie ułatwień dostępu Spis treści Oprogramowanie technologii pomocniczych............ 1 Oprogramowanie dla systemu Windows....... 1 Oprogramowanie dla systemu Mac

Bardziej szczegółowo

Multimedia JAVA. Historia

Multimedia JAVA. Historia Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania

Bardziej szczegółowo

PROGRAMOWANIE w C prolog

PROGRAMOWANIE w C prolog PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014

Bardziej szczegółowo

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Uruchamianie edytora OpenOffice.ux.pl Writer 9 Dostosowywanie środowiska pracy 11 Menu Widok 14 Ustawienia dokumentu 16 Rozdział 2. OpenOffice

Bardziej szczegółowo

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44 Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne

Bardziej szczegółowo

1. Opis. 2. Wymagania sprzętowe:

1. Opis. 2. Wymagania sprzętowe: 1. Opis Aplikacja ARSOFT-WZ2 umożliwia konfigurację, wizualizację i rejestrację danych pomiarowych urządzeń produkcji APAR wyposażonych w interfejs komunikacyjny RS232/485 oraz protokół MODBUS-RTU. Aktualny

Bardziej szczegółowo

Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania

Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania Kraków 2010 Przeznaczenie programu. Program BKP_SQL powstał z myślą ułatwienia procesy archiwizacji baz danych MSSQL. Program umożliwia seryjne wykonanie

Bardziej szczegółowo

Ministerstwo Finansów Departament Informatyzacji Usług Publicznych

Ministerstwo Finansów Departament Informatyzacji Usług Publicznych Ministerstwo Finansów Instrukcja programu epit WALIDATOR Grudzień Historia modyfikacji Data Wersja Opis Autor 2003 1 Utworzenie dokumentu DI/NWK 2007 Aktualizacja RI/GST/JNM 2008 Aktualizacja RI/GST/JNM

Bardziej szczegółowo

Programowanie Komputerów 2FD. Materiały pomocnicze do laboratorium

Programowanie Komputerów 2FD. Materiały pomocnicze do laboratorium Programowanie Komputerów 2FD Materiały pomocnicze do laboratorium 2 Spis treści ZAJĘCIA 1. WPROWADZENIE... 4 1. ZAPOZNANIE SIĘ ZE ŚRODOWISKIEM PRACY... 4 Praca w sieci lokalnej... 4 Sposób logowania...

Bardziej szczegółowo

Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza

Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza Projektowanie układów VLSI-ASIC za pomocą techniki komórek standardowych przy użyciu pakietu Cadence Programowanie,

Bardziej szczegółowo

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4 ICD 2 Czym jest In-Circuit Debugger? 2 O poradniku 3 Gdzie szukać dodatkowych informacji? 4 ICD 1 ICD 25.08.2009 Czym jest In-Circuit Debugger? Większość procesorów dostarcza systemów debugowania (ang.

Bardziej szczegółowo

Budowa i oprogramowanie komputerowych systemów sterowania. Laboratorium 4. Metody wymiany danych w systemach automatyki DDE

Budowa i oprogramowanie komputerowych systemów sterowania. Laboratorium 4. Metody wymiany danych w systemach automatyki DDE Budowa i oprogramowanie komputerowych systemów sterowania Laboratorium 4 Metody wymiany danych w systemach automatyki DDE 1 Wprowadzenie do DDE DDE (ang. Dynamic Data Exchange) - protokół wprowadzony w

Bardziej szczegółowo

1. Metryki złożoności modułowej i międzymodułowej Chidamber & Kemerer (CK)

1. Metryki złożoności modułowej i międzymodułowej Chidamber & Kemerer (CK) 1. Metryki złożoności modułowej i międzymodułowej Chidamber & Kemerer (CK) 1.1. Podstawowe metryki CK: międzymodułowe CBO, RFC modułowe WMC, DIT, NOC, LCOM1. 1.2. Uzupełniony zbiór metryk przez innych

Bardziej szczegółowo

Rozdział 1. Informacje ogólne

Rozdział 1. Informacje ogólne Rozdział 1. Informacje ogólne 1.1. Wprowadzenie Dokument ten opisuje jak zainstalować OMNeT++ na platformie Windows. Poszczególne rozdziały i podrozdziały poświęcone są instalacji, konfiguracji, kompilacji

Bardziej szczegółowo

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI asix Aktualizacja pakietu asix 4 do wersji 5 lub 6 Pomoc techniczna Dok. Nr PLP0016 Wersja:08-12-2010 ASKOM i asix to zastrzeżony znak firmy ASKOM Sp. z o. o.,

Bardziej szczegółowo

Dokumentacja kompilacji źródeł aplikacji 1.0

Dokumentacja kompilacji źródeł aplikacji 1.0 Projekt dofinansowany ze środków Mechanizmu Finansowego Europejskiego Obszaru Gospodarczego Dokumentacja kompilacji źródeł aplikacji Projekt: Wypracowanie i wdrożenie innowacyjnych metod integracji danych

Bardziej szczegółowo

METODY REPREZENTACJI INFORMACJI

METODY REPREZENTACJI INFORMACJI Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Magisterskie Studia Uzupełniające METODY REPREZENTACJI INFORMACJI Ćwiczenie 1: Budowa i rozbiór gramatyczny dokumentów XML Instrukcja

Bardziej szczegółowo

ZAPOZNANIE SIĘ Z TWORZENIEM

ZAPOZNANIE SIĘ Z TWORZENIEM LABORATORIUM SYSTEMÓW MOBILNYCH ZAPOZNANIE SIĘ Z TWORZENIEM APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Podstawowe wiadomości z zakresu języka Java Podstawowa znajomość środowiska Eclipse

Bardziej szczegółowo

Programowanie w C. dr inż. Stanisław Wszelak

Programowanie w C. dr inż. Stanisław Wszelak Programowanie w C dr inż. Stanisław Wszelak Przeszłość i przyszłość składni programowania w C Ken Thompson Denis Ritchie Bjarne Stoustrup Zespoły programistów B C C++ C# 1969 rok Do SO UNIX 1972 rok C++

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer Maven 2 podstawowe informacje Apache Maven jest narzędziem automatyzującym budowę oprogramowania

Bardziej szczegółowo

Piotr Dwieczkowski. Code coverage. Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++

Piotr Dwieczkowski. Code coverage. Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++ Piotr Dwieczkowski Code coverage Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++ Plan Co to jest pokrycie kodu? Możliwe sposoby wykorzystania Rodzaje statystyk Wady i zalety mierzenia porycia kodu

Bardziej szczegółowo

NETBEANS PROFILER TOMASZ ŁUKASZUK

NETBEANS PROFILER TOMASZ ŁUKASZUK NETBEANS PROFILER TOMASZ ŁUKASZUK STRESZCZENIE: Dokument zawiera podstawowe informacje dotyczące programu NetBeans Profiler. Stanowi uproszczoną instrukcję jego używania. Dotyczy NetBeans Profiler w wersji

Bardziej szczegółowo

ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4

ZSBD ćwiczenie 4. Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. Wymagania: ZSBD ćwiczenie 4 Zaawansowane Systemy Bazy Danych - ZSBD ZSBD ćwiczenie 4 Obiektowe systemy zarządzania bazą danych. Przygotowanie środowiska pracy. ZSBD ćwiczenie 4 W ramach tych i dwóch kolejnych ćwiczeń zapoznacie się

Bardziej szczegółowo

Spis treści. 1 Java T M

Spis treści. 1 Java T M Spis treści 1 Java T M 1 2 Co to jest Platforma Java T M 1 3 Przygotowanie komputera 2 4 Pierwszy program 2 5 Dokumentacja 3 6 Budowa aplikacji. Klasy. 3 7 Pola i metody 4 8 Konstruktory 5 9 Inne proste

Bardziej szczegółowo

Zaawansowane programowanie w języku C++ Wstęp

Zaawansowane programowanie w języku C++ Wstęp Zaawansowane programowanie w języku C++ Wstęp Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń -

Bardziej szczegółowo

TWORZENIE PROJEKTU W RIDE

TWORZENIE PROJEKTU W RIDE TWORZENIE PROJEKTU W RIDE Zintegrowane środowisko programistyczne RIDE7 firmy Raisonance umożliwia tworzenie, kompilację i debuggowanie kodu źródłowego na wiele różnych platform sprzętowych. Pakiet oprogramowania

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy

Bardziej szczegółowo

Instrukcja użytkownika ARSoft-WZ1

Instrukcja użytkownika ARSoft-WZ1 05-090 Raszyn, ul Gałczyńskiego 6 tel (+48) 22 101-27-31, 22 853-48-56 automatyka@apar.pl www.apar.pl Instrukcja użytkownika ARSoft-WZ1 wersja 3.x 1. Opis Aplikacja ARSOFT-WZ1 umożliwia konfigurację i

Bardziej szczegółowo

Programowanie w Internecie. Java

Programowanie w Internecie. Java Programowanie w Internecie Java Autor: dr inż. Zofia Kruczkiewicz Literatura: L. Lemay, R. Cadenhead P. Naughton Krzysztof Barteczko Boone Barry Java 2 dla każdego Podręcznik Języka Programowania Java

Bardziej szczegółowo

Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C

Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C Wymagana wiedza wstępna: 1) Student musi 1) Znać język C 2) Znać zasady zarządzania pamięcią w komputerze 3) Znać pojecie wskaźnika

Bardziej szczegółowo

CitiDirect Online Banking - portal CitiDirect EB

CitiDirect Online Banking - portal CitiDirect EB CitiDirect Online Banking - portal CitiDirect EB Dodatkowa informacja dotycząca konfiguracji zabezpieczeń oprogramowania Java Pomoc Techniczna CitiDirect CitiService Pomoc Techniczna CitiDirect Tel. 0

Bardziej szczegółowo

Microsoft Visual SourceSafe uproszczona instrukcja użytkowania

Microsoft Visual SourceSafe uproszczona instrukcja użytkowania Politechnika Białostocka Wydział Informatyki mgr inż. Tomasz Łukaszuk Microsoft Visual SourceSafe uproszczona instrukcja użytkowania Wprowadzenie Microsoft Visual SourceSafe jest narzędziem pozwalającym

Bardziej szczegółowo

Zasady programowania Dokumentacja

Zasady programowania Dokumentacja Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika

Bardziej szczegółowo

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika)

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika) IBM SPSS Statistics Wersja 22 Linux - Instrukcja instalacji (licencja autoryzowanego użytkownika) Spis treści Instrukcja instalacji.......... 1 Wymagania systemowe........... 1 Kod autoryzacji.............

Bardziej szczegółowo

JDK można pobrać ze strony http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html

JDK można pobrać ze strony http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html Program napisany w języku Java, w wyniku kompilacji da kod bajtowy, plik z rozszerzeniem.class. Nie jest to plik wykonywalny samodzielnie w systemie operacyjnym tak jak pliki.exe. Uruchomienie gotowego

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1

OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1 OPTIMA PC v2.2.1 Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 Instrukcja obsługi Rev 1 2011 ELFON Wprowadzenie OPTIMA PC jest programem, który w wygodny sposób umożliwia konfigurację

Bardziej szczegółowo

Instrukcja laboratoryjna cz.0

Instrukcja laboratoryjna cz.0 Algorytmy i Struktury Danych 2012/2013 Instrukcja laboratoryjna cz.0 Wprowadzenie Prowadzący: Tomasz Goluch Wersja: 2.0 Warunki zaliczenia Cel: Zapoznanie studentów z warunkami zaliczenia części laboratoryjnej

Bardziej szczegółowo

TESTOWANIE OPROGRAMOWANIA

TESTOWANIE OPROGRAMOWANIA TESTOWANIE OPROGRAMOWANIA Uważaj na ten program ja tylko udowodniłem jego poprawność, nie testowałem go Donald Knuth Plan prezentacji 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem

Bardziej szczegółowo

Electronic Infosystems

Electronic Infosystems Department of Optoelectronics and Electronic Systems Faculty of Electronics, Telecommunications and Informatics Gdansk University of Technology Electronic Infosystems Microserver TCP/IP with CS8900A Ethernet

Bardziej szczegółowo