Dit blog
Gepost door Tijs in de categorie Dockyard
Het was even een beetje zoeken op welke manier we precies zouden omgaan met dit Dockyard blog. Een soort van algemene nieuwsbron over mobile, iPhone en nieuwe technologieën, of eerder een behind-the-scenes blog waarin we vertellen over de projecten waaraan we werken en de stappen die we daarin nemen.
We denken dat die tweede insteek het interessantst is: niet alleen zijn er sowieso al een pak bronnen waar je terecht kan voor alle soorten van nieuws, bovendien is het Dockyard project ook voor onszelf een soort van zoektocht. Wat we daarbij leren, willen we graag met delen. Tegelijkertijd echter hopen we op die manier ook zélf heel wat bij te leren.
Daarom vanaf nu: verwacht vanaf nu regelmatig een kijk achter de schermen van Dockyard: technisch, zakelijk, conceptueel, … you name it!
iPhone Bootcamp dag #4
Gepost door Piet in de categorie Big Nerd Ranch, Event, iPhone
Donderdag stond (bijna) volledig in teken van de UI-(User Interface)-layer van de iPhone. We leerden:
- CoreGraphics (drawing on the iPhone)
- ViewTransitions
- CoreAnimation
en … de accelerometer.
CoreGraphics is de aangewezen weg om afbeeldingen te bewerken, roteren, schalen,… Een mooi voorbeeld van het gebruik van CoreGraphics is de witte glow en de ronde hoeken van de icoontjes op je home screen. De developers leveren immers een rechthoekige afbeelding aan de iPhone, maar Springboard (de app op de iPhone die je home screen regelt) zet een glow op dat icoontje en rond vervolgens de hoeken af.
ViewTransitions zijn een makkelijke manier zijn om overgangen tussen twee views te regelen, zoals bijvoorbeeld naar de volgende pagina van je home-screen gaan. Tegelijkertijd zijn ViewTransitions makkelijke methodes om CoreAnimation te gebruiken.
CoreAnimation is één van de steunpilaren van het iPhone OS: het is speciaal gebouwd voor de iPhone (maar nu ook beschikbaar op het MacOS). De ingenieurs, of misschien Steve Jobs himself, zochten een manier om een touchscreen instant reactie te laten geven als je op een knop duwde of van scherm wisselde. Animatie is hier een uiterst geschikt medium voor en daarom werd CoreAnimation ontwikkeld. Het stelt developers in staat om op snelle wijze bijna alles vloeiend te kunnen animeren: grootte, plaats, zichtbaarheid,… Een mooi staaltje CoreAnimation is bijvoorbeeld de CoverFlow in de iPod-app (als je de iPhone kantelt komt het album artwork tevoorschijn).
De accelerometer is de gyroscope in de iPhone, het eerste wat die bijvoorbeeld doet is het scherm kantelen als je de iPhone kantelt. Maar dat is slechts het begin, je kan er alle kanten mee uit. Het werkt zoals een Wii-mote, met die uitzondering dat de wii-mote nog een IR-sensor gebruikt om zijn hoogte te bepalen, maar in grote lijnen kan je er dus dezelfde truken mee uithalen als met de wii-mote. Je krijgt de data raw binnen, dus je bent wel zelf verantwoordelijk voor de verdere uitwerking.
Eén van de studenten vertrok al een dag vroeger naar huis en is dus werd de groepsfoto ook een dag vroeger genomen. I proudly present the class of 2009 ;-)
iPhone Bootcamp Dag #3
Gepost door Piet in de categorie Big Nerd Ranch, Event, iPhone
Dag drie op de iPhone Bootcamp: de gesprekken durven al eens af te wijken van iPhone Development en de mensen zien er al iets minder fris en fruitig uit in de ochtend (of verbeeld ik mij dat maar?).
Dag 3 werd volledig in beslag genomen door drie onderwerpen:
- Audio
- OpenGL
- WebKit (als tussendoortje)
Ik denk dat dit de meest technische dag was tot nu toe. Audio heeft enkele zeer makkelijke API’s (Application Programming Interface) ter beschikking, maar die zijn enkel geschikt voor simpele audio-afspeelmogelijkheden (korte geluiden, één mp3, iFart, …).
Als je meer controle wil over het geluid (bijvoorbeeld bij meerdere geluiden tegelijkertijd of bij het streamen van geluid) kom je al (zeer) snel terecht bij het AudioToolbox.framework. Dat framework neemt afscheid van de mooie Objective-C wereld en gebruikt veeleer C mechanismen (callbacks, buffers,…), wat het een stuk complexer maakt. Bij deze dus meteen ook de reden waarom het leeuwendeel van de apps in de AppStore gebruik maakt van simpele geluiden en niet van gelaagd geluid.
OpenGL is een programmeertaal op zich (technische mensen, indulge me voor het woordgebruik) dus bleef die sessie beperkt tot een korte inleiding tot (plus een verwijzing naar NeHe) en de manier waarop iPhone OpenGL kan gebruiken. Ik had het liever iets meer in depth gezien, maar omdat we maar een week hebben en OpenGL op zich al een week kan vullen is dit misschien toch wel de manier om het aan te pakken.
De avond was, zoals in de vorige post al wel eens vermeld, meer iPhone, meer Cocoa en meer koffie. Hoewel er ook nog een hevige discussie was over de NES en SNES (bekend als famicon in Frankrijk en Spanje), maar dat is een verhaal op zich…
iPhone Bootcamp Day #2
Gepost door Piet in de categorie Big Nerd Ranch, iPhone
Dag twee ging verder waar dag één afsloot: meer iPhone, meer XCode (de IDE, integrated development environment), meer Cocoa … en meer koffie.
Na een snelle herhaling van de materie van de eerste dag, gingen we van start met localization. Oftewel “het beschikbaar stellen van de applicatie in verschillende talen ten einde de user een zo goed mogelijke beleving te garanderen”. Aangezien Apple er in grote mate al aan gedacht heeft, is het vooral een kwestie van te weten hoe en waar je welke knoppen moet klikken.
Na de localization kwam Core Location aan de beurt: dat is het gedeelte van de iPhone SDK dat het mogelijk maakt om te bepalen waar je bent (via GPS, Cell Triangulation of zelfs via Wifi).
Vervolgens kwam een inleiding tot MVC (Model - View - Controller), een design pattern dat onder andere gebruikt wordt in Cocoa, waarbij de ViewController aan de beurt kwam. Aangezien het één van de bouwblokken is binnen iPhone Development, werd er dieper op ingegaan en de best practices aangeleerd. Omdat het vrij snel redelijk ingewikkeld werd, besloot Alex (de instructeur) dat het tijd was voor onze dagelijkse wandeling.
Aangezien iedereen intussen een test-applicatie had geschreven die bijhield waar je was en hoeveel meter je had afgelegd, was de wandeling (zo mogelijk) nog nerderig dan gisteren: iPhones in de ene hand, de andere hand klaar om jezelf op te vangen in geval van een slipper (veel sneeuw hier) en zo de berg omhoog om daar te kijken naar een - zo was ons verteld door Alex - “prachtige” wijngaard.
De rest van de middag werd volledig in beslag genomen door het schrijven van een To Do List-app die gebruik maakte van de ViewControllers (met enkele Cocoa-truken terzijde maar dat wordt wellicht té technisch).
De avond was redelijk identiek aan die van dag één: terug naar het klaslokaal voor meer iPhone, meer XCode, meer Cocoa … en opnieuw meer koffie. Voor sommige mensen is dat een mooie avond ;-)