1 / 13

Traditional Web Based Application Structure

Traditional Web Based Application Structure. Frameworks define how the application is designed, organised and deployed across various tiers. Spring. Sample MVC Layout. JDBC could be substituted by an alternate object relational persistence and query layer such as Hibernate.

kolina
Download Presentation

Traditional Web Based Application Structure

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Traditional Web Based Application Structure Frameworks define how the application is designed, organised and deployed across various tiers.

  2. Spring Sample MVC Layout JDBC could be substituted by an alternate object relational persistence and query layer such as Hibernate. Spring provides excellent support to for Hibernate.

  3. Spring Services • Inversion of Control • The basic concept of the Inversion of Control pattern (dependency injection) is that developers don’t need to create any objects but describe how they should be created. Here one doesn’t have to directly connect the components and services together in code but describe which services are needed by which components in a configuration file. • Aspect Oriented Programming • AOP allows to dynamically modify the static model to include the code required to fulfil the secondary requirements without having to modify the original model. Better still, this additional code can be placed in a single location rather than having to scatter it across the existing model. • Data access & Transaction Management. • MVC • Batch Processing • Authentication & Authorization • Messaging • Web Services

  4. Spring Cons Pros • Popular and well supported • framework for web and enterprise wide • applications • Open Source, no vendor lock-in • Spring has a layered architecture, • meaning that you can choose to use • just about any part of it in isolation, • yet its architecture is internally consistent. • 4. Provides an end to end solution. • View layer, Database, Security, • Webservices….. • 5. Support community in terms of • online forums, books, • training courses • 6. Easy to buy in resources for • development • 7. Facilitates good programming • practices and loose coupling between • interfaces. • 8. Enables POJO programming. • Higher learning Curve • Needs experienced java developers. • More time needed for development initially • especially for developers new to Spring. • However there are long term benefits of having • a robust framework in place.

  5. Spring Why Spring? • Spring seems a good choice, when there is scope of reuse of components being developed and/or Web service integration. • Also, if one would like to any other open source frameworks for different layers in the application then Spring fits the bill very well. • Spring being layered in nature, one doesn’t have to use Spring all the way through, one could just as easily bring in Hibernate for database access and persistence or Struts for MVC. • Spring runs on all web containers and application servers, as well as standalone applications. • Most mission critical systems, large transactional systems can be developed using Spring.

  6. Oracle ADF Framework • MVC style of development with special consideration to separate Model and the Business Service Layer. • SOA development support. • Introduction of ADF Business Components in the Business services layer, providing out-of-the-box • services such as transaction management, resource pooling, locking, declarative validation rules, translation, • and object-relational mapping • Built-in implementation of common J2EE design patterns and infrastructure code in the framework • Declarative style for defining user security for authentication and authorization.

  7. Oracle ADF Cons Pros • Excellent tooling support - JDeveloper offers visual and declarative tools for each layer of ADF (end-to-end solution) • 2. ADF Faces provides Oracle Forms like interface, which is easy for Forms developers. • 3. Declarative development approach reduces the learning curve for developers new to Java EE technologies. • 4. Declarative approach increases productivity - creating rich java applications with reduced effort. • JDeveloper as a IDE, that provides tools, plug-ins that make development more of plug and play. • 11g release allows declarative style of defining security profiles. Security can be associated with specific web pages, task flows, users and user groups. This is done using the JAAS security model. • 7. Serviced by Oracle Support • Less control over user interface • and design in comparison with non declarative tools. • 2. JDeveloper is a Oracle propriety product, • thus vendor lock in. • 3. Does not integrate easily with • non Oracle products/open source • frameworks. • 4. JDeveloper is a free IDE, however support • and maintenance for IDE is charged. • 5. JDeveloper with Oracle ADF needs a runtime license when • deployed outside of an Oracle Application Server.

  8. Oracle ADF Why Oracle ADF? • Where everything is Oracle (app server, authentication etc), vendor lock-in is not a concern and/or we need to tightly couple with existing Oracle stored procedures, ADF is sensible. • When the team to start developing a Java EE project, comes from a Oracle Forms background or are PL/SQL developers, they would find the transition smoother. • JDeveloper is an excellent tool that integrates very well when implementing a Oracle ADF project, and it helps one to clearly define each component in a declarative manner. • With ADF providing support for Ajax and rich UI interfaces, it is becoming easier for non Java developers to start developing rich Java based applications.

  9. PHP ZEND • MVC style of development. • Suited to Web Content based applications, and flashy websites. • Good support for Internationalisation. • Web service support specially for developing Restful services. • Offers services such as authorization, acl, cache, logging, mail. • Simpler deployment.

  10. PHP/ZEND Cons Pros • Good choice when developing websites, CMS applications. • Excellent support for web application development in terms of api’s available. • Served directly from the web server (apache). Thus no need of any other deployment container. Simpler deployment. • Generally suited to application written using LAMP stack. (Linux, Apache, MySQL and PHP). • Shorter learning curve. • Support for OO is available from 5.0 onwards. • Can consume webservices • 1. Not suited for larger enterprise wide systems or B2B kind of applications. • 2. ZEND IDE is the available for professional PHP development, however it’s a licensed product. • 3. Not ideal for server centric development. • 4. Lack of standards with regards to design patterns and unit testing.

  11. jQuery – A JavaScript Framework • jQuery is a lightweight JavaScript library that allows interaction between JavaScript • and HTML elements. • jQuery is a free open-source software, usually just a single JavaScript file containing • all common DOM, Event, Effects and Ajax functions. • jQuery works on an array of browsers. Such as Firefox 1.0+, Internet Explorer 5.5+, Safari 1.3+, • and Opera 8.5+. • jQuery can be used with any web programming language JSP, ASP, PHP etc.. • Features are: • DOM element selections functions, traversal and modification • Events • CSS manipulation • Effects and animations • Ajax • Extensibility • Utilities - such as browser version and the each function. • JavaScript Plugins

  12. jQuery – A JavaScript Framework Why jQuery? • Check the system requirements. If the application being developed needs a rich UI heavy interface, with dynamically changing elements. It would be advisable to make using of a JavaScript framework. • Projects that have made use of jQuery as a javascript framework are: • Common Timetabling • Total Rewards System • If the application needs any Ajax capabilities, jQuery provides good support for Ajax based development. • jQuery works just as well with any other JavaScript framework. Thus if one chooses to implement jQuery with another JavaScript framework, then this too is feasible. • jQuery also has a shorter learning curve fordevelopers who have worked with java scripting, CSS and is familiar with XPath syntax.

  13. What to pick Whatever be the new system being developed, base your choice on the following factors. • Business Requirement • Scalability • 3. Timescales • 4. Budget • 5. In-house Skills • 6. Support Team Skills

More Related