Building CF Applications with Fusebox Steve Nelson CTO, Zero-G Commerce, Inc. member, Team Allaire Chairman of Fusebox.org.

Slides:



Advertisements
Similar presentations
SharePoint Forms All you ever wanted to know about forms but were afraid to ask.
Advertisements

An Introduction to Working Together
Detecting Bugs Using Assertions Ben Scribner. Defining the Problem  Bugs exist  Unexpected errors happen Hardware failures Loss of data Data may exist.
Error Handling With Fusebox Presentation By Eron Cohen.
Chapter 2: Modularization
By: Brandon Koenig ( Click when done or wait!) The Scientific Method is a basic problem solving technique that Everyone has used before. You usually.
Web Applications Development Using Coldbox Platform Eddie Johnston.
2007 Adobe Systems Incorporated. All Rights Reserved. 1 Glenda Vigoreaux Adobe Certified Instructor roundpeg, Inc. Component Development.
Copyright © 2008 Pearson Addison-Wesley. All rights reserved. Chapter 12A Separate Compilation and Namespaces For classes this time.
DT228/3 Web Development JSP: Directives and Scripting elements.
FIGURE 1-1 A Computer System
Fusebox Framework Florencio Almirol. Overview What is Fusebox? Concepts Request-Response Process Extending Fusebox.
Programming. Software is made by programmers Computers need all kinds of software, from operating systems to applications People learn how to tell the.
Algorithms IV: Top-Down Design
Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium.
Page Layout and Navigation in ColdFusion Jon Brundage CF Developer / Accessibility and Section 508 Consultant MDCFUG April 2003.
By Nathan Faloon Essential Criteria achieved Informational website, which has at least 6 web pages. Home page should display a Hit Counter. Complete.
Prelude to Fusebox The Basics: - Variable scopes: session/client/application/request/attributes/caller Custom Tags URLToken.
Loops in CF Michael Smith President TeraTech, Inc ColdFusion, Database & VB custom development
Loops in CF: To loop or not to loop? Neil Ross
Prelude to Fusebox Prerequisite Understanding: / Variable scopes: session/client/application/request/attributes/caller Custom tags URLToken If you don’t.
Frameworks: Mach II or Fusebox 4? Sean A Corfield Director of Architecture Macromedia, Inc.
1 -Defined Functions 1. Goals of this Chapter 2. General Concept 3. Advantages 4. How it works Programmer.
More on Fusebox at Fusebox Development Methodology : More on Fusebox at Fusebox Development Methodology.
An Introduction to Fusebox 3.0 Fusebox 3.0. An Introduction to Fusebox 3.0 The Fusebox Philosophy There are two ways of constructing a software design:
Services Course Getting Started Participant Guide.
Drupal Features by Lois Delcambre with much assistance from Payal Agrawal and from Yinlin and Potluri and the ensemble team.
Program Design CMSC 201. Motivation We’ve talked a lot about certain ‘good habits’ we’d like you guys to get in while writing code. There are two main.
©2003 The Fusebox Corporation Fusebox MX Hal Helms.
©2003 TeraTech, Inc Fusebox 4 Michael Smith, TeraTech, Inc x110 Copyright TeraTech 2003.
Introduction to ColdFusion Yu Fu 2003 MEC Candidate.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 3 Simple.
A Brief History of Fusebox zNeeded way for others to inherit my applications zCreated architecture that would be understood and maintainable.
CODING PERFORMANCE IMPROVEMENT PROJECT GLOBAL COMPUTERS, INC.
More on Fusebox at Fusebox 3 Development Methodology : Fusebox 3.0 With thanks to David Laing, Hal.
BlackBox Methodology A means of creating efficient and flexible reusable ColdFusion code.
TOPIC : Introduction to Compression Techniques UNIT 5 : BIST and BIST Architectures Module 5.4 Compression Techniques.
Application.cfm tips and Tricks Michael Smith President TeraTech, Inc ColdFusion, database & VB custom development and training.
What does C store? >>A = [1 2 3] >>B = [1 1] >>[C,D]=meshgrid(A,B) c) a) d) b)
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
Team CF Advance Presented at NVCFUG Jan 2014 By Denard Springle.
Fusebox Application Object Model Gabe Roffman, eTesters.
9/16/2000 Nat Papovich – Putting It All Together Putting It All Together: Developing Web Applications Using Fusebox and Frames Presented by Nat Papovich.
FW/1 - Framework One An introduction to the ColdFusion framework created by Sean Corfield. Presented by Ben Ellefson.
Building Fusebox Frameworks Jeff Peters
Learners Support Publications Object Oriented Programming.
Turbo-Charge Your CF Applications with Custom Tags by Leon Chalnick of Advanta Solutions, Inc. July 2000 SCCFUG-OC.
Fusebox Conference 2001 Out with the old in with the new An introduction to Fusebox 3.0 for current Fusebox developers By Erik Voldengen
Recap Saving Plots Summary of Chapter 5 Introduction of Chapter 6.
An Introduction to FB4 An Introduction to Fusebox 4 If written directions alone would suffice, libraries wouldn't need to have the rest of the universities.
Using Derrick Rapley Maryland CFUG January 8, 2002.
Advanced Fusebox: Securing a Fusebox Application By Steve Nelson SecretAgents.com.
Chapter 9 Separate Compilation and Namespaces. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. Slide 2 Overview Separate Compilation (9.1)
Copyright © 2008 Pearson Addison-Wesley. All rights reserved. Chapter 12 Separate Compilation and Namespaces.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 12 Separate Compilation and Namespaces.
The Need for Speed! Steve Nelson. Internet Startup Failure 2000 More Internet startups failed this year than ever before Why did this happen? How can.
Review of HTML and CSS A (very) brief review of some key fundamentals to be aware of in IT-238.
Locking In CFML. Locking in CFML - Why - How - What - When } to lock? Understand Locking.
Be “GUI ready” developing in RPG by Robert Arce from PrismaTech. Be “GUI ready” developing in RPG-ILE Presented by: Robert Arce.
JavaScript 101 Lesson 6: Introduction to Functions.
Fusebox Not Just For Breakfast Anymore! An Introduction to Fusebox Author: Fred T. Sanders, Instant Knowledge Some Content unscrupulously taken from Steve.
For Better Programming
Programming Logic and Design Seventh Edition
Algorithms IV Top-Down Design.
Encapsulation, Data Hiding and Static Data Members
Chapter 5 Conclusion CIS 61.
Design and Programming
Brian Kotek INDUS Corporation
Algorithms IV Top-Down Design.
Jeff Peters Fusedoc Success Jeff Peters
Presentation transcript:

Building CF Applications with Fusebox Steve Nelson CTO, Zero-G Commerce, Inc. member, Team Allaire Chairman of Fusebox.org

A CF Programmer’s Dream World... Imagine if….  you could work in a team of developers and have all the code look like it was written by single person.  you could understand the structure of your co- workers code in 5 minutes, without asking questions  you could concentrate on solving the problem instead of thinking about how to write the application

What is Fusebox?  A Structured application architecture for building ColdFusion applications  Created by the ColdFusion community for the ColdFusion community  The best part…. It’s free

Why use a Structured Architecture?  File based applications get messy, a structured architecture helps to clean this up.  Multiple person development  Instant documentation of your architecture  Solve the problem instead of the Application’s Architecture

Before You Write Any Code  Talk to the client (or boss) about general ideas  Write down these ideas into a loose Specification  Create a tight specification from the loose specification, this means figure out all the sections of the application and all the actions required to do everything the client wants to do  Repeat this process until every action in the application is understood by everyone involved

Create the Directory Structures  Use the Tight Specification to figure out all the sections of the application.  Each section is given it’s own directory, each of these sections are known as “Circuit Applications”  Circuit Application - This is a section of the overall Home application example:

Create the Index.cfm Files  Every directory (Circuit application) has an index.cfm file  Index.cfm controls all the FuseActions of that circuit application  Is basically a single statement with multiple statements  Each CFCASE is a different FuseAction

Create the Fuseactions  A Fuseaction is made up of one or more.cfm files  Determine what types of files (display/action/query) are needed to create each Fuseaction  Create a CFCASE statement for each Fuseaction and CFINCLUDE each necessary file.

File Naming Convention (Fuses)  app_globals.cfm - Global variables, one per Home application  app_locals.cfm - Local variables, one per Circuit application  dsp_filename.cfm - Display files  act_filename.cfm - Action files  qry_filename.cfm - Query files

Create the Necessary Files (Fuses)  All links and forms in the display files should point to one of the index.cfm files in the application, not to the specific dsp or act files  All links and forms must specify which Fuseaction they point to  Use the “attributes” scope instead of form/url scope this allows you to call the index.cfm file as a custom tag (This is for advanced Fusebox techniques)

Putting it all Together  One Home application is made up of many smaller Circuits applications  One Circuit application is made up of a directory of files, it must contain an app_locals.cfm and index.cfm file plus other display/action/query files  One Index.cfm file is made up of one or more Fuseactions  One Fuseaction includes one or more display/action/query files plus any necessary CFML logic

Conclusion: Why use Fusebox  Fusebox is most likely very similar to how you may already build an application, thus it will be easy to learn  It is a well thought out process, and will continue to be improved by the CF community  It’ll save you time, which will save you money  Most importantly it will prevent hair loss.