CFObjective 2008 – Day 2 – Building Apps for Multiple UIs

Matt Woodward

Domain Model is the most important. Use UML to think things through. Easier to change a diagram. Objects and Methods.

The database is not that important. It shouldn’t drive your application design. On the app side, think about objects, not tables, etc. Only worry about your DB once your domain model has been worked out.

Very Important Concepts
Cohesion: degress to which an object does one thing and does it well. Coupling: degree to which objects depend on one another. Strive for high cohesion and loose coupling

Biz Logic is most important

Beans and DAOs
A small object like a person (person.cfc) in a contact manager with getters and setters for each piece of data
DAO (personDAO.cfc) talks to the database about the bean. The bean is just a container for the object.
(PersonGateway.cfc)

Service Layer (biz logic’s receptionist)
Must go trough to get to biz logic.
Critical for reusability of your biz logic.

CF/AIR/Flex > Service Layer > Biz Logic

Controller Layer
Can be a framework, etc. Roll your own.

UI Layer
You can pick any that you like. All UIs talk through their controllers to access the Service Layer

(Matt was whipping through the slides…. need to download the pres after the conf)

Contact Manager App Demo using HTML, AJAX, and Flex with no code changes.

Leave a Reply

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>