Unweaving inter-crosscutting - PowerPoint PPT Presentation

About This Presentation
Title:

Unweaving inter-crosscutting

Description:

Domain Driven Web Development With WebJinn Sergei Kojarski College of Computer & Information Science Northeastern University joint work with David H. Lorenz – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 10
Provided by: pcl64
Category:

less

Transcript and Presenter's Notes

Title: Unweaving inter-crosscutting


1
Unweaving inter-crosscutting
Schema-related expressions are clustered by
operation
To unweave inter-crosscutting we
XP Model
select.jsp
doInsert.jsp
1. Substitute clusters with schema-shy extension
points
Constructing SQL select statement
Constructing SQL insert statement
2. Specify schema-related code in a separate
module
XP3
name
email
message
?,?,?
XP1
3. Employ weaver to produce executable code
pst.setString(1,request.getParameter(name)
name
email
message
pst.setString(1,request.getParameter(email)
pst.setString(1,request.getParameter(message)
Abstract application
Schema
Weaver
XP2
Visitor
ltrs.getString(email)gt
Rendering HTML form for inserting a message
ltrs.getString(name)gt
ltrs.getString(message)gt
XP1
XP3
Rendering guest book messages as HTML table
insertForm.jsp
XP2
ltform action"doInsert.jsp"gt lttrgtltth
colspan2gtNew Messagelt/thgtlt/trgt lttrgtlttdgtYour
Namelt/tdgtlttdgtltinput typetext name"name"gtlt/trgt ltt
rgtlttdgtE-maillt/tdgtlttdgtltinput typetext
name"email"gtlt/trgt lttrgtlttdgtMessagelt/tdgtlttdgtlttextar
ea name"message"gtlt/textareagt lttrgtlttd
colspan2gtltinput typesubmit value"Add"gtlt/tdgtlt/tr
gt lt/formgt
XP4
ltinput typetext name"name"gt
Your Name
ltinput typetext nameemail"gt
E-mail
ltform action"doInsert.jsp"gt lttrgtltth
colspan2gtNew Messagelt/thgtlt/trgt lttrgtlttdgtYour
Namelt/tdgtlttdgtltinput typetext name"name"gtlt/trgt ltt
rgtlttdgtE-maillt/tdgtlttdgtltinput typetext
name"email"gtlt/trgt lttrgtlttdgtMessagelt/tdgtlttdgtlttextar
ea name"message"gtlt/textareagt lttrgtlttd
colspan2gtltinput typesubmit value"Add"gtlt/tdgtlt/tr
gt lt/formgt
lttextarea namemessage"gtlt/textareagt
Message
XP4
2
Unweaving intra-crosscutting
Web-application
Controller
HTTP
Structure concern cuts across action classes
and JSP views
Model
Action classes
Controller servlet
request
Selects appropriate JSP view
Selects action class to handle request received
Performs server-side operations. Deposit results
in web-tier containers.
View
Obtains data from web-tier containers and renders
the HTTP response
JSP pages
response
Resource
3
DDD model
DDD MVC XP
What about having one model that solves both
problems?
4
Solution space
Problem Model Framework
Intra-crosscutting MVC Apache Struts
Inter-crosscutting XP WebJinn/XP
Intra- and Inter-crosscutting DDD WebJinn
5
WebJinn Architecture
Controller
Model
Java classes
request
Controller servlet
View
Schema
JSP pages
response
Resource
6
Benefits of WebJinn
  • Decreased dependency between developer groups
  • Adaptability to schema changes
  • High code reusability.
  • Web components!

7
Conclusion
Inter-crosscutting
DDD
MVC
XP
Dynamic page
Intra-crosscutting
CGI scripts
Static page
8
Future Work and Projects
  • Web AOP Project
  • AOP language design
  • Implementation of language semantics
  • Weaver implementation
  • Documentation
  • Web components project
  • Webjinn Component builder (use BeanBox)
  • Eclipse plugin development
  • Related projects Content Management System.

9
Related Models Frameworks
  • Apache Struts
  • Java Server Facets
  • The MVC Model
  • JSP Servlet technology
  • ASP, PhP and other dynamic page technologies
Write a Comment
User Comments (0)
About PowerShow.com