ColdFusion 901
no text exists for this slide
A subject I really enjoy talking about
ColdFusion 9
Please feel free to ask questions whenever
About Me
Programmer
Programmer
ColdFusion / Flex / AS3 / Groovy / Java / HTML / CSS / JS
Have a huge desire to get better
Community Member
Adobe Community Professional
Writer (Blogger / Articles)
Cleveland ColdFusion User Group Co-Manager
I love teaching / inspiring others
Presenter
Personal
Cleveland Sports Fan
Running / Exercise
Poker Player
When talking about presentations talk about tomorrows mobile application session.
Agenda
What this presentation is about
What this presentation is about
ColdFusion 9
My path as a programmer
then() vs. now()
cfCommerce
Enhancement Request Inbox
What we will not cover
All ColdFusion 9 new features
Hibernate / ORM
Object Oriented
Feel free to leave I will not be offended
Most of you probably took a similar path as I did
Yes we are going to look at some basic ColdFusion features but we are going to do it in a fun way
A trip down
no text exists for this slide
My background
- high school (math + science) (Architectural engineering) (problem solving)
- software / hackers / websites (not a designer) (I could never draw)
- imagine that a lot of people took a similar path
- saw a story on Kevin Mitnick
- I knew I needed a path in life
- explain the path I took to where I am
- still donât feel like I am a programmer
How I got my first contract job
- split the application with a friend
ColdFusion MX
- Web Application Construction Kit
- Ben Forta & Nate Weiss
demo
no text exists for this slide
Show some brilliant code I wrote back in the day
- I really want to dive into the bad code / concepts
- I didnât know what I was doing
- code was really un maintainable
What I was not learning
Application Architecture
Application Architecture
CFML Language
Components
Database Driven Applications
Performance
Security
Application Architecture
- frameworks
- application cfm was very long
How to find answers
- blogs
- forums
- video training
- other developers
In the end the job got done and I could take a big deep breath
Finished the task
no text exists for this slide
- In the end I finished the job and thatâs really all that mattered to me
I realized that if this was a path I was going to continue on I needed to get serious
like Mario I hade a new quest ahead of me
ColdFusion 9
no text exists for this slide
ColdFusion 9 Is the greatest thing since sliced bread.
What are the new features ?
How about the new Eula?
CFML Language
Syntax
Syntax
Decisions
Arrays
Collections
cfscript enhancements
Script based cfcs
Its really the little language enhancements that I love the most
Slide 10
no text exists for this slide
no notes exist for this slide
Components
Constructors
Constructors
Getters & Setters
Scope
Serialization
no notes exist for this slide
Slide 12
no text exists for this slide
no notes exist for this slide
Database Driven Applications
Most of our applications are data-centric
Most of our applications are data-centric
Where we started out
The God object
ORM
What is one of the real issues with this âGodâ object
Slide 14
no text exists for this slide
no notes exist for this slide
Performance
Cache
Cache
Aaron West
Rob Brooks Bilson â Caching for Scalability (3:00 PM)
CFC Performance
http://bit.ly/aewAFS
Ehcache
How is this different from what was possible before ColdFusion 9? In ColdFusion 8 you could use the <cfcache> tag to cache full Web pages on the server or client. Server caching (action = serverCache) stored copies of pages on disk while client caching (clientCache) stored pages in the browsers default cache.
Slide 16
no text exists for this slide
We have always had support for complete full page caching and query caching. While this was fine it wouldnât fit every single case.
The problem is sometime we only want to cache the slow part and not the entire page.
What if you want to cache non text data like a query or a collection like an array or structure
The Enhancement Inbox
Application walkthrough
Application walkthrough
cfCommerce sample application
Concepts from today
Enhancements
Export orders
Event Handlers
Media Playback
no notes exist for this slide
Slide 18
no text exists for this slide
no notes exist for this slide
Feature Request 1
From: cfCommerce Project Manager
From: cfCommerce Project Manager
To: Dan Vega
Subject: Export Orders
We really like how easy it is to view orders in our
System but I think it would be nice if users
could export their orders to excel. This would
help them import their orders into other
systems.
no notes exist for this slide
Slide 20
no text exists for this slide
no notes exist for this slide
Feature Request 2
From: cfCommerce Project Manager
From: cfCommerce Project Manager
To: Dan Vega
Subject: Tracking objects in the system
We would really like to track any changes made
to all of objects. In the future we may need to
store history of these objects but for right now
I Just want to know when a product was created
and updated.
This could be very easy in our small eCommerce application
- You could just add 2 fields to a database and update your create / update statements
But imagine
Slide 22
no text exists for this slide
no notes exist for this slide
Feature Request 3
From: cfCommerce Project Manager
From: cfCommerce Project Manager
To: Dan Vega
Subject: Adding a video to the dashboard
I like the chart we have on the admin dashboard
but I would really like to add our help video. I
Know in the past it wasnât the easiest thing to
But I hear it should be pretty easy now.
no notes exist for this slide
Slide 24
no text exists for this slide
no notes exist for this slide
Feature Request 4
From: cfCommerce Project Manager
From: cfCommerce Project Manager
To: Dan Vega
Subject: Amazon S3 Support
With our growing user base I would like you to
look into Amazon S3 support. I think it would
really reduce our costs on this project.
no notes exist for this slide
Slide 26
no text exists for this slide
no notes exist for this slide
Slide 27
Amazon S3 Support
Amazon S3 Support
cfscript enhancements
for-in construct (for arrays) in script
Upload + upload all
More tag support
dbinfo
imap / pop
feed
no notes exist for this slide
Slide 28
Caching updates
Caching updates
IIS 7 Support
Ajax updates
ColdFusion.Grid.getTopToolbar()
ColdFusion.Grid.getBottomToolbar()
ORM
Multiple DSNs
HQL in cfquery tag
Mapped Super Class
Entity New (âUserâ, {first=âDanâ,last=âVegaâ});
no notes exist for this slide
Slide 29
Logging
Logging
http / ftp / web service / feed
portlet
Derby
Automatic logging of scheduled tasks
OEM upgrades
.NET
EHCache 2.0
ExtJS 3.1
MySQL 5.1.1
no notes exist for this slide
Contact Me
Email: danvega@gmail.com
Email: danvega@gmail.com
Blog: http://www.danvega.org/blog/
Twitter: @cfaddict
no notes exist for this slide
Questions
no text exists for this slide
no notes exist for this slide