Upload
jamil-spain
View
1.011
Download
0
Tags:
Embed Size (px)
DESCRIPTION
We all know documentation for software projects is critical for a number of reasons. More specifically, how can you properly document your Titanium Mobile Applications? Enter the npm module titanium-jsduck to save the day. This session will involve integration of this module for your titanium mobile applications and show how to properly document your code to generate documentation.
Citation preview
TiConf NYC 2014: Documenting Your Titanium
Applications JAMIL HASSAN SPAIN, @JAMILSPAIN
Little Bit About me
! NC based Software Engineer, big linux fan.
! Started with PHP in early days 3.x or PHP F/I
! Started with AppC in 2011 as Trainer for Certification Programs
! Currently Architect with Solutions Engineering Group
Little History on This Topic
! Built my first large scale project in 03/04. Online Admissions Web Application for school. Really became a stickler for this process.
! PHP 4/5, LAMP stack, Fedora Linux as base. ! Ran into 2 different schools of thought
! Code should be written to be readable ! Document regardless to explain code logic
! My philosophy merges the two, PhpDocumentor was the cure
Documentation for Titanium Mobile Applications
! No standards existed for documentation, been a find your own flavor.
! #appcelerator uses it for our own SDK documentation. ! About a year ago internally, after discussion with Rick Blalock mentioned he had some success using JSDuck. After playing around with it, we agreed this could be a good standard to recommend
! I began the R&D on the best way to implement this as easy to use for general public use.
A NPM was born
! Roughly about 6 months ago.
! First initial versions are out, still young in usage. Glad to be here to introduce it officially to the community.
One requirement is JS Duck
! JS Doc Generator supported by Sencha labs ! I have always been a fan from Ext.JS days ! Required for this npm package to work.
! gem install jsduck
Features for Titanium-‐JSDuck
! Installable through npm install ! CLI options to automate the setup in your mobile applications
! Injects itself on every compile to simulator/device (alloy.jmk post:compile )
! Options to generate documentation without compiling
How to Install
! From command, do a global install for the titanium-‐jsduck npm module, Version 1.2 is the latest
! URL to package is: https://www.npmjs.org/package/titanium-‐jsduck
Verify Installation
! Run titanium-‐jsduck from command line, will return this help screen
Activating your Mobile Project
! Open terminal to the root of your titanium project ! Type the following command:
You’re Done
! You’re all set from there!!! Start documenting. ! A few things will change after install
! If alloy.jmk does not exist, we create it ! If does, we back it up (alloy.jmk.txt) to preserve any existing config
! Docs folder will appear ( source for JS Duck to use )
Document Your Code to Integrate
! Please view Sencha Labs Documentation for Convention @ https://github.com/senchalabs/jsduck/wiki
! Jsduck will scan your /app JS files for doc syntax ! Controller files ! Lib folder contents
How do I View the Documentation
! 3 options exist via CLI
! Detects to see if Browsers are installed in Applications folder
Typical Dev Workflow
! Create Mobile Project & Install NPM ! titanium-‐jsduck install
! Code & Document your project ! docs self generate on compilation, no need to check into source control
! Open Browser to View Documentation as you code ! titanium-‐jsduck open ( first time ) ! titanium-‐jsduck run ( subsequent + refresh browser )
Hello World Demo TITANIUM-‐JSDUCK NPM MODULE
Roadmap
! Additional command line arguments to configure looks and feel of documentation site
! Another install option for deluxe documentation to include ( test plans, version release notes, etc )
! Testing for compatibility with Windows 8.1 ! Compatibility with Platino in development ! Open for more suggestions on more improvements
Thank You JAMIL HASSAN SPAIN @jamilspain