Upload
belva
View
50
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Coldbox Platform. Web Applications Development Using Coldbox Platform Eddie Johnston. What is Coldbox ?. Model View Controller event-driven Coldfusion Framework. Tool Set & Software foundation Object Oriented Principles Established on Code Controllers. What is Coldbox ? Cont. - PowerPoint PPT Presentation
Citation preview
COLDBOX PLATFORMWeb Applications Development
Using Coldbox Platform
Eddie Johnston
What is Coldbox?
Model View Controller event-driven Coldfusion Framework.
Tool Set & Software foundation Object Oriented Principles Established on Code
Controllers
What is Coldbox? Cont.
Application features: bug reporting, logging, caching, debug tools, and much more.
Unit Test the entire application.
Convention Over Configuration
Coldbox provides these defaults Allows for files, classes, or methods
to be put in the correct location Faster production
Framework Designed for Web Apps
Provides for the development of: Dynamic websites Web applications Web services
ColdFusion Markup Language(CFML)
Commonly called CFML Scripting Language for Web
Development Runs on common engines Open source implementations of
CFML engines Adobe ColdFusion BlueDragon Many More
ColdFusion Markup Language(CFML) Cont.
Rundown: Supplements normal HTML files database commands conditional operators formatting functions CFCs, “CFML objects”
ColdFusion Markup Language(CFML) Cont.
Does not just generate HTML CSS XML JavaScript Much More
ColdFusion Markup Language(CFML) Cont.
Not a markup language Not SGML
CFML engine: handles .cfm or .cfc files processes CFML tags and
functions
ColdFusion Markup Language(CFML) Cont.
CFML syntax CFML tags similar to HTML tags <cfset value = "Hello"> or <cfset value = "Hello" />
<cfoutput> #value# Class!</cfoutput>
ColdFusion Markup Language(CFML) Cont.
CFML Custom Tags Line to call myOwnCustTag.cfm <cf_myOwnCustTag>
Framework Designed for Web Apps
Reusable code Libraries for accessing databases Handling sessions
Framework Designed for Web Apps Cont.
Web Application Framework Architecture: Most follow: Model View Controller
(MVC) Examples: .NET PHP Python Java JavaScript much more
Coldbox AJAX MVC Framework ORM Testing Framework Caching Utilities and Services And much more
Framework Designed for Web Apps Cont.
Model View Controller (MVC)
Application
Client
ViewModel
Controller
DB
Model View Controller (MVC)
Key ideas: Model: directs the data or behavior
of an application domain View: Renders data into a form
typically to appeal to a UI Controller: retrieves input and starts
the response. Guides the model and view based on the input
Model View Controller (MVC) Cont.
Architecture Not Framework:
Can be implemented without object oriented programming or a class hierarchy.
Model View Controller (MVC) Cont.
Advantages: View is separate from Model: no
dependency directly UI can render many different views of the
same data at once.
Changes are easy to maintain Layouts are simple to change that will not
effect the data that is rendered
ColdBox Origin
Original Designed for multiple tier web application in 2005.
Became open source July 2006. Developed by Luis Majano of Ortus
SolutionsContinued development by Team
Coldbox Build: 3.1.0
Why Coldbox?
Unit test an entire application Enterprise debugging, monitoring, caching,
etc.
Code controllers (based on CFCs)
More than just MVC framework Development tools and event-driven
Coldbox Features
Documentation250+ pages of documentation30 Step by Step GuidesColdbox DictionaryThe reason why we document:
makes life easier for the developer.
Coldbox Features cont.
Code ControllersNo XML Dialect to describe your
applicationBased on CFC’s and conventionsMultiple applications with concise
and common configuration filesSmart Caching
Coldbox Features cont.
Custom ConventionColdbox knows where to find codeColdbox knows what to executeCustomizable
Create own layouts, handlers, configuration files
Coldbox Features cont.
Debugging tools Gives a lot of information for what is happening
Times events & code Built in timer plugin Visual feedback Debugging monitors
Coldbox Features cont.
Software Aspects Logging Facilities Helper classes
Query helpers(sorting or filtering), java utilities, file utilities
Environment detectionCan detect between development, or production (multi-tier)
Bug reports to send wherever you want Create own plugins
Request Collection
Layouts
Views
View
Controller
Model
Plugins
Event Handlers
Interceptors
Model Business Layer
Plugins
Request Collection
Imitates a User Request
Set values into, Get values from
Request Scope
Framework access
Event Handler
Ins and Outs: CFC
Coldfuison Events are Public or Remote Methods
Execution Points
Event = handler.method
Plugins
CFC Extends functionality of Coldbox
Framework Visual Smart Caching How to call a plugin Messagebox plugin: <cfset getPlugin("messagebox").setMessage(“Error Content","Error grabbing data")>
Interceptors
Framework executes interceptors at execution points
preEvent, afterConfigurationLoad, etc.
Custom Interceptor points Broadcasted through Application
Programming Interface
Views and Layouts
Define a main default layout
Define in Configuration File: Views to be rendered instead of layouts
Layouts
Views
Views
Files in the Handler Directory
Code inside the Main handler
Layout Directory
Sidebar to a web application generated by Coldbox Framework
Snippet from Add Customer of Sidebar
Overview
Web applications are not just websites
Convention Framework More than MVC framework
Questions
Thank you