Michel Mongkhoy’s Blog

Justin(me), so かわいい

Lecture 2 – Objective-C

laissez un commentaire »

 

lecture21

J’avais déjà fait un post rapide sur Objective-C. Là vous aurez droit à un grand cours ^^

Le cours aborde les grands éléments qui font la programmation orientée objet.

On se concentre ensuite sur le langage Objective-C et  sa syntaxe. Et enfin commence à utiliser les classes de Foundation, qui constituent la base de Cocoa Touch, avec UIKit.

Je ne vais pas vous refaire le cours, qui est assez clair. 

Des choses qui me viennent par contre à l’esprit, en vrac, à retenir peut-être ! 

  •  Le principe des id, que chaque objet possède ; 
  • Un nil au lieu de null ! Je trouvais ça bizarre au début, mais je m’y suis fait ; 
  • Toujours mettre un nil à la fin d’un Array !! J’ai buggé comme un boulet sur un programme pendant un après-midi tout ça parce que je n’avais pas mis nil à la fin d’un NSArray… ; 
  • La méthode description, qui sert à écrire des log en console ^^ enfin pas que ça bien sur (cf NSString).

Des nom de classes à retenir et à parcourir dans la documentation pendant ses heures perdues : 

  • NSObject 
  • NSString / NSMutableString
  • NSArray /NSMutableArray
  • NSDictionary /NSMutableDictionary
  • NSSet / NSMutableSet
  • NSNumber
  • NSDate / NSCalendarDate

Assignement 1A – Hello Stanford!

laissez un commentaire »

 

Pas grand chose à dire sur ce premier TP. Il suffit de suivre le PDF. 

Sinon je viens de découvrir il n’y pas longtemps BoA, cette chanteuse sud-coréenne qui chante en japonais et en anglais. Je suis totally in love ^^

Le projet Xcode de ce TP.

BoA on the iPhone

Rédigé par Michel

3 mai 2009 à 16:44

Lecture 1 – Introduction to Mac OS X and Cocoa Touch

laissez un commentaire »

Cette première leçon est une introduction au développement iPhone (et au framework Cocoa Touch), et par extension au développement sur Mac OS X (avec Xcode et Interface Builder). En effet, pour développer des applications iPhone, il faut impérativement un Mac, avec Léopard tournant dessus. 

Pas vraiment de commentaires dessus, à part le poisson d’avril en début de cours ^^

Oh oui, Evan Dolln à la fin de la leçon, fait une petite démo d’une application toute simple avec un slider. Je vous conseille de la faire par vous même. Et d’essayer de la refaire, refaire, et la refaire le plus rapidement possible aussi ! C’est en forgeant qu’on deviens forgeron ^^ Vous devriez mettre entre 5 et 10 min à la faire, en prenant votre temps.

Allez je vais un peu vous aider. En gros vous devez : 

  • Créer une Window-Based Application
  • Dans le MainWindow.xib : 
  1.  Mettre un slider et un label dans la Window
  2.  Créer une classe Controller, en fixant ses cibles et action(s)
  3. Relier avec de belles lignes bleus ce qui va bien ensemble :p
  • Implémenter l(es) action(s) de la classe Controller dans Xcode pour changer la valeur du label en fonction de la position du bouton du slider.
    (N’oubliez pas dans IB, File->Write Class File…)
  • Build & Go !

 

Et voilà !
(Le projet zippé à télécharger.)

Lecture 1 Slider


I’m back ! ただいま !

avec 3 commentaires

Après 1 mois d’absence, je suis enfin de retour ! Et plein de choses se sont passées depuis le 1er avril ^^ J’ai été bien occupé ! (ou pas).

Et ça ne fait que commencer, avec la fin de l’année approchant, les projets à faire, les exams de fin d’année… Je vais avoir du boulot !

Malgré la somme astronomique de travail que je vais devoir fournir d’ici les prochaines semaines, je vais essayer de poster régulièrement à partir de maintenant.

J’annonce d’ailleurs une série d’articles sur le cours CS193P de Stanford. Depuis le 1er avril (tiens mon dernier post date de ce jour :p), en effet, des ingénieurs d’Apple donnent des cours aux étudiants de l’université de Stanford. 

Le petit plus, c’est que les polys et les TPs sont accessibles, mais en plus on peut regarder les cours en vidéo, via un podcast sur iTunes ! Oui oui !! Si l’anglais ne vous fait pas peur et que vous avez un mac avec Leopard, foncez ! (il faut aussi un peu d’amour d’expérience en programmation aussi). 

Je commencerai mes articles depuis le début, c’est-à-dire la Lecture One, histoire de me rafraîchir la mémoire et de partager aussi mon expérience.

http://cs193p.stanford.edu/

Sinon j’ai trouvé un stage de développeur iPhone ! Oui oui !!!!! Je le commence mi-juin ! Vous comprenez maintenant pourquoi je tiens à écrire des articles sur le cours de Stanford ^^ L’entreprise pour laquelle je fais travailler a créé les applications Deezer et YouNote par exemple. Je vous laisse chercher ^^

J’ai un twitter sinon, vu que c’est le nouveau site “in” du moment, et que le principe a l’air sympa, j’ai décidé d’en crée un. En espérant que ça m’apporte de l’audience haha ! 

http://twitter.com/michelmongkhoy

Pour ce qui est de la partie Japon/Manga, j’essayerai de poster quelques trucs, mais je ne promets rien !

Rédigé par Michel

3 mai 2009 à 12:11

Adieu Objective-C !

avec un commentaire

poissondavril

J’aurais pu appeler cet article “Cocoa, Objective-C Java, Gné ? (Final Part)”.

Vu sur Cocoa.fr … J’ai à peine eu le temps d’avoir peur, pour moins d’une seconde, avant que ma raison ne fasse le lien avec le 1er Avril ^^ Mais il semble vrai que les développeurs Objective-C, ça ne court pas les rues par rapport aux dévs Java. 

N’empêche j’ai toujours pas eu de poisson accroché à mon dos. Dommage que la tradition se perd, plus on devient vieux (21 ans, je suis un vrai senior), plus on l’oublie. Je fais confiance à mon petit frère de 12 ans et surtout à ma petite soeur de 9 ans pour m’accrocher un poisson ce soir ! 

En attendant le vrai poisson dans mon dos, voilà le mien :

|><ccc§>. 

Rédigé par Michel

1 avril 2009 à 14:12

Publié dans Blog

Tagged with

Maka Albarn

laissez un commentaire »

Maka Albarn

Maka Albarn

(Love)

À venir… plein d’articles sur Soul Eater.

Rédigé par Michel

31 mars 2009 à 21:42

Publié dans Anime

Tagged with

Cocoa, Objective-C, gné ? (Part 2)

avec 4 commentaires

Continuons le livre d’Aaron Hillegass. Après les premiers chapitres consacrés aux bases et au langage Objective-C en général, on s’attaque aux bases des frameworks de Cocoa. Place au chapitre “Cible et action”. 

Alors qu’en début du livre, on écrit notre première application Cocoa sans vraiment savoir ce que l’on fait (copiage bête de code, mais au résultat oh merveilleux), ici on va vraiment comprendre le mécanisme des messages.

Ma super première application Cocoa

Ma super première application Cocoa

Le mécanisme des messages est très simple. Dans Objective-C, tout est objet, et chaque objet peut communiquer avec un autre. Un objet peut envoyer un message à une autre objet cible, et cet autre objet pourra réagir au message et effectuer alors des actions. C’est comme si VOUS, vous demandiez à votre frère “Hey ! Passes moi le sel !”. Votre frère pourra alors vous donner le sel, ou bien vous le balancer en pleine figure, ou tout simplement vous dire “Non !”. Vous avez compris l’image : on envoie un message à une cible pour qu’elle effectue une action. 

Mais avec XCode et Interface Builder, le développement Cocoa est (pour l’instant) d’une convivialité déconcertante. Par exemple, il suffit de sélectionner votre bouton dans Interface Builder, on appuie sur la touche Contrôle+Clic et paff une jolie ligne bleu apparaît pour relier notre objet et notre bouton. On sélectionne l’action (implémenté par nous même) qu’on veut affecter au bouton et PAF : 

Quand on appuie sur le bouton, le nombre de caractères s'affiche !

Quand on appuie sur le bouton, le nombre de caractères s'affiche !

Ce petit programme était est en fait l’exercice de fin du Chapitre.

Mais l’on peut faire encore plus fort….

Mon compteur de caractères.... sur iPhone !

Mon compteur de caractères.... sur iPhone !

Si j’ai commencé le développement Cocoa, c’est que développer sur Mac, ça a l’air c’est fun ! Et puis malgré moi, j’aime bien Apple. Non pas que j’ai un iPod, un MacBook, une iCarte iMagineR (aujourd’hui j’ai séché les cours profité du soleil, juste parce que je n’avais pas mis la main sur ma carte perdue entre mon étagère et mon lit)… J’ai aussi un iPhone depuis peu… iPhone, le smartphone “en vogue” (prononcé à l’anglaise s’il vous plaît). Et aux possibilités de développement éNORmes. Si les gens (comme moi depuis que j’ai mon petit iPhone) ont envie d’apprendre Cocoa, c’est uniquement pour ça. 

Revenons à nos moutons. En Objective-C, tout est objet. Ma classe compteur, qui à partir d’une fenêtre, avec une texte box, d’un bouton et d’un label, permet d’afficher le nombre de caractères contenus. Je me dit bêtement : “ben je dois pouvoir exporter ma classe compteur pour une appli iPhone” ^^

Hop, File > New Project > Window-Bases iPhone Application I don’t even remember the name of the type of the projet, j’ajoute mes fichiers compteur.h/m, et non, non, ça veut pas Build & Go, vu que déjà ça veut pas Build ! Et moi qui pensait que ça allait être aussi simple que de développer sur un Mac. 

Et bien je n’avais pas tout à fait tort. Mon esprit d’informaticien se mets en mode “Debugage”. Bizarrement les NSTextField il n’aime pas. En fait, le nom des objets (un bouton, un label, etc.) ne sont pas exactement les même pour le développement iPhone, vu que déjà ce n’est pas les mêmes frameworks. Mais ouf, ils ressemblent à peu près à ceux de Cocoa. En moins d’une minute j’ai remplacé mon NSTextField par un UITextField et remplacé toutes les autres choses à changer. Pomme+S, Build & Go, et… Et voilà ! 

Comme dirait quelqu’un dont je ne me souviens plus du nom : c’est PUISSANT !

P.S. J’essayerai de mettre les fichiers sources au plus vite ^^

Rédigé par Michel

31 mars 2009 à 21:18

Publié dans Cocoa, iPhone

Tagged with , , ,

Cocoa, Objective-C, gné ?

laissez un commentaire »

Programmation Cocoa sous Mac OS X

Programmation Cocoa sous Mac OS X

[Billet misAjour:@"29/03/09"];
Je mettrais à jour ce billet au fur et à mesure de ma progression dans Cocoa. 

Ayant acheté depuis un moment déjà le livre “Programmation Cocoa sous Mac OS X” de Aaron Hillegass, il est temps de résumer ce que j’ai pour l’instant appris de ce livre. On commence par Cocoa et Objective-C !

Cocoa est API (Application Programming Interface), en français une interface de programmation d’applications sur Mac OS X. Cocoa réunit un ensemble de bibliothèques permettant d’exploiter  Mac OS. 

Objective-C est le langage utilisé pour développer des applications Cocoa sous Mac. Voici mes impressions.

Objective-C est une sorte de langage C mais mixé à la sauce Apple. C’est un langage orienté objet. Oui, une sorte de langage C mais qui gère l’objet, incroyable non ? 

Pour créer un tableau variable, rien de plus simple, il suffit d’écrire :
NSMutableArray *tab = [ [NSMutableArray alloc] init ];
et voilà , vous avez alloué l’espace de votre tableau et vous l’avez initialisé.

Et pour ajouter un NSString à ce tableau, il suffit de faire :
[tab addObject:maChaine]; // maChaine étant le NSString en question.

L’écriture avec les crochets déroute un peu, mais avec le temps on s’y fait. En tout cas j’aime bien pour l’instant ! 

La suite au prochain épisode !

Rédigé par Michel

29 mars 2009 à 15:37

Publié dans Cocoa

Tagged with ,

Des hiraganas pour ne pas avoir un blog d’un seul article…

avec 2 commentaires

Voilà je remplis mon blog de quelques pages sans grand intérêt, juste histoire de tester WordPress. Et aussi pour remplir un peu mon blog. J’aime pas les sites avec un seul article, ça fait vide ^^ 

Les hiraganas sont des lettres qui constituent le premier alphabet Japonais. J’ai du m’y mettre pendant 3 mois en mode flemmard pour écrire l’alphabet dans l’ordre. À moi les katakana ! 

Si vous voyez des carrés, et bien… euh… Installez la police appropriée (ou achetez vous un mac hahahaha).

あ い う え お 
a – i – ou – é – o 

か き く け こ
ka – ki – kou – ke – ko 

さ し す せ そ
ça – chi -çou – çé – ço 

た ち つ て と
ta – tchi – tsou – té – to 

な に ぬ ね の
na – ni – nou – né – no 

は ひ ふ へ ほ
ha – hi – fou – hé – ho 

ま み む め も
ma – mi – mou – mé – mo 

や ゆ よ
ya – you – yo  

ら り る れ ろ
ra – ri – rou – ré – ro 

わ を
wa – wo 


-n

Rédigé par Michel

28 mars 2009 à 21:40

Publié dans Japonais

Tagged with ,

Hello world!

laissez un commentaire »

Je me pose une question : qui a inventé le “Hello world!” ? Un petit tour sur Wikipedia… Haha ! Sacrés Kernighan et Ritchie ! N’empêche leur livre The C Programming Language fait toujours office de Bible pour les informaticiens. 

Bonjour le monde, donc !

Moué je préfère le hi five everybody !

Rédigé par Michel

28 mars 2009 à 18:35

Publié dans Blog