JUnit. Pragmatyczne testy jednostkowe w Javie
|
|
- Martyna Markowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG Wydawnictwo Helion ul. Chopina Gliwice tel. (32) helion@helion.pl TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE ONOWOŒCIACH ZAMÓW CENNIK CZYTELNIA SPIS TREŒCI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY KSI EK ONLINE JUnit. Pragmatyczne testy jednostkowe w Javie Autorzy: Andy Hunt, Dave Thomas T³umaczenie: Jaromir Senczyk ISBN: Tytu³ orygina³u: Pragmatic Unit Testing in Java with JUnit Format: B5, stron: 192 Przetestuj swoje aplikacje podczas ich tworzenia Poznaj strukturê testów jednostkowych Stwórz poprawne testy jednostkowe Wykorzystaj modu³y testowe w projekcie Testy jednostkowe s¹ niezwykle wa nym narzêdziem programisty. Przeprowadzane podczas pisania aplikacji pozwalaj¹ na sprawdzenie poprawnoœci kodu, wy³apanie b³êdów i szybkie usuniêcie ich. W nowoczesnych metodykach wytwarzania oprogramowania testy jednostkowe s¹ jednymi z najwa niejszych elementów procesu. Tworzenie systemów bez korzystania z testów jednostkowych czêsto porównywane jest do pisania programów na kartce. Nowoczesne narzêdzia takie, jak JUnit bardzo u³atwiaj¹ przeprowadzanie testów jednostkowych, integruj¹c siê ze œrodowiskami programistycznymi. Ksi¹ ka JUnit. Pragmatyczne testy jednostkowe w Javie to wprowadzenie do tematyki testów jednostkowych. Czytaj¹c j¹ poznasz ich znaczenie i nauczysz siê stosowaæ JUnit do projektowania i wykorzystywania testów. Dowiesz siê, jak projektowaæ testy jednostkowe w oparciu JUnit, co testowaæ za ich pomoc¹ i gdzie umieszczaæ kod testowy. W ksi¹ ce przeczytasz te o zasadach projektowania ³atwego do testowania kodu oraz programowaniu sterowanym testami. Cele przeprowadzania testów jednostkowych Planowanie testów Implementacja testów z wykorzystaniem JUnit Zasady stosowania testów Automatyzowanie testów Okreœlanie czêstotliwoœci testowania Projektowanie kodu pod k¹tem testowania Przekonaj siê, jak bardzo testy jednostkowe u³atwi¹ Ci pracê
2 Przedmowa...7 Rozdział 1. Wprowadzenie...11 Zaufanie do tworzonego kodu Na czym polegają testy jednostkowe? Po co zajmować się testami jednostkowymi? Co chcemy osiągnąć? Jak testować? Wymówki od testowania Zawartość książki Rozdział 2. Najprostsze testy jednostkowe...25 Planowanie testów Testowanie prostej metody Więcej testów Rozdział 3. Implementacja testów JUnit...35 Struktura testów jednostkowych Asercje JUnit Szkielet JUnit... 40
3 4 JUnit. Pragmatyczne testy jednostkowe w Javie Kompozycja testów JUnit Niestandardowe asercje JUnit JUnit i wyjątki Jeszcze o nazwach Szkielet JUnit Rozdział 4. Co testować?...53 Czy wyniki są poprawne? Warunki brzegowe Sprawdzanie relacji zachodzących w odwrotnym kierunku Kontrola wyników na wiele sposobów Wymuszanie warunków powstawania błędów Charakterystyka efektywnościowa Rozdział 5. Warunki brzegowe...65 Zgodność Uporządkowanie Zakres Referencja Istnienie Liczność Czas Zrób to sam Rozdział 6. Stosowanie obiektów imitacji...85 Proste namiastki Obiekty imitacji Testowanie serwletu Easy Mock Rozdział 7. Właściwości poprawnych testów jednostkowych Automatyzacja Kompletność Powtarzalność
4 Spis treści 5 Niezależność Profesjonalizm Testowanie testów Rozdział 8. Projekt i testowanie Gdzie umieścić kod testowy Testowanie i kurtuazja Częstotliwość testów Testy i istniejący kod Testy i recenzje Rozdział 9. Zagadnienia projektowania Projektowanie łatwo testowalnego kodu Refaktoring i testowanie Testowanie niezmienników klas Projektowanie sterowane testami Testowanie poprawności parametrów Dodatek A Pułapki Dopóki kod działa Test ognia Działa na mojej maszynie Problemy arytmetyki zmiennoprzecinkowej Testy zajmują zbyt wiele czasu Testy ciągle zawodzą Testy zawodzą na niektórych maszynach Metoda main nie jest wykonywana Dodatek B Instalacja JUnit Instalacja z wiersza poleceń Czy JUnit działa? Dodatek C Szkielet testów JUnit Klasa pomocnicza Podstawowy szablon
5 6 JUnit. Pragmatyczne testy jednostkowe w Javie Dodatek D Zasoby W internecie Bibliografia Dodatek E Pragmatyczne testy jednostkowe podsumowanie Dodatek F Rozwiązania ćwiczeń Skorowidz...185
6 rudno przewidzieć wszystkie możliwe błędy w działaniu klasy lub metody. Jeśli mamy sporo doświadczenia w tym zakresie, to intuicyjnie rozpoznajemy miejsca, w których mogą pojawić się kłopoty, i dzięki temu koncentrujemy się najpierw na przetestowaniu właśnie tych miejsc. Jednak dla mniej doświadczonych programistów wykrywanie kłopotliwych obszarów często jest frustrującym zadaniem. Tym bardziej że szczególnie łatwo przychodzi ono użytkownikom końcowym, co jest nie tylko irytujące, ale może stanowić także gwóźdź do trumny niejednej kariery programisty. Dlatego niezwykle cenne są wszelkie wskazówki mogące nam wskazać lub choćby przypomnieć obszary, na które szczególnie należy zwrócić uwagę podczas testowania. Przyjrzyjmy się zatem sześciu różnym obszarom testowania, których wykorzystanie powinno zwiększyć naszą skuteczność w wykrywaniu błędów: Czy wyniki są poprawne? Czy warunki brzegowe zostały prawidłowo określone? Czy można sprawdzić relacje zachodzące w odwrotnym kierunku? Czy można sprawdzić wyniki, uzyskując je w alternatywny sposób?
7 54 JUnit. Pragmatyczne testy jednostkowe w Javie Czy można wymusić warunki zajścia błędu? Czy charakterystyka efektywnościowa jest poprawna? Czy wyniki są poprawne? Pierwszy, najbardziej oczywisty obszar testowania to sprawdzenie, czy wyniki działania testowanych metod są poprawne. Kontrolę wyników przedstawiliśmy w rozdziale 2. na przykładzie prostej metody zwracającej największy element listy. Testy te są zwykle najłatwiejsze do przeprowadzenia, a wiele spodziewanych wyników często określonych jest w specyfikacji wymagań. Jeśli nie, musisz odpowiedzieć sobie na pytanie: Skąd mam wiedzieć, czy kod działa poprawnie? Jeśli znalezienie satysfakcjonującej odpowiedzi na to pytanie nie jest możliwe, tworzenie kodu i jego testów może okazać się kompletnym marnotrawstwem czasu. A co w przypadku, gdy wymagania dopiero się krystalizują? Czy oznacza to, że nie możemy rozpocząć pisania kodu, dopóki wymagania nie zostaną dokładnie sprecyzowane? Nie, wcale nie. Jeśli ostateczne wymaganie nie są jeszcze znane lub kompletne, zawsze możesz wymyślić własne wymagania jako punkt odniesienia. Może okazać się, że nie są one poprawne z punktu widzenia użytkownika, ale dzięki nim wiesz, jak powinien według Ciebie działać kod, i potrafisz odpowiedzieć na postawione wcześniej pytanie. Oczywiście musisz potem, wspólnie z użytkownikami, zweryfikować swoje założenia. Definicja poprawności wyników może zmieniać się w trakcie powstawania kodu, ale na każdym etapie jego tworzenia powinieneś móc stwierdzić, czy kod działa tak, jak założyłeś.
8 Rozdział 4. Co testować? 55 Stosowanie plików zawierających dane testowe W przypadku zestawów testów wymagających dużej ilości danych wejściowych można rozważyć ich umieszczenie (być może wraz z oczekiwanymi wynikami) w osobnych plikach wczytywanych przez testy jednostkowe. Implementacja takiego rozwiązania nie jest skomplikowana i niekoniecznie musi od razu wymagać zastosowania języka XML 1. Poniżej przedstawiona została wersja testu TestLargest, która wczytuje wszystkie testy z pliku. import junit.framework.*; import java.io.*; import java.util.arraylist; import java.util.stringtokenizer; public class TestLargestDataFile extends TestCase { public TestLargestDataFile(String name) { super(name); /* Wykonuje testy zapisane w pliku testdata.txt (nie testuje * przypadku wyjątku). Wyrzuca wyjątek w przypadku, * gdy któraś operacja wejścia i wyjścia zakończy się błędem. */ public void testfromfile() throws Exception { String line; BufferedReader rdr = new BufferedReader( new FileReader( "testdata.txt")); while ((line = rdr.readline())!= null) { if (line.startswith("#")) { // Ignoruje komentarz continue; StringTokenizer st = new StringTokenizer(line); if (!st.hasmoretokens()) { continue; // Pusty wiersz // Pobiera spodziewany wynik String val = st.nexttoken(); int expected = Integer.valueOf(val).intValue(); 1 To jest oczywiście żart, przecież zastosowanie języka XML jest obligatoryjne we wszystkich współczesnych projektach?
9 56 JUnit. Pragmatyczne testy jednostkowe w Javie TestLargestDataFile.java // Oraz argumenty dla testowanej metody ArrayList argument_list = new ArrayList(); while (st.hasmoretokens()) { argument_list.add(integer.valueof( st.nexttoken())); // Zamienia listę obiektów w tablicę typu podstawowego int[] arguments = new int[argument_list.size()]; for (int i=0; i < argument_list.size(); i++) { arguments[i] = ((Integer)argument_list. get(i)).intvalue(); // Wykonuje asercję assertequals(expected, Largest.largest(arguments)); Plik danych testowych ma bardzo prosty format każdy wiersz zawiera zbiór wartości. Pierwsza z nich jest oczekiwanym wynikiem, a pozostałe argumentami testowanej metody. Dodatkowo zastosowanie znaku # na początku wiersza umożliwia wprowadzanie komentarzy. A oto przykład zawartości takiego pliku: testdata.txt # # Proste testy: # # # Testy z użyciem wartości ujemnych: # # # Testy mieszane: # # # Warunki brzegowe: #
10 Rozdział 4. Co testować? 57 W przypadku kilku testów jak choćby w powyższym przykładzie wysiłek włożony w opracowanie odpowiedniego rozwiązania nie zwróci się. Jednak w przypadku zaawansowanej aplikacji wymagającej przeprowadzenia setek takich testów rozwiązanie wykorzystujące pliki danych na pewno warte jest zainteresowania. Należy przy tym pamiętać, że dane testowe obojętnie, czy umieszczone bezpośrednio w kodzie, czy w pliku danych testowych same mogą być niepoprawne. Doświadczenie podpowiada nawet, że prawdopodobieństwo tego, iż dane testowe są nieprawidłowe, jest większe niż tego, że testowany kod jest niepoprawny. Zwłaszcza jeśli dane testowe zostały przygotowane drogą ręcznych obliczeń lub uzyskane z systemu, który zastępujemy naszym oprogramowaniem (ponieważ jego nowe możliwości mogą mieć wpływ na uzyskiwane wyniki). Jeśli wyniki testów są niepomyślne, warto najpierw sprawdzić kilka razy poprawność danych testowych, zanim zabierzemy się do poszukiwania błędu w kodzie. Przedstawiony powyżej kod nie umożliwia testowania wyjątków. Zastanów się, w jaki sposób zaimplementować taką możliwość. Wybierz taki sposób testowania, który pozwoli najłatwiej sprawdzić, czy metoda działa poprawnie. Warunki brzegowe W przykładzie z wyszukiwaniem największego elementu listy udało nam się zidentyfikować szereg warunków brzegowych: gdy największy element znajdował się na końcu listy, gdy lista zawierała wartość ujemną, gdy lista była pusta i tak dalej. Identyfikacja warunków brzegowych jest jednym z najwartościowszych aspektów testowania, ponieważ pozwala wykryć i przetestować obszary, w których prawdopodobieństwo niepoprawnego działania kodu jest największe. Typowe warunki brzegowe powstają na skutek:
11 58 JUnit. Pragmatyczne testy jednostkowe w Javie wprowadzenia całkowicie błędnych lub niespójnych danych wejściowych, na przykład łańcucha "!*W:X\&Gi/w~>g/h#WQ@" jako nazwy pliku; nieprawidłowo sformatowanych danych, takich jak adres , który nie zawiera głównej domeny ("fred@foobar."); niewprowadzenia odpowiednich wartości (wtedy pojawiają się wartości 0, 0.0, "" lub null); pojawienia się wartości znacznie przekraczających oczekiwania (na przykład wiek osoby równy lat); pojawienia się duplikatów na listach, które nie powinny ich zawierać; wystąpienia list nieuporządkowanych zamiast uporządkowanych i na odwrót; spróbuj na przykład przekazać algorytmowi sortowania listę, która jest już posortowana, albo nawet posortuj ją w odwrotnym porządku; zakłócenia przewidywanego porządku zdarzeń, na przykład próby wydrukowania dokumentu przed zalogowaniem się. Warunków brzegowych można poszukiwać w przedstawionych poniżej obszarach. W przypadku każdego z podanych niżej warunków należy zastanowić się, czy dotyczy on testowanej metody, a jeśli tak, to co się stanie, gdy zostanie naruszony: Zgodność czy wartość jest zgodna z oczekiwanym formatem? Uporządkowanie czy zbiór wartości jest odpowiednio uporządkowany? Zakres czy wartość należy do przedziału oczekiwanych wartości? Odwołanie czy kod odwołuje się do zewnętrznych obiektów, które są poza jego kontrolą? Istnienie czy wartość istnieje (czyli jest różna od null, zera, obecna w zbiorze itd.)?
12 Rozdział 4. Co testować? 59 Liczność czy występuje dokładnie tyle wartości, ile jest oczekiwanych? Czas (absolutny i względny) czy wszystkie zdarzenia zachodzą w oczekiwanej kolejności i we właściwym czasie? Wymienione obszary warunków brzegowych omówimy w następnym rozdziale. Sprawdzanie relacji zachodzących w odwrotnym kierunku Działanie niektórych metod można przetestować, używając logiki ich działania w odwrotnym kierunku. Na przykład działanie metody wyznaczającej pierwiastek kwadratowy możemy sprawdzić, podnosząc wynik do kwadratu i porównując go z wartością wejściową: public void testsquarerootusinginverse() { double x = mysquareroot(4.0); assertequals(4.0, x * x, ); Na podobnej zasadzie, wyszukując rekord w bazie danych, możesz sprawdzić działanie metody, która go tam wstawiła. Jednak implementując odwrotną logikę działania metody, należy zachować szczególną ostrożność, ponieważ niepoprawne działanie metody może nie zostać wykryte z powodu tych samych błędów w implementacjach obu metod. Dlatego też tam, gdzie jest to tylko możliwe, najlepiej użyć innego kodu źródłowego do implementacji metody działającej w kierunku odwrotnym. W naszym przykładzie testu metody pierwiastkowania wykorzystaliśmy w tym celu zwykły operator mnożenia. W przypadku testowania metody wstawiającej rekord do bazy danych najlepiej użyć metody wyszukiwania dostarczonej przez producenta systemu zarządzania bazą danych.
13 60 JUnit. Pragmatyczne testy jednostkowe w Javie Kontrola wyników na wiele sposobów Wyniki działania testowanych metod możemy sprawdzać na wiele sposobów. Zwykle bowiem istnieje więcej niż jeden sposób wyznaczenia interesującej nas wartości. Podczas implementacji kodu produkcyjnego wybieramy ten algorytm, który jest najefektywniejszy lub ma charakterystykę interesującą pod innym względem. Natomiast pozostałe możemy wykorzystać w celu sprawdzenia wyników podczas testowania. Technika ta jest szczególnie pomocna, gdy istnieje ogólnie znany, sprawdzony sposób uzyskania wyników, który jednak jest zbyt mało efektywny lub elastyczny, by mógł zostać użyty w kodzie produkcyjnym. Mniej efektywnego algorytmu możemy użyć do sprawdzenia, czy algorytm zastosowany w wersji produkcyjnej daje takie same wyniki 2 : public void testsquarerootusingstd() { double number = ; double root1 = mysquareroot(number); double root2 = Math.sqrt(number); assertequals(root2, root1, ); Inny sposób zastosowania tej techniki polega na sprawdzeniu, czy różne dane sumują się we właściwy sposób. Załóżmy na przykład, że pracujemy nad systemem obsługi biblioteki. W takim systemie liczba egzemplarzy danej książki powinna zawsze zgadzać się z sumą egzemplarzy znajdujących się na półkach biblioteki i egzemplarzy wypożyczonych. Liczba poszczególnych egzemplarzy stanowi osobne dane, które mogą nawet być raportowane przez obiekty różnych klas, ale muszą być ze sobą zgodne i wobec tego mogą być używane podczas testowania. 2 Niektóre arkusze kalkulacyjne (na przykład Microsoft Excel) stosują podobną technikę w celu sprawdzenia, czy do rozwiązania danego problemu użyte zostały odpowiednie modele i metody i czy wyniki działania różnych metod są ze sobą zgodne.
14 Rozdział 4. Co testować? 61 Wymuszanie warunków powstawania błędów Gdy kod produkcyjny pracuje już w rzeczywistym systemie, narażony jest na sytuacje związane z różnego rodzaju błędami, takimi jak brak miejsca na dysku, awarie sieci czy niepoprawna praca innych aplikacji. Aby przetestować zachowanie kodu w takich sytuacjach, musimy umieć je wywołać. Nie jest to trudne, gdy dotyczy na przykład przekazania kodowi niepoprawnych parametrów, ale już symulacja błędów sieci wymaga zastosowania odpowiednich technik. Jedną z nich polegającą na użyciu obiektów imitujących omówimy w rozdziale 6. Zanim tam dotrzesz, spróbuj zastanowić się, jakie rodzaje błędów lub ograniczeń wprowadzanych przez środowisko wykonywania kodu należy przetestować? Sporządź krótką ich listę, zanim przejdziesz do dalszej lektury. Zastanów się nad tym, zanim przejdziesz do dalszej lektury... A oto kilka typowych problemów, które udało nam się wymyślić. Brak wolnej pamięci. Brak wolnego miejsca na dysku. Nieprawidłowy czas systemu. Brak dostępu do sieci i błędy transmisji. Przeciążenie systemu. Ograniczona paleta kolorów. Zbyt duża lub zbyt mała rozdzielczość obrazu. Charakterystyka efektywnościowa Kolejnym obszarem wartym przetestowania jest charakterystyka efektywnościowa. Nie chodzi tutaj o samą efektywność działania kodu, lecz o sposób jej zmiany w odpowiedzi na zwiększającą się ilość danych wejściowych, rosnący poziom komplikacji rozwiązywanego problemu i tym podobne.
15 62 JUnit. Pragmatyczne testy jednostkowe w Javie W tym przypadku zależy nam przede wszystkim na przeprowadzeniu testu regresji charakterystyki efektywnościowej. Często bowiem zdarza się, że pewna wersja systemu pracuje poprawnie, ale już następna okazuje się zaskakująco wolna. Zwykle nie wiemy wtedy, jaka jest tego przyczyna, kto, kiedy i dlaczego wprowadził modyfikacje, które pogorszyły efektywność kodu. A użytkownicy zniecierpliwieni czekają na rozwiązanie problemu. Aby uniknąć takiego scenariusza, możemy wykonać kilka podstawowych testów, które upewnią nas, że krzywa efektywności jest stabilna w nowej wersji kodu. Załóżmy na przykład, że napisaliśmy filtr pozwalający identyfikować witryny internetowe, do których dostęp chcemy zablokować. Stworzony kod działa poprawnie w przypadku kilkudziesięciu witryn, ale czy równie efektywnie będzie się zachowywać w przypadku lub nawet witryn? Aby się o tym przekonać, musimy napisać odpowiedni test jednostkowy. public void testurlfilter() { Timer timer = new Timer(); String naughty_url = " // Najpierw wyszukaj niedozwolony URL na małej liście URLFilter filter = new URLFilter(small_list); timer.start(); filter.check(naughty_url); timer.end(); asserttrue(timer.elapsedtime() < 1.0); // Następnie wyszukaj niedozwolony URL na większej liście filter = new URLFilter(big_list); timer.start(); filter.check(naughty_url); timer.end(); asserttrue(timer.elapsedtime() < 2.0); // Na koniec wyszukaj niedozwolony URL na liście o jak największym rozmiarze filter = new URLFilter(huge_list); timer.start(); filter.check(naughty_url); timer.end(); asserttrue(timer.elapsedtime() < 3.0);
16 Rozdział 4. Co testować? 63 Przeprowadzenie takiego testu daje nam gwarancję, że kod spełnia wymagania odnośnie do jego efektywności. Ponieważ jego wykonanie zajmuje kilka sekund, nie musimy uruchamiać go za każdym razem. Wystarczy, że będziemy go wykonywać wraz z innymi testami w nocy lub co kilka dni, a zostaniemy zaalarmowani o pojawiających się problemach z efektywnością kodu wystarczająco wcześnie, aby poprawić je na czas. Istnieje wiele dekoratorów umożliwiających dokładniejsze pomiary efektywności poszczególnych metod, symulację warunków silnego obciążenia i tym podobne. Jednym z takich produktów jest dostępny bezpłatnie JUnitPerf
Smarty PHP. Leksykon kieszonkowy
IDZ DO PRZYK ADOWY ROZDZIA SPIS TREœCI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG Smarty PHP. Leksykon kieszonkowy Autor: Daniel Bargie³ ISBN: 83-246-0676-9 Format: B6, stron: 112 TWÓJ KOSZYK
Bardziej szczegółowoProgramowanie 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ółowoAutomatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36
Automatyzacja testowania oprogramowania Automatyzacja testowania oprogramowania 1/36 Automatyzacja testowania oprogramowania 2/36 Potrzeba szybkich rozwiązań Testowanie oprogramowania powinno być: efektywne
Bardziej szczegółowoMySQL. Æwiczenia praktyczne
IDZ DO PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG MySQL. Æwiczenia praktyczne Autor: Marek Nowakowski ISBN: 83-7197-884-7 Format: B5, stron: 114 TWÓJ KOSZYK DODAJ
Bardziej szczegółowoMETODY PROGRAMOWANIA
METODY PROGRAMOWANIA Testy jednostkowe 8 grudnia 2017 Krzysztof Pawłowski kpawlowski@pjwstk.edu.pl PO CO NAM TESTY? weryfikacja poprawności sprawdzanie regresji specyfikacja dokumentacja wymuszanie dobrego
Bardziej szczegółowoWyjątki. Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut.
Wyjątki Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut. Wydaje się, że żaden użytkownik oprogramowania nie lubi, kiedy stosowany program nagle zawiesza się,
Bardziej szczegółowoWskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
Bardziej szczegółowoAlgorytmy i złożoności. Wykład 3. Listy jednokierunkowe
Algorytmy i złożoności Wykład 3. Listy jednokierunkowe Wstęp. Lista jednokierunkowa jest strukturą pozwalającą na pamiętanie danych w postaci uporzadkowanej, a także na bardzo szybkie wstawianie i usuwanie
Bardziej szczegółowoWyjątki (exceptions)
Instrukcja laboratoryjna nr 6 Programowanie w języku C 2 (C++ poziom zaawansowany) Wyjątki (exceptions) dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż. Tomasz Kaczmarek Wstęp Wyjątki (ang.
Bardziej szczegółowoWstęp do programowania. Wykład 1
Wstęp do programowania Wykład 1 1 / 49 Literatura Larry Ullman, Andreas Signer. Programowanie w języku C++. Walter Savitch, Kenrick Mock. Absolute C++. Jerzy Grębosz. Symfonia C++. Standard. Stephen Prata.
Bardziej szczegółowoProgramowanie zespołowe
Programowanie zespołowe Laboratorium 3 - podstawy testów jednostkowych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 7 marca 2017 1 / 22 mgr inż. Krzysztof Szwarc Programowanie zespołowe
Bardziej szczegółowoProgramowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści
Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne
Bardziej szczegółowoPierwsze 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ółowoTestowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.
Testowanie I Cel zajęć Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego. Testowanie oprogramowania Testowanie to proces słyżący do oceny
Bardziej szczegółowoStrumienie, pliki. Sortowanie. Wyjątki.
Strumienie, pliki. Sortowanie. Wyjątki. Serializacja Zapisuje całą klasę Plik binarny Delimiter nieokreślony Nie da się podglądać Pliki tekstowe Zapisuje wybrane informacje Plik tekstowy Delimiter ustawiamy
Bardziej szczegółowoProgramowanie 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ółowoXQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowoznajdował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ółowoTesty jednostkowe Wybrane problemy testowania metod rekurencyjnych
Testy jednostkowe Wybrane problemy testowania metod rekurencyjnych Artykuł przeznaczony jest dla osób związanych z testowaniem, programowaniem, jakością oraz wytwarzaniem oprogramowania, wymaga jednak
Bardziej szczegółowoZadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób.
Zadanie: Zadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób. Na kolejnych zajęciach projekt będzie rozwijana i uzupełniana o kolejne elementy omawiane
Bardziej szczegółowoTak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS www.informatyka.edu.pl
To jeden z ostatnich odcinków naszego kursu. Mam nadzieję, że pisanie własnego programu było ciekawym doświadczeniem. Zaproponowana w tym odcinku funkcja uatrakcyjni twój program. Stworzymy tak zwane okno
Bardziej szczegółowoJę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ółowoOptimizing Programs with Intended Semantics
Interaktywna optymalizacja programów 26 kwietnia 2010 Spis treści Spis treści Wstęp Omówienie zaproponowanego algorytmu na przykładzie Wewnętrzna reprezentacja reguł dotyczących optymalizacji Wybrane szczegóły
Bardziej szczegółowoJeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.
Języki C i C++ to bardzo uniwersalne platformy programistyczne o ogromnych możliwościach. Wykorzystywane są do tworzenia systemów operacyjnych i oprogramowania użytkowego. Dzięki niskiemu poziomowi abstrakcji
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoWiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java
Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Cechy C++ Język ogólnego przeznaczenia Można programować obiektowo i strukturalnie Bardzo wysoka wydajność kodu wynikowego
Bardziej szczegółowoTestowanie II. Celem zajęć jest zapoznanie studentów z oceną jakości testów przy wykorzystaniu metryk pokrycia kodu testami (ang. code coverage).
Testowanie II Cel zajęć Celem zajęć jest zapoznanie studentów z oceną jakości testów przy wykorzystaniu metryk pokrycia kodu testami (ang. code coverage). Pokrycie kodu testami Jak już była mowa na poprzednich
Bardziej szczegółowoJęzyki i metody programowania Java INF302W Wykład 3 (część 1)
Języki i metody programowania Java INF302W Wykład 3 (część 1) Autor Dr inż. Zofia Kruczkiewicz Autor: Zofia Kruczkiewicz, Języki i metody programowania Java, wykład 3, część 1 1 STRUKTURA WYKŁADU 1. Wyjątki,
Bardziej szczegółowoTesty automatyczne. Korzystające z junit
Testy automatyczne Korzystające z junit Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID
Bardziej szczegółowoJęzyki i techniki programowania Ćwiczenia 2
Języki i techniki programowania Ćwiczenia 2 Autor: Marcin Orchel Spis treści: Język C++... 5 Przekazywanie parametrów do funkcji... 5 Przekazywanie parametrów w Javie.... 5 Przekazywanie parametrów w c++...
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoTestowanie II. Cel zajęć. Pokrycie kodu
Cel zajęć Celem zajęć jest zapoznanie studentów z uzupełniającymi zagadnieniami dotyczącymi testowania wytwarzanego oprogramowania. W pierwszej części zajęć przedstawiona zostanie metoda oceny kompletności
Bardziej szczegółowoProgramowanie 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ółowoZadanie 2: Arytmetyka symboli
1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoTechniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Bardziej szczegółowoCel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)
W odcinku III tworzyliśmy paski narzędzi. Umieszczaliśmy na panelach ikony, reprezentujące czynności (charakterystyczne dla edytorów tekstu). Musimy teraz przypisać każdemu przyciskowi jego czynność (wycinanie,
Bardziej szczegółowoDzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton
Dzisiejszy wykład Wzorce projektowe Visitor Client-Server Factory Singleton 1 Wzorzec projektowy Wzorzec nazwana generalizacja opisująca elementy i relacje rozwiązania powszechnie występującego problemu
Bardziej szczegółowoPodstawy Informatyki. Algorytmy i ich poprawność
Podstawy Informatyki Algorytmy i ich poprawność Błędy Błędy: językowe logiczne Błędy językowe Związane ze składnią języka Wykrywane automatycznie przez kompilator lub interpreter Prosty sposób usuwania
Bardziej szczegółowoProgramowanie, algorytmy i struktury danych
1/44 Programowanie, algorytmy i struktury danych materiały do wykładu: http://cez.wipb.pl/moodle/ email: m.tabedzki@pb.edu.pl strona: http://aragorn.pb.bialystok.pl/~tabedzki/ Marek Tabędzki Wymagania
Bardziej szczegółowoMetody Metody, parametry, zwracanie wartości
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca
Bardziej szczegółowoLABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8
Inżynieria Oprogramowania 2013/14 LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8 Hierarchia klas: TestCase klasa testująca, będąca klasą bazową dla wszystkich przypadków testowych. Zawiera przypadki testowe
Bardziej szczegółowo1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami
1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.
Bardziej szczegółowoPrzykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym
S t r o n a 1 Bożena Ignatowska Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym Wprowadzenie W artykule zostaną omówione zagadnienia związane z wykorzystaniem funkcji tekstowych w arkuszu
Bardziej szczegółowo1 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ółowoSpis treści. Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7
Spis treści Wprowadzenie...n...n... 5 Jak korzystać z tej książki?...t... 6 Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7 Podsumowanie...t...t...15 Rozdział 2. Rozdział
Bardziej szczegółowoMatematyka z komputerem dla gimnazjum
IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWO CIACH ZAMÓW CENNIK CZYTELNIA SPIS TRE CI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY
Bardziej szczegółowoJUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska
JUnit TESTY JEDNOSTKOWE Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska Testy aplikacji 2 Ręczne testowanie Czasochłonne Powtarzalność trudna do uzyskania Nudne Testowanie automatyczne
Bardziej szczegółowoUniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Celem ćwiczenia jest zapoznanie studentów z najprostszą dynamiczną strukturą
Bardziej szczegółowoLekcja : Tablice + pętle
Lekcja : Tablice + pętle Wprowadzenie Oczywiście wiesz już jak dużo można osiągnąć za pomocą tablic oraz jak dużo można osiągnąć za pomocą pętli, jednak tak naprawdę prawdziwe możliwości daje połączenie
Bardziej szczegółowoC++. Æwiczenia zaawansowane
IDZ DO PRZYK ADOWY ROZDZIA SPIS TRECI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG C++. Æwiczenia zaawansowane Autor: Andrzej Stasiewicz ISBN: 83-7361-766-3 Format: B5, stron: 120 TWÓJ KOSZYK
Bardziej szczegółowoQualitySpy moduł reports
QualitySpy moduł reports Testy akceptacyjne dla przypadku użycia: Pobranie metryk produktu w wybranym formacie dla wybranch wersji przez interfejs REST Nazwa pliku: /QualitySpy/modules/qualityspyreports/src/test/java/pl/wroc/pwr/qualityspy/reports
Bardziej szczegółowoJAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.
JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod
Bardziej szczegółowoPodstawy i języki programowania
Podstawy i języki programowania Laboratorium 8 - wprowadzenie do obsługi plików tekstowych i wyjątków mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 11 grudnia 2017 1 / 34 mgr inż. Krzysztof
Bardziej szczegółowoAlgorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bardziej szczegółowoJęzyk C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop
Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop. 2016 Spis treści Wprowadzenie 11 Adresaci książki 12 Co wyróżnia tę książkę na
Bardziej szczegółowoRok akademicki: 2012/2013 Kod: JFM s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne
Nazwa modułu: Programowanie obiektowe Rok akademicki: 2012/2013 Kod: JFM-1-508-s Punkty ECTS: 3 Wydział: Fizyki i Informatyki Stosowanej Kierunek: Fizyka Medyczna Specjalność: Poziom studiów: Studia I
Bardziej szczegółowo2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych
2. Tablice Tablica to struktura danych przechowująca elementy jednego typu (jednorodna). Dostęp do poszczególnych elementów składowych jest możliwy za pomocą indeksów. Rozróżniamy następujące typy tablic:
Bardziej szczegółowoZadanie nr 3: Sprawdzanie testu z arytmetyki
Zadanie nr 3: Sprawdzanie testu z arytmetyki 1 Cel zadania Zadanie wymusza praktyczne przećwiczenia dostosowania formatu i formy wyświetlania informacji dla własnych typów danych. Ma ono pokazać potencjalne
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 5 Marcin Młotkowski 23 marca 2017 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 50 Historia Początkowe założenia Projekt OAK Sterowanie urządzeniami
Bardziej szczegółowoĆwiczenie 1. Kolejki IBM Message Queue (MQ)
Ćwiczenie 1. Kolejki IBM Message Queue (MQ) 1. Przygotowanie Przed rozpoczęciem pracy, należy uruchomić "Kreator przygotowania WebSphere MQ" oraz przejść przez wszystkie kroki kreatora, na końcu zaznaczając
Bardziej szczegółowoBAZY DANYCH Panel sterujący
BAZY DANYCH Panel sterujący Panel sterujący pełni z reguły rolę centrum, z którego wydajemy polecenia i uruchamiamy różnorodne, wcześniej zdefiniowane zadania, np. wyświetlamy formularze lub drukujemy
Bardziej szczegółowoKlasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Bardziej szczegółowoŻurek INFOBroker. Szkolenia warsztaty konsultacje MS Excel. www.excel.jzurek.com. tel. 601 517 216
Żurek INFOBroker Szkolenia warsztaty konsultacje MS Excel www.excel.jzurek.com tel. 601 517 216 MS Excel szkolenie dla początkujących i laików (program ramowy): o zastosowanie i budowa programu - do czego
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa : Kierunek: Informatyka Rodzaj : obowiązkowy w ramach specjalności: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium PROGRAMOWANIE APLIKACJI INTERNETOWYCH Internet Application Development
Bardziej szczegółowoSzablony funkcji i klas (templates)
Instrukcja laboratoryjna nr 3 Programowanie w języku C 2 (C++ poziom zaawansowany) Szablony funkcji i klas (templates) dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż. Tomasz Kaczmarek Wstęp
Bardziej szczegółowoSzablony klas, zastosowanie szablonów w programach
Szablony klas, zastosowanie szablonów w programach 1. Szablony klas i funkcji 2. Szablon klasy obsługującej uniwersalną tablicę wskaźników 3. Zastosowanie metody zwracającej przez return referencję do
Bardziej szczegółowoRozdział 4 KLASY, OBIEKTY, METODY
Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej
Bardziej szczegółowodr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1
Ćwiczenie 1 Uruchamianie programu w Netbeans Uruchom środowisko Netbeans. Stwórz nowy projekt typu Java Application. Nadaj projektowi nazwę HelloWorld (Project Name), zwróć uwagę na folder, w którym zostanie
Bardziej szczegółowoPodstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 14 AJAX, czyli jak odświeżyć bez odświeżania, część trzecia Na dzisiejszych zajęciach będziemy kontynuować realizację serwisu do wymiany wiadomości z wykorzystaniem technologii
Bardziej szczegółowoPodstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Bardziej szczegółowoTestowanie oprogramowania
Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój
Bardziej szczegółowoLiczby losowe i pętla while w języku Python
Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak
Bardziej szczegółowoAplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - wprowadzenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 Klasa zbiór pól i metod Obiekt
Bardziej szczegółowoGit, Bitbucket, IntelliJ IDEA
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 3 Git, Bitbucket, IntelliJ IDEA Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy
Bardziej szczegółowoLab 9 Podstawy Programowania
Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany
Bardziej szczegółowo3.1. Na dobry początek
Klasa I 3.1. Na dobry początek Regulamin pracowni i przepisy BHP podczas pracy przy komputerze Wykorzystanie komputera we współczesnym świecie Zna regulamin pracowni i przestrzega go. Potrafi poprawnie
Bardziej szczegółowoStrona tytułowa, zgodnie z wymaganiami zamieszczonymi na stronie www uczelni. Wzór strony dostępny jest w dzienniku wirtualnym - 1 -
Strona tytułowa, zgodnie z wymaganiami zamieszczonymi na stronie www uczelni. Wzór strony dostępny jest w dzienniku wirtualnym - 1 - Spis treści 1 Wstęp... 3 1.1 Cel pracy... 3 1.2 Układ pracy... 4 2 Podstawy
Bardziej szczegółowoJęzyk programowania C C Programming Language. ogólnoakademicki
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014
Bardziej szczegółowoZASADY PROGRAMOWANIA KOMPUTERÓW
POLITECHNIKA WARSZAWSKA Instytut Automatyki i i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW Język Język programowania: C/C++ Środowisko programistyczne: C++Builder 6 Wykład 9.. Wskaźniki i i zmienne dynamiczne.
Bardziej szczegółowoWprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 1 Wprowadzenie Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 O Sobie Od 2014
Bardziej szczegółowoPROE wykład 3 klasa string, przeciążanie funkcji, operatory. dr inż. Jacek Naruniec
PROE wykład 3 klasa string, przeciążanie funkcji, operatory dr inż. Jacek Naruniec Przypomnienie z ostatnich wykładów Konstruktory/destruktory i kolejność ich wywołania w złożonej klasie. Referencja Obiekty
Bardziej szczegółowoDokumentacja do API Javy.
Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu
Bardziej szczegółowoJak napisać program obliczający pola powierzchni różnych figur płaskich?
Część IX C++ Jak napisać program obliczający pola powierzchni różnych figur płaskich? Na początku, przed stworzeniem właściwego kodu programu zaprojektujemy naszą aplikację i stworzymy schemat blokowy
Bardziej szczegółowoCzym są właściwości. Poprawne projektowanie klas
Z akcesorów get i set korzysta każdy kto programuje w C#. Stanowią one duże udogodnienie w programowaniu obiektowym. Zapewniają wygodę, bezpieczeństwo i znacząco skracają kod. Akcesory są ściśle związane
Bardziej szczegółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
Bardziej szczegółowoSpis 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ółowoPierwszy projekt. Na początku warto wspomnieć, że program WebSite X5 dostępy jest w 3 wariantach: Start, Evolution oraz Professional
Projektowanie stron może być proste? Sprawdzamy. {reklama-artykul} Tworzenie stron internetowych to w teorii zagadnienie skomplikowane, często wymagające zaawansowanej wiedzy z dziedziny programowania.
Bardziej szczegółowoPraktyka Programowania
Praktyka Programowania Dariusz Dereniowski Materiały udostępnione przez Adriana Kosowskiego Katedra Algorytmów i Modelowania Systemów Politechnika Gdańska deren@eti.pg.gda.pl Gdańsk, 2010 strona przedmiotu:
Bardziej szczegółowoWprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Bardziej szczegółowoP³atnik. Przewodnik IDZ DO KATALOG KSI EK TWÓJ KOSZYK CENNIK I INFORMACJE CZYTELNIA PRZYK ADOWY ROZDZIA SPIS TREŒCI KATALOG ONLINE
IDZ DO PRZYK ADOWY ROZDZIA SPIS TREŒCI KATALOG KSI EK KATALOG ONLINE P³atnik. Przewodnik Autor: Adam Józefiok ISBN: 83-246-0404-9 Format: A5, stron: 288 ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK DODAJ DO KOSZYKA
Bardziej szczegółowoProgramowanie - instrukcje sterujące
Instytut Informatyki Uniwersytetu Śląskiego Laborki środowisko NetBeans, tworzenie nowego projektu; okno projekty; główne okno programu; package - budowanie paczek z klas; public class JavaApplication
Bardziej szczegółowoKolumna Zeszyt Komórka Wiersz Tabela arkusza Zakładki arkuszy
1 Podstawowym przeznaczeniem arkusza kalkulacyjnego jest najczęściej opracowanie danych liczbowych i prezentowanie ich formie graficznej. Ale formuła arkusza kalkulacyjnego jest na tyle elastyczna, że
Bardziej szczegółowoI. WSTĘP. Przykład 1. Przykład 2. Programowanie czyli tworzenie programów komputerowych (aplikacji komputerowych)
I. WSTĘP Programowanie czyli tworzenie programów komputerowych (aplikacji komputerowych) Algorytm - sposób na osiągnięcie celu w pewnych ograniczonych krokach. Program komputerowy realizuje zawsze algorytm.
Bardziej szczegółowoJava pierwszy program w Eclipse «Grzegorz Góralski strona własna
Strona 1 z 9 «Przykładowe zadania do cz. III ćwiczeń z genetyki Java pierwsze kroki w programowaniu (01)» Kategoria: java, Tagi: eclipse - java - programowanie. Autor: Grzegorz, napisał dnia: February
Bardziej szczegółowoProgramowanie w VB Proste algorytmy sortowania
Programowanie w VB Proste algorytmy sortowania Sortowanie bąbelkowe Algorytm sortowania bąbelkowego polega na porównywaniu par elementów leżących obok siebie i, jeśli jest to potrzebne, zmienianiu ich
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowo> C++ wskaźniki. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki 26 kwietnia 2017
> C++ wskaźniki Dane: Iwona Polak iwona.polak@us.edu.pl Uniwersytet Śląski Instytut Informatyki 26 kwietnia 2017 >??? Co to jest WSKAŹNIK? ++ wskaźniki 2 / 20 >??? Co to jest WSKAŹNIK? To po prostu ADRES
Bardziej szczegółowoWykład 2: Podstawy Języka
Wykład 2: Podstawy Języka 1.wprowadzenie 2.podstawy języka 3.sterowanie 4.inicjacja i sprzątanie 5.kontrola dostępu 6.dziedziczenie 7.polimorfizm 8.obsługa błędów 9.kolekcje obiektów 10.wejście i wyjście
Bardziej szczegółowo