Showing posts with label APP. Show all posts
Showing posts with label APP. Show all posts

Wednesday, September 3, 2014

IPhone Development Guide

MapKit:
https://developer.apple.com/videos/wwdc/2014/
https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/LocationAwarenessPG/Introduction/Introduction.html

Samples:
https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/FirstTutorial.html
https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/DesigningaUserInterface.html#//apple_ref/doc/uid/TP40011343-CH6-SW1
http://blog.strikeiron.com/bid/63338/Integrate-a-REST-API-into-an-iPhone-App-in-less-than-15-minutes

Framework:
UIKit.framework
Foundation Framework

Source Control:
Tool: SVN
https://developer.apple.com/Library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/Save_and_Revert_Changes_to_Files/ManageChanges.html


API:
https://developer.apple.com/library/mac/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html
https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/Reference/Reference.html#//apple_ref/occ/cl/UIApplication
https://developer.apple.com/library/ios/navigation/
http://blog.teamtreehouse.com/the-beginners-guide-to-objective-c-language-and-variables
http://blog.teamtreehouse.com/the-beginners-guide-to-objective-c-methods


Objective-C Programming:
1. The @autoreleasepool statement is there to support memory management for your app. Automatic Reference Counting (ARC) makes memory management straightforward by getting the compiler to do the work of keeping track of who owns an object; @autoreleasepool is part of the memory management infrastructure.
2.  it’s important to understand that iOS apps are based on event-driven programming. In event-driven programming, the flow of the app is determined by events: system events or user actions. The user performs actions on the interface, which trigger events in the app. These events result in the execution of the app’s logic and manipulation of its data. The app’s response to user action is then reflected back in the interface.
3.  Objective-C is built on top of the C programming language and provides object-oriented capabilities and a dynamic runtime. You get all of the familiar elements, such as primitive types (int, float, and so on), structures, functions, pointers, and control flow constructs (while, if...else, and for statements). You also have access to the standard C library routines, such as those declared in stdlib.h and stdio.h.
4.  You make an object by creating an instance of a particular class. You do this by allocating it and initializing it with acceptable default values. When you allocate an object, you set aside enough memory for the object and set all instance variables to zero. Initialization sets an object’s initial state—that is, its instance variables and properties—to reasonable values and then returns the object. The purpose of initialization is to return a usable object. You need to both allocate and initialize an object to be able to use it.
5.  The NSString class provides an object wrapper for strings, offering advantages such as built-in memory management for storing arbitrary-length strings, support for different character encodings (particularly Unicode), and utilities for string formatting
6.  Any object you add to a collection will be kept alive at least as long as the collection is kept alive. That’s because collection classes use strong references to keep track of their contents
7.  As with the value classes described earlier in this chapter, you can create an array through allocation and initialization, class factory methods, or array literals.
8.  

Objective-C:
https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html#//apple_ref/doc/uid/TP40011210

Main Classes:
UIApplication - Singleton
UIApplicationDelegate

State Management:
1. Apps can be in the not running, inactive, active, background or suspended state. 


References:
http://stackoverflow.com/questions/11013587/differences-between-strong-and-weak-in-objective-c




Monday, July 28, 2014

How to design wireframes for APP


Learnt:
1. Designing wireframes is a very important skill for startup.
2. UX Design is to essentially resolve the business problems for business users.
3.

Diagrams:
Flowchart, Wireframes, Mockups

Goal of Wireframes:
1. Design the solution to solve user's problems
2. Design good user experience, so users will like your design and use them.

Tool:
Omnigraffle, Omnigraffle Stencile, Konigi Wireframe Stencils

Omnigraffle Stenciles:
Konigi Wireframe Stencils
iOS 7 IPhone Stencils by Sourcebits

Links:
http://zurb.com/playground/iphone-stencils


Knowledge Sharing:
1. One way to capture the output of this design process is with flow charts and wireframes. A high level flow chart for a web app (or any software application for that matter) explains the functionality of the application and how you get to each part of the application at a glance.
2. A website wireframe, also known as a page schematic or screen blueprint, is a visual guide that represents the skeletal framework of a website. The wireframe depicts the page layout or arrangement of the website’s content, including interface elements and navigational systems, and how they work together. The wireframe usually lacks typographic style, color, or graphics, since the main focus lies in functionality, behavior, and priority of content. In other words, it focuses on “what a screen does, not what it looks like.” Wireframes can be pencil drawings or sketches on a whiteboard, or produced by means of a broad array of free or commercial software applications.
3. Website wireframes are 90% thinking/planning and just 10% drawing
4.


Good UX APP:
Twitter
Duo Mi



References:
http://startupworks.co/blog/2014/03/07/top-5-online-wireframing-tools-for-startups/
http://startupmusings.wordpress.com/tag/wireframe/