Presentation is loading. Please wait.

Presentation is loading. Please wait.

By Kris Korsmo EFFICIENT CODING WITH CFBUILDER 2.

Similar presentations


Presentation on theme: "By Kris Korsmo EFFICIENT CODING WITH CFBUILDER 2."— Presentation transcript:

1 by Kris Korsmo EFFICIENT CODING WITH CFBUILDER 2

2  Familiarize you with the IDE on a basic level  Show you a few of the more advanced features  Show you some tricks and hidden gems (thanks Charlie)  Discuss different developer workflows  Demonstrate creating a simple application THE GOALS OF THIS PRESENTATION

3  Live in Seattle area  Began coding w/ BASIC  Washington State University  Using ColdFusion since 2004  Adobe Certified CF8  Seattle CFUG member  Wife and three kids  737 Pilot when not coding ABOUT ME kriskorsmo.com |

4  This presentation is geared toward  Folks with limited experience using an Eclipse-based IDE  Beginner to intermediate-level code writers  People interested in an efficient workflow  People who want to use best practices  I will make no assumptions  If you have questions I’ll do my best to answer as we go, but I may need to speed along at some point  If I don’t know the answer to your question I’ll do my best to find it. I’d rather be honest in not knowing than give you an answer that’s incorrect  There should be time for more questions at the end WHO THIS IS FOR kriskorsmo.com |

5  An Eclipse-based IDE  Eclipse is an open-source IDE  Not only a text editor  IDE = Integrated Development Environment – combines a lot of features all in one to help you write code better, faster and easier (although everyone has different preferences)  Tailored by Adobe specifically for CF  Can be installed as standalone or as plugin WHAT IS COLDFUSION BUILDER 2? kriskorsmo.com |

6  Views show a single aspect of your application – files, data, code snippets, etc. - and can be added to any perspective  Perspectives are groups of related views which together help you work efficiently on one aspect of your application (writing code, debugging, etc.) VIEWS & PERSPECTIVES kriskorsmo.com |

7 PERSPECTIVES kriskorsmo.com | There are many different perspectives – six in this case – but others are available

8 COLDFUSION PERSPECTIVE kriskorsmo.com |

9  Extremely useful if you’re just getting started with CFB  You can easily bookmark help topics by right-clicking and selecting “Add Bookmark”  Handy HTML, JavaScript and CSS references  This is where the CF10 documentation lives HELP VIEW kriskorsmo.com |

10  Shows file structure  Arrows are Forward and Back, not Up/Down in file structure  Right click and choose “Go Into” to navigate file structure  Click to navigate up file structure  Click to collapse file structure  Click to link a file to the editor – keeps the file you’re working on in the editor displayed in navigation view.  Click to focus on a task – this is a Mylyn (Tasktop) feature NAVIGATOR VIEW kriskorsmo.com |

11  Click to open RDS configuration dialog  Click to refresh the selected folder  Click to open RDS Query Viewer  Click to go to RDS Data Home  Click to go into selected level  Click to go up a level RDS DATA VIEW kriskorsmo.com | RDS makes it easy to visualize your data and to add it to the code in your editor.

12 RDS FILE VIEW  Click to open RDS configuration dialog  Click to refresh the selected folder  Click to create a new file  Click to delete a file  Click to create a new folder  Click to delete a folder  Click to go to RDS File View Home  Click to go into selected level  Click to go up a level kriskorsmo.com | Allows you to see the files on your remote server

13 SNIPPETS VIEW kriskorsmo.com |  Click to refresh snippets view  Click to insert the selected snippet  Click to create a new snippet  Click to edit the selected snippet  Click to delete the selected snippet  Click to create a new package  Click to delete the selected package  You can use system variables to automatically populate values such as the current date and filename Allows you to store frequently-used bits of code in an organized fashion.

14  $${DATE}  $${MONTH}  $${TIME}  $${DATETIME}  $${CURRENTFILE} – Current file name (just the file)  $${CURRENTFOLDER} – Current folder (The path to the containing folder)  $${CURRENTPATH} – Current path (full file name)  $${CURRENTPRJPATH} – Just the folder  $${USERNAME} – Current user  $${MONTHNUMBER} – Month as a number  $${DAYOFMONTH} – Day of month as a number  $${DAYOFWEEKNUMBER} – Day of week (the week starts on Sunday)  $${DATETIME24} – DateTime24 – a 24 hour clock version of datetime.  $${YEAR} – Current year.  $${YEAR2DIGIT} – Current two digit year SNIPPETS SYSTEM VARIABLES kriskorsmo.com |

15 TASKS VIEW kriskorsmo.com |  Shows the description of the task, the resource, path & location  Double-clicking the task opens the resource in the editor, and highlights the line(s) of code that need to be addressed

16 OUTLINE VIEW kriskorsmo.com |  Makes it very easy to find code  Most useful when working on CFCs because it makes it simple to locate functions by name  Clicking a section of code (such as the function shown here) will move the cursor to that function in the editor  You can expand and collapse individual items or use the buttons at the top to expand or collapse all  Clicking the alphabetical sort is very useful because it groups functions by name, essentially eliminating comments  Click to hide private functions

17  Displays the contents of your log files without having to log into the ColdFusion Administrator TAIL VIEW kriskorsmo.com |

18 SERVICES VIEW kriskorsmo.com |  Shows functions, arguments, data type, etc. and allows you to right click to insert cfinvoke or createObject();

19 SERVER VIEW kriskorsmo.com | NEW Add, stop, start, restart or delete a server Launch the Server Monitor Launch the ColdFusion Administrator STARTRESTARTDELETE INOP

20 GIT REPOSITORIES VIEW kriskorsmo.com | egit / Doesn’t ship with CFBuilder Not comprehensive Will do what most of us need Not supported by Adobe Collapse All Link to Editor Add Local Repository Clone Repo and Add to View Create New Repository Refresh View Link to Selection Hierarchical Branch Layout Display Latest Branch Commit Branch Merge Basic Functionality:

21 GIT HISTORY kriskorsmo.com |

22  Can be done by navigating to Window > Preferences CUSTOMIZING CFBUILDER kriskorsmo.com |

23  Type “formatter” in the filter text CODE FORMATTING kriskorsmo.com |

24  You can create a custom CFML dictionary (XML file) and make it available to use for Code Assist and Tag wizard within ColdFusion Builder.  Within the ColdFusion Builder installation, navigate to the following location:  \plugins\com.adobe.ide.coldfusion.dictionary_XXX\dictionary  Create a folder called "Custom" within the Dictionary directory.  Create an XML file to describe the custom tags and functions.  For example, in the XML file, you describe each tag within elements, and enclose all the tag elements within elements as follows: CODE LIBRARIES kriskorsmo.com |

25   Manually edit colors and fonts  Downloadable themes  Create your own theme  Plugin is available  Requires a lot of work & doesn’t look great  Only changes the editor, not the entire IDE  Adobe Source Code Pro font  New font designed specifically for coding   Differentiates similar characters  O vs 0  l vs 1 THEMING & FONTS kriskorsmo.com |

26 FunctionShortcut Ctrl + t, d Ctrl + t, m Ctrl + t, s Wrap in hash marks (##) Ctrl + t, h Ctrl + t, o (both try and catch) Ctrl + t, t Move current line up, down Alt + ↑, Alt + ↓ Find matching tag* Ctrl + Alt + m Select enclosing tags* Ctrl + Alt + b Move to next/previous attribute* Ctrl + ], Ctrl + [ Format Code Ctrl + Shift + f See all shortcuts Ctrl + Shift + l USEFUL KEYBOARD SHORTCUTS * Courtesy of Charlie Arehart’s “Hidden Gems in ColdFusion Builder 2” – carehart.org kriskorsmo.com |

27  CFC Generator  CF Wheels  Apptacular  Model Glue  Mach II  CFLib  Build your own EXTENSIONS kriskorsmo.com |

28  E-Git   GitHub Mylyn Connector   Maven   Cloud Bees Jenkins   Android Developer Tools   Eclipse Marketplace within the IDE  Help > Eclipse Marketplace PLUGINS kriskorsmo.com |

29 CFBuilderDreamweaverSublimeIntelliJ Text Editor Good GreatGood Code Completion GreatGoodGreatGood Debugging Built-inIn-browser Database Info Yes No Version Control Via Plugin Built-in Console YesNoneYes Extensible Yes Theming / Fonts FairPoorGreatFair Documentation Good FairGreat CFBUILDER VS. OTHER EDITORS kriskorsmo.com |

30 DEVELOPER WORKFLOW Typical Development Process Best Practices Development Process kriskorsmo.com | Write CodeTest Locally FTP to Production Server Write CodeCommit FrequentlyPush to Repository Checks for Updates

31  We’ll start with only a database  Generate an application using Apptacular  Use code snippets to add grid functionality  Commit and push to repository  Run unit tests DEMO APPLICATION kriskorsmo.com |

32 QUESTIONS kriskorsmo.com | All CF.Objective(ANZ) attendees will receive a 20% discount on web hosting with Ayera Technologies. Use the Discount code CFOANZ2012 or mention my name in the referral section.


Download ppt "By Kris Korsmo EFFICIENT CODING WITH CFBUILDER 2."

Similar presentations


Ads by Google