MVC med Javascript och Ajax. Filip Ekberg
|
|
- Nils Sundberg
- för 6 år sedan
- Visningar:
Transkript
1 MVC med Javascript och Ajax Filip Ekberg
2 Hur går det?
3 Föreläsningstempo Går det för fort?
4 Labbar & Övningar Är de otydliga?
5 Behövs mer hjälp?
6 Upplägg Mindre föreläsning? Mer labbar?
7 Läser ni boken? Läsanvisningar finns på Ping Pong
8 Hur många timmar per vecka lägger du? Heltidsstudier!
9 Stödmaterial Har ni hjälp av PowerPoint-filerna? Pluralsight?
10 MVC med Javascript och Ajax Lektion 5 - Datalagring
11
12 Hur har det gått? Vad är svårast att förstå?
13 Dagens mål Repetition Hur skapa man ett tomt MVC-projekt Hur introducerar vi en Controller, Action, Model och View Hur gör vi en GET och POST Hur lägger vi på AJAX Hur manipulerar vi DOM via JavaScript Hur hanterar ASP.NET instancer av objekt (Controller, Modeller) Introducera datalagring Utnyttja Session och Cookies Lägga på ett datalager med EntityFramework Förstå skillnaden på datamodell och vymodell Hur hänger det ihop med ASP.NET life cycle Använda ett Repository Pattern
14 MVC
15 Vilka filer kan jag ladda hem och vilka kompileras av ASP.NET i runtime?
16 Hur ofta körs konstruktorn av en Controller?
17 Allt handlar om Request & Response
18
19
20 Var ska min logik vara?
21 Undvik logik i vyer! (Det finns undatag)
22 Löst Kopplat
23 MVC Busines-lager Data-lager Controller Action View View Model Integrations Domain Validation Domain Model Repositories Entity Framework Data Model
24 Hur lätt är det att anpassa efter AJAX?
25 Hur lätt är det att ändra så vi returnerar PartialView istället?
26 Vad har det för sido-effekter?
27 AjaxExtensions
28 Har ni läst boken? Kapitel 23
29
30 Istället för att använda Html Extension använder vi nu Ajax Extension Iställningar för hur AJAX-anropet skall (Ajax.BeginForm("Create", ajaxoptions)) => user.name) } <input type="submit" value="lägg till användare" /> <div id="result"></div> När AJAX-anropet är klart vill vi uppdatera vår div med Id result
31 @{ } var ajaxoptions = new AjaxOptions { Confirm = "Är du säker?" HttpMethod = "POST", }; Innehållet i result ersätts InsertionMode = InsertionMode.Replace, UpdateTargetId = "result" När AJAX-anropet är klart vill vi uppdatera vår div med Id result
32 Install-Package Microsoft.jQuery.Unobtrusive.Ajax
33 _LayoutPage <script src="/scripts/jquery min.js"></script> <script src="/scripts/jquery.unobtrusive-ajax.min.js"></script>
34 Funkar ej för fil-uppladdning! Använd jquery för det!
35 Underlättar för allt annat som inte är fil-uppladdning!
36 Hur vet vi om ett anrop kommer som ett AJAX-anrop?
37 Request.Headers["X-Requested-With"] == "XMLHttpRequest"
38
39 public ActionResult List() { var photos = PhotoRepository.All(); if (!Request.IsAjaxRequest()) { return View(photos); } } return PartialView(photos);
40 Olika vyer beroende på om det är via AJAX eller inte!
41 Inlämningsuppgift
42 Bygg en adressbok Hantering av inlägg i din adressbok En Layout som är gemensam för alla dina undersidor En Index-sida som ger dig länkar till att lägga till och lista rader i din adressbok Adressboken skall minst spara följande: Id, Namn, Telefonnummer, Adress Tidpunkt som adressen uppdaterades En vy för att lista alla inlägg i adressboken En vy för att lägga till ett inlägg i adressboken En vy för att ändra/se detaljer om ett inlägg i adressboken Lägga Till och Ta bort funktionaliteten skall ske via Ajax Listan av adresser skall updateras dynamiskt när du använt Ajax för Lägga till och Ta bort
43 Lämna in idag senast 17.00
44 Cookies & Session
45 Webbläsare Webbserver 1 Databasserver Cookies lever i webbläsare Session lever på webbservern
46 Hur länge lever en Cookie?
47 Hur länge lever en Session?
48 Användaren kan ändra på en Cookie i Webbläsaren
49 Hur kommer ASP.NET åt Cookies då de kommer från Webbläsaren?
50 Hur kommer ASP.NET åt Cookies då de kommer från Webbläsaren?
51 Request.Cookies["TheCookie"] Varje request från webbläsaren skickar med alla cookies som stämmer överrens med den domänen man besöker
52 Response.Cookies Bestäm vilka Cookies som skickas tillbaka till webbläsaren
53 var cookie = new HttpCookie("TheCookie", "Filip Ekberg"); Response.Cookies.Add(cookie);
54 Cookies kan man komma åt via JavaScript! Om de inte är satta som HttpOnly!
55 var httponlycookie = new HttpCookie("TheCookie", "Filip Ekberg") { }; HttpOnly = true var normalcookie = new HttpCookie("SomeCookie", "ASP.NET MVC Rocks"); Response.Cookies.Add(normalCookie); Response.Cookies.Add(httpOnlyCookie); Skickas till webbläsaren, men kan inte ändras via JavaScript!
56
57 En Session kan man inte ändra från webbläsaren Lever på servern!
58 Hur vet ASP.NET vems Session som tillhör vem?
59 En Cookie som identifierar vem du är!
60 Vad händer i en lastbalanserad miljö?
61 Besökare Webbserver 1 Lastbalanserare Databasserver Webbserver 2
62 EntityFramework
63 Vad är EntityFramework? Object-Relational Mapping (ORM)
64 Install-Package EntityFramework
65 Installera EntityFramework NuGet-paketet i datalagret och i MVC projektet
66 Code First Bygg upp vår databas-struktur genom att definiera data-modeller först
67 Vy-modell och Data-Modell
68 Använd ett separat data-lager!
69 [Table("Person")] public class Person { public Guid Id { get; set; } EntityFramework gör detta automatiskt till en PK [Index(IsUnique = true)] [MaxLength(30), MinLength(3)] public string Name { get; set; } [MaxLength(10), MinLength(5)] public string PhoneNumber { get; set; } } public Person() { Id = Guid.NewGuid(); }
70 public class MyDataContext : DbContext { public DbSet<Person> People { get; set; } } [Table("Person")] public class Person
71 using (var context = new MyDataContext()) Se till att vår context Disposeas efter vi är Klara!
72 public IEnumerable<Person> All() { using (var context = new MyDataContext()) { return context.people.tolist(); } }
73 public void AddOrUpdate(Person person) { using (var context = new MyDataContext()) { var persontocreateorupdate = context.people.firstordefault(p => p.id == person.id)?? new Person(); Hämta en redan existerande eller skapa ny persontocreateorupdate.name = person.name; persontocreateorupdate.phonenumber = person.phonenumber; Uppdatera de fälten vi vill ändra på } } context.people.addorupdate(persontocreateorupdate); context.savechanges(); Spara ändringarna
74 public void AddOrUpdate(Person person) { using (var context = new MyDataContext()) { Varför använder vi inte person direkt istället för att hämta ut det från databasen? } } 1. Vi har då full kontroll av det som uppdateras i databasen. 2. Vi behöver inte oroa oss för attached/detached eller dirty objekt
75 public void Delete(Guid personid) { using (var context = new MyDataContext()) { var todelete = context.people.single(p => p.id == personid); context.people.remove(todelete); } } context.savechanges();
76 Hur bör vi använda detta från ASP.NET MVC?
77 public ActionResult Index() { IEnumerable<PersonViewModel> model; Vy-modell, inte Data-modell! using (var context = new MyDataContext()) { model = context.people.select(person => new PersonViewModel { Id = person.id, Name = person.name, PhoneNumber = person.phonenumber } ); } } return View(model);
78 Varför en vy-specifik modell?
79 Vy-modellerna innehåller ofta mer vy-specifik data!
80 Håll ditt data-lager rent
81 public ActionResult Index() { IEnumerable<PersonViewModel> model; using (var context = new MyDataContext()) { model = context.people.select(person => new PersonViewModel { Id = person.id, Name = person.name, PhoneNumber = person.phonenumber, Awards = context.awards.where(award => award.awardeeid == person.id) } ); } } return View(model);
82 Knyta ihop det med Gallery-exempelkoden
83 Migrations
84 Enable-Migrations
85 Add-Migration "Create Photo"
86 public class GalleryContext : DbContext { public DbSet<Photo> Photos { get; set; } }
87 public partial class CreatePhoto : DbMigration { public override void Up() { CreateTable( "dbo.photos", c => new { Id = c.guid(nullable: false), Name = c.string(), Filename = c.string(), }).PrimaryKey(t => t.id); } } public override void Down() { DropTable("dbo.Photos"); }
88 Enable-Migrations EnableAutomaticMigrations
89
90
91
92
93 <div (var photo in Model) { <div class="photo" style="float: left; padding: 20px;"> <h3>@photo.name</h3> <img src="/uploads/@photo.filename" height="250" /> bort", "Delete", new { id = photo.id }, new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "result", Confirm = $"Är du säker på att du vill ta bort {photo.name}?" }) </div> </div> } </div>
94 Hur lätt är det för oss att byta ut EntityFramework mot något annat nu?
95 Hur går vi från In-Memory till EntityFramework?
96 När skapas vår databas?
97 Glöm inte using
98
99 Repository Pattern
100 The repository pattern is an abstraction. It's purpose is to reduce complexity and make the rest of the code persistent ignorant. As a bonus it allows you to write unit tests instead of integration tests.
101 Hur gör vi det enkelt för oss att jobba med ett data-lager utan att veta var datan lagras?
102
103 Controller Repository Databas
104 Controller Repository Databas Add(PhotoViewModel) Update(PhotoViewModel) Remove(Guid) All() Add(Photo) Update(Photo) Remove(Guid) All() SQL
105 Controller Repository var photo = new Photo { Id = Guid.NewGuid(), Filename = file.filename, Name = model.name }; var repository = new PhotoRepository(); repository.add(photo); public void Add(Photo photo) { using (var context = new GalleryContext()) { context.photos.add(photo); context.savechanges(); } } Databas
106 Varför?
107 Controller Repository var photo = new Photo { Id = Guid.NewGuid(), Filename = file.filename, Name = model.name }; var repository = new PhotoRepository(); public void Add(Photo photo) { photosinmemory.add(photo) } repository.add(photo);
108 Testbarhet!
109 Enkelt att lägga in cache-strategi
110 Controller Repository var repository = new PhotoRepository(); var allphotos = repository.all(); Mindre belastning på databasen! private static IEnumerable<Photo> photocache; public IEnumerable<Photo> All() { if (photocache!= null && photocache.any()) { return photocache; } using (var context = new GalleryContext()) { photocache = context.photos.tolist(); } } return photocache;
111 Hur ligger vi till?
112 Vad ska vi lära oss? I denna kurs lär sig den studerande hur man jobbar med den naturliga uppdelningen av data, GUI och logik i sina projekt. Detta görs med MVC som är ett ramverk. MVC har mer eller mindre blivit en standard för avancerade.net-webbsidor. Arbetssättet gör att koden blir mer återanvändbar och kostnadseffektiv. Man delar upp projektet i de logiska lagren i Modell, View och Controller. Varje logiskt lager kan ersättas av en ny modul för att skapa en helt ny applikation.
113 Vad ska vi lära oss? Skapa projekt i ramverket ASP.NET MVC Projektstruktur i Visual Studio Model-View-Controller: Lagerstruktur och concept Designmönster & Arkitektur Integrering av databas och Entity Framework Lägga till och modifiera: Layout, Controllers, Razor Views JavaScript, Ajax Säkerhet & Infrastruktur
114 Labb
115 Bildgalleri Ladda upp bilder Skapa album av uppladdade bilder Kommentera på bilder Inloggning & Säkerhet Administrationsgränssnitt
116 Fortsätt med Bildgalleriet Lagra data i en databas och använd EntityFramework Använd ett separat data-lager med data-modeller Era vyer ska inte gå direkt mot modellerna som används i datalagret Bilder ska sparas på hårddisken, inte i databasen
117
MVC med Javascript och Ajax. Filip Ekberg
MVC med Javascript och Ajax Filip Ekberg MVC med Javascript och Ajax Lektion 7 ASP.NET MVC mail@filipekberg.se Veckans mål ASP.NET MVC Repetition & Diskussion Vad är MVC? Vad är ASP.NET MVC? Hur skapar
MVC med Javascript och Ajax. Filip Ekberg
MVC med Javascript och Ajax Filip Ekberg Filip Ekberg Microsoft & Xamarin MVP mail@filipekberg.se Vad ska vi lära oss? I denna kurs lär sig den studerande hur man jobbar med den naturliga uppdelningen
Asp.net mvc intro PER KVARNBRINK, 2015-01-27
Asp.net mvc intro PER KVARNBRINK, 2015-01-27 Byggstenarna i ett mvc-projekt 1. Databasen 2. Datamodellen (M:et) 3. Entity framwork 4. Routing 5. Kontroller (C:et) 6. Vy (V:et) 7. Vymodeller 8. Troligen
ASP.NET MVC. Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se. Innehåll
ASP.NET MVC Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se Innehåll Introduktion till MVC Controller Action-metoder Views Arbeta med Layout-sidor och sektioner Route konfiguration
MVC med Javascript och Ajax. Filip Ekberg
MVC med Javascript och Ajax Filip Ekberg Hur går det? MVC med Javascript och Ajax Lektion 6 Inloggning, Testning & Separation of Concerns mail@filipekberg.se Dagens mål Introducera inloggning, testning
Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query).
Arbeta med databas Översikt Arbeta med Entity Data Models. LINQ (Language Integrated Query). Lektion 1: Arbeta med Entity Data Models Introduktion till ADO.NET Entity Framework. Stöd i ADO.NET Entity Framework.
Mål med lektionen! Repetera och befästa kunskaperna.
Entity Framework Mål med lektionen! Repetera och befästa kunskaperna. Vad lektionen omfattar Repetera och gå igenom kursen lite snabbt. Vilka problem vill vi lösa? Vi arbetar med Webbapplikationer Vi kommer
MVC med Javascript och Ajax. Filip Ekberg
MVC med Javascript och Ajax Filip Ekberg MVC med Javascript och Ajax Lektion 3 & 4 - Javascript & Ajax Vad ska vi lära oss? I denna kurs lär sig den studerande hur man jobbar med den naturliga uppdelningen
Introduktion till Entity Framework och LINQ. Källa och läs mer https://msdn.microsoft.com/en-us/data/aa937709.aspx
Introduktion till Entity Framework och LINQ Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Vad är Entity Framework? The Microsoft ADO.NET Entity Framework is an Object/Relational Mapping
Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.
Informationsinfrastruktur 7.5 hp Mattias Nordlindh Inledning Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Dokumentet består av
Language Integrated Query, LINQ, och databaser
Language Integrated Query, LINQ, och databaser 1 Imperativ eller deklarativ programmering Imperativ programmering Du som programmerare beskriver i detalj alla steg som måste utföras för att lösa en viss
Räkna med ASP.NET MVC 3
Instruktion Räkna med ASP.NET MVC 3 Introduktionsuppgift Författare: Mats Loock Kurs: ASP.NET MVC Kurskod:1DV409 Innehåll Du ska följa steg-för-steg -instruktionen i denna introduktionsuppgift och skapa
E12 "Evil is going on"
E12 "Evil is going on" Föreläsning 12, HT2014 AJAX Kurs: 1dv403 Webbteknik I Johan Leitet E12 Evil is going on Dagens agenda AJAX XMLHttpRequest-objektet JSON Vad är AJAX? Asynchronous JavaScript and XML
// GET: Test1/Index2 // Syftet är att se hur olika url:er leder till olika actions
Test1Controller.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Mvc.Ajax; using System.Net; using Newtonsoft.Json; using System.Threading.Tasks;
ASP.NET Thomas Mejtoft
ASP.NET Introduktion till ASP.NET Utveckla i ASP.NET I ASP.NET kan och bör man separera HTML-kod från övrig kod (C#, VB ) I enklare fall läggas kod i script-block Vanligtvis läggs den i en Code Behind-fil
Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP.
Laboration 1 Översikt 1. Att komma igång med laborationsmiljön a. installera Aptana Studio 3 b. Installera EasyPHP 2. Testa lite programmering a. Testa enkla uppgifter b. Testa automatiskt 3. Skapa inloggningsformulär
Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen.
Entity Framework Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se
Webbservrar, severskript & webbproduktion
Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera
MVC med Javascript och Ajax. Filip Ekberg
MVC med Javascript och Ajax Filip Ekberg MVC med Javascript och Ajax Lektion 2 - Introduktion Fortsätter Dagens mål GET, POST - Hur sätter vi upp en action för respektive? Modell-bidningar, Modell-validering
Kursplanering Utveckling av webbapplikationer
Kursplanering Utveckling av webbapplikationer Fakta Ämne Programmering Poäng 40 Yh-poäng Kurskod YSYS-WEB Klass Systemutvecklare.NET Syfte och koppling till yrkesrollen För att kunna arbeta som systemutvecklare
<script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
AngularJS Skriven av: Isak Glans. Datum: 2015-04-29. Kurs: Webbutveckling. Lärare: Per Sahlin. Utbildning: Systemutvecklare i.net, Newtons Yrkeshögskola. 1 Sammanfattning Syftet med denna uppsats är att
Övning MS SQL och MVC del 2
1 Övning MS SQL och MVC del 2 Denna övning, som är uppdelad i två delar, kommer att visa hur du kan arbeta med MS SQL och MVC. Applikationen är ett inloggningssystem som innehåller de flesta saker som
ASP.NET Web Forms. Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se. Vad är Web Forms?
ASP.NET Web Forms Copyright Mahmud Al Hakim mahmud@dynamicos.se http://www.webbacademy.se Vad är Web Forms? Web Forms är en del av ASP.NET ramverket. Web Forms är kontroll- och händelsestyrd programmeringsmodell
Android översikt. TDDD80 Mobila och sociala applikationer
Android översikt TDDD80 Mobila och sociala applikationer Översikt Köra app på mobil / emulator Android Studio introduktion Android kodning Android labb 1 Köra på mobil / emulator Developer mode på mobilen
Sammanfattning. Applikationen är utvecklad i Microsofts utvecklingsmiljö Visual Studio 2012.
Sammanfattning Inom ramen för kursen Självständigt arbete i Teknisk Fysik (15 hp) har en databaskopplad webbapplikation utvecklats. Arbetet var utformad som ett konsultuppdrag med pappersbruket Gruvön
Henrik Häggbom Examensarbete Nackademin Våren 2015
AV Henrik Häggbom Examensarbete Nackademin Våren 2015 1 INLEDNING Som examensarbete på min utbildning på Nackademin Programutveckling.NET kommer jag skapa ett webbaserat system för statistik, tabeller
Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning.
Klient/server Översikt Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Lektion 1: Webbtekniker från Microsoft Microsoft webbtekniker. ASP.NET. Klientsidan. Internet Information Server.
Lab 6: ASP.NET 2.0 Providermodellen
Lab 6: ASP.NET 2.0 Providermodellen Den stora finessen med Providermodellen är enkelheten att skapa sin egna provider för att kunna anpassa en tjänst utefter de behov man har. Den gör tillståndshantering
Appar med ryggrad. Introduktion till JavaScriptramverket Backbone
Appar med ryggrad Introduktion till JavaScriptramverket Backbone Vanlig webbsida Databas MVC - Model View Controller MVC - Model View Controller MVC Backbone.js Ger struktur Bygger på MVC konceptet Tvingar
Objektorienterad Programmering (OOP) Murach s: kap 12-16
Objektorienterad Programmering (OOP) Murach s: kap 12-16 2013-01-28 1 Winstrand Development Objektorienterad Programmering Förkortas OOP Objektorientering innebär att man delar in koden i olika block,
2014-2015 Alla rättigheter till materialet reserverade Easec
1 2 Innehåll Introduktion... 3 Azure SQL Database... 4 Översikt Azure SQL Database... 5 Azure SQL Server... 6 Azure SQL Database Tier... 7 DaaS vs SQL Server i virtuell maskin... 9 DaaS vs SQL Server i
TDP013. Webbprogrammering och interaktivitet. AJAX, CORS & jquery. Marcus Bendtsen Institutionen för Datavetenskap (IDA)
TDP013 Webbprogrammering och interaktivitet AJAX, CORS & jquery Marcus Bendtsen Institutionen för Datavetenskap (IDA) Innan AJAX Ett synkront webb 1. Användaren klickar länk, formulär, bild etc 2. Anrop
INTRODUKTION TILL ANGULAR JS
INTRODUKTION TILL ANGULAR JS DEL 1 Mahmud Al Hakim www.alhakim.se mahmud@alhakim.se VAD ÄR ANGULAR? Angular är ett JavaScript ramverk. Angular används för utveckling av frontendwebbapplikationer. Angular
Avancerade Webbteknologier
Projektledning, Business Knowledge Användbarhet & Layout Avancerade Webbteknologier Lkti Lektion 1 Kommunikation Tobias Landén tobias.landen@chas.se Avancerade webbteknologier del 1 (4 KY poäng) Syfte
E13 "Behind the Wild"
E13 "Behind the Wild" Föreläsning 13, HT2014 Det vi missat och lite till Kurs: 1dv403 Webbteknik I Johan Leitet E13 Behind the Wild Dagens agenda Cookies Web storage Context/ändra context Augmentation
Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.
Bankkonto - övning Övningar att göra efter lärardemostration. Filen bankkonto.zip innehåller ett projekt med klassen Bankkonto. Zippa upp denna fil och öppna projektet i BlueJ och skriv vidare på klassen
Polymorfi. Objektorienterad och komponentbaserad programmering
Polymorfi Objektorienterad och komponentbaserad programmering Polymorfi, mångtydighet Polymorfi innebär att en viss konstruktion kan exekveras på olika sätt Överlagring av metoder ger ett polymorft beteende
MVC-mönster i ASP.NET Projektblogg bygghemma.se
C-uppsats i Datavetenskap MVC-mönster i ASP.NET Projektblogg bygghemma.se Författare: Janina Torstensson Handledare: Martin Blomberg Termin: VT11 Kurskod: 2DV40E Abstrakt Rapporten tar upp resultatet av
Webbprogrammering - 725G54 PHP. Foreläsning II
Webbprogrammering - 725G54 PHP Foreläsning II Agenda Serverskript PHP Validering av data med serverskript Säkerhet Lab 2. Live coding Serverskript Kör ett program på servern och resultatet skickas till
Webbprogrammering. Sahand Sadjadee
Webbprogrammering Sahand Sadjadee Agenda Webb The World Wide Web (WWW) is a network of online content that is formatted in HTML and accessed via HTTP. The term refers to all the interlinked HTML pages
Karlstads Universitet, Datavetenskap 1
DAV B04 - Databasteknik KaU - Datavetenskap - DAV B04 - MGö 229 PHP Hypertext Preprocessor Scriptspråk på serversidan Innebär att webbservern översätter php-scripten innan sidan skickas till webbläsaren,
Lösningar för tenta 3 DAT043,
Lösningar för tenta 3 DAT043, 2018-08-22. Uppgift 1 class Person{ public String förnamn; public String efternamn; public int ålder; private double längd; private double vikt; public Person(String förnamn,
Internationalisering/lokalisering på webben
KTH NADA Språkteknologi 2D1418 Internationalisering/lokalisering på webben Benny Ferander, 711119-0455 d98-bka@nada.kth.se Stefan Westlund, 681206-0157 d98-swe@nada.kth.se Sammanfattning Idag läggs en
En integration av betalningssystem på hemsida
Beteckning: Akademin för teknik och miljö En integration av betalningssystem på hemsida Benjamin Leetmaa Maj 2011 Examensarbete, 15 högskolepoäng, B Datavetenskap Ingenjör Online Examinator: Bengt Östberg
DB, DATA, LOGIC, EXPOSURE (WEB)
Backend DB, DATA, LOGIC, EXPOSURE (WEB) MySQL. MongoDB, LDAP, etc DB DATA LOGIC SOA TJänster EXPOSURE (WEB) Klienter kan vara webbsidor, desktop/mobil applikationer, andra SOA tjänster, ATM, parkeringsautomater
Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?
Programmeringsteknik och Matlab Övning 4 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312
Objektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015
Objektorienterad Programkonstruktion Föreläsning 6 23 nov 2015 Designmönster Färdiga "recept" för att lösa (del-)problem i struktureringen av ens program Mönster kan beskriva små komponenter eller stora
PHP-presentation Dataföreningens Open Source-nätverk
PHP-presentation Dataföreningens Open Source-nätverk Netera AB Jimmy Furland jimmy@netera.se Björn Hansson hansson@netera.se Introduktion HTML-inbäddat webbprogrammeringsspråk Står för PHP Hypertext Preprocessor
1ME323 Webbteknik 3 Lektion 6 API. Rune Körnefors. Medieteknik Rune Körnefors
1ME323 Webbteknik 3 Lektion 6 API Rune Körnefors Medieteknik 1 2019 Rune Körnefors rune.kornefors@lnu.se Agenda API (Application Programming Interface) Mashup Flickr API Google Maps API Labb 6 2 API (Application
Överföring av filer med Zendto v 1.1. stora filer som inte kan skickas via e-post konfidentiella uppgifter som inte kan skickas via okrypterad e-post
Folkhälsans ZendTo ZendTo är till för enkel och säker överföring av stora filer som inte kan skickas via e-post konfidentiella uppgifter som inte kan skickas via okrypterad e-post ZendTo används via webbläsare,
EDA095 HTML. Per Andersson. April 26, Lund University Innehåll: HTML, CSS, DOM, JavaScript
EDA095 HTML Per Andersson Lund University http://cs.lth.se/pierre_nugues/ April 26, 2017 Innehåll: HTML, CSS, DOM, JavaScript Per Andersson EDA095 HTML April 26, 2017 1 / 23 Webben Webben byggs upp av
Det är fullt tillåtet att göra laborationen innan laborationstillfället.
Observera Det är fullt tillåtet att göra laborationen innan laborationstillfället. Laborationen ska genomföras individuellt, men det är tillåtet att diskutera eventuella problem och lösningar med dina
Laboration 2, MS SQL. Observera. Tips. Förberedelse. Genomförande
Observera Det är fullt tillåtet att göra laborationen innan laborationstillfället. Observera dock att alla uppgifter måste kunna redovisas på redovisningstillfället. Laborationen ska genomföras individuellt,
Spelprogrammering med XNA och MonoGame
Spelprogrammering med XNA och MonoGame Tutorial, Programmering 2 Johan Hällgren, Thoren Innovation School SAMMANFATTNING Detta är en hjälp för att genomföra bokens tutorial. Allt från specifika tips för
Två designmönster, MVC och Observer/Observable. Objektorienterad programvaruutveckling GU (DIT011)
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Innehåll Föreläsning 8 Två designmönster, MVC och Observer/Observable. Designrekommendation
Malmö högskola 2007/2008 Teknik och samhälle
Laboration 9 Avsikten med denna laboration är att du ska jobba vidare med klasser. Uppgifterna går ut på att skriva metoder och att skriva konstruktorer. Laborationen bygger vidare på laboration 8. Skapa
Översikt MERA JAVA OCH ECLIPSE. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning
Översikt Uttryck i tilldelningssatser Typer och typomvandling Klasser Metoder Konstanter Eclipse-tips MERA JAVA OCH ECLIPSE Institutionen för datavetenskap Programmering 1 Rita Kovordányi 2 public class
Objektorienterad Programkonstruktion. Föreläsning 7 24 nov 2015
Objektorienterad Programkonstruktion Föreläsning 7 24 nov 2015 Observer (GoF) Man definierar ett "ett-till-många"-förhållande mellan objekt så att när ett objekt byter tillstånd så uppdateras alla beroende
Grundläggande programmering med C# 7,5 högskolepoäng
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)
DAT043 - Föreläsning 7
DAT043 - Föreläsning 7 Model-View-Controller, mer om klasser och interface (arv, ) 2017-02-06 Designmönstret Observer avläser Observer Observable meddelar Observer avläser En eller flera objekt registrerar
OOP Objekt-orienterad programmering
OOP F6:1 OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList tostring() metoden this Vi vill ofta hantera många objekt i ett program: OOP F6:2 public
Föreläsning 4. Klass. Klassdeklaration. Klasser Och Objekt
Föreläsning 4 Klasser Och Objekt Klass Beskrivning av en objekttyp Beskriver egenskaper och beteende (fält och metoder) Klassen fungerar som en ritning Objekt skapas från klassbeskrivningen - instansieras
Viva la evolución. Peter Backlund
Viva la evolución Peter Backlund Grails Java- och Groovybaserat Treskiktade webbapplikationer med databas Bygger på Spring, Hibernate och Sitemesh Groovy Likheter med Rails Konventioner, inte konfiguration
Content Management System. Publiceringssystem
Content Management System Publiceringssystem Vad är ett Content Management System (CMS)? Ett verktyg för att separera innehåll från presentation Skapa webbsidor utan att kunna html Låt många skapa sidor
Systemvetare, dataekonomer och affärsinformatiker
Objektorienterad systemutveckling 2 Provmoment: Ladokkod: Tentamen ges för: TentamensKod: 7,5 högskolepoäng Tentamen C1OB2B Systemvetare, dataekonomer och affärsinformatiker Tentamensdatum: 2017-03-22
Klientprogrammering mot databaser
Klientprogrammering mot Databaser Java DataBase Connectivity, JDBC Klientprogrammering mot databaser Native API olika för olika DBMS, ofta i C/C++ ODBC, Open Datbase Connectivity samma API för olika databashanterare.
DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.
1 (8) DUGGA: Objektorienterade applikationer Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt namn, personnummer och e-postadress på försättsbladet. Skriv rent dina svar.
Vad handlar kursen om? Algoritmer och datastrukturer. Vad handlar kursen om? Vad handlar kursen om?
Algoritmer och datastrukturer Allmänt om kursen Kort javagrund repetition - Klasser, metoder, objekt och referensvariabler, - Hierarkiska klass strukturer - Arrayer och arrayer av objekt - Collection ramverket
Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: 2009-12-14 Mottagare: Visi Web kund
Sida: 1(7) Installationsanvisningar VisiWeb Ansvarig: Visi Closetalk AB Version: 2.3 Datum: 2009-12-14 Mottagare: Visi Web kund Detta dokument Detta dokument beskriver hur man installerar VisiWeb på en
Labb LIVE. Exempelkod från föreläsningen. Plushögskolan Frågeutveckling inom MSSQL - SU14
Labb LIVE Exempelkod från föreläsningen Plushögskolan Frågeutveckling inom MSSQL - SU14 Här kommer exempelkoden jag använde under föreläsningen Exemplen Constraints... 2 Transactions... 4 Views... 5 Functions...
Lösningar till tentamen i EDAF25
Lösningar till tentamen i EDAF25 1 juni 2017 Lösning 1 Se figur 1. Figure 1: Tillståndsdiagram espressomaskin Lösning 2 (a) Kompositmönstret (b) Se figur 2 (c) Se figur 3 : Square : Drawing : Group : Circle
E11 "Protection" Föreläsning 11, HT2014 Säkerhet, tillgänglighet. Johan Leitet. Kurs: 1dv403 Webbteknik I
Föreläsning 11, HT2014 Säkerhet, tillgänglighet E11 "Protection" Kurs: 1dv403 Webbteknik I Johan Leitet E11 Protection Dagens agenda Tillgänglighet Säkerhet Webbsajt vs. Webbapp Webbsida/webbsajt Webbapplikation
Övning: Arbeta med Azure Explorer
1 Övning: Arbeta med Azure Explorer Azure Explorer är ett tredjpartsverktyg för att hantera lagring i Azure. Arbetsuppgift 1: Ladda ner och installera Azure Explorer på din utvecklingsmaskin i Azure. Steg
PHP. PHP: Hypertext Preprocessor
PHP PHP: Hypertext Preprocessor Vad är PHP? Script-språk (jmfr. JavaScript / Python) C-liknande syntax (familj: C / C++ / C# / Java) Dynamiskt typat Används främst server-side för att generera dynamisk
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:
Modern webbutveckling. av Robert Welin-Berger
Modern webbutveckling av Robert Welin-Berger robertwb@kth.se Modern webbutveckling 1. Projektstorlek och Arkitektur 2. Callbacks 3. Event driven arkitektur 4. MEAN stack 5. ODM/ORM 1. Projektstorlek och
JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?
Innehåll JavaScript En introduktion till skriptspråket JavaScript och till DOM Scripting Introduktion till JavaScript och DOM JavaScript Syntax DOM och DOM Scripting Händelsehantering och CSS Historia
Programmering B med Visual C++ 2008
Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,
Dagens program. Objektorienterad modellering och diskreta strukturer / design. Model/View/Control-implementering. Model/View/Control-arkitektur
Dagens program Objektorienterad modellering och diskreta strukturer / design Fler mönster och Paketdesign Lennart Andersson Model View Control Observer Paketdesign Namngivning Reviderad 2011 09 12 2011
Tillämpad programmering
Tillämpad programmering C++ objekt Johan Montelius 1 struct struct Person { string name; int age; ; Person p; p.name = Joe ; p.age = 42; cout
TUTORIAL: KLASSER & OBJEKT
TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan
1.Lär känna MS SQL Observera. Tips. Förberedelse
1.Lär känna MS SQL 2008 Observera Övningar som finns tillgängliga är till för att du ska kunna testa dina kunskaper och träna på dem. Det är helt upp till dig när du vill genomföra och om du vill genomföra
Institutionen för Tillämpad fysik och elektronik Stefan Berglund och Per Kvarnbrink. Laboration: Flerskiktade applikationer
Institutionen för 2014-11-17 Tillämpad fysik och elektronik Stefan Berglund och Per Kvarnbrink Laboration: Flerskiktade applikationer Målsättning Syftet med denna laboration är att ge den studerande kunskap
Laboration A Objektsamlingar
Laboration A Objektsamlingar Avsikten med laborationen är att du ska träna på att använda ett par objektsamlingar. Uppgift 1 Titta genom föreläsningsunderlaget DA129AFAHT07.pdf och testkör exemplen (se
2014-2015 Alla rättigheter till materialet reserverade Easec
1 2 Innehåll Introduktion... 4 Cloud Services... 5 Översikt Cloud Services... 6 Arkitektur för Cloud Services... 7 Arkitektur för Cloud Services (forts.)... 8 Cloud Service Roles... 10 Cloud Service Roles
VAD GÖR DU / VEM ÄR DU?
INNEHÅLL Vad blir din roll Databaser vad är och varför Terminologi Datamodellering vad är och varför Utvecklingsprocessen SQL vad är det Data / Information / Kunskap Kapitel 1 delar av. Praktisk Datamodellering
TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015
TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt. Använd
Belastningstester med Visual Studio 2008 - Gränssnittet
Belastningstester med Visual Studio 2008 - Gränssnittet Belastningstester med Visual Studio 2008 - Gränssnittet ANVÄNDARGRÄNSSNITTET Belastningstester med Visual Studio 2008 - Gränssnittet Test typer Alla
DIAGNOSTISKT PROV. Tid. Hjälpmedel. Antaganden. Rättning. Övrigt. Diagnostiskt Prov. Klockan Inga
203-03-9 203-03-9 DIAGNOSTISKT PROV Tid Klockan 09.00-2.00 Hjälpmedel Inga Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas. Rättning Tentamen omfattar 6
Namn: (Ifylles av student) Personnummer: Tentamensdatum: 2013-03-25 Tid: 14.00 19.00. Hjälpmedel: Inga hjälpmedel
Webbprogrammering Provmoment: Ladokkod: Tentamen ges för: Tentamen NWP011 Systemarkitektprogrammet 7,5 högskolepoäng Namn: (Ifylles av student) Personnummer: (Ifylles av student) Tentamensdatum: 2013-03-25
JAVASCRIPT. Beteende
JAVASCRIPT Beteende OVERVIEW HTML Formulär JavaScript Syntax Events DOM Validering av fomulär WEBBPROGRAMMERING PÅ KLIENTSIDAN Skriptspråk som körs på klientsidan (klientskript) Koden exekveras i webbläsaren
Viktigt! Glöm inte att skriva TentamensKod (ditt anonyma student-id) på alla blad du lämnar in.
Webb- och mobilutveckling Provmoment: Ladokkod: Tentamen ges för: Tentamen 21WM1B Systemarkitektprogrammet 7,5 högskolepoäng TentamensKod: Tentamensdatum: 2017-03-23 Tid: 09.00 12.00 Hjälpmedel: Inga hjälpmedel
Förstå grunderna i LINQ. Mål med lektionen!
Entity Framework Förstå grunderna i LINQ Mål med lektionen! Vad lektionen omfattar Genomgång av Lab 2 Kort repetition av pelarna i ett EF Projekt Extension methods Deferred Execution LINQ & LINQ med Lambda
E12 "Evil is going on"
E12 "Evil is going on" Föreläsning 12, HT2012 AJAX Kurs: 1dv403 Webbteknik I Johan Leitet E12 Evil is going on Dagens agenda AJAX XMLHttpRequest-objektet JSON Vad är AJAX? Asynchronous JavaScript and XML
DAT043 Objektorienterad Programmering
DAT043 Objektorienterad Programmering Detta är en exempeltenta som innehåller gamla tentauppgifter av ungefär liknande slag som ni kan förvänta er se på ordinarie tenta i Del 1 respektive Del 2. Dock är
Inkapsling tumregler. Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler. public och private
Inkapsling tumregler Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler Tobias Wrigstad (baserat på material från Tom Smedsaas) 5 november 2010 1. Man skall
Android fortsättning. TDDD80 Mobila och sociala applikationer
Android fortsättning TDDD80 Mobila och sociala applikationer 2018-02-24 Krav labb A2 + A3 Scrollbar lista + detalj-vy Stor skärm - liten skärm Rotation Nätverksanrop Hämta data från server Hantera JSON
Namn: (Ifylles av student) Personnummer: (Ifylles av student) Tentamensdatum: Tid: Hjälpmedel: Inga hjälpmedel
Webb- och mobilutveckling Provmoment: Ladokkod: Tentamen ges för: Tentamen 21WM1B Systemarkitektprogrammet 7,5 högskolepoäng Namn: (Ifylles av student) Personnummer: (Ifylles av student) Tentamensdatum:
JAVASCRIPT-POWERED LOADRUNNER CHRISTIAN GERDES PERFORMANCE ENGINEER LIGHTS IN LINE AB
JAVASCRIPT-POWERED LOADRUNNER CHRISTIAN GERDES PERFORMANCE ENGINEER LIGHTS IN LINE AB PRESENTATIONSRUNDA VILKA ÄR VI? HUR JOBBAR NI MED LOADRUNNER IDAG? ANVÄNDER NI JAVASCRIPT/DFE/JSON? AGENDA LoadRunner
Det finns många flaggor till g++,
C++, Övning 1 Jonas Sjöbergh, jsh@nada.kth.se Inge Frick, inge@nada.kth.se Alexander Baltsatsis hur man kompilerar och kör make preprocessor minnesallokering, pekare grundläggande C++, funktioner m.m.