jee development. rob dawson lead developer email: [email protected] blog: bsc uq +mit qut...

52
JEE Development

Upload: berniece-anderson

Post on 13-Jan-2016

217 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE Development

Page 2: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Rob Dawson

Lead Developer

email: [email protected]

blog: www.rojotek.com/blog/

• BSc UQ +MIT QUT

• over 10 years experience in the IT industry Oracle, IBM, BNP Paribas

USA, UK, Brisbane

• Developer at Ephox since 2007

Page 3: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Ephox• Product Company

• Agile Development

• Small Growing Exciting Company

• Research and Development headed out of Brisbane

Page 4: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Why JEE• Boss Said so

• Cross platform

• Enterprise

Page 5: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Googlefight

Page 6: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Another fight

Page 7: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 8: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE• Big

• ENTERPRISE

• Lots of Open Source Frameworks

Page 9: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE Big• Lots of vendor support

• Won’t dissapear

• Slow to change can be good

Page 10: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Enterprise• Standard stacks

• Centralised system admin

• Scaling

• Easy to hire people

Page 11: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Plan• Pictures (architecture)

• Simple Example

• Enterprise Example

• EditLive! in Enterprise

• Navigating the Maze

Page 12: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 13: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 14: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 15: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 16: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 17: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 18: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 19: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 20: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

http://www.flickr.com/photos/ippei-janine/3212105642/

Page 21: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

http://www.flickr.com/photos/carolinadoug/3469311703/

Page 22: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

http://www.flickr.com/photos/revolute/2733638220/

Page 23: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 24: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 25: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Scaling• State?

• Communication between Nodes

• Share Nothing

Page 26: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 27: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 28: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 29: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 30: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 31: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years
Page 32: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE• Good

Big apps

Scaling

Enterprise

• Careful Size

Complexity

Use what you need

Page 33: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Break

Page 34: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Simple Example• Blog

• Struts 2

• Hibernate

• ant

Page 35: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

XML

<students>

<student><name>fred</name></student>

<student name=“fred”/>

</students>

Page 36: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Hibernate• Object Relational Mapping tool

• Map objects to tables

• XML + Annotations based

• http://hibernate.org/

Page 37: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Struts 2• MVC Tool for Web Apps

• Front Controller, actions and views

• Xml based configuration

• http://struts.apache.org/

Page 38: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Ant• http://ant.apache.org

• Good Lots of tasks

• Bad Xml

(author apologised)

http://web.archive.org/web/20040602210721/http://x180.net/Articles/Java/AntAndXML.html

Page 39: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Blog Example

Page 40: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

IDE Critical• Lots of Code Created

• Need generation magic

• Refactoring

Page 41: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

IDEs• IntelliJ

• Eclipse

• NetBeans

Page 42: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE Apps Tend to be complex• Starter frameworks

• Open Source frameworks

Page 43: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Starter Frameworks• App Fuse

• http://appfuse.org/

• https://appfuse-light.dev.java.net/

• App Fuse Light 60 possible combinations are available for

download:

Page 44: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Open Source Blog• Roller - Enterprise Blog

• http://rollerweblogger.org/

• Packaged by Sun

IBM

• Huge

Page 45: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Roller Example

Page 46: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Plugins + customisation• Ephox EditLive! in Roller

Page 47: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Choosing Frameworks• Can be hard

• Google is your friend

• Choice not needed (experts choose for you)?

Page 48: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

More on Choosing frameworks• Documentation of Framework

• Try on a small project first

• Active development

• Useful/helpful community

• Complexity

Page 49: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE Not Just Java• SCALA

• JRuby

• Jython

Page 50: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

JEE• Complete framework

• Useful in Enterprise

Page 51: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Questions?

Page 52: JEE Development. Rob Dawson Lead Developer email: robert.dawson@ephox.com blog:  BSc UQ +MIT QUT over 10 years

Ephox is Looking for Graduates• Offices in San Francisco, London and Brisbane

• Fast growing software company

• Java and Web 2.0 software development

• History of Griffith Graduates

• Brett HendersonEngineering Manager - Ephox [email protected]