Denne præsentation vil sandsynligvis medføre diskussion blandt tilhørerne, hvilket vil resultere i handlingspunkter. Hvis du vil bruge PowerPoint til at.

Slides:



Advertisements
Lignende præsentationer
Kort om JavaScript Afvikles i browser på klienten Sendes fra server (php, asp, aspx, htm) eller startes i klient som htm/html fil. Skabelon: –”main” -
Advertisements

Introduktion til Javascript – Grundlæggende Webdesign, F2004. Introduktion til Javascript.
Introduktion til ASP.NET 2 Michell Cronberg Microsoft MVP, MCAD TechTalks hos Microsoft.
Udvikling af ANDROID programmer (apps) Jens Bennedsen og Jesper Tørresø marts 2011.
Masterpages/Otto Knudsen 1 Master Pages  Master Pages i ASP.NET 2.0.
Programmeringsparadigmer.
Atlas/Otto Knudsen 1 "Atlas"  AJAX Extensions til ASP.NET.
Sikkerhed/Otto Knudsen 1 Diagnostics  Debug af web-applikationer.
Perspektiverende Datalogi Internetalgoritmer MapReduce Gerth Stølting Brodal.
Indledende Programmering Uge 2 - Efterår 2006 Selektioner og interaktion mellem objekter Susanne Brix Lindros.
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
ASP.NET Extensions Jakob Tikjøb Andersen
Hvordan man skriver koden.
VOOP, 8 april Refleksion i objekt orienterede programmeringssprog Mandag 8/ Kasper Østerbye.
ASP.NET Cache, State DataGrid og Diagnostics. Agenda – ASP.NET Cache, State og Cookies ( 1 del ) –Cache –Static member –Application State –Session State.
Masterpages/Otto Knudsen 1 Master Pages Master Pages i ASP.NET 2.0.
Eksekvering/Otto Knudsen 1 Udrulning Publicering af en web-applikation.
Introduktion/Otto Knudsen 1 Overblik WebForms ASP.NET.
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Opfølgning på obligatorisk opgave 1 ONK1. Ingeniørhøjskolen i Århus Slide 2 Overordnet Flere gode opgaver De samme fejl går igen.. Alle der har afleveret.
18 – Java Server Faces. 2 NOEA2009Java-kursus – JSF 2 Web-applikationer - 1 Brugere interagerer med en Web-browser Browseren sender forespørgsler til.
Introduktion til arkitektur design Arkitektur design handler om at få en forståelse for, hvordan et system skal organiseres og designe den overordnede.
1 HMAK XMLRelationel model og XMLNOEA / PQC 2005 SQLServer og XML Hent data via URL Generering af xml –Raw –Auto –Explicit Hent data via template Evt.
Internetteknologi (ITNET2) Præsentation 6: Arkitektur i (Java) Web Applikationer.
Stig Irming-Pedersen ASP.NET MVC Partner Copenhagen Software.
Begreber og Redskaber 2. Plan for idag Noget om bestanddelene i et programmeringssprog Syntaksbeskrivelse af java Næste gang: –Binære tal –Repræsentation.
Internetteknologi 2 (ITNET2) Java teknologi på Internettet J2EE Servlets.
Grundlæggende elementer i UML
Forelæsning 3.1 Collections Javas for-each løkke
AJAX/Otto Knudsen 1 AJAX Motivation Definition. AJAX/Otto Knudsen 2 Motivation En typisk web-applikation er synkron klienten sender en forespørgsel og.
Lektion 7 Læsestof: Kopier fra Caranno
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Objekter og klasser Rasmus D. Lehrmann DM
Masterpages/Otto Knudsen 1 Navigation på webstedet Kontroller til navigation mellem siderne på webstedet.
Repetition: Introduktion til OOP med C# og .NET
Comparable Students German Students Composite Pattern State Pattern Observer Pattern Collections Interfaces Abstrakte klasser Design Patterns.
8 RÅD VEDRØRENDE GOD PROGRAMMERING Effective (brown) Java.
11 - Exceptions. 2 NOEA2009Java-kursus – Exceptions Hvad er en exception? En undtagelse. Typisk en fejl der opstår runtime Afbryder det normale programflow.
FEN IntroJava AAU1 Klasser og objekter Grundbegreber Student-Course.
ADO.NET Databaser SQL Client (SQL server 7 og senere) OleDb (en række incl. jet) ODBC MySql (ekstra driver skal instaleres) Oracle (XML dataset) Samme.
Fremstilling af Simple WEB steder [ITPL] Foråret 2004
8.5 JDBC1 JDBC 8.5 Java Database Connectivity. 8.5 JDBC2 JDBC introduktion, 393 JDBC er ikke en forkortelse for –Java Database Connectivity Sun har defineret.
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
C#: Udtryk og metoder Kilde: Joe Hummel. 2 Nordjyllands Erhvervakademi – 2008 Indhold “With regards to programming statements and methods, C# offers what.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Hvad består en distribueret applikation af ? Processer der kører på hver deres maskine Tråde - 1 eller flere "letvægtsprocesser" per proces Objekter i.
Databaseadgang fra C#:
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
ASP.NET – web site publish. ASP.NET – site-version.
Intro Evaluering De sidste to gange?. HTTP, cookies og sessions Forelæsning nr 10 Tilbage til trafikken mellem server – client Sende HTTP-request og respons.
9. Interfaces. 2 Nordjyllands Erhvervakademi Objectives “Good class design starts with good application design — how many classes, do they relate.
Forelæsning 7.1 – repetition
Unified Modeling Language
Begreber og Redskaber 4. Plan for idag Om metoder, parametre, returværdier Et par ord om objekt-orientering Håndkøring af programmer.
Begreber og Redskaber 3. Plan for idag Om metoder, parametre, returværdier Overblik over klasser,objekter,nedarvning Et par ord om objekt-orientering.
Opsamling og repetition. Forelæsning 12 Hvad I ikke lærte Repetition? - date() - arrays - echo og return I funktioner - strukturering af script - navngivning.
Klasser og objekter. dIntProg, E08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel.
Indledende Programmering Uge 6 - Efterår 2006
Objektorienteret analyse og design Ó Bennedsen 2001 Design - part Programmering og systemudvikling Lektion 7 Design - part 2.
 Jens Bennedsen 2001Multimedie programmering4.1 Definition af begreber Interface, implements, klasse.
Web- og serverprogrammering Dette materiale er under Åben Dokumentlicens, se Java Server Pages - dag 2 Java Server.
Programmering I Java/C# Datatekniker Dit første projekt.
WebApi service part 2 Routning og Action Simpel test-client (javascript) Session og Application data.
Abstraktioner.
WebApi service x.
Simpel test-client (javascript) Session og Application data
Dokumentation.
Dokumentation.
Dokumentation.
Software Construction
Præsentationens transcript:

Denne præsentation vil sandsynligvis medføre diskussion blandt tilhørerne, hvilket vil resultere i handlingspunkter. Hvis du vil bruge PowerPoint til at holde styr på dem under præsentationen, skal du Klikke med højre museknap i Diasvisning Vælge “Referent” Vælge fanen “Handlingspunkter” Skrive handlingselementerne, efterhånden som de kommer frem Klikke på OK for at slette denne boks Derved oprettes der automatisk et dias med handlingspunkter sidst i præsentationen, hvor de punkter, du har noteret, vil stå. Rørende Intelligent Udarbejdet i perioden: 5. marts til 3. juni 2004 Hovedprojekt MII Aalborg Universitet

1 Fremlæggelse af projekt Indledning, teori (Model, Servlets mm.) –Peter UML gennemgang –Preben Together-oplæg –Anders Sammenligning med eksisterende løsning –– Hans Peter Konklusion, perspektivering, alternative løsningsforslag –Noah Cirka 12 minutter per indlæg

2 Indledning, teori (Model, Servlets mm.) Indledning –væsentlige teorier og metoder fra PE-kurser –OOP, (OOAD) samt Client-/Server programmering. –I forhold til materiale (OOP/Client/server) mangler i projektet to primære områder: Kommunikation via streams Brug af interfaces

3 Teori Java 2 Standard Edition (J2SE) Java 2 Platform Enterprise Edition (J2EE) –Java Servlets –Java Server Pages (JSP) –Java DataBase Connectivity (JDBC) Java 2 Micro Edition (J2ME)

4 Teori Arkitektur 3-lags arkitektur INTERNET Access Database MVC, Servlet, JSP med JDBC/ODBC 1..m klienter

5 Teori Servlet import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; public class ClientConsume extends HttpServlet { private static final int NO_POF_PIPES = 17; private static final String CONTENT_TYPE = "text/html"; //Initialize global variables private MainWindow lnkMainWindow; private DBBoundary lnkDBBoundary; private Login lnkLogin; private HttpSession session; public void init() throws ServletException { lnkDBBoundary = new DBBoundary(); lnkMainWindow = new MainWindow(lnkDBBoundary); lnkLogin = new Login(lnkDBBoundary, lnkMainWindow); } //Process the HTTP Get request showing parametres public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //Process the HTTP Put request public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); }

6 Teori Servlet (fortsat) switch (select) { case 1: //Login …. response.sendRedirect("ClientProduce.jsp"); break; case 2: // Sprog …. response.sendRedirect("ClientProduce.jsp"); break; case 3: // Beregn …. response.sendRedirect("ClientProduce.jsp"); break;

7 Teori JSP JSP ClientProduce …. " size="8" name="temp1"> …. ….

8 Teori MVC Model-View-Controller (MVC)

UML anvendt til applikationen (Unified Modeling Language) Rørende Intelligent Preben Melgaard Denne præsentation vil sandsynligvis medføre diskussion blandt tilhørerne, hvilket vil resultere i handlingspunkter. Hvis du vil bruge PowerPoint til at holde styr på dem under præsentationen, skal du Klikke med højre museknap i Diasvisning Vælge “Referent” Vælge fanen “Handlingspunkter” Skrive handlingselementerne, efterhånden som de kommer frem Klikke på OK for at slette denne boks Derved oprettes der automatisk et dias med handlingspunkter sidst i præsentationen, hvor de punkter, du har noteret, vil stå.

1 Præsentation af de anvendte diagramtyper Deployment diagram Use case diagram Aktivitetsdiagram Klassediagram Sekvensdiagram

2 Deployment diagram Viser den fysiske arkitektur af hardware og software i systemet

3 Use case diagram Viser et antal aktører og deres forbindelse til use cases som systemet tilbyder Beskrivelse af funktionalitet Tekst eller aktivitetsdiagram Definerer funktionelle krav til systemet

4 Aktivitetsdiagram Viser sekventiel flow af aktiviteter Bruges typisk til at beskrive de aktiviteter der skal til for at udføre en operation

5 Klassediagram Viser den statiske struktur af klasser Associeret Afhængige Pakket

6 Sekvensdiagram Viser dynamisk samarbejde mellem objekter Speciel god til at vise timing i sekvenser Viser beskeder sendt mellem objekter Viser tiden lodret nedad

7 Andre mulige diagramtyper State diagram –Viser et objekts tilstande og de hændelser, som giver et tilstandsskift –Kan laves både for klasser og hele systemet Collaboration diagram –Viser det dynamiske samarbejde mellem objekter –Ikke så gode til at vise timing Componet diagram –Viser fysiske komponent associationer –F.eks. Kildetekstfiler, binære filer og exe-filer. –Anvendes i programmeringen

Together-oplæg Rørende Intelligent Anders Rieck Sørensen Denne præsentation vil sandsynligvis medføre diskussion blandt tilhørerne, hvilket vil resultere i handlingspunkter. Hvis du vil bruge PowerPoint til at holde styr på dem under præsentationen, skal du Klikke med højre museknap i Diasvisning Vælge “Referent” Vælge fanen “Handlingspunkter” Skrive handlingselementerne, efterhånden som de kommer frem Klikke på OK for at slette denne boks Derved oprettes der automatisk et dias med handlingspunkter sidst i præsentationen, hvor de punkter, du har noteret, vil stå.

1 Teknologivalg Kontrolleren –Java (SDK/JDK) –MS-Access –SQL (JDBC/ODBC) Præsentationen –JSP –HTML/DHTML –JavaScript –CSS

2 Udviklingsværktøjer Together –UML –Java-klasser –JSP –Aftestning/debugning FrontPage –HTML / DHTML / CSS / JavaScript

3 Implementeringsforløb Første version –Java-klasserne fordelt til de enkelte gruppemedlemmer og aftestet før de blev frigivet. Anden version –Javaklasserne blev samlet i et projekt –Konstruktørerne blev fastlagt –Login.htm og clientProcedure.jsp

4 Demonstration Gennemgang –Diagrammerne –Editor –Kørsel

5 Opsummering Together –UML diagrammer og implementering god sammenhæng –Fint udviklingsværktøj –God i implementering og aftestning fasen –Reducer tidsforbrug FrontPage –God i udvikling skærmbilleder –Reducer tidsforbug Generelt –Kun to udviklingsværktøjer

Sammenligning af.NET- og Java- applikation Rørende Intelligent Hans Peter Lybæk

1 Om applikationerne.NET-applikationen –Programmeret i Visual Basic.Net –Findes via adressen Java-applikationen –Programmeret i Java –Findes via adressen

2 Test af performance (hastighed) Test af hastighed –Visuel test –Konkret hastighedsmåling Demo.NET-applikationJava-applikation

3.NET vs Java Forskelle –.NET-applikation Opdaterer med direkte adgang til databasen (hele siden opdateres) 100% adskillelse af HTML og programkode (se eksempel)(se eksempel) –Java-applikation Rullevinduernes værdier er lagret via arrays i JavaScript, hvorved kun de aktuelle menuer loades og dermed ikke hele siden

4 Konkret hastighedsmåling Indførelse af timestamps, når beregning starter og slutter.NET-kode: Private Sub Calculate_heat() Dim dTime1, dTime2 As DateTime Dim tCount1, tCount2 As Integer dTime1 = Now //Here goes the calculation GetPipeDimensions() GetPipeSpecs() … dTime2 = Now tCount2 = dTime2.Subtract(dTime1).Seconds() tCount1 = dTime2.Subtract(dTime1).Milliseconds() Response.Write("Tid: " & tCount2 & " sek., " & tCount1 & " millisek.") End Sub

5 Java-applikation Java-kode: long[] laT = new long[2]; Date timestamp = new Date(); laT[0] = timestamp.getTime(); // Start tid switch (select) { case 3: // Beregn daRes = lnkMainWindow.beregn(daT[0], daT[1], daT[2], iaD[0], daLength); session.setAttribute("result", daRes); session.setAttribute("navn", valg); Date timestamp3 = new Date(); laT[1] = timestamp3.getTime(); // Slut tid session.setAttribute("time", laT); response.sendRedirect("ClientProduce.jsp"); break;

6 Vurdering af resultater Visuel test –Java-applikation er hurtigst til at eksekvere på klientsiden (eksempelvis skift af rullevinduer) –Java-applikation vurderes til at være lidt hurtigere til at skifte sprog (der er ikke målt tid på dette) –De to applikationer er cirka lige hurtige til at udføre en beregning Konkret hastighedsmåling –Beregninger:.NET: 0sek, 430 millisekunder Java: 0sek, 140 millisekunder –Sprog.NET: 0sek, 15 millisekunder Java: 0sek, 32 millisekunder

7 Eksempel på databaseopslag i.NET Klasse clsDimensions Imports System.Data Imports System.Data.OleDb Public Class clsDimensions Inherits System.Web.UI.Page Dim i As Integer Dim pDim(16) As Integer Dim strCn As String Public Function GetDimensions() As Integer() strCn = "Provider=Microsoft.jet.oledb.4.0;Data Source=" & Server.MapPath("fluids.MDB") & ";" Dim strSql As String = "Select dimension FROM material_spec ORDER BY id ASC" Dim objConnection As New OleDbConnection(strCn) Dim objCommand As New OleDbCommand(strSql, objConnection) Dim objDataReader As OleDbDataReader objConnection.Open() objDataReader = objCommand.ExecuteReader() i = 0 Do While objDataReader.Read() = True pDim(i) = objDataReader("dimension") i += 1 Loop objDataReader.Close() objConnection.Close() Return pDim End Function End Class

8 Eksempel på databaseopslag i Java Java: public double[] GetDimensions(){ double[] dimension=new double[18]; int taeller = 0; String strSql = "SELECT Dimension FROM material_spec ORDER BY id ASC"; try{ Statement statement1 = connectionfluids.createStatement(); ResultSet res1 = statement1.executeQuery(strSql); while (res1.next()){ dimension[taeller] = res1.getInt("Dimension"); taeller++; } }catch (Exception fagex){System.out.println("kunne ikke finde dimensionen "+fagex);} return dimension; }

9.NET-kode Eksempel –Man indtaster en tekst og det indtastede returneres i en label Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="GeorgFischer.WebForm1"%> WebForm1 Enter some text: You entered: Label

10 Kodefil (Webform1.aspx.vb) Dette er kodefilen, der anvendes af aspx-filen Public Class WebForm1 Inherits System.Web.UI.Page Protected WithEvents Label1 As System.Web.UI.WebControls.Label Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox Protected WithEvents Button1 As System.Web.UI.WebControls.Button Protected WithEvents Label2 As System.Web.UI.WebControls.Label Protected WithEvents Label3 As System.Web.UI.WebControls.Label Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Label3.Text = TextBox1.text End Sub End Class