Download Chapter13Slides

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Chapter 13
Web Application Infrastructure
Objectives
• Explain the components and purpose of a web
application platform
• Describe several common webapp platforms
• Explain the nature and purpose of a webapp
framework
• Describe several common webapp frameworks
• Explain the nature and purpose of a content
management system
• Describe several common content management
systems
Web Application Platform
• A webapp platform is the host environment
for application development and operation
• The platform includes
– operating system, web server,
language support, database support
platform
Web
Server
Web
Application
Language Database
Support
Support
Operating System
Hardware
LAMP
• Linux, Apache, MySQL, PHP/Perl/Python
• The LAMP platform appeared in mid
1990's and has become very popular
• LAMP is open-source free software, which
is one reason for its popularity
Microsoft / .NET
• All Microsoft products (licensed)
• .NET supports multiple languages
• Runs primarily on Windows Server O/S
Sun Microsystems/Java EE
• Supports Java language development
• Supported by multiple operating systems
• Proprietary, free license
Web Application Framework
• A webapp framework is a set of tools that
support webapp development with:
– A standard design model (e.g., MVC)
– User interface toolkit
– Reusable components for common functions
(authentication, e-commerce, etc.)
– Database support
– Support for distributed system integration
Web Application Framework
• Frameworks give application developers
more powerful building blocks to work with
Java EE
• Java EE is based purely in the Java
programming language
• Includes
– Java Servlets
– Java Server Pages
– Java DataBase Connectivity
– Java Server Faces
– Enterprise Java Beans
– etc.
.NET Framework
• .NET Framework is a Microsoft (licensed)
product
• .NET supports many programming
languages through its Common Language
Runtime (CLR) system
C#
ASP
VB
C++
etc.
compilation
CLR Intermediate Language
CLR Interpreter
Ruby On Rails
• Ruby: a dynamically typed object-oriented
programming language
• Rails: a webapp framework, featuring:
– automatic code skeletons
– built-in testing features
– object-relation mapping
– default implementation of common webapp
functions
Struts
• A webapp framework based on Java EE
• Features:
– use of MVC design paradigm
– Centralized XML-based application
configuration that can define many functions
– Action definitions link user interface events to
Controller and View modules
Content Management System
• A CMS is a tool for creating, cataloging,
and accessing documents (web pages)
Content Management System
• A CMS can streamline and automate the
process of creating, approving, deploying,
and retiring web content
Workflow Management
• A CMS can coordinate the steps involved
in creating, editing, and approving web
content within an organization
Content Management Systems
• Joomla!
– open source, free
– based on MySQL and PHP
– supports web pages, RSS feeds, blogs, etc.
• Vignette
– proprietary product
– includes extensive workflow management
support
– integrates with related development tools
Web Application Software Stack
• The webapp software stack includes
platform, framework, CMS, and application
Review
• Webapp Platforms
– LAMP, Microsoft/.NET Sun/Java
• Webapp Frameworks
– Java EE, .NET Framework, Ruby on Rails,
Struts
• Content Management Systems
– Joomla!, Vignette
• Webapp Software Stack
Related documents