Fragmenty są wspierane od Androida 1.6

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

Download "Fragmenty są wspierane od Androida 1.6"

Transkrypt

1 W androidzie można tworzyć dynamiczne interfejsy poprzez łączenie w moduły komponentów UI z aktywnościami. Moduły takie tworzy się za pomocą klasy Fragment, która zachowuje się jak zagnieżdżone aktywności definiujące własne layouty oraz zarządzające własnym cyklem życia. Kiedy fragment określa własny layout, można skonfigurować go w różne kombinacje z innymi fragmentami wewnątrz aktywności w celu zmodyfikowania konfiguracji layoutu na innych ekranach. Fragmenty są wspierane od Androida 1.6

2 Tworzenie fragmentu Fragmenty są częścią aktywności która posiada własny cykl życia, otrzymuje własne zdarzenia i która może być dodana i wyłączana podczas działania aktywności nadrzędnej. Support Library Support library jest zbiorem kodu który zawiera metody umożliwiające utrzymanie wstecznej kompatybilności ze starszymi wersjami Androida. Każda biblioteka jest kompatybilna ze specyficznym poziomem API. Dla przykładu nasz program będzie kompatybilny z Android 1.6, czyli API level 4 oraz w górę. Oznacza to, że musimy za pomocą SDK Managera doinstalować. W managerze wchodzimy w 'Extras', klikamy Android support library i instalujemy.

3 Aby móc wykorzystać tą bibliotekę w projekcie: Tworzymy folder libs/ w naszym projekcie Kopiujemy odpowiedni plik JAR z SDK (extras/android/support/v4/android-support-v4.jar) androida do folderu libs/ Prawym przyciskiem na JAR i wybieramy Build Path Add to Build Path Oczywiście możemy wykorzystać class Fragment wbudowaną w API bez wykorzystywania Suport Library odcinamy sobie wtedy jednak kompatybilność ze wszystkimi wersjami starszymi od API level 11.

4 Tworzenie fragmentu Aby stworzyć fragment musimy rozszerzyć klasę Fragment a potem nadpisać podstawowe metody cyklu życiowego w sposób analogiczny do tego, co robiliśmy z klasą Activity. Jedyną wymaganą metodą do uruchomienia Fragmentu jest nadpisanie klasy oncreateview(): import android.os.bundle; import android.support.v4.app.fragment; import android.view.layoutinflater; import android.view.viewgroup; public class ArticleFragment extends Fragment public View oncreateview(layoutinflater inflater, ViewGroup container, Bundle savedinstancestate) { // Zwieksz layout o dodawany fragment return inflater.inflate(r.layout.article_view, container, false);

5 Dodanie Fragmentu do aktywności wykorzystując XML Każda instancja klasy Fragment musi być związana z klasą rodzicem FragmentActivity co można uzyskać definiując każdy fragment aktywności w pliku XML. FragmentActivity jest aktywnością dostarczaną z Support Library dla API starszych niż 11. W przypadku docelowego API będącego na poziomie 11 lub więcej, można wykorzystać normalną klasę Activity.

6 Przykład layoutu który dodaje dwa fragmenty do aktywności gdy ekran jest uznawany za duży ( large ): res/layout-large/news_articles.xml <LinearLayout xmlns:android=" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"> <fragment android:name="com.example.android.fragments.headlinesfragment" android:id="@+id/headlines_fragment" android:layout_weight="1" android:layout_width="0dp" android:layout_height="match_parent" /> <fragment android:name="com.example.android.fragments.articlefragment" android:id="@+id/article_fragment" android:layout_weight="2" android:layout_width="0dp" android:layout_height="match_parent" /> </LinearLayout>

7 Następnie musimy zastosować layout w aktywności: import android.os.bundle; import android.support.v4.app.fragmentactivity; public class MainActivity extends FragmentActivity public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.news_articles); Dodając fragment do layoutu za pomocą pliku XML nie możemy usunąć fragmentu w czasie działania aplikacji aby móc zamieniać fragmenty w czasie interakcji z użytkownikiem należy dodać wszystkie potrzebne fragmenty w momencie startowania aplikacji.

8 Budowanie elastycznego UI Budując aplikację wspierającą duża ilość rozmiarów ekranów możemy wykorzystywać te same fragmenty w różnych konfiguracjach layoutów. Dodawanie fragmentu do aktywności w czasie działania aplikacji Zamiast dodawać fragment do aktywności za pomocą pliku layoutu możemy dodać fragment do aktywności w czasie działania aplikacji. Wykorzystuje się to do zmiany fragmentów podczas działania aktywności.

9 Aby dodać/usunąć fragment musimy zastosować klasę FragmentManager, stworzyć transakcję: FragmentTransaction, która pozwala nam między innymi dodać, usunąć bądź zamienić fragmenty. Fragmenty które chcemy zastępować bądź usuwać powinniśmy dodawać gdy aktywność jest w stanie oncreate(). Fragmenty muszą posiadać pojemnik View wewnątrz layouta. W pojemniku tym znajdą się elementy fragmentu: res/layout/news_articles.xml: <FrameLayout xmlns:android=" android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" />

10 Aby wygenerować transakcję musimy odwołać się wewnątrz aktywności do getsupportfragmentmanager(). Otrzymując FragmentManagera możemy wywołać z niego metodę begintransaction() którą tworzymy FragmentTransaction. Następnie możemy wywołać z niego metodę add() i dodać fragment. Za pomocą FragmentTransaction możemy wykonać kilka transakcji w aktywności, kiedy ustawimy wszystko tak jak chcemy, wywołujemy commit().

11 import android.os.bundle; import android.support.v4.app.fragmentactivity; public class MainActivity extends FragmentActivity public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.news_articles); // Sprawdzamy czy aktywnosc uzywa layoutu z // fragment containerem if (findviewbyid(r.id.fragment_container)!= null) { // Jesli wychodzimy z innego stanu odtwarzajacego aktywnosc // nie musimy nic robic i powinnismy wywolac return // poniewaz mogą powstac nachodzace na siebie fragmenty if (savedinstancestate!= null) { return; // Nowy fragment HeadlinesFragment firstfragment = new HeadlinesFragment(); //Pobierz dodatkowe instrukcje z Intenta i przenies je do fragmentu firstfragment.setarguments(getintent().getextras()); // Dodaj fragment do layoutu 'fragment_container' getsupportfragmentmanager().begintransaction().add(r.id.fragment_container, firstfragment).commit();

12 Zastępowanie fragmentu innym: Procedura zmiany jest podobna do dodawania, ale zamiast.add() stosujemy metodę replace(). Zamieniając fragmenty należy umożliwić użytkownikowi powrócić do poprzedniego stanu. Aby umożliwić taką nawigację wstecz należy wywołać addtobackstack() przed commitowaniem transakcji. W momencie usuwania bądź zastępowania fragmentu, przy wywołaniu metody addtobackstack(), fragment ten jest stopowany, a nie niszczony. W momencie nawigacji wstecz fragment restartuje się. Gdy nie dodamy tej transakcji do stosu wówczas fragment jest niszczony. AddToBackStack() przyjmuje dodatkowy parametr typu string który pozwala nadać unikatowe imię transakcji.

13 // Stwórz fragment i wskaz co powinien wyswietlac ArticleFragment newfragment = new ArticleFragment(); Bundle args = new Bundle(); args.putint(articlefragment.arg_position, position); newfragment.setarguments(args); FragmentTransaction transaction = getsupportfragmentmanager().begintransaction(); //Zastąp cokolwiek znajduje się w fragment_container za pomoca newfragment. Dodaj transakcje // do stosu transaction.replace(r.id.fragment_container, newfragment); transaction.addtobackstack(null); // Commit! transaction.commit();

14 Komunikacja z innymi fragmentami Każdy fragment powinien być tworzony jako samo-zawierający się, modularny komponent który implementuje swój layout oraz zachowanie. Po stworzeniu takich fragmentów możemy je doczepiać do aktywności i połączyć z logiką aplikacji. Aby umożliwić komunikację między fragmentami musimy zastosować komunikację przez Aktywność, fragmenty nigdy nie mogą komunikować się bezpośrednio ze sobą. Tworzenie interfejsu Aby umożliwić komunikowanie Fragmentu z Aktywnością należy zdefiniować interfejs w klasie Fragment i zaimplementować go wewnątrz Aktywności. Fragment generuje interfejs w metodzie onattach():

15 public class HeadlinesFragment extends ListFragment { OnHeadlineSelectedListener mcallback; // Glowna aktywnosc musi implementowac ten interfejs public interface OnHeadlineSelectedListener { public void onarticleselected(int public void onattach(activity activity) { super.onattach(activity); // Upewniamy sie ze aktywnosc glowna implementuje interfejs // jesli nie, wyrzuca wyjatek try { mcallback = (OnHeadlineSelectedListener) activity; catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement OnHeadlineSelectedListener");

16 Teraz fragment może wysyłać wiadomości wywołując onarticleselected() wykorzystując instancje mcallback interfejsu OnHeadLineSelectedListener. Na przykład, gdy użytkownik kliknie element listy, fragment wykorzystuje interfejs aby wysłać zdarzenie do głównej public void onlistitemclick(listview l, View v, int position, long id) { // wyslij informacje do glownej aktywnosci mcallback.onarticleselected(position);

17 Implementacja interfejsu: Aby otrzymać informację z fragmentu, główna aktywność musi zaimplementować interfejs zdefiniowany w klasie fragmentu, dla przykładu: public static class MainActivity extends Activity implements HeadlinesFragment.OnHeadlineSelectedListener{... public void onarticleselected(int position) { // Uzytkownik wybral jakiś element z listy, // Kod w tym miejscu powinien zrobic cos aby wyswietlic

18 Dostarczanie wiadomości do fragmentu: Główna aktywność może dostarczać wiadomości do fragmentu poprze z tworzenie instancji Fragmentu za pomocą findfragmentbyid(), a potem wywołując jej publiczne metody.

19 public static class MainActivity extends Activity implements HeadlinesFragment.OnHeadlineSelectedListener{... public void onarticleselected(int position) { // Uzytkownik wybral z listy artykul w HeadlineFragment // Wyswietl artykul ArticleFragment articlefrag = (ArticleFragment) getsupportfragmentmanager().findfragmentbyid(r.id.article_fragment); if (articlefrag!= null) { // Jesli fragment artykulu jest dostepny, jestesmy w podwojnym layoucie // Zaktualizuj fragment wywolujac jego metode articlefrag.updatearticleview(position); else { // W innym przypadku jestesmy w pojedyncyzm layoucie i musimy zamieniac fragmenty // Stworz fragment i przekaz mu argumenty dla wybranego artykulu ArticleFragment newfragment = new ArticleFragment(); Bundle args = new Bundle(); args.putint(articlefragment.arg_position, position);

20 newfragment.setarguments(args); FragmentTransaction transaction = getsupportfragmentmanager().begintransaction(); // Zamien rzeczy z fragment_containera na newfragment, zapamietaj poprzedni stan transaction.replace(r.id.fragment_container, newfragment); transaction.addtobackstack(null); // Commit the transaction transaction.commit();

akademia androida Service, BroadcastReceiver, ContentProvider część IV

akademia androida Service, BroadcastReceiver, ContentProvider część IV akademia androida Service, BroadcastReceiver, ContentProvider część IV agenda 1. BroadcastReceiver 2. Service 3. ContentProvider 4. Zadanie 1. 5. Zadanie 2 (domowe). 1. BroadcastReceiver BroadcastReceiver

Bardziej szczegółowo

Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz

Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz pierwszy najpierw znajduje się w tle systemu gdzie otrzymuje

Bardziej szczegółowo

AndroidManifest.xml. Plik manifestu opisuje podstawowe charakterystyki aplikacji i definiuje jej komponenty.

AndroidManifest.xml. Plik manifestu opisuje podstawowe charakterystyki aplikacji i definiuje jej komponenty. AndroidManifest.xml Plik manifestu opisuje podstawowe charakterystyki aplikacji i definiuje jej komponenty. Jednym z najważniejszych elementów jest element który deklaruje kompatybilność z innymi

Bardziej szczegółowo

Powiadomienia w systemie Android

Powiadomienia w systemie Android Powiadomienia w systemie Android Powiadomienie to krótka wiadomość, która pozwala informować użytkownika o pewnych wydarzeniach pochodzących z aplikacji - będąc poza nią. Wykorzystane w odpowiedni sposób

Bardziej szczegółowo

Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku.

Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku. Aktywności to podstawowe elementy związane z platformą Android. Dzięki poznaniu aktywności będziesz w stanie napisać pierwszą aplikację przeznaczoną na urządzenie mobilne. Po dodaniu kontrolek możesz w

Bardziej szczegółowo

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 7 Wykorzystanie układu LinearLayout

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 7 Wykorzystanie układu LinearLayout Ćwiczenie 7 Wykorzystanie układu LinearLayout Cel ćwiczenia Celem ćwiczenia jest praktyczne zapoznanie się z zasadami użycia układu graficznego LinearLayout oraz wykształcenie umiejętności zastosowania

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski Agenda Dlaczego PhoneGap i co to jest? Możliwości PhoneGap Jak pisać aplikacje z PhoneGap? Konfiguracja i przykład aplikacji

Bardziej szczegółowo

Systemy operacyjne na platformach mobilnych

Systemy operacyjne na platformach mobilnych Systemy operacyjne na platformach mobilnych Wykład 3 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Menu opcji ListActivity własny widok własny adapter

Bardziej szczegółowo

Dlaczego Android? Uczę się Javy więc piszę.. w Androidzie. Nie mam telefonu z Androidem!

Dlaczego Android? Uczę się Javy więc piszę.. w Androidzie. Nie mam telefonu z Androidem! Pierwszy artykuł dotyczący programowania w Androidzie jaki zamieszczam na tym blogu. Dowiedz się co sądzę o Androidzie, czy jest opłacalny oraz dlaczego sam zacząłem się nim interesować. W pierwszym artykule

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

[Android] Podstawy programowania

[Android] Podstawy programowania Page 1 of 7 [Android] Podstawy programowania LinkiPrzewodnik z przykładamizasosbykrótka prezentacja wprowadzająca do budowy systemuprosta aplikacja z menu i dialogami, którą utworzymy tutaj krok po kroku

Bardziej szczegółowo

xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname="mainregion" />

xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname=mainregion /> 1 Tworzenie Shella a. W pierwszej kolejności tworzymy nowy projekt: WPF Application. Name: Shell SolutionName: PrismApp b. Dodajemy bibliotekę PRISM za pomocą NuGet Managera (dla.net Framework 4.5 Prism

Bardziej szczegółowo

Aplikacje internetowe i rozproszone - laboratorium

Aplikacje internetowe i rozproszone - laboratorium Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,

Bardziej szczegółowo

Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom.

Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie systemów informatycznych Przekształcenie

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

akademia androida Składowanie danych część VI

akademia androida Składowanie danych część VI akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.

Bardziej szczegółowo

Zaawansowane aplikacje internetowe

Zaawansowane aplikacje internetowe 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. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1) Instrukcja tworzenia aplikacji EE na podstawie aplikacji z dostępem do bazy danych, prezentowanej na zajęciach lab.5 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie

Bardziej szczegółowo

Podstawowe elementy GUI - zadania

Podstawowe elementy GUI - zadania Podstawowe elementy GUI - zadania LIVE DEMO Proszę zainstalować (rozpakować) Eclipse ADT z https://developer.android.com/sdk/index.html Proszę pobrać przez SDK Manager wszystko dotyczące Androida 4.4.2.

Bardziej szczegółowo

akademia androida Http i AsyncTask część VII

akademia androida Http i AsyncTask część VII akademia androida Http i AsyncTask część VII agenda 1. 2. 3. 4. URLConnection i HttpURLConnection UI Thread i ANR AsyncTask Zadanie 1. URLConnection i HttpURLConnection Jest to klasa, dzięki której możemy

Bardziej szczegółowo

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: 1. Listener dla przycisku. Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: W linii 24 tworzymy globalną metodę mglobal_onclicklistener,

Bardziej szczegółowo

Programowanie urządzeń mobilnych. dr inż. Juliusz Mikoda

Programowanie urządzeń mobilnych. dr inż. Juliusz Mikoda Programowanie urządzeń mobilnych dr inż. Juliusz Mikoda Instalacja środowiska 1 Wymagane składniki środowiska Eclipse wersja 3.4 (Ganymede) lub 3.5 (Galileo classic) http://www.eclipse.org/downloads/packages/release/galileo/r

Bardziej szczegółowo

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów

Bardziej szczegółowo

Zdarzenia Klasa Application Powiadomienia Toast AlertDialog

Zdarzenia Klasa Application Powiadomienia Toast AlertDialog Android Wykład 3 1 Zdarzenia Klasa Application Powiadomienia Toast AlertDialog 2 Zdarzenia UI (UI Events) zapewniają programowi interakcje z użytkownikiem. Obiekty określają wzajemne oddziaływania z resztą

Bardziej szczegółowo

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse 1 Cel laboratorium: Nabycie umiejętności przygotowywania testów akceptacyjnych za pomocą narzędzia FitNesse 1. Wg wskazówek

Bardziej szczegółowo

Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin

Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko

Bardziej szczegółowo

Programowanie 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 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ółowo

Programowanie Urządzeń Mobilnych. Laboratorium nr 9,10

Programowanie Urządzeń Mobilnych. Laboratorium nr 9,10 Programowanie Urządzeń Mobilnych Laboratorium nr 9,10 Android Temat 2 działanie złożonych aplikacji zawierających więcej niż jedno Activity Krzysztof Bruniecki 1 Wstęp Podczas laboratorium poruszona zostanie

Bardziej szczegółowo

Zaawansowane aplikacje WWW - laboratorium

Zaawansowane aplikacje WWW - laboratorium Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w

Bardziej szczegółowo

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,

Bardziej szczegółowo

Android pierwsza aplikacja

Android pierwsza aplikacja Android pierwsza aplikacja I. Środowisko 1. Uruchomić środowisko Android Devloppers tools 2. Wybrać/Utworzyć Wokspace Mobile-cw2 II Projekt 1. Utworzyć nowy projekt klikając na w pasku narzędzi 2. Rozwinąć

Bardziej szczegółowo

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1 Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,

Bardziej szczegółowo

Obsługa SMS i telefonii

Obsługa SMS i telefonii Strona 1 Interfejsy API telefonii Wysyłanie wiadomości SMS Odbieranie wiadomości SMS Symulowanie nadchodzących wiadomości SMS Obsługa skrzynki wiadomości SMS Wysyłanie wiadomości e-mail Monitorowanie połączeń

Bardziej szczegółowo

Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017

Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017 Wykład 13 14 czerwiec 2017 Java vs cpp - podobieństwa Podobny sposób definiowania klas. Występowanie typów podstawowych: boolean, char, byte, short, int, long, float, double. Podobna zasada definiowania

Bardziej szczegółowo

Git, Bitbucket, IntelliJ IDEA

Git, 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ółowo

Wywoływanie metod zdalnych

Wywoływanie metod zdalnych Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia

Bardziej szczegółowo

Szybciej (pisać) Łatwiej (czytać) Prościej (utrzymywać) Marcin Wąsowski Amsterdam Standard Sp. z o.o.

Szybciej (pisać) Łatwiej (czytać) Prościej (utrzymywać) Marcin Wąsowski Amsterdam Standard Sp. z o.o. Szybciej (pisać) Łatwiej (czytać) Prościej (utrzymywać) Marcin Wąsowski Amsterdam Standard Sp. z o.o. Co dostajemy na starcie? pobieranie elementów widoku, rzutowanie: ( np. findbyid ) każde zdarzenie

Bardziej szczegółowo

Laboratorium 9 (Więcej Aktywności, w Androidzie)

Laboratorium 9 (Więcej Aktywności, w Androidzie) Dr Mirosław Łątka Informatyka dla medycyny Jesień 2012 Laboratorium 9 (Więcej Aktywności, w Androidzie) Aplikacje systemu Android składają się z luźnego zbioru aktywności (ang. activities), z których każda

Bardziej szczegółowo

Dokumentacja do API Javy.

Dokumentacja 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ółowo

Aplikacje RMI Lab4

Aplikacje RMI   Lab4 Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w

Bardziej szczegółowo

Mechanizm powiadomień

Mechanizm powiadomień Mechanizm powiadomień Tłumaczenie i adaptacja materiałów: dr Tomasz Xięski. Na podstawie prezentacji udostępnionych przez Victor Matos, Cleveland State University. Portions of this page are reproduced

Bardziej szczegółowo

Klasy abstrakcyjne i interfejsy

Klasy abstrakcyjne i interfejsy Klasy abstrakcyjne i interfejsy Streszczenie Celem wykładu jest omówienie klas abstrakcyjnych i interfejsów w Javie. Czas wykładu 45 minut. Rozwiązanie w miarę standardowego zadania matematycznego (i nie

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

Mobilne aplikacje multimedialne

Mobilne aplikacje multimedialne Mobilne aplikacje multimedialne Laboratorium 1 Wyznaczanie orientacji urządzenia względem lokalnego układu odniesienia autor: Krzysztof Bruniecki Gdańsk, 2013-10-08 wersja 12 Wprowadzenie Platforma Android

Bardziej szczegółowo

Aplikacje w środowisku Java

Aplikacje w środowisku Java Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - dziedziczenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 W ramach poprzedniego laboratorium

Bardziej szczegółowo

WSTĘP DO ANDROIDA. Laboratorium 1 Systemy i aplikacje bez granic

WSTĘP DO ANDROIDA. Laboratorium 1 Systemy i aplikacje bez granic WSTĘP DO ANDROIDA Laboratorium 1 Systemy i aplikacje bez granic Uruchomić Android Studio I I Uruchomić Android Studio Stworzyć projekt typu Empty Activity I Uruchomić Android Studio Stworzyć projekt typu

Bardziej szczegółowo

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3 3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0

Bardziej szczegółowo

Laboratorium 7 Blog: dodawanie i edycja wpisów

Laboratorium 7 Blog: dodawanie i edycja wpisów Laboratorium 7 Blog: dodawanie i edycja wpisów Dodawanie nowych wpisów Tworzenie formularza Za obsługę formularzy odpowiada klasa Zend_Form. Dla każdego formularza w projekcie tworzymy klasę dziedziczącą

Bardziej szczegółowo

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz Budowa aplikacji wielowarstwowych zastosowanie szablonów Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz Przykład 1 Zastosowanie szablonów Tworzenie kopii projektu typu Web Application o nazwie

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do

Bardziej szczegółowo

Języki i metody programowania Java INF302W Wykład 3 (część 1)

Ję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ółowo

Wykład 4: Klasy i Metody

Wykład 4: Klasy i Metody Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to

Bardziej szczegółowo

akademia androida Intencje oraz URI część III

akademia androida Intencje oraz URI część III akademia androida Intencje oraz URI część III agenda 1. Czym są intencje i po co się ich używa? 2. Czym jest URI? 3. Zadanie 1. 4. Zadanie 2 (domowe). 1. Czym są intencje i po co się ich używa? Intencje

Bardziej szczegółowo

Języki i metody programowania Java. Wykład 2 (część 2)

Języki i metody programowania Java. Wykład 2 (część 2) Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego

Bardziej szczegółowo

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Ć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ółowo

Programowanie obiektowe i zdarzeniowe

Programowanie obiektowe i zdarzeniowe Marek Tabędzki Programowanie obiektowe i zdarzeniowe 1/23 Programowanie obiektowe i zdarzeniowe wykład 6 polimorfizm Na poprzednim wykładzie: dziedziczenie jest sposobem na utworzenie nowej klasy na podstawie

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody 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ółowo

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java: otwórz okienko Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU klasy wewnętrzne, lokalne i anonimowe biblioteka AWT zestaw Swing JFrame JPanel komponenty obsługa zdarzeń

Bardziej szczegółowo

AKADEMIA MŁODYCH ODKRYWCÓW

AKADEMIA MŁODYCH ODKRYWCÓW AKADEMIA MŁODYCH ODKRYWCÓW Prosta aplikacja w systemie Android Zainstaluj program Android Studio (https://developer.android.com/studio/index.html) Stwórz nowy projekt o nazwie smycz wybierając minimalny

Bardziej szczegółowo

dr Artur Bartoszewski dr Artur Bartoszewski - Aplikacje mobilne - Wykład

dr Artur Bartoszewski dr Artur Bartoszewski - Aplikacje mobilne - Wykład dr Artur Bartoszewski 1 dr Artur Bartoszewski - - Wykład Zasoby aplikacji Aby w projekcie skorzystać z zasobów, należy umieścić je podkatalogach folderu res. 2 dr Artur Bartoszewski - - Wykład Drawable

Bardziej szczegółowo

Zastosowanie komponentów EJB typu Session

Zastosowanie komponentów EJB typu Session Zastosowanie komponentów EJB typu Session na podstawie https://docs.oracle.com/javaee/7/jeett.pdf Programowanie komponentowe Lab1 1 1. Refaktoryzacja kodu programu Sklep_6 z lab5, TINT 1.1. Należy wykonać

Bardziej szczegółowo

Systemy Rozproszone - Ćwiczenie 6

Systemy Rozproszone - Ćwiczenie 6 Systemy Rozproszone - Ćwiczenie 6 1 Obiekty zdalne Celem ćwiczenia jest stworzenie obiektu zdalnego świadczącego prostą usługę nazewniczą. Nazwy i odpowiadające im punkty końcowe będą przechowywane przez

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka stub interfejs serwer szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016 Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa

Bardziej szczegółowo

dr Artur Bartoszewski dr Artur Bartoszewski - Aplikacje mobilne - Wykład

dr Artur Bartoszewski dr Artur Bartoszewski - Aplikacje mobilne - Wykład dr Artur Bartoszewski 1 Intencje Intencje (obok Aktywności) są jednym z podstawowych komponentów z których zbudowane są aplikacje systemu Android. Są one odpowiedzialne przede wszystkim za obsługę rozkazów

Bardziej szczegółowo

Zdalne wywołanie metod - koncepcja. Oprogramowanie systemów równoległych i rozproszonych Wykład 7. Rodzaje obiektów. Odniesienie do obiektu

Zdalne wywołanie metod - koncepcja. Oprogramowanie systemów równoległych i rozproszonych Wykład 7. Rodzaje obiektów. Odniesienie do obiektu Zdalne wywołanie metod - koncepcja Oprogramowanie systemów równoległych i rozproszonych Wykład 7 RMI (Remote Method Invocation) - obiektowe RPC, dostarcza klientowi interfejs do obiektu, implementacja

Bardziej szczegółowo

Podstawowe elementy GUI - zadania

Podstawowe elementy GUI - zadania Podstawowe elementy GUI - zadania LIVE DEMO Proszę stworzyć prostą aplikację do obliczania pól figur geometrycznych. To add images to the drawable forlder, right click on it, and select the Show in Explorer

Bardziej szczegółowo

Oprogramowanie systemów równoległych i rozproszonych Wykład 7

Oprogramowanie systemów równoległych i rozproszonych Wykład 7 Wykład 7 p. 1/2 Oprogramowanie systemów równoległych i rozproszonych Wykład 7 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Zdalne wywołanie

Bardziej szczegółowo

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 8 Wykorzystanie układu RelativeLayout

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 8 Wykorzystanie układu RelativeLayout Ćwiczenie 8 Wykorzystanie układu RelativeLayout Cel ćwiczenia Celem ćwiczenia jest praktyczne zapoznanie się z zasadami użycia układu graficznego RelativeLayout oraz wykształcenie umiejętności zastosowania

Bardziej szczegółowo

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego.

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Proxy (pełnomocnik) Cel: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Zastosowanie: Wszędzie tam, gdzie oczekujemy bardziej zaawansowanego odwołania do obiektu, niż zwykły

Bardziej szczegółowo

Projektowanie aplikacji internetowych laboratorium

Projektowanie aplikacji internetowych laboratorium Projektowanie aplikacji internetowych laboratorium Programowanie w języku Java Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne NetBeans 7 (zrzuty ekranów pochodzą z wersji

Bardziej szczegółowo

Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick()

Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick() Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick() Co nam będzie potrzebne? 1. Java Platform Development Kit (JDK) bez NetBeansa w wersji zgodnej z Android

Bardziej szczegółowo

Wzorce logiki dziedziny

Wzorce logiki dziedziny Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),

Bardziej szczegółowo

Środowisko Keil. Spis treści. Krzysztof Świentek. Systemy wbudowane. 1 Trochę teorii. 2 Keil

Środowisko Keil. Spis treści. Krzysztof Świentek. Systemy wbudowane. 1 Trochę teorii. 2 Keil Środowisko Krzysztof Świentek Systemy wbudowane Spis treści 1 2 Źródła 1 http://infocenter.arm.com 2 http://www.keil.com/arm/mdk.asp 3 http://pl.wikipedia.org Spis treści 1 2 Co to jest toolchain? Zbiór

Bardziej szczegółowo

Abstract Factory (fabryka abstrakcyjna)

Abstract Factory (fabryka abstrakcyjna) 1/9 Abstract Factory (fabryka abstrakcyjna) Cel: Zapewnienie interfejsu do tworzenia rodzin powiązanych obiektów bez specyfikacji konkretnej klasy. Przykład: Aplikacja do ustawiania mebli: osobne rodziny

Bardziej szczegółowo

Remote Method Invocation 17 listopada 2010

Remote Method Invocation 17 listopada 2010 Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

RESTful Android. Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie

RESTful Android. Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie RESTful Android Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie Jacek Laskowski jacek@japila.pl http://www.jaceklaskowski.pl wersja 1.0, 08.12.2011 O prelegencie - Jacek Laskowski

Bardziej szczegółowo

Programowanie wielowarstwowe i komponentowe

Programowanie wielowarstwowe i komponentowe Programowanie wielowarstwowe i komponentowe JSF 2 wprowadzenie Konfiguracja Eclipse - dodanie szablonu XHTML dla potrzeb JSF 1. Otwórz menu Window/Preferences. Następnie z drzewka wybierz Web/HTML Files/Editor/Templates.

Bardziej szczegółowo

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1)

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) MAS dr. Inż. Mariusz Trzaska Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) Zagadnienia o Podstawy o Kontrolowanie sterowania o Klasy o Interfejsy o Obsługa błędów o Pojemniki o System

Bardziej szczegółowo

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o.

Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o. Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o. 29.06.2015 2 Spis treści 1. Wymagania...4 2. Uprawnienia systemowe...4 3. Uprawnienie

Bardziej szczegółowo

WSTĘP DO ANDROIDA. Laboratorium

WSTĘP DO ANDROIDA. Laboratorium WSTĘP DO ANDROIDA Laboratorium I Uruchomić Android Studio I I Uruchomić Android Studio Stworzyć projekt typu Empty Activity I Uruchomić Android Studio Stworzyć projekt typu Empty Activity Zapoznać się

Bardziej szczegółowo

Java. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ

Java. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ Procesy i wątki Proces posiada samodzielne środowisko wykonawcze. Proces posiada własny zestaw podstawowych zasobów w czasie wykonywania; W szczególności, każdy proces ma własną przestrzeń pamięci. W uproszczeniu

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak 1 Mechanizm RMI umożliwia

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

ANDROID. OpenGL ES 1.0. Tomasz Dzieniak

ANDROID. OpenGL ES 1.0. Tomasz Dzieniak ANDROID OpenGL ES 1.0 Tomasz Dzieniak Wymagania JRE & JDK 5.0 + IDE (Eclipse 3.3.1 + / Netbeans 7.0.0 +) Android SDK Starter Package Android SDK Components Pierwszy program Project name: OpenGL Build Target:

Bardziej szczegółowo

1 Wątki 1. 2 Tworzenie wątków 1. 3 Synchronizacja 3. 4 Dodatki 3. 5 Algorytmy sortowania 4

1 Wątki 1. 2 Tworzenie wątków 1. 3 Synchronizacja 3. 4 Dodatki 3. 5 Algorytmy sortowania 4 Spis treści 1 Wątki 1 2 Tworzenie wątków 1 3 Synchronizacja 3 4 Dodatki 3 5 Algorytmy sortowania 4 6 Klasa Runnable 4 Temat: Wątki Czym są wątki. Grafika. Proste animacje. Małe podsumowanie materiału.

Bardziej szczegółowo

MonoGame. Wieloplatformowe gry w C# Mateusz Cicheński

MonoGame. Wieloplatformowe gry w C# Mateusz Cicheński MonoGame Wieloplatformowe gry w C# Mateusz Cicheński Plan prezentacji Założenia Alternatywy Narzędzia Różnice między WP8, ios, Android DEMO Podsumowanie Założenia CEL: Stworzenie wieloplatformowej gry

Bardziej szczegółowo

Programowanie w języku Java. Bazy danych SQLite w Javie

Programowanie w języku Java. Bazy danych SQLite w Javie Programowanie w języku Java Bazy danych SQLite w Javie Co to jest SQLite SQLite to bezserwerowa, nie wymagająca konfiguracji relacyjna baza danych. Znajduje szerokie zastosowanie np.. w systemie android

Bardziej szczegółowo

Wątki w Android OS. Matt Rutkowski. GynSoft sp. z o.o. http://gynsoft.net matt@gynsoft.net

Wątki w Android OS. Matt Rutkowski. GynSoft sp. z o.o. http://gynsoft.net matt@gynsoft.net Wątki w Android OS Matt Rutkowski GynSoft sp. z o.o. http://gynsoft.net matt@gynsoft.net Krótko o terminach związanych z Android OS... Android OS bazuje na Linuxie, każda aplikacja posiada własne User

Bardziej szczegółowo

PHP 5 język obiektowy

PHP 5 język obiektowy PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje

Bardziej szczegółowo

Android, wprowadzenie do SDK

Android, wprowadzenie do SDK Android, wprowadzenie do SDK Wprowadzenie, konfguracja środowiska, narzędzia, pierwsze aplikacje. prowadzący: Piotr Szymański, student 3 roku informatyki Paweł Rejkowicz, student 1 roku Informatyki 1 Android

Bardziej szczegółowo

Wywoływanie metod zdalnych

Wywoływanie metod zdalnych Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia

Bardziej szczegółowo

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami. UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami

Bardziej szczegółowo

Klasy abstrakcyjne, interfejsy i polimorfizm

Klasy abstrakcyjne, interfejsy i polimorfizm Programowanie obiektowe 12 kwietnia 2011 Organizacyjne Klasówka będzie 20 IV 2011. Sale jeszcze są pertraktowane. Materiał do wyjątków włącznie. Można mieć swoje materiały nieelektroniczne. Wywołanie z

Bardziej szczegółowo

Wykład 8: Obsługa Wyjątków

Wykład 8: Obsługa Wyjątków Wykład 8: Obsługa Wyjątków Wyjątki Wyjątek to sytuacja nienormalna, która pojawia się w trakcie wykonania programu. W językach bez obsługi wyjątków, błędy są wykrywane i obsługiwane ręcznie, zwykle przez

Bardziej szczegółowo