You are on page 1of 7

Adobe ColdFusion Builder2

A professional Eclipse-based IDE to rapidly build, test, and deploy ColdFusion applications
Download your free trial today:
www.adobe.com/go/trycoldfusionbuilder

brought to you by...

#143
Get More Refcardz! Visit refcardz.com
CONTENTS INCLUDE:
n n

About ColdFusion Builder 2 Installing Starting a New Project Connecting to Servers Views Search and more...

ColdFusion Builder 2:
Faster Coding, Less Errors
By Terry Ryan

ABOUT COLDFUSION BUILDER 2

ColdFusion Builder 2 is the next version of Adobes Eclipsebased IDE for ColdFusion. Version 2 comes with both new features and enhancements to the original. Most of the new features focus on productivity and customizability.

New Features and Enhancements


Code formatting Navigation keyboard shortcuts Task editing ColdFusion search interface Quick fix

New features in ColdFusion Builder 2 include:

Enhanced features include:


Code folding Code assist Customizability Extensions Basic performance

INSTALLING

ColdFusion Builder 2: Faster Coding, Less Errors

ColdFusion Builder 2 is an Eclipse plugin. Like the previous version of Eclipse, it can be installed in one of two methods: standalone and plugin. Which one you chose will depend on if you are already using Eclipse and if it makes sense for you to include ColdFusion Builder 2 in your workflow.

Opening up a new installed version of ColdFusion Builder 2 should show you something similar to what is shown above. To create a new project:
1. Create a folder in your ColdFusions webroot named SampleProject. 2. Go to the File Menu > New > ColdFusion Project. 3. Give your project a name: SampleProject. 4. Uncheck the Use Default Location Checkbox. 5. Hit the Browse button and navigate to your ColdFusion webroot. 6. Create a new folder named SampleProject.

Standalone

Standalone creates a packaged version of ColdFusion Builder 2, which includes Eclipse. It will be labeled ColdFusion Builder 2 and has icons and splash screens that reflect this. However, most of these differences are cosmetic only. Its still Eclipse, and this version of it is fully capable, so you can use other Eclipse plugins in this install.

Plugin

The plugin version requires you to have Eclipse 3.6 or higher already set up on your machine and prefer to use it. This version installs itself as a plugin into that copy. All of your screens will still say Eclipse, and ColdFusion will merely be another perspective. ColdFusion Builder 2 can work with any version of Eclipse you have pulled down from eclipse.org or a packaged Eclipse install like Flash Builder.
STARTING A NEW PROJECT

Adobe ColdFusion Builder2

The basic collection of code in ColdFusion Builder 2 is a project. Many developers set up one ColdFusion Builder 2 project per ColdFusion application. However, a one-to-one match is not required. Some people make the root of their project the root of their web server and have all of the applications under one giant project. This Refcard will show how to do a one app to one project match.
DZone, Inc.
|

Quickly and easily build Adobe ColdFusion applications with a robust professional IDE
Download your free trial today:
www.adobe.com/go/trycoldfusionbuilder

www.dzone.com

ColdFusion Builder 2: Faster Coding, Less Errors

7. Make sure it is selected and click Choose. 8. Click Finish.

Server Home: On OSX : /Applications/ColdFusion9 On Windows: C:\ColdFusion9 Document Root: On OSX : /Applications/ColdFusion9/wwroot On Windows: C:\ColdFusion9\wwwroot 5. Click the Finish Button.

To start experimenting with ColdFusion Builder 2, we will need a ColdFusion file, called a template. To create a new ColdFusion template:
1. Go to the File Menu > New > ColdFusion Page. 2. If Location is blank, click the Browse button. 3. Select Sample Project. 4. Click Ok. 5. Set Name to index.cfm.

ColdFusion Builder 2 now knows about your server. We just need to tell SampleProject to use that server. To configure your project to use the server:
1. In the left hand Navigator window Right Click SampleProject. 2. Choose Properties. 3. Select ColdFusion Server Settings. 4. Select Localhost from the list.

We could also use a ColdFusion Component to show some things off. To create a new ColdFusion Component:
1. Go to the File Menu > New > ColdFusion Component. 2. If Location is blank, click Browse. 3. Select Sample Project. 4. Click Ok. 5. Set the Component Name to utility. 6. Check the box labeled Generate Script Style Code. 7. Click Finish. 8. Add the function listed below to utility.cfc between the two curly brackets:
public string function getToday(){ return dateformat(now()); }

To see if this is working we need to preview index.cfm Preview webpage:


1. Open index.cfm. 2. Type <cfoutput>Hello World #Now()#</cfoutput> in the editor window. 3. Choose File > Save. 4. Locate the tab at the bottom of the editor that says Source. Next to this, you should see tabs labeled Safari, IE, Firefox (depending on what you have installed). Choose the browser. Hello World should appear in bold.

VIEWS

You now have files to test. To get the full use out of ColdFusion Builder 2 we need to configure it to communicate directly with our ColdFusion server.
CONNECTING TO SERVERS

Like other Eclipse, extensions the work areas in ColdFusion Builder 2 work are divided into regions called views. Each view has a specific area of concern or purpose. All of these views make up a perspective, which is a collection of views with a singular broader purpose.

Navigator File

To get the most out of ColdFusion Builder 2, the IDE needs to be in communication with your ColdFusion Servers. This allows the IDE to get at information in your environment that it can then use to create Code Insight, which are coding hints that can save you keystrokes. The IDE looks at information like your datasources, mapped CFCs, and existing variables to use in Code Insight. Connecting to your server gives you another advantage - you can control them right in the IDE. With this linkage, you can start/ stop/restart your development server right through ColdFusion Builder 2. You can also administer and read log files. Its recommended that you do your development against a locally installed version of ColdFusion on the same workstation as ColdFusion Builder 2. Were going to assume you have a default install of ColdFusion running the ColdFusion Web Server. If you are using your own web server like Apache or IIS, your settings may vary. To configure a local server:
1. Find the Servers tab in the bottom of the IDE window. 2. In the top of that click the New Server icon (a server tower with a plus sign over it). 3. Set the following values: Name: localhost Host Name: localhost Select Is Local from the radio box. WebServer Port: 8500 Skip down to Other Setting. Put in your RDS username and password. 4. Click the Next button to move on and set the next set of values: DZone, Inc.
|

The navigator is a basic view that comes with Eclipse. It allows you to see and organize your projects and files. The File view allows you to navigate the file system of your workstation independent of any projects you may have set up. This is useful if you need to quickly open a file from a project before you started using ColdFusion Builder 2 and projects. The file view can also is connect to FTP/SFTP servers. This means that you can review remote files and edit code on them.

Servers

We used the server view previously to add a server. However, it can do more. Through this interface you can do the following:
See current status Start/Stop/Restart Server Launch the Administrator Launch the Server Monitor

www.dzone.com

ColdFusion Builder 2: Faster Coding, Less Errors

Console

RDS Query Viewer


This view is a interactive query window that allows you to test SQL SELECT statements against your datasources. Note that it only allows SELECT, you can not use it to alter data in the datasource.

When you start your ColdFusion server via the Servers view, the console output for the server is printed here. This can be very useful for seeing errors occur in real time. Also content that is written to the main application log for your server will show up here. This means you can use CFLog to make content appear in the console. CFDump and ORM operations can also post content here.

RDS Fileview
This allows you to browse the file system on your ColdFusion server. This is obviously much more useful for remote servers than for your local system.

Tail View

Tail View allows you to see the contents of a file updated in real time. This is very useful for targeting the error log of your ColdFusion server. However, its important to note that you are not limited to ColdFusion logs. Any text file on your system can be see this way, like your webserver logs, or mail logs.

Snippets

Snippets allow you to create brief bits of reusable code, organize them, and pull them. You can even create shortcuts that you can use to pull snippets into your source code using shortcut keys. To Create a Snippet:
1. Go to the Snippet View. 2. Click the Plus icon. 3. Set the following values: Name: Quick Date Trigger Text: qd Start Block: <cfoutput>#DateFormat(Now())#</cfoutput> 4. Click Ok.

Extensions

This view allows you to install, review information about, refresh, and delete ColdFusion Builder 2 Extensions. These will be talked about separately.

Outline

Outline presents organized version of your highlighting major structures in your code. You can use the outline to click through to those structures in your code. It is configurable, sortable and filterable, so you can choose what shows up in the outline. A great use of this is when you inherit a project where the functions in CFCs arent alphabetized. You can easily go to the Outline view, filter for functions, and then sort alphabetically.

You should now have a snippet named Quick Date in your Snippet View.

RDS Views

RDS stands for Remote Development Services in the ColdFusion world. It allows developers to access key pieces of information about a remote server. It has be set up as part of your ColdFusion server install. Be aware that it is perfectly reasonable to have installed on your local install of ColdFusion, but it is discouraged on public facing or shared hosting machines due to the large amount of information it makes available.

RDS Dataview
RDS Data view allows you to see and interact with datasources that youve setup on your ColdFusion server. It allows you to see tables, views, columns, and column definitions. Using context menus from this view you can activate the RDS Query Viewer.

To use a Snippet
1. Open index.cfm. 2. Double Click Quick Date in the Snippets View. Date code should appear.

However we can do that even faster. Delete that quick date in index.cfm. To use Trigger text:
1. In index.cfm type qd. 2. Now hit CTRL/CMD + J. The date code should appear.

Tasks

The tasks view collects all of your tasks that youve marked in comments like TODO: and allows you to quickly see, prioritize, and navigate to the code they refer to.

Extension Specific Views

ColdFusion Builder Extensions are added pieces of functionality

DZone, Inc.

www.dzone.com

ColdFusion Builder 2: Faster Coding, Less Errors

written in ColdFusion code and XML instead of Java as are most Eclipse extensions. These extensions have the ability to create their own views.
SEARCH

One of the most significant updates to ColdFusion Builder 2 is the new search interface. Previously, the search interface defaulted to the default Eclipse search tool. Targeted to Java developers, the Eclipse search did not fit ColdFusion developers well. For version 2, ColdFusion Builder has a customized search tool that allows for searches against common ColdFusion code concepts. These include Individual projects, open files, FTP locations, etc.

Data Type Specific Assist


Another way code Assist can help you save time is presenting a constrained list of options based on the data type that is expected by code you are calling. To see Data Type Specific Assistin action:
1. Open and delete any code in index.cfm. 2. Create a struct. 3. Create an array.

WORKING WITH CODE

4. Create a query. 5. Type <cfloop query=. You will only be prompted with query for option as shown below.

The editor was a major focus of attention this go around with ColdFusion Builder 2. There was an eye towards making developers do more with less typing and removing the need to lookup language references.

Code Assist

Code Assist in ColdFusion Builder 2 refers to features that provide intelligence around the language and syntax of CFML and CFScript as implemented by ColdFusion.

Required Attributes
ColdFusion Builder 2 can prompt you when you are using a CFML tag with all of the attributes. Additionally, it separates attributes into two groups: required and optional. Finally, when you are chose an attribute, ColdFusion Builder 2 will write out all of the required attributes for you. To see Required Attribute Code Assist in action:
1. Open and delete any code in index.cfm. 2. Type <cfmail. 3. Hit Space and wait. A drop-down list of attributes will appear. A list will appear divided between required and optional as shown in the following figure. 4. Hit Enter. All required fields will be dropped into code as shown in the following figure.

Function Specific Assist


ColdFusion has a very large set of built-in functions. Remembering function, attribute, and attribute order for every function is daunting. Function specific assist can help. To see Function Specific Assist Code Assist in action:

DZone, Inc.

www.dzone.com

ColdFusion Builder 2: Faster Coding, Less Errors

1. Open and delete any code in index.cfm. 2. Type <cfset test = date. 3. Hit CTRL/CMD, Shift and Space. 4. From list of options, choose dateAdd. The dateAdd function should be added to code as shown below.

All of these keyboard shortcuts are customizable. In addition to those provided, ColdFusion Builder 2 allows for the creation of your own keyboard shortcuts.

Jump to Next/Previous Attribute


This shortcut will navigate to the next or previous attribute in a given CFML tag.

Go to Next/Previous Member
This will go to the next member of a related group of code constructs. You can navigate between functions in a CFC or cases within a switch, try/catch statements, and if/elses. This works in CFML or CFScript.

Code Insight

Where code assist is about knowing what the language is capable of, Code Insight is about knowing what the code you are writing is doing. This will allow you to make references to scopes, variables and components that you have written. You can also get drop-down lists of variables and methods in those structures. To see Code Insight in action:
1. Open and delete any code in index.cfm. 2. Type <cfset test = New. 3. Hit Space and wait. A drop down list of components should appear. 4. Type CFIDE.adminapi.d -. The drop down list should have less options. 5. Choose CFIDE.adminapi.datasource and Hit Enter. You should have <cfset test = New SampleProject.utility(). Close it up with >. 6. Type <cfset test. and wait. A drop down list with methods for the AdminAPI should appear. 7. Choose getDatasources and Hit Enter.

Jump to Matching Tag


This will navigate to the open or close of a statement. This works in either CFML or CFScript.

Select Tag Block


This will highlight the unit of code your cursor is in. Pressing multiple times will climb the hierarchy of your page. For example, if you are in a switch/case statement with multiple lines, pressing once will select the line you are own. Pressing again will select the entire case you are in. Again will select the entire switch block.

Code Formatting

ColdFusion Builder 2 includes a Code Formatting tool that allows you to take messy, inconsistent CFML and CFScript code and render it perfectly formatted. To see Code Formatting in Action:
1. Find some poorly formatted code in your editor 2. Highlight the code. Right-click and select Format. You can configure options for formatting including whitespace, capitalization, line length, and tabbing settings as shown below.

Quick Fix

Quick fix is a productivity tool that helps you create code stubs from your existing code. Basically, if you make a call to an object or function that does not exist, ColdFusion Builder 2 can prompt you to automatically create a function stub for it. To see Quick Fix in action:
1. Open and delete any code in index.cfm. 2. Create a <cfscript> block. 3. In the cfscript block, type stringToFormat = ; 4. On the next line type formatString(stringToFormat);. A yellow squiggly line should appear under formatString. 5. Move your cursor back to yellow squiggly and hit CTRL/CMD + 1. 6. A prompt will ask you: Create function formatString as seen below. Hit Enter. Function will be created.

If you are not satisfied with the code as is formatted, you can configure options for formatting. You have the ability to configure whitespace, capitalization, line length and tabbing settings among others as seen below.

Youll notice that Quick Fix didnt just make the function for you, it added your arguments as well. Quick fix also works on CFCs , and functions in those CFCs. Quick fix will work in either CFML or CFScript.

EXTENSIONS

Keyboard Shortcuts

Keeping with the theme of developer productivity, ColdFusion Builder 2 has added a few keyboard shortcuts that can speed up navigating around your code by reducing the amount of mouse work you have to do.
DZone, Inc.
|

ColdFusion Extensions allow you to extend ColdFusion Builder 2 features and functionality with ColdFusion. Using some XML to wire ColdFusion Builder 2 views to backend ColdFusion code, you can make the IDE do anything ColdFusion can do.

Installing Extensions

Extensions are packaged as zip files. You manage the install of them through the Extensions view.
www.dzone.com

ColdFusion Builder 2: Faster Coding, Less Errors

To Install an Extension:
1. Click the tab on the Extensions View to see all currently installed extensions. 2. You may have some already installed. If you currently have one named Apptacular installed. If you do, highlight it and click the red X icon in the Extensions toolbar to delete. Choose Completely uninstall. 3. Click the Plus Icon to add an extension. 4. Navigate to where you installed ColdFusion Builder. /Applications/Adobe ColdFusion Builder 2 on OSX C:\Program Files\ Adobe\Adobe ColdFusion Builder 2 on Windows 5. Drill into the subfolder extensions. 6. Click apptacular.zip and click Open. The Extension wizard will open. 7. Click Next. 8. In Select Server choose localhost. Click Finish. 9. When you are notified of success, click Ok.

written language to another, using the Google Translation API. In short they can do anything ColdFusion can do. Apptacular is a scaffolding code generator. To use Apptacular:
1. Create an empty project named cfartgallery. 2. Right-click project in project view. Choose Apptacular > Create Application. Apptacular will open up it its own view. 3. Pick cfartgallery from the drop down list of datasources. 4. Click Generate Application. The application should give a Success message. 5. Refresh the cfartgallery project.

All of these files are a scaffolded admin application for the CFArtgallery. Its put together with ORM CFCs, custom tags, and a lightweight application framework.

Using Extensions

Finding Extensions

ColdFusion Builder extensions can be used in a variety of ways. They can generate code. They can analyze code. Theres even one that will translate content in your editor window from one

The largest concentration of extensions current resides at RIAForge.com. By April 2011, there were over 50 Extensions for ColdFusion Builder 1 and 2. Its expected that many of the major frameworks will release extensions to go along with their tools.

ABOUT THE AUTHOR

RECOMMENDED BOOK
This book is a fast-paced tutorial to developing ColdFusion applications, with an emphasis on real-world skills. Packed with examples and careful explanations, the book leads you through all the topics relevant to todays ColdFusion developer. This book is for web developers working with ColdFusion 9. If your goal is to get a good grounding in the basics of the language as quickly as possible and put a site together quickly, this book is ideal for you. This book will also help you if you want to learn more about professional programming of ColdFusion. No prior knowledge of ColdFusion is expected, but basic knowledge of general web and software development skills is assumed.

Terry Ryan is currently an Adobe Platform Evangelist for


ColdFusion. His job is to drum up support and excitement among developers for Adobe ColdFusion. He has been working with it for over 10 years. Hes presented at various Adobe ColdFusion events including cf.Objective, webDU, and Adobe Max. Prior to joining Adobe, Terry worked for the Wharton School of Business at the University of Pennsylvania in various roles around ColdFusion from Application Developer to System Administrator.

Terrence Ryan | Adobe Platform Evangelist | http://terrenceryan.com

#82
Get More Refcardz! Visit refcardz.com
CONTENTS INCLUDE:

by... Data Tier Technologies t to you brough Platform Management and more...

About Cloud Computing Usage Scenarios Underlying Concepts Cost

Aldon
Chan ge. Colla borate. Comply.

#6 Cloud 4Computing
By Daniel Rubio
also minimizes the need to make design changes to support CON TEN TS one time events. INC

Getting Started with

Browse our collection of over 100 Free Cheat Sheets


Upcoming Refcardz
Core HTML
By An dy Ha rris

Ge t Mo re Re fca

ref ca

E: INC LUD gration NTS ous Inte Change CO NTE Continu at Every ns About Software i-patter Build and Ant Patterns Control ment Version e... Manage s and mor Build tice Prac Build

Cloud Computing

active Repo are within units This Refcard will introduce to you to clouddcomputing, with an softw riente loping ine task-o e Deve Mainl es you emphasis oncodelines providers, so by Commit better understand these softwar chang Level can e code ding Task what it is a cloud computingaplatform can offer your web trol ut line Policy nize sourc es as of buil NTINU Orga Code e witho it chang cess ion con e name sourc T CO applications. and subm it the pro jects vers are from with uniqu ABOU softw (CI) is um the build evel Comm build a pro minim Label Task-L ies to gration ed to activit blem the bare ion ate all cies to t ous Inte committ USAGE SCENARIOS to a pro Autom congurat nden ymen Build depe al tion deplo t Continu ry change ive manu Label d tool nmen the same stalle , a solu , ineffect ) Build eve t, use target enviro ated s (i.e. ce pre-in blem with ymen (i.e. Redu Autom ory. d deploEAR) each lar pro pattern tterns Pay only what you consume in tagge or cies reposit particu tions that e ed via each t nden WAR anti-pa For es lain al Depe ge (e.g. and x the are solu t duc Web application deployment untillibrari yearsenvironmen similar packa Minim be exp nden a few target ago was text) to ns to pro all rity all depe used CI can ticular con le that alize y i-patter they tend es, but can toInteg late Centr Binar most phone services: plans with alloted resources, with an ts etimes , temp s. Ant nt nmen a par ctic in geme t enviro e a single based on hes som incurred cost whether such resources were consumedto thenot. or proces in the end bad pra enting Creat cy Mana nt targe es rties are rily nden implem approac ed with the cial, but, chang prope Depe into differe itting er necessa pared to e te builds e comm late Veri remo associat to be ben befor com are not Cloud computing asRun known etoday has changed this. etc. its Temp n Build ually, They Privat contin lts whe appear effects. rm a The various resources consumed by webperiodically, applications (e.g.nt team Perfo opme ed resu tion d Builds sitory Build to devel Repo Stage adverse unintend Integra bandwidth, memory, CPU) areIntegration on from CI server basis tallied a per-unit e ous e Build rm an ack produc Privat Continu Refcard feedb on (starting from zero) by Perfomajor cloud computing platforms. all tern. ated occur term based autom e, this as as they the pat builds Build gration Send of the soon cycl such ration ion with ors as Integ entat ous Inte tional use and test concepts docum oper Continu conven build include the rate devel to the Gene CI to While efers ion of the not s on expand

Vis it

Ge t

Mo re

ww w.dzone.com

INTEG OUS

RATION

space n e Work riptio itory a Desc These companies have Privat deployed webmanage applications are in long trol repos to n-con lop softw ing and Deve a versio that adapt and scale to large user bases, making them rn les to ize merg Patte it all to minim space Comm many aspects related tomultiple computing. s cloud e Work knowledgeable in a mainline Privat that utilize lop on Deve code lines a system sitory of work

to isolat

rdz !

on: grati s s Inte -Patternvall nuou d Anti Paul M. Du By ContiPatterns an


ABOUT CLOUD COMPUTING

dz. com

ref car

Web applications have always been deployed on servers connected to what is now deemed the cloud. However, the demands and technology used on such servers has changed substantially in recent years, especially with the entrance of service providers like Amazon, Google and es Microsoft. e chang

Vis it

ation Having the capability to support one time events, cloud Useful Open computing platforms also facilitate the gradual growth curves Page Source Stru Tools faced by web applications. cture Key

HTML Automated growth & scalable technologies vs XHT


HTML

Basics

LUD E:

Valid

ML

ents and Large scale growth scenarios involving specialized equipment more... (e.g. load balancers and clusters) are all but abstracted away by relying on a cloud computing platforms technology.

Structur

Elem al Elem ents

ICS In addition, several cloud computing platforms support data HTM tier technologies that L and the precedent set by Relational exceed XHT HTML Database Systems (RDBMS): Map Reduce, web service APIs, is used ML are the prog etc. Some platforms rams writ large scale RDBMS deployments. support as the grap foundation The src of all hical and Java ten attribute and the also recein JavaScri user interfac web develop desc as the e in clien ment. ive data pt. Server-s the ima alt attribute ribes whe output likew ge is describe re the ima mechan from CLOUD COMPUTING PLATFORMS AND ide languag t-side ise unavaila ge le ism. The web pag s alte Nested es like was onc use HTML ble. rnate can be emergin es and use UNDERLYING CONCEPTS and XHT PHP text that e tags found, Tags standard a very loos g Ajax HTML ML as is disp can tech ely-de thei ization, layed cannot be (and freq need ned lang r visual eng nologies if but as for overlap uen it has ine. b></ Amazon EC2: ther stanstandard software and uage with whe Industry dard , so <a>< tly are) nest become virtualization HTM a> is s has ne. b></ ed insid bec heavily based on very little L more Amazons cloud computing ose the curr you cho platform isome a></ imp e b> is mor ent stan to writ not lega each othe that will industry standard software and virtualization technology. ortant, the e HTM e apparen dards HTM r. Tags l, but t. Reg L or XHT will help L VS <a>< and XHT simplify all XHTM b></ ML, und ardless you prov you ML physical r othe L erstand of Virtualization allows aare actu piece of hardware idebe to HTML much a solid of the ing has ally simp r web cod foundati utilized by multiple operating systems. This allows resources function job adm been arou ing. commo on nd for ality has ler than they Fortuna irably, (e.g. bandwidth,n elem CPU) to be mov memory, allocated exclusively to expecte tely som that job used Every d. Earl to be, HTML ent instances. ed to CSS has exp e time. Whi pag Brow individual operating system s because le it . ser man y HTML anded common e (HTML had very far mor has done or XHT ufac web dev its extensio .) All are e than ML shar limit elopers turers add As a user of Amazons EC2 cloud computing platform, you are result anybody es cert ed man ed layout n. HTM essentia came is proc lly plai supp L les assigned essor an operating system in the same wayain on all hosting as elements ort. The late a lack of stan up with clev y competi n text should ng stan st web in dar er wor not be dar kar standar cr

HTM

L BAS

Continuous Delivery CSS3 NoSQL Android Application Development


DZone, Inc. 140 Preston Executive Dr. Suite 100 Cary, NC 27513 888.678.0399 919.678.0300 $7.95 Refcardz Feedback Welcome refcardz@dzone.com Sponsorship Opportunities sales@dzone.com

Re fca

rd z!

DZone communities deliver over 6 million pages each month to more than 3.3 million software developers, architects and decision makers. DZone offers something for everyone, including news, tutorials, cheat sheets, blogs, feature articles, source code and more. DZone is a developers dream, says PC Magazine.
Copyright 2011 DZone, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher.

e.com

Version 1.0

You might also like