99
edits
mNo edit summary |
|||
(32 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
[[Image: | [[Image:Iosdev_newTeaserpic.jpg|right|320px]] | ||
'''''Programming for iPhone, iPad und iPod Touch'''''<br/> | '''''Programming for iPhone, iPad und iPod Touch'''''<br/> | ||
Line 10: | Line 10: | ||
Gerade als die Schlagworte "ubiquitäres Computing" und "Augmented Reality" trotz immer leistungsfähigeren mobilen Endgeräten ihren Glanz zu verlieren scheinen, | Gerade als die Schlagworte "ubiquitäres Computing" und "Augmented Reality" trotz immer leistungsfähigeren mobilen Endgeräten ihren Glanz zu verlieren scheinen, sind die iOS Geräte und das iPad dabei, diese Begriffe mit neuem Leben zu füllen: Nicht nur in Bedienung und User Interface werden neue Maßstäbe gesetzt, vor allem die auf den Absatz von Applikationen ausgerichtete Konzeption der Gerätefamilie und eine gut durchdachte Entwicklungsumgebung befördert Rekordzahlen an Software-Neuerscheinungen für die iPhone Plattform. 2010 gab es nur ein Tablet: das iPad. Die Absatzzahlen der iPhones haben sich von 2009 zu 2010 verdoppelt und die Berufsaussichten für iOS Entwickler sind im Moment glänzend. | ||
Dieses Fachmodul zollt dieser Entwicklung Anerkennung und gibt Einblick in die Programmierung für iOS 4.x. Die Einführung des Kurses in Objective-C 2.0, die Vorstellung der wichtigsten Frameworks sowie der Entwicklungsumgebung Xcode / Interface Builder sind übrigens in weiten Teilen auch für native OS X Anwendungen gültig. | Dieses Fachmodul zollt dieser Entwicklung Anerkennung und gibt Einblick in die Programmierung für iOS 4.x. Die Einführung des Kurses in Objective-C 2.0, die Vorstellung der wichtigsten Frameworks sowie der Entwicklungsumgebung Xcode / Interface Builder sind übrigens in weiten Teilen auch für native OS X Anwendungen gültig. | ||
Line 29: | Line 29: | ||
== English Description == | == English Description == | ||
Just as the buzzwords "Ubiquitous Computing" and "Augmented Reality" are beginning to loose their thrilling denotation, the iPhone and especially the new iPad is becoming an exciting platform to set standards - not only regarding the user interface, but also with its application based paradigm and a well-thought development environment. | Just as the buzzwords "Ubiquitous Computing" and "Augmented Reality" are beginning to loose their thrilling denotation, the iPhone and especially the new iPad is becoming an exciting platform to set standards - not only regarding the user interface, but also with its application based paradigm and a well-thought development environment. In 2010 there was just one tablet available: the iPad. And the career prospects for iOS developers are certainly very promising. | ||
This module is paying tribute to this progress and is aiming to give an insight into programming concepts for iOS 4 incl. Objective-C 2.0, the related iOS frameworks and the Xcode/Interface-Builder IDE (which is - by the way - also valid in most parts for application development for the Mac OS X operating system). | This module is paying tribute to this progress and is aiming to give an insight into programming concepts for iOS 4 incl. Objective-C 2.0, the related iOS frameworks and the Xcode/Interface-Builder IDE (which is - by the way - also valid in most parts for application development for the Mac OS X operating system). | ||
Line 38: | Line 38: | ||
== Topics == | == Topics == | ||
* [[iPhone]] (General, App Showcase) | * [[iOS]], [[iPhone]] & [[iPad]] (General, App Showcase) | ||
* [[iOS Coding Resources and Tools]] - incl. 3rd Party Frameworks, Templates, Open Source Projects & Classes... | |||
* [[IPhoneDev| | * [[IPhoneDev|iOS Development Setup]] (SDK-Download, App-Signing How-To) | ||
** [[Application Types]] | ** [[Application Types]] | ||
*** Immersive, Productivity, Utility | *** Immersive, Productivity, Utility | ||
Line 61: | Line 61: | ||
** TableViews | ** TableViews | ||
** ... (see Syllabus for further topics) | ** ... (see Syllabus for further topics) | ||
* [http://developer.apple.com/technologies/iphone/whats-new.html#api | * [http://developer.apple.com/technologies/iphone/whats-new.html#api iOS 4 & iOS 5 Sneak Peek] | ||
* Einführung in [[Systemtheorie|kybernetische Systemtheorie]] als Interaktionsmodell | * Einführung in [[Systemtheorie|kybernetische Systemtheorie]] als Interaktionsmodell | ||
== Projects == | |||
Below you find a documentation of the Student's Projects: | |||
* [[/Projects/Example|Example Project]] (Please duplicate this example link and add your project) | |||
* [[/Projects/Michaela|Mobile Shopping Websites]] | |||
* [[/Projects/Fabian|feindura Webmaster Tool]] | |||
* [[/Projects/Andreas|LivingCampus]] | |||
* [[/Projects/Pavlos|UPIC]] | |||
* [[/Projects/Patawat_Phamuad|SantaBlock: the marvelous addictive casual game for iPhone]] | |||
* [[/Projects/jreizner|Whose Museum: an exhibition and collections platform]] | |||
* [[/Projects/Caren-Maria|PICtureControl]] | |||
== Requirements == | == Requirements == | ||
Line 98: | Line 110: | ||
* Master-Studenten der Medienkunst/Mediengestaltung | * Master-Studenten der Medienkunst/Mediengestaltung | ||
* Master-Studenten der Medieninformatik | * Master-Studenten der Medieninformatik | ||
* Master-Studenten des postgradualen Studiengangs Media-Architecture | |||
* Diplom-Studenten der Gestaltung | * Diplom-Studenten der Gestaltung | ||
== Syllabus == | == Syllabus == | ||
This is a preliminary syllabus, there will be changes according to the needs of the student's projects | |||
# 12.04. Intro, Showcase, Application Types, iOS, Project Talk | # 12.04. Intro, Showcase, Application Types, iOS, Project Talk | ||
# 19.04. | # 19.04. Objective-C 2.0, Xcode, Interface Builder, Custom Classes, Target/Action Demo | ||
# 26.04. Recap Objective-C 2.0, Xcode, Debugging | # 26.04. Project Talk, Recap Objective-C 2.0, Memory Management, Object Lifecycle, Properties, Xcode, Debugging Demo | ||
# 03.05. | # 03.05. Foundation Overview, UIKit Overview, UIWebview Demo | ||
# | # 10.05. Project Talk, MVC, View Controllers, Navigation- & TabBar Controller | ||
# 17.05. Cocoa Design Patterns (MVC, Target-Action, KVC/KVO, DataSource, Delegates, Notifications, Protocols, Categories ...) | |||
# | # 24.05. Recap, Coordinate Space, ScrollViews, Core Animation, Modal Views | ||
# <span style="background-color:yellow;"><s>31.05.</s> ''!! NO LECTURE !!''</span> <!-- Views & Drawing, Audio, Video --> | |||
# | # 07.06. Text Input, TableViews, Custom Table Cells, Views, Timers | ||
# | # 14.06. Touch Events, Multi-Touch, Gestures | ||
# | # 21.06. Location, Maps, Data & Persistance (UserPreferences, Settings, NSCoder & NSKeyedArchiver, SQLite, CoreData) | ||
# | # 28.06. Data & Persistance (cont.), CoreMotion & Accelerometer, Shake, Undo, Views & Drawing | ||
# 05.07. Blocks, Multitasking, ImagePicker (Camera), Audio, Video, Localization, UIPasteboard | |||
# | # 12.07. Quick Overview: Gamekit, Instruments, Unit Testing, what's new in iOS5<br/>Battery Life & Power Management, Performance (Memory Usage, Leaks, Autorelease, Threads), Xcode Tips & Tricks<br/>Bonjour & Networking<br/> | ||
# 30.08. Final Deadline | |||
Abgabe der Ergebnisse: | Abgabe der Ergebnisse: | ||
* als Dokumentation im Wiki mit Screenshots und Erläuterungen | * als Dokumentation im Wiki mit Screenshots und Erläuterungen | ||
* und (per E-Mail): kompilierbare quelloffene Projektdatei, bis zum | * und (per E-Mail): kompilierbare quelloffene Projektdatei, bis zum 30.08.2011. | ||
== Literature == | == Literature == | ||
Line 125: | Line 139: | ||
=== Official === | === Official === | ||
* [http://developer.apple.com/iphone/manage/overview/index.action Bauhaus- | * [http://developer.apple.com/iphone/manage/overview/index.action Bauhaus-iOS @ developer.apple.com] | ||
* Apple's User Interface Guidelines for the iPhone Plattform: [http://developer.apple.com/iphone/library/documentation/UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html User Experience] | * Apple's User Interface Guidelines for the iPhone Plattform: [http://developer.apple.com/iphone/library/documentation/UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html User Experience] | ||
* [http://developer.apple.com/iphone/library/navigation/index.html | * [http://developer.apple.com/iphone/library/navigation/index.html iOS Reference Library] | ||
* [http://developer.apple.com/iphone/library/documentation/Xcode/Conceptual/iphone_development/000-Introduction/introduction.html | * [http://developer.apple.com/iphone/library/documentation/Xcode/Conceptual/iphone_development/000-Introduction/introduction.html iOS Development Guide] - Introduction | ||
* [http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Introduction/Introduction.html | * [http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Introduction/Introduction.html iOS Programming Guide] | ||
=== Tutorials & Online-Courses === | === Tutorials & Online-Courses === | ||
* '''[http://deimos3.apple.com/WebObjects/Core.woa/Browse/itunes.stanford.edu.2024353965.02024353968 iTunes U: Stanford Programming iPhone Course]''' | * '''[http://deimos3.apple.com/WebObjects/Core.woa/Browse/itunes.stanford.edu.2024353965.02024353968 iTunes U: Stanford Programming iPhone Course]''' | ||
* '''[http://developer.apple.com/videos | * '''[http://developer.apple.com/videos/ Apple Developer Videos]''' (for registered developers) | ||
* [http://icodeblog.com/2008/07/26/iphone-programming-tutorial-hello-world/ iCodeBlog iPhone Tutorials] | * [http://icodeblog.com/2008/07/26/iphone-programming-tutorial-hello-world/ iCodeBlog iPhone Tutorials] | ||
* [http://www.idev101.com/ | * [http://www.idev101.com/ iOS Development 101] | ||
=== Literatur === | === Literatur === |
edits