Curs Programació MacOSX


Aquesta entrada és la número 1 de 28 de la sèrie Curs de programació

Sembla ser que davant de la sortida de l’SDK per a l’iPhone i per a l’iPod Touch, hi ha interès en poder fer petites aplicacions del nostre gust o fins i tot per a poder tenir-ne un rendiment comercial.

Així que en Miquel m’ha demanat si podia fer-ne un petit curs per introduir-vos en la programació sobre MacOSX que és la base per a poder programar sobre l’iPhone i l’iPod Touch.

El curs s’anirà fent a mida que tingui temps, la idea és fer dues entrades cada setmana i en farem el seguiment en el grup de fòrums http://forums.poble.cat/programacio/ on hi he posat fòrums per a diferents llenguatges entre els quals hi ha el que utilitza el MacOSX (l’Objective-C) i la framework principal de desenvolupament (Cocoa).

Per a seguir el curs s’ha de tenir nocions de programació, així que els que no en sapigueu haureu de fer un sobre-esforç per poder seguir el curs. Tingueu en compte que l’Objective-C és una extensió del llenguatge C (com també ho és el C++), i per tant cal conèixer el llenguatge C.

El temari seguirà una mica aquest guió:

  • Llenguatge Objective-C
    • “Hola Món”
    • Diferències amb C
    • Les classes
    • Excepcions
    • Programacio Orientada a Objectes
    • Herència
    • Polimorfisme
    • Tipus dinàmics
    • Categories
    • Protocols
    • Presentació
    • Gestió de la memòria
    • NSArray i NSDictionary
  • Fent una calculadora simple
    • Estructura d’una aplicació
    • Treballant amb l’Interface Builder
    • Treballant amb les classes Cocoa
  • L’Interface Builder més a fons
  • La framework Cocoa a fons
  • Altres temes
    • Mirarem de tractar temes que puguin interessar com: CoreAnimation, CoreImage, …

Com podeu veure aprendrem les nocions bàsiques de Cocoa i Interface Builder fent una aplicació. L’Interface Builder és molt potent i complex i jo no me’l conec completament, hi ha la tecnologia de binding que no utilitzo massa i que no em conec del tot, però si voleu tractar-la podria mirar d’entendre el seu funcionament.

Una altra cosa a dir és el tema de l’Objective-C. Ara ja ha sortit la versió 2.0 d’aquest llenguatge que ha afegit noves característiques de llenguatges més moderns, com són les propietats que ens permet accedir a les funcions de lectura i assignació de variables com si fossin directament variables, o la enumeració ràpida que tracta les llistes: NSArray, NSSet, NSString, NSEnumerator o qualsevol objecte que implementi el protocol NSFastEnumeration; com es fa en els llenguatges més moderns tipus python: for ( Type newVariable in expression ) { stmts }

Bé, què en penseu?