UTVECKLING MED RAMVERKET.NET Marcus Medina
Dagens visdomsord ” Ingen vet vad han klarar innan han har försökt. ” - Publilius Syrus (85 f.Kr.-43 f.Kr.).
Interfaces Att skapa en Phablet.
Interfaces : Phablet
Lösning 1: Class Phablet kan ärva antingen Phone eller Tablet Resultat: Phablet : Phone = Phone Phablet : Tablet = Tablet
Interfaces : Phablet
Lösning 2: Arv och komposition Resultat: Phablet : Phone = Phone med Tabletfunktioner Phablet : Tablet = Tablet med Phonefunktioner
Interfaces : Phablet
Lösning 3 Interface av Phone och Tablet Resultat: Phablet ”ärver” egenskaper från Phone och Tablet.
Interfaces : Phablet
Interfaces Innehåller enbart publika metoder och möjligen konstanter Variabler som anges som properties En Class kan ”ärva” flera olika interfaces Kan inte skapas som objekt, den måste implementeras först Alla deklarerade metoder måste implementeras av klassen
Interfaces Andra användsningsområden… …Plugins …Services …DLL
SOA Vad är SOA? Man bryter ner mjukvaran till tjänster som görs tillgängliga på nätverket Varje service har sin funktion Det är som att anropa metoder i en Class, men via nätverket.
SOA Fördelar: Det förenklar samarbete och kommunikation inom nätverket och med utomstående parter. Man kan anpassa funktionerna utan att ändra i klientens källkod. Om klienten uppdateras eller ändras påverkas inte tjänsten Om tjänsten flyttas till en annan maskin (med samma adress som den gamla) påverkas inte klienten Oberoende av operativsystem Oberoende av programmeringsspråk
SOA Fördelar för systemutvecklare Man kan arbeta på avstånd Man behöver inte känna till varandras kod, det räcker med format på in och utdata. Man kan arbeta oberoende av varandra Har man en fungerande tjänst kan man fokusera all kraft på att göra en bra klient. Lätt att lägga in nya tjänster Lätt att uppgradera gamla tjänster utan att klientens mjukvara behöver ändras.
Labb: Hello User Service Skapa ett WCF projekt kallat ”SU14WCFHelloUser”
Labb: Hello User Service Ta bort från Service1 och IService1 Ändra int till string på GetData metoden både i Service1 och IService1 :
Labb: Hello User Service Döp om GetData till Hello i Service1 och IService1 Och ändra meddelandet till en trevlig hälsningsfras
Labb: Hello User Service Kör din Service nu
Labb: Hello User Service Webbdelen kommer att se ut så
Labb: Hello User Service Försöker vi nå vår Hello metod genom webbsidan kommer vi att få en helt tom sida
Labb: Hello User Service Servicen är aktiv, men den vet inte om att den ska kommunicera genom webbläsaren Den behöver veta vilken service som ska delas ut till webbläsaren och hur in och utdata ska hanteras Den behöver även veta sökväg till metoden
Labb: Hello User Service Kontraktet måste ändras Nu är kontraktet inställt på att ta emot anrop till hello/{vad som helst} och den kommer att returnera en JSON string när den är klar.
Labb: Hello User Service Web.config
Labb: Hello User Service Behavior – En funktion som aktiveras av triggers. Det används också i WPF.
Labb: Hello User Service
Nu får vi svar från vår metod, I JSON
Läxa Skapa en Service, den ska kunna nås genom webbläsaren. Den ska använda Interfacet nedan som grund. Den ska spara listan när man lägger till eller tar bort namn. Listan ska även läsas in vid servicens start.