Using HeaderDoc to make complete documentation as Html file. By Naveed Khalid.

Slides:



Advertisements
Similar presentations
Slides 4/22 COP Topics Final Exam Review Final Exam The final exam is Friday, April 29 th at 10:00 AM in the usual room No notes, books, calculators,
Advertisements

© Copyright 1992–2005 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Tutorial 4 – Introducing Algorithms, Pseudocode and.
16-Jun-15 javadoc. 2 Javadoc placement javadoc comments begin with /** and end with */ In a javadoc comment, a * at the beginning of the line is not part.
Scott Grissom, copyright 2004Ch 3: Java Features Slide 1 Why Java? It is object-oriented provides many ready to use classes platform independent modern.
1 More on Arrays Arrays of objects Command line arguments The ArrayList class Javadoc Review Lecture 8 notes and L&L 7.1 – 7.2 Reading for this lecture:
Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Java Software Solutions Foundations of Program Design Sixth Edition by Lewis.
Programming Introduction to C++.
C++ Functions. 2 Agenda What is a function? What is a function? Types of C++ functions: Types of C++ functions: Standard functions Standard functions.
By: Mr. Baha Hanene Chapter 3. Learning Outcomes We will cover the learning outcome 02 in this chapter i.e. Use basic data-types and input / output in.
1 Chapter One A First Program Using C#. 2 Objectives Learn about programming tasks Learn object-oriented programming concepts Learn about the C# programming.
A First Program Using C#
CMSC 202 Interfaces. 11/20102 Classes and Methods When a class defines its methods as public, it describes how the class user interacts with the method.
Introduction to C++ Programming Introduction to C++ l C is a programming language developed in the 1970's alongside the UNIX operating system. l C provides.
Learning Web Design: Chapter 4. HTML  Hypertext Markup Language (HTML)  Uses tags to tell the browser the start and end of a certain kind of formatting.
Week 9 PHP Cookies and Session Introduction to JavaScript.
1 Doxygen National University of Kaohsiung Department of Applied Mathematics Yu-Kai Hong, Chien-Hsiang Liu, Wei-Ren Chang February, 2008.
Client Scripting1 Internet Systems Design. Client Scripting2 n “A scripting language is a programming language that is used to manipulate, customize,
CS0004: Introduction to Programming Variables – Strings.
Writing JavaDocs Mimi Opkins CECS 274 Copyright (c) Pearson All rights reserved.
The Java Programming Language
Objective C Basics. It’s C with Some Extras!  Cross Platform language  Mac  Linux/UNIX  Windows  Layer above C (Superset)  Adds Object-Oriented.
Program documentation Using the Doxygen tool Program documentation1.
TUTORIAL 10: PROGRAMMING WITH JAVASCRIPT Session 2: What is JavaScript?
C Derived Languages C is the base upon which many build C++ conventions also influence others *SmallTalk is where most OOP comes Java and Javascript have.
Definition CSS “Short for Cascading Style Sheets, a new feature being added to HTML that gives both Web site developers and users more control over how.
A First Simple Program /* This is a simple Java program. Call this file "Example.java".*/ class Example { // Your program begins with a call to main().
Javadoc Comments.  Java API has a documentation tool called javadoc  The javadoc tool is used on the source code embedded with javadoc-style comments.
Java The Java programming language was created by Sun Microsystems, Inc. It was introduced in 1995 and it's popularity has grown quickly since A programming.
Logic and Control. 4-2 Decision (selection) structure: if (condition) { statement etc. } Example: if (age == 15) { document.write(“ you are a fifteen”);
Javadoc Dwight Deugo Nesa Matic
C# C1 CSC 298 Elements of C# code (part 1). C# C2 Style for identifiers  Identifier: class, method, property (defined shortly) or variable names  class,
Identifiers Identifiers in Java are composed of a series of letters and digits where the first character must be a letter. –Identifiers should help to.
CECS 130 EXAM 1. To declare a constant (read only) value: const int x = 20; const float PI = 3.14; Can we do this? const int x;
CSE IntroductiontoDoxygen. Contents Introduction Main Steps for creating documentation Examples.
A brief introduction to javadoc and doxygen. What’s in a program file? 1. Comments 2. Code.
July Doxygen A Code Documentation System Doxygen generates documentation directly from the structure and comments in the code –Browsable HTML documentation.
OOP with Objective-C Categories, Protocols and Declared Properties.
Java Doc Guideline R.SANTHANA GOPALAN. Java Doc Guideline Audience Internal Developers PQA - who write test plans PPT – who write the documentation Customers.
 In the java programming language, a keyword is one of 50 reserved words which have a predefined meaning in the language; because of this,
CSC 143A 1 CSC 143 Introduction to C++ [Appendix A]
Programming Fundamentals Enumerations and Functions.
© 2011 Pearson Education, publishing as Addison-Wesley Chapter 1: Computer Systems Presentation slides for Java Software Solutions for AP* Computer Science.
1 Agenda  Unit 7: Introduction to Programming Using JavaScript T. Jumana Abu Shmais – AOU - Riyadh.
Presentation By :- Nikhil R. Anande ( ) Electronic & Communication Engineering. 3 nd Year / 5 th Semester FACULTY GUIDE : RAHIUL PATEL SIR MICROCONTROLLER.
Problem Solving With C++ Doxygen Oct/Nov Introduction Doxygen is a documentation generator, a tool for writing software reference documentation.
Automatic Documentation Systems
Chapter 1.2 Introduction to C++ Programming
Chapter 1.2 Introduction to C++ Programming
More Sophisticated Behavior
Working with Java.
Chapter 1.2 Introduction to C++ Programming
Chapter 1.2 Introduction to C++ Programming
CS170 – Week 1 Lecture 3: Foundation Ismail abumuhfouz.
CSE 143 Introduction to C++ [Appendix B] 4/11/98.
Mr. Shaikh Amjad R. Asst. Prof in Dept. of Computer Sci. Mrs. K. S
Introduction to javadoc
Using variables, for..loop and functions to help organize your code
Built-In (a.k.a. Native) Types in C++
Chapter 1: Computer Systems
Class Commenting Doxygen for Classes.
Documentation Comments in C#.
Comments, Prototypes, Headers & Multiple Source Files
Chap 1 Chap 2 Chap 3 Chap 5 Surprise Me
Focus of the Course Object-Oriented Software Development
Introduction to javadoc
Programming Introduction to C++.
Tutorial 10: Programming with javascript
C Programming Language
Chap 2. Identifiers, Keywords, and Types
Presentation transcript:

Using HeaderDoc to make complete documentation as Html file. By Naveed Khalid

 // // File Name.ext // Project Name // // Created by on dd/mm/yyyy. // Copyright 2014 (c). All rights reserved. // File Header Comment

  HeaderDoc is a tool that you can run from the command-line.  Basically it scans your files for comments made in a particular style.  Following that particular style will help in documentation on the go!  Which particular style? HeaderDoc Comment

  Three styles of comments that HeaderDoc scans for: Option 1: /// Your documentation comment will go here Option 2: /** * Your documentation comment will go here */ Option 3: /*! * Your documentation comment will go here */ HeaderDoc Comment

  Three styles of comments that HeaderDoc scans for: Option 1: /// Your documentation comment will go here Option 2: /** * Your documentation comment will go here */ Option 3: /*! * Your documentation comment will go here */ HeaderDoc Comment These are similar to “normal” comments, except that there’s an extra / in option 1, and an extra character in the first line of options 2 and 3 (* and !, respectively).

  For single line comments, use the triple forward slash syntax (///)  For multiline comments, use the style used in Apple’s documentation (/*!) Best Way?

  A tag starts with symbol and a keyword, followed by a space, and a string that contains a description relative to that keyword (such foo).  Top-Level Tags: These are tags that declare the type of thing you are commenting (Headers, classes, methods, etc).  An example of a top-level tag  Second-Level Tags: These tags help to give more detail about the specific thing you are commenting. etc. HeaderDoc Tags?

 Some Second-level short string that briefly describes anything. This should not contain multiple Provided for better Doxygen block of text that describes a function, class, header, or data type in name and description of a parameter to a the return values expected from this function. Don't include if the return value is

 Example tag in Objective-C Base List of protocol name those this class conforms This is a discussion. It can span many lines or paragraphs. myClass : Classes, Protocols, and Interfaces

 Example tag in Objective-C This is a discussion. It can span many lines or paragraphs. Classes, Protocols, and Interfaces

 Example tag in Objective-C This is a discussion. It can span many lines or paragraphs. Classes, Protocols, and Interfaces

 /*! A really simple way to calculate the sum of two numbers. firstNumber An NSInteger to be used in the summation of two numbers secondNumber The second half of the equation. The sum of the two numbers passed in. */ Documenting Methods

  To inform about add tag. Add the following text just above tag: Please make note that this method is only good for adding non-negative numbers. Warnings

  Example tag Property The ViewController class' car object. */ Documenting Property

  Example tag Tells whether this device is the root power TRUE if this device is the root power domain. For more information on power domains.... */ bool we_are_root; Documenting Variables

  Example tag Predefined CFArrayCallBacks structure containing a set of callbacks Extended discussion goes here. */ const CFArrayCallBacks kCFTypeArrayCallBacks; Documenting Constants

  Example tag Enumeration Detail description of enum */ Documenting Enumeration

 /*! OldCarType A list of older car types. OldCarTypeModelT A cool old car. OldCarTypeModelA A sophisticated old car. */ typedef enum { OldCarTypeModelT, OldCarTypeModelA } OldCarType; Documenting Enumeration

 typedef enum { /// A cool, old car. OldCarTypeModelT, /// A sophisticated older car. OldCarTypeModelA } OldCarType; Documenting Enumeration

 /*! The car will drive, and then execute the drive block completion A driveCompletion block [car driveCarWithCompletion:^(CGFloat distance){ driven %f", distance); }]; */ Adding Formatted Code

 // FIXME: This is broken // !!!: Holy cow, it should be checked! // ???: Perhaps check if the block is not nil first? Other Comments

 /*! */ Code Snippet for comments

  Open terminal  cd /path/to/your/folder  headerdoc2html -o ~/Desktop/destinationFolder sourceFolder/  Now to create a Master TOC  cd ~/Desktop/documentation  gatherheaderdoc. Finalizing: Creating Html