100 likes | 951 Views
Apache Struts RIFE Ruby on Rails. Harry R. Erwin, PhD University of Sunderland CIT304/CSE301. Resources. Hans Bergsten, 2002, JavaServer Pages, 2nd edition, O’Reilly, ISBN: 0-596-00317-X http://java.sun.com/products/jsp/ http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/
E N D
Apache StrutsRIFERuby on Rails Harry R. Erwin, PhD University of Sunderland CIT304/CSE301
Resources • Hans Bergsten, 2002, JavaServer Pages, 2nd edition, O’Reilly, ISBN: 0-596-00317-X • http://java.sun.com/products/jsp/ • http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/ • Farley, et al., 2002, Java Enterprise in a Nutshell, 2nd edition, O’Reilly, ISBN: 0-596-00152-5 • Brittain and Darwin, 2003, Tomcat: the Definitive Guide, O’Reilly. • Kurniawan and Deck, 2004, How Tomcat Works, BrainySoftware.com. • Knuckles and Yuen, 2005, Web Applications: Concepts and Real World Design, Wiley. • Nakhimovsky and Myers, 2004, Google, Amazon and Beyond, Apress.
Web Resources • Wikipedia (of course) • Apache Struts • http://struts.apache.org/ • RIFE • http://rifers.org/ • Ruby on Rails • http://www.rubyonrails.org/
What is Struts? • The Struts framework is designed to help developers create web applications that utilize a Model-View-Controller (MVC) architecture. • The framework provides three key components: • A "request" handler provided by the application developer that is mapped to a standard URI. • A "response" handler that transfers control to another resource which completes the response. • A tag library that helps developers create interactive form-based applications with server pages. • Struts works well with conventional REST applications and with new technologies like SOAP and AJAX.
Struts as an Approach • According to the website, Apache Struts is a free open-source framework for creating Java EE web applications. • It uses and extends the Java Servlet API. • Web applications differ from conventional websites in that they can create a dynamic response. They can interact with databases and business logic engines to customize a response. • Web applications based on JavaServer Pages often commingle database code, page design code, and control flow code. Unless these concerns are separated, larger applications become difficult to maintain. Struts is designed to control this problem.
What is RIFE? • “RIFE is a full-stack web application framework with tools and APIs to implement most common web features. • Each of its toolkits is usable by itself and together they offer powerful integrated features that boost your productivity. • RIFE ensures that every declaration and definition is handled in one place in the code. • This simplifies the developer's task by reducing code replication, enforcing consistency, and easing maintenance.” (rifers.org)
RIFE as an Approach • Similar in concept to Ruby on Rails and Struts. • Single place approach to CM • Provides for the most common web features. • Very modular • Java EE
What is Ruby on Rails? • “Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern. • From the Ajax in the view, to the request and response in the controller, to the domain model wrapping the database, Rails gives you a pure-Ruby development environment. • To go live, all you need to add is a database and a web server.” (www.rubyonrails.org)
Ruby on Rails as an Approach • Ruby is the language. • RoR is available in Mac OS X 10.5 • Provides MVC scaffolding and helps avoid code reuse. • Modular
Comments • There is no silver bullet. • Use what you’re comfortable with and plays well with your development environment. • The choice of framework to use involves taste and experience.