Amazon.com Widgets

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.

Comments

Raymond Camden's BlogCFC version 5.8.001