Lab Windows Workflow Foundation (VS2008)
|
|
- Jan Białek
- 8 lat temu
- Przeglądów:
Transkrypt
1 Lab Windows Workflow Foundation (VS2008) Zadanie 1- utworzenie prostej własnej czynności (custom activity). Otworzyć nowy projekt typu Workflow -> Workflow Activity Library W Properties ach zmień w polu Name nazwę Activity1 na np. WritelineActivity Wybrać z menu kontekstowego View Code Utworzymy nową własną czynność WritelineActivity wypisującą na konsolę treść przekazaną do niej w polu właściwości komunikat. Należy więc nadpisać metodę Execute: ///<summary> /// wykonuje aktywnosc - wyswietla komunikat na ekranie ///</summary> ///<param name="executioncontext"></param> ///<returns></returns> protected override ActivityExecutionStatus Execute(ActivityExecutionContext executioncontext) Console.WriteLine(komunikat); Console.WriteLine("wciśnij klawisz aby kontynuować wykonanie workflow..."); Console.ReadLine(); return ActivityExecutionStatus.Closed; /// <summary> /// get/set tresc komunikatu do wyswietlenia /// </summary> [Description("komunikat do wyswietlenia")] [Category("Parameters")] public string komunikat get return _mes; set _mes = value; private string _mes; Teraz dodamy w tym samym namespace nową klasę WritelineValidator sprawdzającą czy pole komunikat naszej czynności jest wypełnione jeżeli nie to ma się na ikonce naszej czynności zapalić czerwony wykrzyknik i pojawić błąd przy kompilacji. public class WritelineValidator : ActivityValidator public override ValidationErrorCollection Validate(ValidationManager manager, object obj) if (null == manager) throw new ArgumentNullException("manager"); if (null == obj) throw new ArgumentNullException("obj"); ValidationErrorCollection errors = base.validate(manager, obj); WritelineActivity act = obj as WritelineActivity; if (null!= act) if (null!= act.parent) if (string.isnullorempty(act.komunikat)) errors.add(validationerror.getnotsetvalidationerror("komunikat")); return errors;
2 Tak zdefiniowany validator należy załączyć do naszej klasy czynności: [ActivityValidator(typeof(WritelineValidator))] public partial class WritelineActivity : SequenceActivity public WritelineActivity() InitializeComponent();... Skompilować i usunąć ewentualne błędy. Aby sprawdzić jak wygląda i działa nasza czynność utworzymy w istniejącym solution nowy projekt typu Workflow->Sequential Workflow Console Application (jest to projekt z założoną aplikacją konsolowa hosta i pustym szablonem workflow). Na Toolbox ie prawym przyciskiem myszy aktywujemy menu kontekstowe i wybieramy AddTab tworząc nowa zakładkę kontrolek o nazwie np. moje kontrolki. Następnie w ramach tej zakładki podobnie wybieramy Choose Items - > zakładka Activities. Za pomocą Browse wskazujemy położenie pliku dll zawierającego naszą czynność ->OK. Nacza kontrolka czynności została dodana do listy kontrolek w toolbox ie pod nazwą WritelineActivity. Po przeciągnięciu jej do pustego workflow otrzymujemy postać: Teraz zajmiemy się sposobem w jaki nasza czynność ma być prezentowana graficznie wracamy do projektu kontrolki WritelineActivity: Ponieważ korzystamy z gradientu liniowego należy dodać w jej kodzie namespace System.Drawing.Drawing2D; oraz klasę definiującą jej postać graficzną w oknie szablonu workflow. public class WritelineTheme : ActivityDesignerTheme ///<summary> /// tworzy temat i ustawia mu pewne wartości ///</summery> ///<param name="theme"></param> public WritelineTheme(WorkflowTheme theme) : base(theme) this.bordercolor = Color.Green; this.backcolorstart = Color.Yellow; this.backcolorend = Color.Orange; this.backgroundstyle = LinearGradientMode.ForwardDiagonal;
3 [ActivityDesignerTheme(typeof(WritelineTheme))] public class WritelineDesigner : ActivityDesigner Należy jeszcze związać klasę WritelineDesigner z nasza klasą czynności : [ActivityValidator(typeof(WritelineValidator))] [Designer(typeof(WritelineDesigner))] public partial class WritelineActivity: SequenceActivity Skompilować dll kę, przejść do projektu workflow konsole application i zobaczyć jak teraz prezentuje się nasza kontrolka w oknie projektanta workflow. Powinna wyglądać tak: Zadanie 2 utworzenie workflow akceptacji kredytów Opis procesu biznesowego akceptacji kredytów: Klient podaje następujące dane: kwote kredytu (w PLN) jaką chciałby otrzymać swój wiek symbol waluty w jakiej ma być udzielony kredyt (np. USD, EUR, PLN) na ile lat chciałby wziąść kredyt Kredytodawca ma przykładowo 2 minuty aby rozpatrzyć wniosek albo zdąży go rozpatrzyć albo informuje kredytobiorcę, że czas założony na rozpatrzenie wniosku minął.rozpatrzenie wniosku polega na analizie danych wejściowych i ocenie stopnia ryzyka związanego z udzieleniem kredytu w następujący sposób. Osoby ponizej (<=) 20 roku życia mogą uzyskać kredyt wyskości max PLN. Następuje sprawdzenie jakiej kwoty żąda kredytobiorca. Jeżeli kwota żądana > PLN to ustawiany jest komunikat o odrzucieniu kredytu nie spełnienie wymogów kredytowania i wypisywana jest na konsolę informacja Jestś za młody na tak dużą kwotę. Jeżeli kwota żądana <= PLN to sprawdzamy czy przypadkiem kilient nie chce aby kredyt został udzielony w obcej walucie. Jeżeli w obcej walucie to należy uzyskać wartość przelicznika dla danej waluty (z WebService) i wyliczyć kwotę żądanego kredytu w danej walucie. Na bazie kwoty żadanego kredytu (odpowiednio w PLN lub obcej walucie) i zakładanego okresu spłaty (w latach) wyliczana jest rata miesięczna do spłacania. Generowany jest komunikat do kredytobiorcy o pomyślnym rozpatrzeniu wniosku kredytowego. Osoby starsze (wiek>20 lat) otrzymują komunikat o odrzucieniu kredytu nie spełnienie wymogów kredytowania i wypisywana jest na konsolę informacja jesteś powyżel limitu wiekowego Klient otrzymuje następujące informacje zwrotne: Komentarz czy przydzielono czy nie kredyt; Kwota_kredytu_w_walucie Symbol waluty Żadana_kwota kredytu w PLN wiek Okeres_na ile lat wziął kredyt
4 Wysokość wyliczonej raty kredytu (w pln lub w zadanej walucie na wejściu) Status przydzielenia kredytu Kroki do wykonania: W projekcie typu Workflow->Sequential Workflow Console Application usuwamy naszą testowo wstawioną kontrolkę WritelineActivity i modyfikujmy program hosta (plik program.cs) o: wczytanie od kredytobiorcy wartości wejściowych przekazanie ich jako kolekcje parametrów do instancji workflow zwrócenie i wypisanie na konsole parametrów wyjściowych instancji workflow Powinien przyjąć postać: static void Main(string[] args) try //zdefiniowanie i wczytanie wartości startowych dla instancji workflow double kwota_kr = 0; int wiek = 0; int okres = 0; Console.WriteLine("podaj parametry dla wykonania workflow przydziału kredytu "); Console.Write("kwota kredytu w PLN:"); double.tryparse(console.readline(), out kwota_kr); Console.Write("wiek:"); int.tryparse(console.readline(), out wiek); Console.Write("symbol waluty w jakiej ma być udzielony kredyt:"); string waluta = Console.ReadLine(); Console.Write("na ile lat brany kredyt: "); int.tryparse(console.readline(), out okres); //utoworzenie kolekcji parametrów Dictionary<string, object> parametry = new Dictionary<string, object>(); parametry.add("kwota_kredytu", kwota_kr); parametry.add("wiek", wiek); parametry.add("okres", okres); parametry.add("symbol_waluty", waluta); //powołanie do życia runtime u i podpięcie funkcji obsługi zdarzeń utworzono, zakończono pomyślnie i zakończono z błędem wykonanie workflow using (WorkflowRuntime workflowruntime = new WorkflowRuntime()) Console.WriteLine("Runtime Started."); AutoResetEvent waithandle = new AutoResetEvent(false); workflowruntime.workflowcompleted += delegate(object sender, WorkflowCompletedEventArgs e) waithandle.set(); Console.WriteLine("parametry wyjściowe z workflow daj kredyt"); //kolekcja ta zawiera wszystkie publiczne właściwości zdefiniowane w workflow foreach (KeyValuePair<string, object> par in e.outputparameters) Console.WriteLine("0 =1", par.key, par.value); Console.ReadLine(); ; workflowruntime.workflowterminated += delegate(object sender, WorkflowTerminatedEventArgs e) Console.WriteLine(e.Exception.Message); Console.ReadLine(); waithandle.set(); ; //powołanie do życia instancji workflow i przekazanie kolekcji parametrów
5 //typeof(namespace.nazwa_klasy z pliku workflow1.cs definiującego szablon naszego workflow) WorkflowInstance instance = workflowruntime.createworkflow(typeof(workflowconsoleapplication1.workflow1), parametry); //uruchomienie wykonywania instancji instance.start(); // Wait for the event to be signaled waithandle.waitone(); workflowruntime.stopruntime(); Console.WriteLine("Program Complete."); Console.ReadLine(); catch (Exception exception) Console.WriteLine("Exception occured: " + exception.message); Console.ReadLine(); Teraz kolej na zdefiniowanie naszego workflow przez kolejne umieszczanie elementów z toolboxa i definiowanie ich właściwości: 1. Ponieważ nasz workflow ma się zakończyć gdy minie określony czas lub też dokonamy rozpatrzenia wniosku w czasie krótszym więc dodajemy czynność ListenActivity (każda z gałęzi musi zawierać czynność sterowaną zdarzeniem). W lewej gałęzi zdefiniujemy: oczekiwanie na upłynięcie czasu maksymalnego (2 minuty) delayactivity TimeoutDuration = 00:02:00, w którym to powinien być rozpatrzony wniosek czynność Code, dla której ustawimy pole name = powiadomienie, ExecuteCode= minal_czas (jest to przypisanie funkcji jaka ma się wykonać na wołanie metody ExecuteCode dla tej czynności)- zostanie utworzony w kodzie szablon tej metody tworzymy zawartość metody minal_czas ustawiającej zawartość informacji w polu komunikat private void minal_czas(object sender, EventArgs e) komentarz = "Minął czas przewidziany na udzielenie odpowiedzi - przepraszamy - zapraszamy ponownie "+ Status.ToString(); Ustawmy w kodzie naszego szablonu workflow (plik Workflow1.cs) wszystkie pola publiczne potrzebne do przechowywania przekazywanych parametrów wejściowych i umieszczenia parametrów wyjściowych public sealed partial class Workflow1: SequentialWorkflowActivity private int _wiek; private double _kwota_kredytu; private int _okres; private double _rata; private string _symbol_waluty; private string _komentarz; private double _kwota_kredytu_wal; [CategoryAttribute("Parameters")] public double kwota_kredytu_wal get return this._kwota_kredytu_wal; set this._kwota_kredytu_wal = value;
6 public string komentarz get return this._komentarz; set this._komentarz = value; public string symbol_waluty get return this._symbol_waluty; set this._symbol_waluty = value; public double kwota_kredytu get return this._kwota_kredytu; set this._kwota_kredytu = value; public int wiek get return this._wiek; set this._wiek = value; public int okres get return this._okres; set this._okres = value; public double rata get return this._rata; set this._rata = value; private StatusType statusvalue; public enum StatusType None, Approved, Rejected public StatusType Status get return this.statusvalue; set this.statusvalue = value; public double przelicznik_waluty; public Workflow1() InitializeComponent(); Status = StatusType.None; 2. W prawej gałęzi umieścimy również czynność delay z minimalnym czasem opoźnienienia = 1 sek oraz naszą własną kontrolkę WritelineActivity z komunikatem tu będzie akceptacja kredytu Powinniśmy otrzymać postać :
7 sprawdźmy jej wykonanie: 3. Teraz zajmiemy się analizą danych wejściowych podanych przez kredytobiorcę. Na początek w czynności IfElse sprawdzimy wiek kredytobiorcy. Umieszczamy czynność IfElse zamiennie za naszą WritelineActivity1. Zmieniamy jej nazwę w polu Name na wiek1. Dla ifelsebranchactivity1 modyfikujemy nazwe na mniej_niż20 pole Condition na CodeCondition i po rozwinięciu +Condition ustawiamy w polu Condition nazwę metody na sprawdz_wiek, która będzie definiować i sprawdzać warunek wejścia do lewej gałęzi. Szablon metody zostanie wygenerowany uzupełniamy go do postaci: private void sprawdz_wiek(object sender, ConditionalEventArgs e) e.result = (wiek <= 20); Warunku dla drugiej gałęzi IfElse nie ustawiamy działa domyślnie jak ELSE 4. W gałęzi ELSE czyli warunek wiek>20 umieścimy dwie czynności: Code nazwę zmieniamy na odmowa2 a pole ExecuteCode= odrzuc_kredyt
8 private void odrzuc_kredyt(object sender, EventArgs e) Status = StatusType.Rejected; komentarz = "Bardzo nam przykro ale nie spełnia Pan/Pani warunków kredytowania \n" + Status.ToString(); WritelineActivity z komunikatem jesteś powyżej limitu wiekowego Bieżąca postać workflow akceptacji wniosku kredytowego: 5. Uzupełnimy teraz lewą gałąź IfElse dla warunku wiek<=20. Należy umieścić kolejną czynność IfElse dla sprawdzenia czy zadana kwota kredytu <= Ustawiamy dla niej Name = kwota_kred, i w lewej gałęzi dla ifelsebranchactivity1 name = mniej10tys oraz Condition=Code Condition, +Condition= spr_zadana_kwote private void spr_zadana_kwote(object sender, ConditionalEventArgs e) e.result = (kwota_kredytu <= 10000); W prawej gałęzi czynności (tj. kwota kredytu >10000) umieszczamy czynność code odmowa1 (wykonuje metodę odrzuc_kredyt) i WritelineActivity2 z komunikatem jesteś młody i chcesz zbyt dużą kwotę. Bieżąca postać to:
9 6. Teraz zajmiemy się lewą gałęzią - kwota kredytu <= Z punktu biznesowego nie ma tu przeciwwskazań do udzielenia kredytu mimo, iż wiek jest młody to kwota jest niska i kredytodawca jest w stanie ponieść takie ryzyko. Zanim jednak obliczymy ratę kredytu i przyznamy go należy sprawdzić, czy czasem klient nie chce go uzyskać w walucie obcej a jeżeli tak to należy pozyskać przelicznik tej waluty. Umieszczamy kolejnego IfElse o nazwie w_walucie - z warunkiem spr_walute i nazwą warunku obca: private void spr_walute(object sender, ConditionalEventArgs e) e.result = (symbol_waluty.toupper()!= "PLN"); 7. Jeżeli mamy do czynienia z walutą obcą to wykorzystamy usługę sieciową do pozyskania przelicznika. Usługa dostępna pod adresem: Umieścimy w tym celu czynność InvokeWebService, wskazać powyższy adres w polu URL, kliknąć GO, dodać referencje webową o proponowanej nazwie. We właściwościach ustawić MethodName= ConversionRate. Dla pola FromCurrency double-click na żółtej ikonce właściwości wiązanej ->zakładka Bind to a new member -> Create Field utworzymy sobie nowe pole związane z tą właściwością o nazwie invokewebserviceactivity1_fromcurrency1 i potem podstawimy do niego odpowiednią wartość. W kodzie zostanie wygenerowany zapis: public WorkflowConsoleApplication3_usun.net.webservicex. invokewebserviceactivity1_fromcurrency1 = new WorkflowConsoleApplication3_usun.net.webservicex. Powtarzamy te czynności również dla pola ToCurrency tworząc pole związane invokewebserviceactivity1_tocurrency1 oraz dla (ReturnValue) wybieramy z okna bind to existing member pole przelicznik_waluty.
10 W kodzie odpowiednio: public WorkflowConsoleApplication3_usun.net.webservicex. invokewebserviceactivity1_tocurrency1 = new WorkflowConsoleApplication3_usun.net.webservicex. Teraz ustawimy dla pola Invoking nazwę metody, która ma być wykonana przed wywołaniem usługi. U nas Invoking = przypisz_wartosci zostanie utworzony szablon dla niej, który uzupełniamy do postaci: private void przypisz_wartosci(object sender, InvokeWebServiceEventArgs e) invokewebserviceactivity1_fromcurrency1 = WorkflowConsoleApplication1.net.webservicex. switch (symbol_waluty.toupper()) case "USD": invokewebserviceactivity1_tocurrency1 = WorkflowConsoleApplication1.net.webservicex. break; case "EUR": invokewebserviceactivity1_tocurrency1 = WorkflowConsoleApplication1.net.webservicex. break; default: break; Gdzie WorkflowConsoleApplication1 jest namespacem, w którym jest szablon workflow i referencja (o nazwie net.webservicex.www) do definicji typu wyliczeniowego waluty -Currency 8. Teraz należałoby wyliczyć wartość kredytu w żądanej przez klienta walucie umieszczamy pod wołaniem usługi sieciowej kolejną czynność typu Code o nazwie kredyt_w_walucie2 i przypisujemy jej wykonanie metody kredyt_w_walucie o postaci: private void kredyt_w_walucie(object sender, EventArgs e) this.kwota_kredytu_wal = this._kwota_kredytu * przelicznik_waluty; 9. Na koniec należy wyliczyć ratę kredytu i poinformować o przyznaniu kredytu. jest to kontynuacja lewej gałęzi od czynności warunkowej o nazwie kwota_kredytu2 ale już poza warunkiem sprawdzającym walutę. Dodajemy czynność Code o nazwie wylicz_rate1 i przypisujemy jej wykonanie metody wylicz_rate o postaci: private void wylicz_rate(object sender, EventArgs e) if (symbol_waluty.toupper() == "PLN") rata = kwota_kredytu / (okres * 12); else rata = kwota_kredytu_wal / (okres * 12); Dodajemy czynność Code o nazwie przyznanie i przypisujemy jej wykonanie metody przyznaj_kredyt o postaci: private void przyznaj_kredyt(object sender, EventArgs e) Status = StatusType.Approved; komentarz = "Gratulujemy kredyt został przyznany " + Status.ToString(); 10. Otrzymana postać szablonu workflow dla rozpatrywania kredytu według przyjętego opisu procesu biznesowego ma postać:
11 Przeanalizować działanie spróbować zmodyfikować aplikacje hosta i uruchomić wiele instancji tego workflow. Rozwinięcie procesu biznesowego zadanie indywidualne (Poniższy opis modyfikuje proces w zakresie wiek>20 lat) Osoby powyżej (>) 20 roku życia mające miesięczny zarobek <=3500 PLN mogą uzuskać kredyt w kwocie max PLN, a o zarobku >3500 PLN max PLN. W pozostałych przypadkach wołany jest ekspert indywidualnie oceniającego stopień ryzyka i podejmującego decyzję o przyznaniu lub odrzuceniu kredytu. Ekspert ma max 1 dzień na dokonanie ekspertyzy. Osobom powyżej 80 roku życia kredyt nie przysługuje (otrzymują komunikat o odrzucieniu kredytu nie spełnienie wymogów kredytowania i wypisywana jest na konsolę informacja jesteś powyżel limitu wiekowego )
12 Przykład zaimplementowania experta bankowego jako własnego Runtime Service komunikującego się z daną instancja workflow. Do definicji pól w Workflow1.cs dodać; private double miesieczny_zarobek; public double Miesieczny_zarobek get return miesieczny_zarobek; set miesieczny_zarobek = value; oraz definicję interfejsu experta bankowego (poza klasą Workflow1 ale w tym samym namespace) [ExternalDataExchange] public interface IExpertBankowy void ocenexperciewniosek(double kwota,double mies_zar); event EventHandler<ExternalDataEventArgs> opiniaexperta; Dodaj do projektu nowy plik klasy ExpertBankowy.cs oraz definicje klas przekazywanych argumentów między instancja, a hostem public class ExpertBankowy : IExpertBankowy public event EventHandler<ExternalDataEventArgs> opiniaexperta; public void ocenexperciewniosek(double kwota, double mies_zar) ThreadPool.QueueUserWorkItem(GetResponse, new ocenwniosekeventargs(workflowenvironment.workflowinstanceid, kwota, mies_zar)); private void GetResponse(object o) ocenwniosekeventargs args = o as ocenwniosekeventargs; double podzial = args.kwota/ args.mies_zar; Console.WriteLine("kwota przez zarobek wynosi" + podzial +"czy chcesz zatwierdzić pozyczkę? " ); // read the user's response from the command line char response = Console.ReadKey().KeyChar; Console.WriteLine(); // check the user's response // and raise the appropriate event if (response == 'y') opiniaexperta(null, new opiniaeventargs(args.instanceid,true)); else opiniaexperta(null, new opiniaeventargs(args.instanceid, false)); //def parametrów przekazywanych do metody usługi związanej wołanej z wewnątrz workflow [Serializable] public class ocenwniosekeventargs : ExternalDataEventArgs private double _kwota; public double Kwota
13 get return _kwota; set _kwota = value; private double _mies_zar; public double Mies_zar get return _mies_zar; set _mies_zar = value; public ocenwniosekeventargs(guid instanceid, double _mies_zar, double kwota) :base(instanceid) this._kwota = kwota; this._mies_zar = _mies_zar; //def parametrów przekazywanych z serwisu do wewnątrz workflow za pomocą generowanego zdarzenia (na które nasłuchujemy w workflow) [Serializable] public class opiniaeventargs : ExternalDataEventArgs private bool _przyznano; public bool Przyznano get return this._przyznano; public opiniaeventargs(guid instanceid, bool _przyznano) : base(instanceid) this._przyznano = _przyznano; W pliku program.cs należy dopisać pobranie z klawiatury kwoty miesięcznego zarobku kredytobiorcy: double zarobek = 0; Console.Write("twoj miesieczny zarobek:"); double.tryparse(console.readline(), out zarobek);... parametry.add("miesieczny_zarobek", zarobek); W tym samym pliku zanim powołamy do życia instancję naszego workflow należy dodać do usług naszą usługę experta bankowego ale jako usługę typu ExternalDataExchangeService //dodamy usługę do wymiany komunikacji do/z instancją workflow ExternalDataExchangeService edes = new ExternalDataExchangeService(); workflowruntime.addservice(edes); ExpertBankowy expertb = new ExpertBankowy(); edes.addservice(expertb); Teraz należy zmodyfikować nasz szablon workflow dodając w gałęzi warunku wieku między 20 a 80 CallExternalMethodActivity w celu wywołania metody ocenexperciewniosek z naszego serwisu ExpertBankowy. Należy dla niej wybrać InterfaceType -> IExpertBankowy, methodname= ocenexperciewniosek, oraz związać właściwość mies_zar z polem Miesięczny_zarobek (z naszego Workflw1) i kwota z kwota_kredytu (z naszego Workflow1). (patrz rys. poniżej)
14 Przekazaliśmy wniosek kredytowy do oceny eksperta bankowego teraz należy oczekiwać na jego odpowiedź. Dajemy mu 1 dzień na dokonanie ekspertyzy. Należy więc wstawić jako kolejną czynność nasłuchującą na zaistnienie zdarzenia ListenActivity (wykona się jedynie pierwsze zaistniałe zdarzenie). W jednej gałęzi dajemy DelayActivity z 1 dniem oczekiwania ( TimeoutDuration = 1.00:00:00) i informację o tym, że minął czas dla odpowiedzi eksperta wniosek kredytowy w statusie none. W drugiej gałęzi oczekujemy za pomocą HandleExternalEventActivity na nadejście powiadomienia od experta o dokonanej ekspertyzie z parametrów tego zdarzenia należy odczytać jaka zapadła decyzja (przyznany czy nie). Ustawiamy dla niej nazwę = czekaj_odpexperta, InterfaceType na
15 IExpertBankowy oraz EventName = opiniaexperta. Ustawiamy też nazwę metody jaka ma się wykonać po nadejściu zdarzenia (Invoked = przyszła_odp_exp). W kodzie tej metody sprawdzimy jaka jest nadesłana odpowiedź i ustawimy odpowiednio status dla kredytu. private void przyszła_odp_exp(object sender, ExternalDataEventArgs e) opiniaeventargs a = e as opiniaeventargs; if (a.przyznano) Status = StatusType.Approved; else Status = StatusType.Rejected; Console.WriteLine("Odpowiedź experta o przyznaniu kredytu: " + Status.ToString()); Zdebagować projekt Ogólny widok na układ projektu:
16
Windows Workflow Foundation (wprowadzenie - prosty przykład Sequential Workflow):
Windows Workflow Foundation (wprowadzenie - prosty przykład Sequential Workflow): 1. Utworzenie projektu - Sequential Workflow. File - New Project - Visual C# -Workflow- Sequential Workflow Console Application
Bardziej szczegółowo- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
Bardziej szczegółowoLaboratorium 10 - Web Services
Laboratorium 10 - Web Services W ramach laboratorium zapoznamy się z koncepcją Web Service ów (odmiana point-to-point Web Service). W kolejnych krokach utworzony zostanie projekt, w którym wykorzystana
Bardziej szczegółowoPlatforma.NET. Laboratorium nr 1 Podstawy języka C#
Platforma.NET Laboratorium nr 1 Podstawy języka C# Ćwiczenie 1 1. Utwórz nowy projekt a. Z menu File wybierz New/Project b. W oknie dialogowym New Project określ następujące właściwości: typu projektu:
Bardziej szczegółowoWykład 12. Programowanie serwera MS SQL 2005 w C#
Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych
Bardziej szczegółowoZaawansowane aplikacje internetowe - laboratorium Web Services (część 1).
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).
Bardziej szczegółowoNarzę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ółowoWindows Workflow Foundation
Windows Workflow Foundation Podstawowe pojęcia Proces biznesowy jest kolekcją wzajemnie powiązanych zadań, inicjowaną w odpowiedzi na konkretne zdarzenie, prowadzącą do powstania określonego produktu/usługi
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ółowoWykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Zagadnienia 1. Delegaty wiązane, właściwości indeksowane 2. Delegaty niewiązane 3. Nowa wersja kalkulatora, delegaty
Bardziej szczegółowoPrzykładowa dostępna aplikacja w Visual Studio - krok po kroku
Przykładowa dostępna aplikacja w Visual Studio - krok po kroku Zadaniem poniższego opisu jest pokazanie, jak stworzyć aplikację z dostępnym interfejsem. Sama aplikacja nie ma konkretnego zastosowania i
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium JavaServer Faces Celem ćwiczenia jest przygotowanie aplikacji internetowej z wykorzystaniem technologii JSF. Prezentowane ćwiczenia zostały wykonane w środowisku Oracle JDeveloper
Bardziej szczegółowoProgramowanie 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ółowoInstrukcja 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ółowoWykład 5 Okna MDI i SDI, dziedziczenie
Wykład 5 Okna MDI i SDI, dziedziczenie Autor: Zofia Kruczkiewicz Zagadnienia 1. Aplikacja wielookienkowa. Zakładanie projektu typu CLR Windows Forms 1.1. Aplikacja typu MDI 1.2. Aplikacja typu SDI 2. Dziedziczenie
Bardziej szczegółowoProjektowanie 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ółowoProgramowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 07 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami tworzenia aplikacji okienkowych w C#. Wprowadzenie teoretyczne. Rozważana w
Bardziej szczegółowoAXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak
AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak Ustawienie zmiennych środowiskowych Przed rozpoczęciem pracy z pakietem AXIS należy ustalić
Bardziej szczegółowoProgramowanie 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ółowoWYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy
Bardziej szczegółowoProsta książka telefoniczna z wykorzystaniem zapisu do pliku
Prosta książka telefoniczna z wykorzystaniem zapisu do pliku Celem zajęć będzie napisanie prostego programu okienkowego, którego zadaniem będzie zapisywanie imienia, nazwiska, adresu-email oraz numeru
Bardziej szczegółowo1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1
1 LINQ 1 1. Cel zajęć Celem zajęć jest zapoznanie się z technologią LINQ oraz tworzeniem trójwarstwowej aplikacji internetowej. 2. Zadanie Proszę przygotować aplikację WWW, która: będzie pozwalała na generowanie
Bardziej szczegółowoInformatyka II. Laboratorium Aplikacja okienkowa
Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.
Bardziej szczegółowoWykł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ółowoZaawansowane 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ółowoJęzyki i metody programowania Java Lab2 podejście obiektowe
Języki i metody programowania Java Lab2 podejście obiektowe https://docs.oracle.com/javase/tutorial/ http://zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady/pojava/javazk4_2.pdf Zofia Kruczkiewicz 1 Zadanie
Bardziej szczegółowoVisual Studio instalacja
Visual Studio 2017 - instalacja Do tej pory napisaliśmy wiele programów, z czego niemal wszystkie były aplikacjami konsolowymi. Najwyższy więc czas zająć się tworzeniem aplikacji z graficznym interfejsem
Bardziej szczegółowoxmlns: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ółowoBudowa 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ół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ółowoUtworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia
Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia nowego projektu (poniżej są utworzone projekty) Po kliknięciu
Bardziej szczegółowoimei CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Instytut Metrologii, Elektroniki i Informatyki
CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium imei Instytut Metrologii, Elektroniki i Informatyki Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Wprowadzenie Tworzenie nowej aplikacji w środowisku
Bardziej szczegółowoPWSG Ćwiczenia 12. Wszystkie ukończone zadania należy wysłać na adres: lub
PWSG Ćwiczenia 12 Wszystkie ukończone zadania należy wysłać na adres: sara.m.jurczyk@gmail.com lub sarajurczyk@kul.lublin.pl Zadanie 1: Różnica między zwykłymi polami/metodami, a polami/metodami static
Bardziej szczegółowoKurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
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ółowoTEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Bardziej szczegółowoJęzyki i metody programowania Java Lab1 https://docs.oracle.com/javase/tutorial/ Zofia Kruczkiewicz
Języki i metody programowania Java Lab1 https://docs.oracle.com/javase/tutorial/ Zofia Kruczkiewicz Zadanie 1. Wykonanie projektu Java SE w środowisku Netbeans- File/New Project W formularzu New Project
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 4 Marcin Młotkowski 15 marca 2018 Plan wykładu 1 2 3 Klasa podstawowa Własne kolekcje Obiekty i wartości Marcin Młotkowski Programowanie obiektowe 141 / 224 Z czego składa
Bardziej szczegółowoWybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:
Interfejs w MFC 1. Tworzenie nowego projektu Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej: Następnie wybieramy opcje jak na rysunku: Następnie wybieramy
Bardziej szczegółowoJęzyki i metodyka programowania. Język C# pętle, sterowanie, wyjątki
Język C# pętle, sterowanie, wyjątki Język C# pętle Pętle: while ( ) do { while ( ); for ( ; ; ) foreach ( in
Bardziej szczegółowoPlatformy Programowania
Platformy Programowania Ćwiczenie 1 4 x Hello World! Środowisko programistyczne, w którym będziemy pracować do wakacji: Microsoft Visual Studio 2010 Profesional 1. Utwórz aplikację konsolową. Po uruchomieniu
Bardziej szczegółowo1. 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ółowoKurs 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ółowoProgramowanie Komputerów
Programowanie Komputerów Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Wykład 30 godzin, Laboratoria 30 godzin 2012/ Strona 1 z 28 1. Tablice w C# Indeksowane od zera
Bardziej szczegółowoProgramowanie telefonów z Windows Phone 7, cz. 4
Programowanie telefonów z Windows Phone 7, cz. 4 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
Bardziej szczegółowoD:\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ół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ółowoASP.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ółowoPodstawy programowania obiektowego
1/23 Podstawy programowania obiektowego wykład 8 polimorfizm, wyjątki, kolekcje generyczne Na poprzednim wykładzie: dziedziczenie jest sposobem na utworzenie nowej klasy na podstawie klasy już istniejącej,
Bardziej szczegółowoSposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby
Bardziej szczegółowoAplikacje 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ół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ół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ółowoInstytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA
Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA Laboratorium nr 8 PODSTAWY OBSŁUGI PROGRAMU WONDERWARE INTOUCH 10.1 Opracował: mgr inż. Marcel Luzar Cel: Konfiguracja
Bardziej szczegółowoMicrosoft.NET: ASP.NET MVC + Entity Framework (Code First)
Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta
Bardziej szczegółowoRozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych
Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych Jacek Matulewski Materiały dla Podyplomowego Studium Programowania i Zastosowania Komputerów, sekcja Projektowanie i tworzenie aplikacji
Bardziej szczegółowoPracownia internetowa w każdej szkole (edycja Jesień 2007)
Instrukcja numer D1/05_03/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 Ręczne zakładanie kont użytkowników (D1) Jak ręcznie założyć konto w systemie
Bardziej szczegółowoModelowanie obiektowe - Ćw. 1.
1 Modelowanie obiektowe - Ćw. 1. Treść zajęć: Zapoznanie z podstawowymi funkcjami programu Enterprise Architect (tworzenie nowego projektu, korzystanie z podstawowych narzędzi programu itp.). Enterprise
Bardziej szczegółowoProgramowanie telefonów z Windows Phone 7, cz. 2
Programowanie telefonów z Windows Phone 7, cz. 2 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
Bardziej szczegółowo2. W oknie dialogowym Choose Toolbox Items w zakładce.net Framework Components naciskamy przycisk Browse...
KORZYSTANIE Z KONTROLKI.NET LENDEVICERS232 DODAWANIE KONTROLKI DO ZBIORU KOMPONENTÓW DOSTĘPNYCH W PALECIE TOOLBOX (ŚRODOWISKA PROGRAMISTYCZNE FIRMY MICROSOFT) W środowisku programistycznym (Visual C++,
Bardziej szczegółowoKarty pracy. Ustawienia. W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne.
Karty pracy W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne. Ustawienia Pierwszym krokiem w rozpoczęciu pracy z modułem Karty Pracy jest definicja
Bardziej szczegółowoProtokół JDBC współpraca z relacyjnymi bazami danych lab4. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych
Protokół JDBC współpraca z relacyjnymi bazami danych lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych Zadanie1 Połączenie z bazą danych travel systemu bazodanowego Derby (metoda void
Bardziej szczegółowoProgramowanie w Javie
Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student
Bardziej szczegółowo1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {}; static public void m2() {}; void abstract m3();
1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {; static public void m2() {; void abstract m3(); default static void m4() {; a) Poprawnie zadeklarowano metodę m1() b) Poprawnie
Bardziej szczegółowoKurs walut. Specyfikacja projektu. Marek Zając 2013-12-16
Kurs walut Specyfikacja projektu Marek Zając 2013-12-16 Spis treści 1. Podsumowanie... 2 1.1 Wstęp... 2 1.2 Projekt interfejsu... 2 1.2.1 Rozmiar głównego okna... 2 2. Słownik pojęć... 2 2.1 Definicja
Bardziej szczegółowoKurs 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ółowoTworzenie i wykorzystanie usług sieciowych
Ćwiczenie 14 Temat: Tworzenie i wykorzystanie usług sieciowych Cel ćwiczenia: W trakcie ćwiczenia student zapozna się z procedurą tworzenia usługi sieciowej w technologii ASP.NET oraz nauczy się tworzyć
Bardziej szczegółowoFragmenty są wspierane od Androida 1.6
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
Bardziej szczegółowoInstrukcja laboratoryjna cz.3
Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:
Bardziej szczegółowoInstrukcja obsługi certyfikatu kwalifikowanego w programie Płatnik.
Instrukcja obsługi certyfikatu kwalifikowanego w programie Płatnik. Rejestracja certyfikatu w Płatniku Aby zarejestrować certyfikat w Płatniku proszę postępować zgodnie z instrukcją poniżej. Proszę uruchomić
Bardziej szczegółowoProgramowanie 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ółowoZaawansowane aplikacje internetowe - laboratorium
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest
Bardziej szczegół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ółowoPolitechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych
Laboratorium OiOSE. Programowanie w środowisku MS Visual C++ 1 Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych Organizacja i Oprogramowanie Systemów Elektronicznych Michał Kowalewski
Bardziej szczegółowoMicrosoft.NET: LINQ to SQL, ASP.NET AJAX
Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub
Bardziej szczegółowoKLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Bardziej szczegółowoĆwiczenia 9 - Swing - część 1
Ćwiczenia 9 - Swing - część 1 Utwórz nowy projekt wybierając: File->New Project->Java Application, przy czym odznacz opcję Create Main Class. Kliknij prawym przyciskiem myszy na podfolder Source Packages
Bardziej szczegółowoInstytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA
Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA Laboratorium nr 13 PODSTAWY OBSŁUGI PROGRAMU WONDERWARE INTOUCH 10.1 Opracował: mgr inż. Marcel Luzar Cel: Konfiguracja
Bardziej szczegółowoDb4o obiektowa baza danych wersja.net
Wstęp Db4o obiektowa baza danych wersja.net Db4o (database for objects) to obiektowa baza danych na platformę Java i.net. Pełna wersja bazy db4o jest dostępna na dwóch licencjach: open source: pozwala
Bardziej szczegółowoObiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.
Zrozumienie funkcji danych statycznych jest podstawą programowania obiektowego. W niniejszym artykule opiszę zasadę tworzenia klas statycznych w C#. Oprócz tego dowiesz się czym są statyczne pola i metody
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ółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
Bardziej szczegółowoInstrukcja 5 Laboratorium z Podstaw Inżynierii Oprogramowania. Warstwy integracji z bazą danych: Wzorzec DAO Technologia ORM
Instrukcja 5 Laboratorium z Podstaw Inżynierii Oprogramowania Warstwy integracji z bazą danych: Wzorzec DAO Technologia ORM Cel laboratorium 5 Należy wykonać dwie aplikacje zawierające warstwę integracji
Bardziej szczegółowoInstalacja systemu zarządzania treścią (CMS): Joomla
Instalacja systemu zarządzania treścią (CMS): Joomla Na stronie http://www.cba.pl/ zarejestruj nowe konto klikając na przycisk:, następnie wybierz nazwę domeny (Rys. 1a) oraz wypełnij obowiązkowe pola
Bardziej szczegółowoZaawansowane aplikacje internetowe - laboratorium Architektura CORBA.
Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)
Bardziej szczegółowoPodstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio
Podstawy programowania Ćwiczenie Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Tematy ćwiczenia algorytm, opis języka programowania praca ze środowiskiem, formularz, obiekty
Bardziej szczegółowoWprowadzenie do projektu QualitySpy
Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować
Bardziej szczegółowoProgramowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Programowanie komponentowe Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Utworzenie użytkowników i ról na serwerze aplikacji Sun Java System Application
Bardziej szczegółowoInstrukcja pomocnicza do przygotowania sprawozdania Zgłoszenie zaangażowania
Instrukcja pomocnicza do przygotowania sprawozdania wersja 5.15.2.4 Autorzy: Jadwiga Kordek Wrocław 11.2015 Wszelkie prawa zastrzeżone. Dokument może być reprodukowany przechowywany bez ograniczeń tylko
Bardziej szczegółowoProgramowanie w środowiskach graficznych. Wykład 3 Język C#
Programowanie w środowiskach graficznych Wykład 3 Język C# 1 Zagadnienia 1. Wprowadzenie 2. Przestrzenie nazw 3. Typy, parametry, konwersje 4. Klasy 5. Instrukcje sterujące 6. Właściwości 7. Interfejsy,
Bardziej szczegółowoIMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi EGZAMIN PIERWSZY (25 CZERWCA 2013) JĘZYK C++ poprawiam ocenę pozytywną z egzaminu 0 (zakreśl poniżej x) 1. Wśród poniższych wskaż poprawną formę definicji
Bardziej szczegółowoKLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Bardziej szczegółowoWstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5 Programowanie komponentowe 1 Przykład 1- Wykonanie prostej aplikacji internetowej w technologii JavaEE w środowisku Netbeans 5.5 z wykorzystaniem
Bardziej szczegółowoLINQ TO XML. Autor ćwiczenia: Marcin Wolicki
LINQ TO XML Celem ćwiczenia jest zapoznanie się z możliwościami przetwarzania dokumentów XML na platformie.net. W toku zadania zostaną przedstawione dwie technologie: LINQ TO XML i XPath. Autor ćwiczenia:
Bardziej szczegółowoProgramowanie Obiektowe GUI
Programowanie Obiektowe GUI Swing Celem ćwiczenia jest ilustracja wizualnego tworzenia graficznego interfejsu użytkownika opartego o bibliotekę Swing w środowisku NetBeans. Ponadto, ćwiczenie ma na celu
Bardziej szczegółowoĆwiczenie 1. Modelowanie prostego procesu
Ćwiczenie 1. Modelowanie prostego procesu Część 1. Definiowanie nowego projektu 1. Uruchom narzędzie TIBCO Business Studio. 2. Z menu wybierz File -> New -> Project... 3. W oknie dialogowym New Project
Bardziej szczegółowoetrader Pekao Podręcznik użytkownika Strumieniowanie Excel
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel Spis treści 1. Opis okna... 3 2. Otwieranie okna... 3 3. Zawartość okna... 4 3.1. Definiowanie listy instrumentów... 4 3.2. Modyfikacja lub usunięcie
Bardziej szczegółowoPolitechnika Poznańska Wydział Budowy Maszyn i Zarządzania
1) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi elementami obiektowymi systemu Windows wykorzystując Visual Studio 2008 takimi jak: przyciski, pola tekstowe, okna pobierania danych
Bardziej szczegółowo