SlideShare a Scribd company logo
1 of 4
To make my handy project with documentation is so smart style but
pretty boring work. But apple make it easy with Xcode to make auto
documentation by simply installing a script.
There are various documentation style like
1. VVDocumenter
2. Appledoc
But here we discuss about appledoc documentation setup. Follow the
below process:
Appledoc style code commenting and Documentation -
To make method/ class/ library documentation like Xcode documentation
need several steps.
1. Fetching git source of appledoc OS X project
2. Building appledoc project
3. Installing appledoc shell by command line
4. Integrating appledoc in project by build phase shell script
Requirements:
OS X version >> 10.10
Xcode version >> 4.1
Procedures Desc:-
Do the followings step serially.
1. Fetching git source of appledoc OS X project:
>>Cmd Commands:
git clone git://github.com/tomaz/appledoc.git
cd appledoc
open appledoc.xcodeproj
2. Building appledoc project:
>> Building project
>> archiving product
3. Installing appledoc shell by command line:
>>cmd Command:
sudo sh install-appledoc.sh
4. Integrating appledoc in project by build phase shell script:
To integrate appledoc with my project need some followings steps
Select top of your project in Project Navigator
>>Click Add Target
>>Choose Aggregate Template
>>Create new target. I suggest to call it Documentation
>>Click on Build Phases and add new Build Phase based on Script
>>Paste the script below into the script window
Below is a working script that can be added to the Xcode Build Phases, Run
Script
#appledoc Xcode script
# Start constants
company=“<Company Name>”;
companyID="com.<Company Name>";
companyURL="http://<Company Name>.com";
target="iphoneos";
#target="macosx";
outputPath="~/help";
# End constants
/usr/local/bin/appledoc 
--project-name "${PROJECT_NAME}" 
--project-company "${company}" 
--company-id "${companyID}" 
--docset-atom-filename "${company}.atom" 
--docset-feed-url "${companyURL}/${company}/%DOCSETATOMFILENAME" 
--docset-package-url "${companyURL}/${company}/%DOCSETPACKAGEFILENAME" 
--docset-fallback-url "${companyURL}/${company}" 
--output "${outputPath}" 
--publish-docset 
--docset-platform-family "${target}" 
--logformat xcode 
--keep-intermediate-files 
--no-repeat-first-par 
--no-warn-invalid-crossref 
--exit-threshold 2 
"${PROJECT_DIR}"
Thats all for installation and integration of Appledoc-help
Creating Help Manual:
Writing my classes/methods/modules/catagories documentation it only needs to
commenting my code. with some specific tag apple automatically make a HTTP
file format documentation like apple documentation. Actually it having fun….
here some style been given below:-
Classes and Categories
/** This class demonstrates AppleDoc.
A second paragraph comes after an empty line.
int i=0;
i++;
And some sample code can also be in a block, but indented
with a TAB.
*/
Methods
/
**------------------------------------------------------------
---------------------------
* @name A name under which this method appears under "Tasks"
*
--------------------------------------------------------------
-------------------------
*/
/** This is the first super-awesome method.
You can also add lists, but have to keep an empty line
between these blocks.
- One
- Two
- Three
@param string A parameter that is passed in.
@return Whatever it returns.
*/
- (NSString *)someMethodWithString:(NSString *)string;
/** This is the second super-awesome method.
Note that there are additional cool things here, like [direct
hyperlinks](http://www.cocoanetics.com)
@param number A parameter that is passed in, almost as cool
as someMethodWithString:
@return Whatever it returns.
@see someMethodWithString:
@warning *Warning:* A blue background.
@bug *Bug:* A yellow background.
*/
- (NSString *)someMethodWithInteger:(NSInteger)number;
The comment block with the @name serves for the grouping of methods in the
“Tasks” section at the beginning of the page for the class/category. You should
group similar methods under one such section, you don’t have to repeat it
because the @name is good until the next one. You see that you can also have
lists (numbered or not). You need an @param for each parameter of the method.
If it has a non-void return value then you also need an @return to describe that.
Omitting any of these will get you a warning. This shows cross references inline
and via the @see tag. For external hyperlinks you put the link words in square
brackets, the link itself in round ones. Finally you have a choice of blue or
yellow box for warnings/notices.
That’s all and Thank you much.

More Related Content

What's hot

Flask Introduction - Python Meetup
Flask Introduction - Python MeetupFlask Introduction - Python Meetup
Flask Introduction - Python MeetupAreski Belaid
 
Code Igniter Code Sniffer
Code Igniter  Code SnifferCode Igniter  Code Sniffer
Code Igniter Code SnifferAlbert Rosa
 
Executable specifiaction
Executable specifiactionExecutable specifiaction
Executable specifiactionÜrgo Ringo
 
jQuery Plugin
jQuery PluginjQuery Plugin
jQuery Pluginrbiggs
 
Build website in_django
Build website in_django Build website in_django
Build website in_django swee meng ng
 
Using HttpKernelInterface for Painless Integration
Using HttpKernelInterface for Painless IntegrationUsing HttpKernelInterface for Painless Integration
Using HttpKernelInterface for Painless IntegrationCiaranMcNulty
 
Installation of Joomla on Windows XP
Installation of Joomla on Windows XPInstallation of Joomla on Windows XP
Installation of Joomla on Windows XPRupesh Kumar
 
LvivPy - Flask in details
LvivPy - Flask in detailsLvivPy - Flask in details
LvivPy - Flask in detailsMax Klymyshyn
 
Chapter 2 - Structure of C++ Program
Chapter 2 - Structure of C++ ProgramChapter 2 - Structure of C++ Program
Chapter 2 - Structure of C++ ProgramDeepak Singh
 
Workshop: Async and Parallel in C#
Workshop: Async and Parallel in C#Workshop: Async and Parallel in C#
Workshop: Async and Parallel in C#Rainer Stropek
 
Task scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorialTask scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorialKaty Slemon
 
WP Weekend #2 - Corcel, aneb WordPress přes Laravel
WP Weekend #2 - Corcel, aneb WordPress přes LaravelWP Weekend #2 - Corcel, aneb WordPress přes Laravel
WP Weekend #2 - Corcel, aneb WordPress přes LaravelBrilo Team
 
Silex: From nothing to an API
Silex: From nothing to an APISilex: From nothing to an API
Silex: From nothing to an APIchrisdkemper
 
Top laravel packages to install handpicked list from expert
Top laravel packages to install handpicked list from expertTop laravel packages to install handpicked list from expert
Top laravel packages to install handpicked list from expertKaty Slemon
 
Laravel mail example how to send an email using markdown template in laravel 8
Laravel mail example how to send an email using markdown template in laravel 8Laravel mail example how to send an email using markdown template in laravel 8
Laravel mail example how to send an email using markdown template in laravel 8Katy Slemon
 
Petros Plakogiannis - Exploratory testing with browser console
Petros Plakogiannis - Exploratory testing with browser consolePetros Plakogiannis - Exploratory testing with browser console
Petros Plakogiannis - Exploratory testing with browser consolePetrosPlakogiannis
 

What's hot (20)

Flask Introduction - Python Meetup
Flask Introduction - Python MeetupFlask Introduction - Python Meetup
Flask Introduction - Python Meetup
 
Code Igniter Code Sniffer
Code Igniter  Code SnifferCode Igniter  Code Sniffer
Code Igniter Code Sniffer
 
Complex Sites with Silex
Complex Sites with SilexComplex Sites with Silex
Complex Sites with Silex
 
The Symfony CLI
The Symfony CLIThe Symfony CLI
The Symfony CLI
 
Executable specifiaction
Executable specifiactionExecutable specifiaction
Executable specifiaction
 
jQuery Plugin
jQuery PluginjQuery Plugin
jQuery Plugin
 
Build website in_django
Build website in_django Build website in_django
Build website in_django
 
Using HttpKernelInterface for Painless Integration
Using HttpKernelInterface for Painless IntegrationUsing HttpKernelInterface for Painless Integration
Using HttpKernelInterface for Painless Integration
 
Installation of Joomla on Windows XP
Installation of Joomla on Windows XPInstallation of Joomla on Windows XP
Installation of Joomla on Windows XP
 
LvivPy - Flask in details
LvivPy - Flask in detailsLvivPy - Flask in details
LvivPy - Flask in details
 
Kyiv.py #17 Flask talk
Kyiv.py #17 Flask talkKyiv.py #17 Flask talk
Kyiv.py #17 Flask talk
 
Chapter 2 - Structure of C++ Program
Chapter 2 - Structure of C++ ProgramChapter 2 - Structure of C++ Program
Chapter 2 - Structure of C++ Program
 
Workshop: Async and Parallel in C#
Workshop: Async and Parallel in C#Workshop: Async and Parallel in C#
Workshop: Async and Parallel in C#
 
Intro to Silex
Intro to SilexIntro to Silex
Intro to Silex
 
Task scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorialTask scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorial
 
WP Weekend #2 - Corcel, aneb WordPress přes Laravel
WP Weekend #2 - Corcel, aneb WordPress přes LaravelWP Weekend #2 - Corcel, aneb WordPress přes Laravel
WP Weekend #2 - Corcel, aneb WordPress přes Laravel
 
Silex: From nothing to an API
Silex: From nothing to an APISilex: From nothing to an API
Silex: From nothing to an API
 
Top laravel packages to install handpicked list from expert
Top laravel packages to install handpicked list from expertTop laravel packages to install handpicked list from expert
Top laravel packages to install handpicked list from expert
 
Laravel mail example how to send an email using markdown template in laravel 8
Laravel mail example how to send an email using markdown template in laravel 8Laravel mail example how to send an email using markdown template in laravel 8
Laravel mail example how to send an email using markdown template in laravel 8
 
Petros Plakogiannis - Exploratory testing with browser console
Petros Plakogiannis - Exploratory testing with browser consolePetros Plakogiannis - Exploratory testing with browser console
Petros Plakogiannis - Exploratory testing with browser console
 

Similar to appledoc_style

JavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScriptJavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScriptLaurence Svekis ✔
 
Parse cloud code
Parse cloud codeParse cloud code
Parse cloud code維佋 唐
 
Webpack Encore Symfony Live 2017 San Francisco
Webpack Encore Symfony Live 2017 San FranciscoWebpack Encore Symfony Live 2017 San Francisco
Webpack Encore Symfony Live 2017 San FranciscoRyan Weaver
 
Cordova iOS Native Plugin Development
Cordova iOS Native Plugin DevelopmentCordova iOS Native Plugin Development
Cordova iOS Native Plugin DevelopmentJosue Bustos
 
Containerize spring boot application with docker
Containerize spring boot application with dockerContainerize spring boot application with docker
Containerize spring boot application with dockerSunil kumar Mohanty
 
Asp.Net 2.0 Presentation
Asp.Net 2.0 PresentationAsp.Net 2.0 Presentation
Asp.Net 2.0 Presentationsasidhar
 
Aspect-oriented programming in Perl
Aspect-oriented programming in PerlAspect-oriented programming in Perl
Aspect-oriented programming in Perlmegakott
 
Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Christos Manios
 
Bring the fun back to java
Bring the fun back to javaBring the fun back to java
Bring the fun back to javaciklum_ods
 
Local SQLite Database with Node for beginners
Local SQLite Database with Node for beginnersLocal SQLite Database with Node for beginners
Local SQLite Database with Node for beginnersLaurence Svekis ✔
 
[xp2013] Narrow Down What to Test
[xp2013] Narrow Down What to Test[xp2013] Narrow Down What to Test
[xp2013] Narrow Down What to TestZsolt Fabok
 
Idiomatic Gradle Plugin Writing
Idiomatic Gradle Plugin WritingIdiomatic Gradle Plugin Writing
Idiomatic Gradle Plugin WritingSchalk Cronjé
 
How to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScriptHow to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScriptKaty Slemon
 
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)James Titcumb
 
Getting started docker notes
Getting started docker notesGetting started docker notes
Getting started docker notesAJAY NAYAK
 

Similar to appledoc_style (20)

Demystifying Maven
Demystifying MavenDemystifying Maven
Demystifying Maven
 
JavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScriptJavaScript guide 2020 Learn JavaScript
JavaScript guide 2020 Learn JavaScript
 
Parse cloud code
Parse cloud codeParse cloud code
Parse cloud code
 
Webpack Encore Symfony Live 2017 San Francisco
Webpack Encore Symfony Live 2017 San FranciscoWebpack Encore Symfony Live 2017 San Francisco
Webpack Encore Symfony Live 2017 San Francisco
 
Cordova iOS Native Plugin Development
Cordova iOS Native Plugin DevelopmentCordova iOS Native Plugin Development
Cordova iOS Native Plugin Development
 
Containerize spring boot application with docker
Containerize spring boot application with dockerContainerize spring boot application with docker
Containerize spring boot application with docker
 
Asp.Net 2.0 Presentation
Asp.Net 2.0 PresentationAsp.Net 2.0 Presentation
Asp.Net 2.0 Presentation
 
Aspect-oriented programming in Perl
Aspect-oriented programming in PerlAspect-oriented programming in Perl
Aspect-oriented programming in Perl
 
Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Code Documentation. That ugly thing...
Code Documentation. That ugly thing...
 
Bring the fun back to java
Bring the fun back to javaBring the fun back to java
Bring the fun back to java
 
Appium on mac platform
Appium on mac platformAppium on mac platform
Appium on mac platform
 
Local SQLite Database with Node for beginners
Local SQLite Database with Node for beginnersLocal SQLite Database with Node for beginners
Local SQLite Database with Node for beginners
 
Ios - Introduction to platform & SDK
Ios - Introduction to platform & SDKIos - Introduction to platform & SDK
Ios - Introduction to platform & SDK
 
Book
BookBook
Book
 
[xp2013] Narrow Down What to Test
[xp2013] Narrow Down What to Test[xp2013] Narrow Down What to Test
[xp2013] Narrow Down What to Test
 
Idiomatic Gradle Plugin Writing
Idiomatic Gradle Plugin WritingIdiomatic Gradle Plugin Writing
Idiomatic Gradle Plugin Writing
 
How to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScriptHow to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScript
 
Readme
ReadmeReadme
Readme
 
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)
Kicking off with Zend Expressive and Doctrine ORM (PHP Srbija 2017)
 
Getting started docker notes
Getting started docker notesGetting started docker notes
Getting started docker notes
 

appledoc_style

  • 1. To make my handy project with documentation is so smart style but pretty boring work. But apple make it easy with Xcode to make auto documentation by simply installing a script. There are various documentation style like 1. VVDocumenter 2. Appledoc But here we discuss about appledoc documentation setup. Follow the below process: Appledoc style code commenting and Documentation - To make method/ class/ library documentation like Xcode documentation need several steps. 1. Fetching git source of appledoc OS X project 2. Building appledoc project 3. Installing appledoc shell by command line 4. Integrating appledoc in project by build phase shell script Requirements: OS X version >> 10.10 Xcode version >> 4.1 Procedures Desc:- Do the followings step serially. 1. Fetching git source of appledoc OS X project: >>Cmd Commands: git clone git://github.com/tomaz/appledoc.git cd appledoc open appledoc.xcodeproj 2. Building appledoc project: >> Building project >> archiving product 3. Installing appledoc shell by command line: >>cmd Command: sudo sh install-appledoc.sh 4. Integrating appledoc in project by build phase shell script: To integrate appledoc with my project need some followings steps Select top of your project in Project Navigator >>Click Add Target >>Choose Aggregate Template >>Create new target. I suggest to call it Documentation >>Click on Build Phases and add new Build Phase based on Script >>Paste the script below into the script window
  • 2. Below is a working script that can be added to the Xcode Build Phases, Run Script #appledoc Xcode script # Start constants company=“<Company Name>”; companyID="com.<Company Name>"; companyURL="http://<Company Name>.com"; target="iphoneos"; #target="macosx"; outputPath="~/help"; # End constants /usr/local/bin/appledoc --project-name "${PROJECT_NAME}" --project-company "${company}" --company-id "${companyID}" --docset-atom-filename "${company}.atom" --docset-feed-url "${companyURL}/${company}/%DOCSETATOMFILENAME" --docset-package-url "${companyURL}/${company}/%DOCSETPACKAGEFILENAME" --docset-fallback-url "${companyURL}/${company}" --output "${outputPath}" --publish-docset --docset-platform-family "${target}" --logformat xcode --keep-intermediate-files --no-repeat-first-par --no-warn-invalid-crossref --exit-threshold 2 "${PROJECT_DIR}" Thats all for installation and integration of Appledoc-help Creating Help Manual: Writing my classes/methods/modules/catagories documentation it only needs to commenting my code. with some specific tag apple automatically make a HTTP file format documentation like apple documentation. Actually it having fun…. here some style been given below:- Classes and Categories /** This class demonstrates AppleDoc. A second paragraph comes after an empty line. int i=0; i++;
  • 3. And some sample code can also be in a block, but indented with a TAB. */ Methods / **------------------------------------------------------------ --------------------------- * @name A name under which this method appears under "Tasks" * -------------------------------------------------------------- ------------------------- */ /** This is the first super-awesome method. You can also add lists, but have to keep an empty line between these blocks. - One - Two - Three @param string A parameter that is passed in. @return Whatever it returns. */ - (NSString *)someMethodWithString:(NSString *)string; /** This is the second super-awesome method. Note that there are additional cool things here, like [direct hyperlinks](http://www.cocoanetics.com) @param number A parameter that is passed in, almost as cool as someMethodWithString: @return Whatever it returns. @see someMethodWithString: @warning *Warning:* A blue background. @bug *Bug:* A yellow background. */ - (NSString *)someMethodWithInteger:(NSInteger)number; The comment block with the @name serves for the grouping of methods in the “Tasks” section at the beginning of the page for the class/category. You should group similar methods under one such section, you don’t have to repeat it because the @name is good until the next one. You see that you can also have lists (numbered or not). You need an @param for each parameter of the method.
  • 4. If it has a non-void return value then you also need an @return to describe that. Omitting any of these will get you a warning. This shows cross references inline and via the @see tag. For external hyperlinks you put the link words in square brackets, the link itself in round ones. Finally you have a choice of blue or yellow box for warnings/notices. That’s all and Thank you much.