Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

executable file 108 lines (88 sloc) 4.951 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
==============================================================================
iOS Apps Are Based on the Foundation and UIKit Frameworks
==============================================================================

==============================================================================
The Foundation Framework Provides Basic System Services for All Apps
Use Foundation to:

Create and manage collections such as arrays and dictionaries.
Access images and other resources stored in your app.
Create and manage strings.
Post and observe notifications.
Create date and time objects.
Automatically discover devices on IP networks.
Manipulate URL streams.
Perform code asynchronously.
==============================================================================

==============================================================================
The UIKit Framework Provides Classes to Create a Touch-Based User Interface
Use UIKit to:

Construct and manage your user interface.
Handle touch and motion-based events.
Present text and web content.
Optimize your app for multitasking.
Create custom user-interface elements.
==============================================================================

==============================================================================
The Core Data Framework Manages the Data Model of an App
Use Core Data to:

Save and retrieve objects from storage.
Support basic undo/redo.
Validate property values automatically.
Filter, group, and organize data in memory.
Manage results in a table view with [NSFetchedResultsController].
Support document-based applications.
==============================================================================

==============================================================================
The Core Graphics Framework Helps You Create Graphics
Use Core Graphics to:

Make path-based drawings.
Use anti-aliased rendering.
Add gradients, images, and colors.
Use coordinate-space transformations.
Create, display, and parse PDF documents.
==============================================================================

==============================================================================
Core Animation Allows You to Make Advanced Animations and Visual Effects
Use Core Animation to:

Create custom animations.
Add timing functions to graphics.
Support key frame animation.
Specify graphical layout constraints.
Group multiple-layer changes into an atomic update.
==============================================================================

==============================================================================
The OpenGL ES Framework Provides Tools for 2D and 3D Drawing
Use OpenGL ES to:

Create 2D and 3D graphics.
Make more complex graphics such as data visualization, flight simulation, or video games.
Access underlying graphics hardware.
==============================================================================

=============================Delegate=========================================
Delegation is thus a means for injecting application-specific behavior into
the workings of a framework class—without having to subclass that class.
==============================================================================

==============================================================================
. As you design your app, keep in mind the following principles of HI design:

Aesthetic integrity.
Aesthetic integrity is not a measure of how beautiful an app is;
rather, it's a measure of how well the appearance of the app integrates with its function.

Consistency.
Consistency in the interface allows people to transfer their knowledge and skills from one app to another.
Ideally, an app is consistent with the iOS standards, within itself, and with earlier versions of itself.

Direct manipulation.
When people directly manipulate onscreen objects instead of using separate controls to manipulate them,
they're more engaged with the task and they more readily understand the results of their actions.

Feedback.
Feedback acknowledges people's actions and assures them that processing is occurring.
For example, people expect immediate feedback when they operate a control,
and they appreciate status updates during lengthy operations.

Metaphors.
When virtual objects and actions in an app are metaphors for objects and actions in the real world,
users quickly grasp how to use the app. The most appropriate metaphors suggest a usage or experience
without enforcing the limitations of the real-world object or action on which they're based.

User control.
Although an app can suggest a course of action or warn about dangerous consequences,
it's usually a mistake for the app to take decision-making away from the user.
The best apps find the correct balance between giving people the capabilities
they need and helping them avoid dangerous outcomes.
==============================================================================
Something went wrong with that request. Please try again.