SlideShare a Scribd company logo
ColdBox MVC:
NATHANIEL FRANCIS
‣Computer Know How
‣CFML/JavaScript developer
‣APIs (REST)
Who Am I?
As applications grow, complexity grows
As complexity grows, complications multiply
How do we make
complex applications
while minimizing
complications?
GOALS:
make existing code organization
simple while developing complex
applications for teams to work on
GOALS:
make developing new code
simple to integrate into
existing code
ITB2016   Intro To ColdBox MVC
VIEW
‣what the user interacts with
‣UI/UX
‣browser/mobile stuff
‣“the site” or “the app”
according to the user
MODEL
‣business logic
‣data interaction manipulation
‣services
‣data access
CONTROLLER
‣“confusing one”
‣controls application flow
‣mediator between model & view
‣request/response manager
‣different for different systems
The MVC Restaurant:
an illustration in organization
‣The menu
‣What the user sees
‣User Interface (UI) -> what the user
interacts with
View
Controller
‣The waiter/server
‣Go-between for the View and the Model
‣Takes orders from the View
‣Brings food from the Model
Model
‣The Chef
‣Makes the food
‣Data modeling
‣Data management
‣Business Logic
Model-View-Controller
(MVC)
Controller
Brings requests from the View to the Model
Brings data from the Model to the View
Model
handles the business logic
View
UI, what the client sees/interacts with
What MVC does for us
‣organization
‣file definition
‣every aspect of our app has a place
‣makes amazing coffee
Just the Basics!
brings more to the table
‣conventions over configurations
‣modularization
‣event management
Conventions over Configurations
Over
Configurations
You map this thing to that other thing and write this annotation if you
need the third thing and if you make a new thing you have to map that
to the first thing and…???
Conventions
Put the right stuff in the right box
and everything works
What this looks like…
Conventions:
“put the right stuff in
the right box & ColdBox
does the work for you”
Beyond
MVC
Modules
program packages that give extra functionality
to your core application. They are:
‣ Independent
‣Interchangeable
‣reusable
What this looks like…
‣Lives in modules folder (convention)
‣Has its own MVC
‣Independent, interchangeable, pluggable
‣Extensibility
Modules can be…
‣Libraries for extra functionality
‣Widgets
‣Anything that gives extends your core application
‣Example: ContentBox uses modules for its functionality
Interceptors
‣Intercept an event with action
‣“When” -> interception point
‣Default interception points
‣Custom interception points
‣Intercept time
‣“when this happens, do this…”
Putting it Back Together
@Francainath

More Related Content

PPTX
A Smooth Transition to HTML5 Using MVVM
PDF
React all the things - Milos Popovic
PPTX
Event Sourcing your Angular and React applications
PPTX
Word press plugin development
PPTX
PPTX
PPTX
ASP.NET MVC From The Ground Up
PPTX
Headless CMS for Digital Agencies - Case Study by Andy Thompson
A Smooth Transition to HTML5 Using MVVM
React all the things - Milos Popovic
Event Sourcing your Angular and React applications
Word press plugin development
ASP.NET MVC From The Ground Up
Headless CMS for Digital Agencies - Case Study by Andy Thompson

What's hot (15)

PDF
ITB2016 Converting Legacy Apps into Modern MVC
PPTX
Building databound JavaScript apps with Knockoutjs
PPTX
Google chrome extensions
PPTX
Useful tools for Freelancers
PDF
ASP.NET MVC 4 Introduction
PPTX
Mvc presentation
PPTX
PPT
rendre AJAX crawlable par les moteurs
PPTX
5 'Real-world' Reasons to Go Headless by Devotion
PPTX
Mvc part 1
PDF
Real-time image sharing
PPT
Christiane Kurz - The new Mobile Challenge: Offline-Enablement for Web Applic...
PDF
Webforms or MVC
PPTX
Lightning Talk: Git VCS
PPTX
Website Development Using a Headless CMS - Sean Lamacraft, Distinction
ITB2016 Converting Legacy Apps into Modern MVC
Building databound JavaScript apps with Knockoutjs
Google chrome extensions
Useful tools for Freelancers
ASP.NET MVC 4 Introduction
Mvc presentation
rendre AJAX crawlable par les moteurs
5 'Real-world' Reasons to Go Headless by Devotion
Mvc part 1
Real-time image sharing
Christiane Kurz - The new Mobile Challenge: Offline-Enablement for Web Applic...
Webforms or MVC
Lightning Talk: Git VCS
Website Development Using a Headless CMS - Sean Lamacraft, Distinction
Ad

Viewers also liked (20)

PPTX
Story Book
PDF
Cf Couchbase 2.0-and-N1-QL
PPTX
Seminar ppt
PDF
Social Media Strategy: Exploring the Basics
PDF
ITB2016 -BDD testing and automation from the trenches
PDF
Conquering ORM with DataBoss
PDF
ITB2016 - ColdBox 4 Modules
PDF
ITB2016 - Integration testing in a modern world
PDF
CBDW2014 - Behavior Driven Development with TestBox
PPT
Customer service lead
PPTX
Michael Jackson
DOCX
Radhika digital textbook
PPTX
DOCX
Asdfghjkl
PPTX
Presentation1 achu 2
PPT
Sitcom quiz!
PPTX
Michael jackson
PDF
CBDW2014 - ColdBox RESTFul Services
PDF
Into The Box 2014 - Keynote
PPTX
Storyboard (day 1 of filming)
Story Book
Cf Couchbase 2.0-and-N1-QL
Seminar ppt
Social Media Strategy: Exploring the Basics
ITB2016 -BDD testing and automation from the trenches
Conquering ORM with DataBoss
ITB2016 - ColdBox 4 Modules
ITB2016 - Integration testing in a modern world
CBDW2014 - Behavior Driven Development with TestBox
Customer service lead
Michael Jackson
Radhika digital textbook
Asdfghjkl
Presentation1 achu 2
Sitcom quiz!
Michael jackson
CBDW2014 - ColdBox RESTFul Services
Into The Box 2014 - Keynote
Storyboard (day 1 of filming)
Ad

Similar to ITB2016 Intro To ColdBox MVC (20)

PDF
Intro to ColdBox MVC at Japan CFUG
PDF
MVC Explained
PPT
Why MVC?
PPTX
Building Large Scale PHP Web Applications with Laravel 4
PDF
Programming ASP NET MVC 4 Developing Real World Web Applications with ASP NET...
PPTX
PDF
jQquerysummit - Large-scale JavaScript Application Architecture
PDF
Asp.Net Mvc Dev Days09
PDF
Programming ASP NET MVC 4 Developing Real World Web Applications with ASP NET...
PDF
Aspnetmvc 1
PDF
Asp 1a-aspnetmvc
PPTX
Model view controller (mvc)
PPTX
MVC 6 Introduction
DOCX
A report on mvc using the information
PDF
ASP.NET Core in Action (2018).pdf
PDF
Large-Scale JavaScript Development
PDF
Itb2018 integrating mvc into legacy
PPTX
API Driven Design
PPT
MVC(Model View Controller),Web,Enterprise,Mobile
PDF
Javascript Web Applications Otx Alex Maccaw
Intro to ColdBox MVC at Japan CFUG
MVC Explained
Why MVC?
Building Large Scale PHP Web Applications with Laravel 4
Programming ASP NET MVC 4 Developing Real World Web Applications with ASP NET...
jQquerysummit - Large-scale JavaScript Application Architecture
Asp.Net Mvc Dev Days09
Programming ASP NET MVC 4 Developing Real World Web Applications with ASP NET...
Aspnetmvc 1
Asp 1a-aspnetmvc
Model view controller (mvc)
MVC 6 Introduction
A report on mvc using the information
ASP.NET Core in Action (2018).pdf
Large-Scale JavaScript Development
Itb2018 integrating mvc into legacy
API Driven Design
MVC(Model View Controller),Web,Enterprise,Mobile
Javascript Web Applications Otx Alex Maccaw

More from Ortus Solutions, Corp (20)

PDF
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
PDF
June Webinar: BoxLang-Dynamic-AWS-Lambda
PDF
BoxLang-Dynamic-AWS-Lambda by Luis Majano.pdf
PDF
What's-New-with-BoxLang-Brad Wood.pptx.pdf
PDF
Getting Started with BoxLang - CFCamp 2025.pdf
PDF
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
PDF
What's New with BoxLang Led by Brad Wood.pdf
PDF
Vector Databases and the BoxLangCFML Developer.pdf
PDF
Using cbSSO in a ColdBox App Led by Jacob Beers.pdf
PDF
Use JSON to Slash Your Database Performance.pdf
PDF
Portable CI wGitLab and Github led by Gavin Pickin.pdf
PDF
Tame the Mesh An intro to cross-platform tracing and troubleshooting.pdf
PDF
Supercharging CommandBox with Let's Encrypt.pdf
PDF
Spice up your site with cool animations using GSAP..pdf
PDF
Passkeys and cbSecurity Led by Eric Peterson.pdf
PDF
Legacy Code Nightmares , Hellscapes, and Lessons Learned.pdf
PDF
Integrating the OpenAI API in Your Coldfusion Apps.pdf
PDF
Hidden Gems in FusionReactor for BoxLang, ACF, and Lucee Users.pdf
PDF
Geting-started with BoxLang Led By Raymon Camden.pdf
PDF
From Zero to CRUD with ORM - Led by Annette Liskey.pdf
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
June Webinar: BoxLang-Dynamic-AWS-Lambda
BoxLang-Dynamic-AWS-Lambda by Luis Majano.pdf
What's-New-with-BoxLang-Brad Wood.pptx.pdf
Getting Started with BoxLang - CFCamp 2025.pdf
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
What's New with BoxLang Led by Brad Wood.pdf
Vector Databases and the BoxLangCFML Developer.pdf
Using cbSSO in a ColdBox App Led by Jacob Beers.pdf
Use JSON to Slash Your Database Performance.pdf
Portable CI wGitLab and Github led by Gavin Pickin.pdf
Tame the Mesh An intro to cross-platform tracing and troubleshooting.pdf
Supercharging CommandBox with Let's Encrypt.pdf
Spice up your site with cool animations using GSAP..pdf
Passkeys and cbSecurity Led by Eric Peterson.pdf
Legacy Code Nightmares , Hellscapes, and Lessons Learned.pdf
Integrating the OpenAI API in Your Coldfusion Apps.pdf
Hidden Gems in FusionReactor for BoxLang, ACF, and Lucee Users.pdf
Geting-started with BoxLang Led By Raymon Camden.pdf
From Zero to CRUD with ORM - Led by Annette Liskey.pdf

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
cuic standard and advanced reporting.pdf
PPT
Teaching material agriculture food technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
Cloud computing and distributed systems.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Spectroscopy.pptx food analysis technology
Approach and Philosophy of On baking technology
Digital-Transformation-Roadmap-for-Companies.pptx
cuic standard and advanced reporting.pdf
Teaching material agriculture food technology
Building Integrated photovoltaic BIPV_UPV.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The Rise and Fall of 3GPP – Time for a Sabbatical?
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
sap open course for s4hana steps from ECC to s4
Cloud computing and distributed systems.
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
MYSQL Presentation for SQL database connectivity
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Machine learning based COVID-19 study performance prediction
Spectroscopy.pptx food analysis technology

ITB2016 Intro To ColdBox MVC