Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Java Teknologi Teknikker Økosystem Johannes Brodwall

Liknende presentasjoner


Presentasjon om: "Java Teknologi Teknikker Økosystem Johannes Brodwall"— Utskrift av presentasjonen:

1 Java Teknologi Teknikker Økosystem Johannes Brodwall johannes@brodwall.com

2 Hvem er jeg?

3 Johannes Brodwall

4 Resident Java Expert, BBS

5 Organizer, Oslo XP Meetup http://xp.meetup.com/13/

6 Rådgiver; Java, arkitektur og smidige prosesser http://brodwall.com/johannes/blog/

7 (I motsetning til visse andre...)

8 Har ingen kake å mele

9 ”Hva kan vi forvente når vi jobber med Java?”

10 (0)

11 Hva er Java ?

12 Java er ikke et programmeringsspråk

13 Java er ikke en teknologi

14 Bibliotek Språk Open Source Standarder Kunnskap Community Teknikker Verktøy Eclipse IntelliJ Ant Maven NetBeans Spring Tomcat JCP Apache Codehaus Enhetstest Continuous Integration Java EE MVC Defacto standarder XML EJB Servlets JVM

15 Java er et økosystem

16 Bibliotek Språk Open Source Standarder Kunnskap Community Teknikker Verktøy Eclipse IntelliJ Ant Maven NetBeans Spring Tomcat JCP Apache Codehaus Enhetstest Continuous Integration Java EE MVC Defacto standarder XML EJB Servlets JVM

17 (1)

18 Historien om Java http://brodwall.com/johannes/brief-java-history

19

20

21

22

23 Stille sjø?

24 (2)

25 | Java Enterprise Edition

26 Java EE

27 Tidligere J2EE

28 (Ikke JEE)

29 Mål: Løs 90 %

30 Model-View-Controller

31 ControllerView Logikk Persistens Database 1. Request 2. Update state 3. Retrieve state 4. Display state 5. Response (HTML) Thin Client

32 Java EE teknologiene

33 ServletsJSP Session Beans Entity Beans JDBC Enterprise Java Beans ”Web Tier”

34 Men det ble veldig komplekst JTA EJB RMI-IIOP JMS Two-phase commit Entity Beans RMI JCA WAR EAR Stateless session beans Stateful session beans Message driven beans Java Server Pages Servlets

35 Overambisøs teknologi

36 ControllerView Logikk Persistens Database Persistens Database

37 ControllerView Logikk Persistens Database

38 ControllerView Logikk Persistens Database Rich Client RMI

39 ControllerView Logikk Persistens Database Mainframe Adapter

40 ControllerView Logikk Persistens Database Kø Eksternt system

41 Klønete teknologi

42 EAR WAR jar ejb-jar Application server jsp jar WAR jar jsp jar ejb-jar jar application.xml web.xml ejb-jar.xml 1. Edit (usually by hand) 2. Package (Typically Ant) 3. Deploy (Typically via GUI-tool) 4. Test (usually random clicking around)

43 (3)

44 Testing

45 Automatisert Testing

46 To formål

47 Kostnad for å innføre ny funksjonalitet

48 Kostnad for å unngå feil i ting som virket

49 (Dvs. regresjonsfeil)

50 Tre egenskaper

51 Dekningsgrad

52 (sjansen for at feil oppdages)

53 Robusthet

54 (sjansen for at korrekt endring får en test til å feile)

55 Testtid

56 (tid for å sjekke en endring)

57 Må understøttes av teknologi

58 (4)

59 Java i dag http://brodwall.com/johannes/maven-app-server

60 Open Source

61 Samme modell

62 ControllerView Logikk Persistens Database

63 Enklere teknologier

64 Spring-MVCFreeMarker Spring Hibernate (JDBC) TopLink Seam iBatis Velocity Cocoon Struts (2) WebWork Wicket

65 Kan kjøre utenfor applikasjonsserver http://www.brodwall.com/johannes/blog/wp- content/uploads/2007/05/reference-app-100.zip

66 Drift: EAR til applikasjonsserver Eller Unpack og kjør

67 1.Enhetstest på utviklers PC 2.Automatisk bygg på integrasjonsserver 3.Automatisk deployment på testserver 4.Kontroll på hva som inngår i en leveranse 5.Kontrollert utrulling av velkjent versjon i staging og produksjon

68 JUnit Subversion Continuous Integration Maven Maven Repository Auto- deploy Maven Test Production 1. Check in Developer Release manager Tester End user 2. Update 3. Publish snapshot 4. Download 5. Perform tests 7. Tag 8. Publish release 9. Download release

69 Java EE 5

70 ServletsJSP + JSF Session Beans JPA (entity beans) JDBC

71 Redusert konfigurasjon (ikke vist)

72 Applikasjonsservere er dyre...

73 ... men så får man mye problemer for pengene

74

75 (5)

76 Java-syken

77 (som også har infisert.NET)

78 ”Programmering i XML er ikke programmering”

79 ”Alt er bedre med standarder”

80 http://www.innoq.com/soa/ws-standards/poster/

81 ”Programmering i bilder er ikke programmering”

82 ”Smakstestoptimalisering”

83

84 Skyldig: Java EE firmaer

85 Skyldig: Microsoft!

86 Hva skal til for å komme helt i produksjon?

87 (6)

88 Hva betyr det å velge Java?

89 Open Source

90 Mange stemmer

91 Mye forandring

92 Det er kaotisk

93 Men vi får bedre løsninger

94 (Håper jeg)

95 Johannes Brodwall johannes@brodwall.com http://brodwall.com/johannes/blog


Laste ned ppt "Java Teknologi Teknikker Økosystem Johannes Brodwall"

Liknende presentasjoner


Annonser fra Google