Architektura MVC w ASP.NET. Autor wykładu: Marek Wojciechowski

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

Download "Architektura MVC w ASP.NET. Autor wykładu: Marek Wojciechowski"

Transkrypt

1 Architektura MVC w ASP.NET Autor wykładu: Marek Wojciechowski

2 Modele programistyczne ASP.NET Web Forms Komponentowy interfejs użytkownika (kontrolki) Programowanie wizualno-zdarzeniowe Klasyczna składnia ASP.NET ASP.NET MVC Implementacja wzorca MVC Klasyczna składnia ASP.NET lub silnik Razor Web Pages Proste aplikacje webowe jak w PHP lub starym ASP Składnia Razor Web Forms ASP.NET MVC Web Pages ASP.NET ASP.NET (2)

3 ASP.NET (3) ASP.NET Web Pages Najnowszy i najprostszy model programistyczny framework do tworzenia dynamicznych stron internetowych w stylu PHP i klasycznego ASP wykorzystuje składnię i silnik Razor (ASP.NET Web Pages 2) open source tworzone w Visual Studio lub darmowym środowisku WebMatrix oparte o silnik widoków (ang. view engine) Razor obsługiwane języki programowania: C# i Visual Basic (rozszerzenia stron.cshtml i.vbhtml)

4 Silnik widoków Razor ASP.NET MVC od początku wspierał koncepcję silników widoków modułów implementujących różną składnię szablonów stron Spark i NHaml jako przykłady silników szablonów do użycia w ASP.NET MVC zamiast tradycyjnego, znanego z Web Forms, silnika ASP.NET Razor opracowany dla MVC3, stosowany również w MVC4, ale też w ASP.NET Web Pages 2 Cechy silnika Razor przejrzysty kod bazujący na językach C# i VB zwarta i przejrzysta inteligentny parser umożliwia naturalny przeplot HTML z językiem programowania wspiera IntelliSense, unit tests, layouts helpery do generacji formularzy HTML ASP.NET (4)

5 ASP.NET Web Pages Przykład (1/2) var title = Request.QueryString["title"]; if (String.IsNullOrEmpty(title)) { title = "Razor Web Page"; } var count = Request["count"].AsInt(1); } <html> <head><title>@title</title></head> <body> <form method="post"> # <input type="submit" value="submit" /> if(ispost) { for(int i = 0; i < count; i++) { } } } </body></html> ASP.NET (5)

6 ASP.NET Web Pages Przykład (2/2) ASP.NET (6)

7 ASP.NET (7) ASP.NET MVC Framework firmy Microsoft dla ASP.NET oparty o wzorzec Model-View-Controller (MVC) pierwsza wersja produkcyjna: marzec 2009 przedstawiany jako alternatywa dla Web Forms, a nie następca aktualna wersja MVC4 open source (licencja MS-PL) darmowy w pełni wspierany od wersji MVC3 oferuje silnik widoków Razor jako alternatywę dla klasycznej składni ASP.NET

8 ASP.NET (8) Zalety ASP.NET MVC Pełna kontrola nad generowanym kodem HLML Embrace HTTP and HTML - don't hide it brak view state i formularzy po stronie serwera Bogate możliwości integracji z Ajax Intuicyjne adresy URL w aplikacji RESTful i przyjazne wyszukiwarkom Podział kompetencji i odpowiedzialności komponentów aplikacji (ang. separation of concerns) Testowalność wsparcie dla Test-Driven Development (TDD) Nacisk na zarządzanie nawigacją w aplikacji wzorzec Front Controller, routing

9 ASP.NET (9) Web Forms na tle ASP.NET MVC Abstrakcja od HTML i HTTP view state, postbacks, kontrolki, cykl życia strony ułatwia programistom szybki start trudno porządnie implementować duże systemy mniej kodu RAD, małe zespoły projektowe Orientacja na stronę jako atomową jednostkę aplikacji Website jako domyślny sposób organizacji kodu w VS ścisły związek nazwy pliku strony z adresem URL trudne i mało wydajne testowanie aplikacji wzorzec Page Controller

10 ASP.NET (10) Role komponentów w ASP.NET MVC Models komponenty odpowiedzialne za pamiętanie stanu stan często utrwalany w bazie danych Views komponenty odpowiedzialne za wyświetlanie interfejsu użytkownika aplikacji widok może być tworzony kreatorem w oparciu o model (CRUD scaffolding) Controllers komponenty odpowiedzialne za obsługę interakcji z użytkownikiem, manipulowanie modelem i wybór widoku do wyświetlenia

11 ASP.NET (11) Struktura projektu ASP.NET MVC Nowo utworzony projekt zawiera zaczątek aplikacji, który można następnie dostosować i rozwinąć szablon strony (master page) domyślna reguła routingu obsługa logowania użytkowników proste kontrolery i widoki opcjonalnie towarzyszący projekt do testów jednostkowych

12 Aplikacja startowa ASP.NET MVC ASP.NET (12)

13 ASP.NET (13) Routing Global.asax.cs public class MvcApplication : System.Web.HttpApplication { public static void RegisterRoutes(RouteCollection routes) {... routes.maproute( "Default", // Route name "{controller}/{action}/{id}", // URL with params new { controller = "Home", action = "Index", id = "" } // Param defaults ); } } protected void Application_Start() { RegisterRoutes(RouteTable.Routes); }

14 ASP.NET (14) Controller public class HomeController : Controller { public ActionResult Index() { ViewData["Message"] = "Welcome to ASP.NET MVC!"; HomeController.cs } return View(); } public ActionResult About() { return View(); }

15 ASP.NET (15) View Index.aspx Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>... <asp:content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server"> <h2><%= Html.Encode(ViewData["Message"]) %></h2> <p> To learn more about ASP.NET MVC visit <a href=" title="asp.net MVC Website"> </p> </asp:content>

16 Master Page Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>... <div id="menucontainer"> </div> Site.Master <ul id="menu"> <li><%= Html.ActionLink("Home", "Index", "Home")%></li> <li><%= Html.ActionLink("About", "About", "Home")%></li> </ul> <div id="main"> <asp:contentplaceholder ID="MainContent" runat="server" /> </div>... Obecnie (dla silnika widoków Razor i C#): _Layout.cshtml ASP.NET (16)

17 ASP.NET (17) Przekazywanie danych z kontrolera do widoku ViewData, ViewBag (od MVC 3) Dane dostępne w ramach pojedynczego żądania nie przetrwają operacji Redirect ViewData["klucz"], ViewBag.klucz TempData Dane przetrwają operację Redirect TempData["klucz"] Wewnętrznie wykorzystuje sesję HTTP View models i strongly typed views Obiekty modelu przekazywane do widoku Rozwiązanie zalecane

18 ASP.NET (18) Ochrona przed atakami CSRF Cross Site Request Forgery (CSRF, XSRF) atak wykorzystujący zaufanie serwisu do przeglądarki użytkownika (żądanie z przeglądarki zalogowanego użytkownika, podrzucone mu z innego serwisu) Mechanizm obrony w ASP.NET MVC poprzez Anti-Forgery Token generowana losowo informacja dołączona do formularza w polu ukrytym i jednocześnie ustawiana jako cookie po odebraniu formularza wysłanego z przeglądarki test zgodności tokena z pola ukrytego i cookie

19 ASP.NET (19) AntiForgeryToken w ASP.NET MVC widok z formularzem <% using (Html.BeginForm()) {%> <%= Html.AntiForgeryToken() %> <! elementy formularza <% } %> kontroler przetwarzający dane z formularza [ValidateAntiForgeryToken] public ActionResult Akcja(FormCollection form) {... }

20 Podsumowanie ASP.NET MVC to nowy framework dla ASP.NET oferowany przez Microsoft implementacja architektury MVC zastosowanie podejść zalecanych w dużych projektach separation of concerns test-driven development Powrót do korzeni: HTML i HTTP niekiedy przypomina ASP: <% %> wsparcie dla REST; helpery ułatwiające kodowanie Ma stanowić alternatywę dla Web Forms każde z rozwiązań ma zalety i wady należy wybrać framework odpowiedni dla realizowanego projektu i kompetencji programistów ASP.NET (20)

ASP.NET MVC. Autor wykładu: Marek Wojciechowski

ASP.NET MVC. Autor wykładu: Marek Wojciechowski ASP.NET MVC Autor wykładu: Marek Wojciechowski Modele programistyczne ASP.NET Web Forms Komponentowy interfejs użytkownika (kontrolki) Programowanie wizualno-zdarzeniowe Klasyczna składnia ASP.NET ASP.NET

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

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

Bardziej szczegółowo

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Tworzenie aplikacji Web Alicja Zwiewka. Page 1 Tworzenie aplikacji Web Alicja Zwiewka Page 1 Co to są web-aplikacje? Aplikacja internetowa (ang. web application) program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową

Bardziej szczegółowo

ASP.NET MVC. Grzegorz Caban grzegorz.caban@gmail.com. 20 stycznia 2009

ASP.NET MVC. Grzegorz Caban grzegorz.caban@gmail.com. 20 stycznia 2009 ASP.NET MVC Grzegorz Caban grzegorz.caban@gmail.com 20 stycznia 2009 Agenda Przyczyna powstania Co to jest ASP.NET MVC Architektura Hello World w ASP.NET MVC ASP.NET MVC vs ASP.NET WebForm Przyszłość framework'a

Bardziej szczegółowo

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Microsoft.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ółowo

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner 2013-03-11

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner 2013-03-11 Poznaj ASP.NET MVC Kamil Cieślak Microsoft Student Partner 2013-03-11 Agenda Czym jest ASP.NET MVC? Wzorzec MVC ASP.NET MVC vs inne frameworki Bazy danych w ASP.NET MVC Jak zacząć? 2 Czym jest ASP.NET

Bardziej szczegółowo

Podstawy wzorca MVC 2011-10-18 MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę.

Podstawy wzorca MVC 2011-10-18 MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę. Podstawy wzorca MVC MODEL KON- TROLER WIDOK Zawiera dane aplikacji oraz jej logikę. MODEL WIDOK Odpowiada za wyświetlenie danych użytkownikowi KON- TROLER KON- TROLER MODEL WIDOK Jedyna część aplikacji,

Bardziej szczegółowo

Technologie internetowe ASP.NET Core. Paweł Rajba

Technologie internetowe ASP.NET Core. Paweł Rajba Technologie internetowe ASP.NET Core Paweł Rajba pawel@cs.uni.wroc.pl http://itcourses.eu/ Plan wykładu Wprowadzenie Podstawowa aplikacja Usługi i middleware Obsługa błędów Request, Response, ciastka i

Bardziej szczegółowo

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE Cena szkolenia Cena szkolenia wynosi 100 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie

Bardziej szczegółowo

Ruby i Ruby on Rails. Mateusz Drożdżyński

Ruby i Ruby on Rails. Mateusz Drożdżyński Ruby i Ruby on Rails Mateusz Drożdżyński Co to Ruby? Dynamiczny, obiektowy język programowania, stworzony przez Yukihiro Matsumoto Pojawił się w tym samym roku co Java (1995) Przejrzysta, prosta i intuicyjna

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

Czym jest Ruby on Rails?

Czym jest Ruby on Rails? Czym jest Ruby on Rails? Ruby on Rails - napisany w języku Ruby framework open source do szybkiego tworzenia aplikacji internetowych w oparciu o architekturę MVC David Heinemeier Hansson twórca Rails Ruby

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework mgr inż. Łukasz Stefanowicz dr inż.

Bardziej szczegółowo

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Microsoft.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 2015. W ramach projektu budowana jest prosta

Bardziej szczegółowo

Zrąb JavascriptMVC. Krzysztof Płocharz. 6 kwiecień 2009. Uniwersytet Warszawski

Zrąb JavascriptMVC. Krzysztof Płocharz. 6 kwiecień 2009. Uniwersytet Warszawski Uniwersytet Warszawski 6 kwiecień 2009 Spis Treści 1 MVC Jak to wygląda w JavascriptMVC 2 Prawie jak klasy 3 Hierarchia Widoki Kontrolery Modele 4 Struktura katalogów Generatory kodu Generatory dokumentacji

Bardziej szczegółowo

Nowy projekt: - ASP.NET MVC 3 Web Application - [Other Languages] Visual C# Web ASP.NET MVC 3 Web Application - okno dialogowe:

Nowy projekt: - ASP.NET MVC 3 Web Application - [Other Languages] Visual C# Web ASP.NET MVC 3 Web Application - okno dialogowe: Instalacja MVC 3: - http://www.asp.net/mvc - Visual Studio 2010 zawiera wbudowane MVC 2 - wymagany jest.net 4.0, a więc co najmniej Windows XP SP3 (jeżeli ma się zainstalowane Visual Studio 2010, może

Bardziej szczegółowo

Budowa nowoczesnej aplikacji SPA z wykorzystaniem biblioteki Ember.js

Budowa nowoczesnej aplikacji SPA z wykorzystaniem biblioteki Ember.js Akademia MetaPack Uniwersytet Zielonogórski Budowa nowoczesnej aplikacji SPA z wykorzystaniem biblioteki Ember.js Daniel Habowski Budowa aplikacji SPA z wykorzystaniem biblioteki Ember.js Agenda: 1. Standardowa

Bardziej szczegółowo

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski Technologie dla aplikacji klasy enterprise Wprowadzenie Marek Wojciechowski Co oznacza enterprise-ready? Bezpieczeństwo Skalowalność Stabilność Kompatybilność wstecz Wsparcie Dokumentacja Łatwość integracji

Bardziej szczegółowo

Realizacja Aplikacji Internetowych 2013 laboratorium K. M. Ocetkiewicz

Realizacja Aplikacji Internetowych 2013 laboratorium K. M. Ocetkiewicz Realizacja Aplikacji Internetowych 2013 laboratorium K. M. Ocetkiewicz Instalacja MVC 4 - http://www.asp.net/mvc - Visual Studio 2012 oraz 2013 (także Web Express) zawiera wbudowane MVC 4 - można doinstalować

Bardziej szczegółowo

Realizacja Aplikacji Internetowych 2013 laboratorium cz. 2 K.M. Ocetkiewicz

Realizacja Aplikacji Internetowych 2013 laboratorium cz. 2 K.M. Ocetkiewicz Realizacja Aplikacji Internetowych 2013 laboratorium cz. 2 K.M. Ocetkiewicz Walidacja po stronie klienta: - w MVC 3 i 4 domyślnie jest włączona także walidacja po stronie klienta - wykorzystuje ona JavaScript

Bardziej szczegółowo

Realizacja Aplikacji Internetowych 2012 laboratorium K. M. Ocetkiewicz

Realizacja Aplikacji Internetowych 2012 laboratorium K. M. Ocetkiewicz Realizacja Aplikacji Internetowych 2012 laboratorium K. M. Ocetkiewicz Instalacja MVC 4: - http://www.asp.net/mvc - Visual Studio 2012 (także Web Express) zawiera wbudowane MVC 4 - można doinstalować MVC

Bardziej szczegółowo

MVC w praktyce tworzymy system artykułów. cz. 1

MVC w praktyce tworzymy system artykułów. cz. 1 MVC w praktyce tworzymy system artykułów. cz. 1 Tworząc różnego rodzaju aplikacje natrafiamy na poważny problem utrzymania dobrej organizacji kodu przejrzystej oraz łatwej w rozbudowie. Z pomocą przychodzą

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

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia Kod szkolenia: Tytuł szkolenia: DED/FSJS Full Stack JavaScript z Angular i Nest Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających podstawową wiedzę w zakresie JavaScript,

Bardziej szczegółowo

Infrastruktura aplikacji WWW

Infrastruktura aplikacji WWW ASP.NET WebForms Infrastruktura aplikacji WWW Gotowe rozwiązania architektoniczne i szkielety aplikacji zwalniają twórców aplikacji z implementacji infrastruktury, zwiększając ich produktywność Stanowy,

Bardziej szczegółowo

Kurs języka Ruby. Ruby on Rails ActionPack

Kurs języka Ruby. Ruby on Rails ActionPack Kurs języka Ruby Ruby on Rails ActionPack Co to jest RoR: Środowisko do szybkiego tworzenia aplikacji webowych Garść informacji Stworzony przez Davida Heinemeiera Hanssona DRY Don't Repeat Yourself Mnóstwo

Bardziej szczegółowo

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia) Program szkolenia: Przygotowanie do nowoczesnego programowania po stronie przeglądarki (HTML5, CSS3, JS, wzorce, architektura, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania:

Bardziej szczegółowo

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008 Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF

Bardziej szczegółowo

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,

Bardziej szczegółowo

Program szkolenia: Symfony, nowoczesny framework PHP

Program szkolenia: Symfony, nowoczesny framework PHP Program szkolenia: Symfony, nowoczesny framework PHP Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Symfony, nowoczesny framework PHP PHP-frameworki PHP developerzy 3 dni 40% wykłady

Bardziej szczegółowo

pawel.rajba@gmail.com, http://kursy24.eu/

pawel.rajba@gmail.com, http://kursy24.eu/ pawel.rajba@gmail.com, http://kursy24.eu/ Wprowadzenie, struktura Podstawy Twig Adres i nawigacja Request, Response i parametry Ciasta, sesje i flash messages Model i baza danych Formularze Security Ilustracje

Bardziej szczegółowo

Microsoft.NET: ASP.NET MVC + Entity Framework (Model First)

Microsoft.NET: ASP.NET MVC + Entity Framework (Model First) Microsoft.NET: ASP.NET MVC + Entity Framework (Model First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta

Bardziej szczegółowo

app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP

app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP Baza danych i ORM Struktura Bundle app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP src/ - folder zawiera cały kod PHP aplikacji vendor/

Bardziej szczegółowo

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Statyczne strony HTML Wczytanie statycznej strony HTML sprowadza się do odebrania żądania przez serwer, odnalezienia właściwego pliku

Bardziej szczegółowo

Zaawansowane aplikacje internetowe laboratorium REST

Zaawansowane aplikacje internetowe laboratorium REST Zaawansowane aplikacje internetowe laboratorium REST Pytka Bartosz, Drożdż Mateusz, Ejkszto Mateusz, Łozowski Marcin, Tański Mariusz Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne

Bardziej szczegółowo

Systemy internetowe ASP.NET mgr inż. Andrzej Sobecki

Systemy internetowe ASP.NET mgr inż. Andrzej Sobecki Systemy internetowe ASP.NET mgr inż. Andrzej Sobecki Plan wykładu Wprowadzenie do ASP.NET Omówienie środowiska pracy Przykładowy projekt Omówienie komponentów składowych projektu ASP.NET Utworzenie i omówienie

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz

Bardziej szczegółowo

Architektura mikroserwisów na platformie Spring IO

Architektura mikroserwisów na platformie Spring IO Kod szkolenia: Tytuł szkolenia: SPRIO Architektura mikroserwisów na platformie Spring IO Dni: 3 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów Java pragnących dowiedzieć się jak tworzyć

Bardziej szczegółowo

Testowanie aplikacji Java Servlets

Testowanie aplikacji Java Servlets Borland Developer Days 2004 2-3 czerwca 2004 Testowanie aplikacji Java Servlets Bartosz Walter mailto: Bartek.Walter@man.poznan.pl Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe?

Bardziej szczegółowo

Projekt: Mikro zaprogramowane na sukces!

Projekt: Mikro zaprogramowane na sukces! Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Projekt: Mikro zaprogramowane na sukces! Opis autoryzowanych szkoleń Microsoft planowanych do realizacji w ramach

Bardziej szczegółowo

WYKORZYSTANIE WZORCA MVC W ASP.NET

WYKORZYSTANIE WZORCA MVC W ASP.NET MACIEJ WĘGRZYNOWSKI Wydział Elektroniki i Informatyki Politechniki Koszalińskiej Kierunek Informatyka, II rok studiów niestacjonarnych drugiego stopnia Przedmiot PROGRAMOWANIE W ŚRODOWISKU.NET WYKORZYSTANIE

Bardziej szczegółowo

Szkolenie wycofane z oferty

Szkolenie wycofane z oferty Szkolenie wycofane z oferty Program szkolenia: Java Server Faces 2 Informacje: Nazwa: Java Server Faces 2 Kod: Java-EE-JSF 2 Kategoria: Java EE Grupa docelowa: developerzy Czas trwania: 3 dni Forma: 50%

Bardziej szczegółowo

Walidacja po stronie serwera Walidacja po stronie klienta:

Walidacja po stronie serwera Walidacja po stronie klienta: Walidacja po stronie serwera: - do prostej walidacji słuŝy obiekt ModelState, - walidacja, która wykorzystuje ten obiekt wykonuje odpowiednie testy i w przypadku błędu woła metodę AddModelError z parametrami

Bardziej szczegółowo

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Co narzuca MVC? Architekturę aplikacji wykonaną w konwencji Model Widok - Kontroler Model reprezentacja danych i dostępu do nich Widok elementy

Bardziej szczegółowo

Wzorce prezentacji internetowych

Wzorce prezentacji internetowych Wzorce prezentacji internetowych 1. Model kontrolera widoku (Model View Controller). 2. Kontroler strony (Page Controller). 3. Kontroler fasady (Front Controller). 4. Szablon widoku (Template View). 5.

Bardziej szczegółowo

Program szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk

Program szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk Program szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem

Bardziej szczegółowo

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF O mnie 12 lat doświadczenia w systemach WEB Java/JEE (ISC) 2 CISSP CTO w J-LABS GET / HTTP/1.1 Host: bank.pl User-Agent: Mozilla/5.0

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

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...

Bardziej szczegółowo

ASP.NET MVC. Uwierzytelnianie i routing. Zaawansowane programowanie internetowe Instrukcja nr 6

ASP.NET MVC. Uwierzytelnianie i routing. Zaawansowane programowanie internetowe Instrukcja nr 6 6 ASP.NET MVC Uwierzytelnianie i routing 1 1. Cel zajęć Celem zajęć jest zapoznanie się z metodami uwierzytelniania użytkownika aplikacji oraz z mechanizmami routingu w ASP.NET MVC. 2. Odrobina teorii

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

Walidacja danych w ASP.NET MVC

Walidacja danych w ASP.NET MVC Walidacja danych w ASP.NET MVC 1. Prosta walidacja 2. Walidacja z Data Annotation public ActionResult Edit(Person person) bool blad = false; if(person.name.trim().length == 0) ViewData["Blad1"] = "Nazwisko

Bardziej szczegółowo

Programowanie w Ruby

Programowanie w Ruby Programowanie w Ruby Wykład 13 Marcin Młotkowski 16 stycznia 2013 Plan wykładu Testowanie aplikacji w Ruby on Rails Testowanie modeli Testy funkcjonalne: testowanie kontrolerów Testy integracyjne Testowanie

Bardziej szczegółowo

EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails

EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails Plan prezentacji Framework Rails Ruby on Rails podstawowe założenia DRY: nie powtarzaj się Ruby on Rails podstawowe założenia DRY: nie powtarzaj

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

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

Bardziej szczegółowo

Platformy Programowania

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

Modele danych walidacja widoki zorientowane na model

Modele danych walidacja widoki zorientowane na model Modele danych walidacja widoki zorientowane na model 1. Wprowadzenie Modele danych Modele danych w ASP.NET MVC to klasy znajdujące się w katalogu Models. Ich zadaniem jest mapowanie danych przesyłanych

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i budowa systemu zarządzania treścią opartego na własnej bibliotece MVC Autor: Kamil Kowalski W dzisiejszych czasach posiadanie strony internetowej to norma,

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.3. Formularze

Języki programowania wysokiego poziomu. PHP cz.3. Formularze Języki programowania wysokiego poziomu PHP cz.3. Formularze Formularze Sposób przesyłania danych formularza do serwera zależy od wybranej metody HTTP: Metoda GET

Bardziej szczegółowo

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152

4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152 Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy

Bardziej szczegółowo

4 AS SP.NET MVC. Widok. Zaawansowane programowanie internetowe Instrukcja nr 4

4 AS SP.NET MVC. Widok. Zaawansowane programowanie internetowe Instrukcja nr 4 4 AS SP.NET MVC Widok 1 1. Cel zajęć Celem zajęć jest zapoznanie się z metodami tworzenia widoków w ASP.NET MVC 2. Wprowadzenie Na poprzednich zajęciach stworzyliśmy prostą aplikację pokazującą podstawowe

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Środowisko Django, cz. 3 19 stycznia 2018 Plan wykładu 1 2 Konstrukcja formularzy Walidacja i zapis 3 Ograniczenie dostępu 4 Plan wykładu 1 2 Konstrukcja formularzy Walidacja i zapis 3 Ograniczenie dostępu

Bardziej szczegółowo

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

MVC, Razor i Azure technologie dla programistów. Wykonanie: Adam Augustyniak Kamil Kołodziejski Łukasz Żmudziński UWM 2015

MVC, Razor i Azure technologie dla programistów. Wykonanie: Adam Augustyniak Kamil Kołodziejski Łukasz Żmudziński UWM 2015 MVC, Razor i Azure technologie dla programistów Wykonanie: Adam Augustyniak Kamil Kołodziejski Łukasz Żmudziński UWM 2015 AGENDA Model MVC złożony wzorzec projektowy Razor Opisanie wzorca, wytłumaczenie

Bardziej szczegółowo

Testowanie aplikacji. Kurs języka Ruby

Testowanie aplikacji. Kurs języka Ruby Testowanie aplikacji Kurs języka Ruby Rodzaje testów Testy jednostkowe Testy funkcjonalne Testy integracyjne Testy jednostkowe (unit tests) Testy sprawdzające pojedyncze funkcjonalności (metodę, funkcję

Bardziej szczegółowo

Aplikacje Internetowe

Aplikacje Internetowe Aplikacje Internetowe ITA-103 Wersja 1 Warszawa, październik 2008 Spis treści Wprowadzenie i-4 Moduł 1 Podstawy HTML 1-1 Moduł 2 Kaskadowe Arkusze Stylów CSS 2-1 Moduł 3 Podstawy JavaScript 3-1 Moduł 4

Bardziej szczegółowo

Agenda. Wstęp Zmiany Co nowego dla web developerów? Nowości we front-end developingu Czego spodziewać się może końcowy użytkownik?

Agenda. Wstęp Zmiany Co nowego dla web developerów? Nowości we front-end developingu Czego spodziewać się może końcowy użytkownik? Agenda Wstęp Zmiany Co nowego dla web developerów? Nowości we front-end developingu Czego spodziewać się może końcowy użytkownik? Podsumowanie Drupal 8 w liczbach 26 nowych modułów 6 608 plików 247 597

Bardziej szczegółowo

Wzorce architektoniczne

Wzorce architektoniczne Wzorce architektoniczne Architektura warstwowa, MVP, MVC, MVVM Wojciech Szymecki Wydział Fizyki, Astronomii i Informatyki Stosowanej Uniwersytet Mikołaja Kopernika 23 maja 2014 Architektura warstwowa W

Bardziej szczegółowo

REFERAT PRACY DYPLMOWEJ. Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej

REFERAT PRACY DYPLMOWEJ. Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej REFERAT PRACY DYPLMOWEJ Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej Autor: Maciej Zajączkowski Promotor: dr inż. Romana Simińskiego Kategorie: platforma do obsługi gry internetowej

Bardziej szczegółowo

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Przykłady na podstawie zadań lab. z przedmiotu Technologie internetowe

Bardziej szczegółowo

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Program szkolenia: Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Produktywne tworzenie aplikacji webowych z

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 11 - przegląd wybranych wzorców mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 24 maja 2017 1 / 38 mgr inż. Krzysztof Szwarc Programowanie obiektowe Wzorce

Bardziej szczegółowo

I.Wojnicki, PHP. Smarty. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie. 28 marca 2014

I.Wojnicki, PHP. Smarty. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie. 28 marca 2014 Igor Wojnicki (AGH, KIS) Smarty 28 marca 2014 1 / 33 Smarty Igor Wojnicki Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie 28 marca 2014 $Id: smarty.tex,v 1.2 2013/06/22 22:09:45 wojnicki

Bardziej szczegółowo

WYKŁAD 1 ANGULARJS CZĘŚĆ 1

WYKŁAD 1 ANGULARJS CZĘŚĆ 1 WYKŁAD 1 ANGULARJS CZĘŚĆ 1 DEFINICJA ANGULARJS Framework JavaScript na licencji open-source wykorzystywany do tworzenia aplikacji SPA (single page applications) w oparciu o wzorzec projektowy Model-View-Controler.

Bardziej szczegółowo

ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH

ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH szkolenie dla webdeveloperów ze znajomością przynajmniej podstaw HTML i JavaScript INFORMACJE PODSTAWOWE AngularJS to framework JavaScript stworzony przez inżynierów

Bardziej szczegółowo

PROJEKTOWANIE APLIKACJI INTERNETOWYCH

PROJEKTOWANIE APLIKACJI INTERNETOWYCH PROJEKTOWANIE APLIKACJI INTERNETOWYCH (WFAIS.IF-N016) dr inż. Marcin Zieliński Wykład dla kierunku: Informatyka Stosowana I rok, II stopień Rok akademicki: 2016/2017 - semestr letni WYKŁAD 2 Przypomnienie

Bardziej szczegółowo

Zagrożenia trywialne. Zagrożenia bezpieczeństwa aplikacji internetowych. Parametry ukryte. Modyfikowanie parametrów wywołania

Zagrożenia trywialne. Zagrożenia bezpieczeństwa aplikacji internetowych. Parametry ukryte. Modyfikowanie parametrów wywołania Zagrożenia trywialne Zagrożenia bezpieczeństwa aplikacji internetowych Rozwiązania charakterystyczne dla fazy rozwoju opisy rozpoznanych błędów, debugging, komentarze poprzednie wersje plików (cp plik.jsp

Bardziej szczegółowo

Aplikacje Internetowe

Aplikacje Internetowe Aplikacje Internetowe ITA-103 Wersja 1 Warszawa, październik 2008 2008 Piotr Bubacz. Autor udziela prawa do bezpłatnego kopiowania i dystrybuowania wśród pracowników uczelni oraz studentów objętych programem

Bardziej szczegółowo

Podstawy programowania III WYKŁAD 6

Podstawy programowania III WYKŁAD 6 Podstawy programowania III WYKŁAD 6 Jan Kazimirski 1 Projekt: Katalog książek elektronicznych c.d. 2 Diagram przypadków użycia 3 Iteracja 1 Zaprojektowanie panelu głównego aplikacji Realizacja przypadków

Bardziej szczegółowo

Tworzenie cross-platformowych aplikacji w Xamarin.Forms

Tworzenie cross-platformowych aplikacji w Xamarin.Forms Tworzenie cross-platformowych aplikacji w Xamarin.Forms Wprowadzenie Tomasz Gibulski Microsoft Certified Professional (MCP) Microsoft Certified Technology Specialist (MCTS) tomasz@gibulski.com www.gibulski.com

Bardziej szczegółowo

Szkolenie wycofane z oferty. Programowanie w JavaScript (zawiera jquery)

Szkolenie wycofane z oferty. Programowanie w JavaScript (zawiera jquery) Szkolenie wycofane z oferty Program szkolenia: Programowanie w JavaScript (zawiera jquery) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Programowanie w JavaScript (zawiera jquery)

Bardziej szczegółowo

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne

Bardziej szczegółowo

media Blitz wydajne sytemy szablonów

media Blitz wydajne sytemy szablonów Blitz wydajne sytemy szablonów Dlaczego stosować szablony? MVC Kontroler Model Widok Co to jest Blitz? Rozszerzenie PHP stworzone przez Alexey A. Rybak a. Regularnie rozwijany od 2005 roku. Szybki i lekki

Bardziej szczegółowo

Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne

Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Wzorce projektowe i ich implementacja

Bardziej szczegółowo

KARTA PRZEDMIOTU. Warsztaty z Ruby on Rails. Ruby on Rails Workshop

KARTA PRZEDMIOTU. Warsztaty z Ruby on Rails. Ruby on Rails Workshop KARTA PRZEDMIOTU Warsztaty z Ruby on Rails Ruby on Rails Workshop realizowanego w ramach projektu PO WER 2017 2019 Wydział Inżynierii Elektrycznej i Komputerowej Kierunek studiów: Informatyka Profil: ogólnoakademicki

Bardziej szczegółowo

Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych

Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych Kod szkolenia: ANGULAR 4 Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających

Bardziej szczegółowo

Wstęp. Ale po co? Implementacja

Wstęp. Ale po co? Implementacja Wstęp Mechanizm sesji jest jedną z podstawowych form komunikacji pomiędzy skryptami jako jedyna tablica z super globalnych nie jest widoczna dla użytkownika. Mimo, że PHP od wersji 4 staje się coraz bardziej

Bardziej szczegółowo

Aplikacje webowe z wykorzystaniem Node.js oraz Express

Aplikacje webowe z wykorzystaniem Node.js oraz Express Aplikacje webowe z wykorzystaniem Node.js oraz Express Adresaci szkolenia: Kurs przeznaczony jest dla programistów pragnących tworzyć skalowalne aplikacje z wykorzystaniem Node.js. Parametry szkolenia:

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

Rysunkowy tutorial Możesz swobodnie dystrybuować ten plik jeśli pozostawisz go w nietkniętym stanie. Możesz także cytować jego fragmenty umieszczając w tekście odnośnik http://mbartyzel.blogspot.com Jak

Bardziej szczegółowo

Tworzenie i wykorzystanie usług sieciowych

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