Xcode pas mal, mais pas encore eclipse...

Publié : 06.11.2003 - 20h30 par Oli

Oui je me suis un peu amuser avec Xcode depuis quelques jours, mais il souffre encore de quelques manques par rapport à eclipse.

Je ne sais pas si vous connaissez eclipse, sinon je vous invite à visiter http://www.eclipse.org, une version OsX est disponible.
( ftp://download2.eclipse.org/S-3.0M4-200310101454/eclipse-SDK-3.0M4-macosx-carbon.tar.gz)

En bref il apporte des fcts très pratique qui font gagner bcp de temps:

- compilation automatique à la volée à la manière de Xcode

- mais surtout interprétation du code en temps réel, et donc affichage des erreurs directement lors de la frappe...

- CTRL + SPACE lors de la frappe des variable, méthodes, classe et eclipse affiche plusieurs possibilités pour compléter automatiquement..

(Cette fonction n'est pas propre à eclipse, JBuilder, Together le font aussi, XCode.....
oui je croyais qu'il le faisait, mais j'ai apris après moulte essais et questions que cette fonctionnalité n'est pas dispo en édition de fichier java....)

-etc...

Voila personnellement j'utilise XCode uniquement pour recompiler les .java et créer un jolie application os x sous forme de package, mais pas pour l'édition (même si la gestion des fichier de langue semble très pratique).

Et vous? vous utilisez quoi?[/url]


Publié : 06.11.2003 - 23h29 par Sebastien Pennec

Effectivement, Xcode a l'air pas mal mais:

J'apprend en ce moment la programmation en C. Viendra ensuite en Java et en Obj-C.

J'aimerais beaucoup utiliser les outils de mon système (Mac OS X, faut-il le préciser?) pour m'exercer et me perfectionner, mais je n'arrive à rien avec XCode.
Pour le moment (je commence ces temps, hein…) il me faudrait juste pouvoir faire mon prog en C, le compiler et qu'il s'execute dans une fenêtre teminal, par exemple.
Je ne sais pas faire d'interface, et de toutes façon mes progs sont actuellement trop simplistes pour y ajouter des interfaces.

Donc ma question: comment faire, avec XCode ou un autre, pour que je puisse faire mon programme, le compiler et l'exécuter sans trop de complications?
Au cours, on utilise MS Visual C Studio (ou un nom du genre). Y'a rien de semblable sur Mac (ça m'étonnerais!)

Donc voilà: help! :wink:


Publié : 07.11.2003 - 7h24 par jibu

un copain programmeur m'avait dit: si tu veux qpprendre à programmer, laisse tomber le C, commence par un language orienté objet, C++-java !

je dis ça comme ça...


Publié : 07.11.2003 - 7h27 par Sebastien Pennec

va dire ça à mes profs… :?


Publié : 07.11.2003 - 8h22 par GIL

jibu a écrit :un copain programmeur m'avait dit: si tu veux qpprendre à programmer, laisse tomber le C, commence par un language orienté objet, C++-java !

Pas d'accord avec toi !

Le C est vraiment important aux débutants de comprendre COMMENT programmer, avec des boucles, la récursivité, etc ... La technique de base, quoi !

Si on leur impose en même temps la notion du orienté objets, ils seront perdus...


Publié : 07.11.2003 - 9h12 par Fabien

Paperissima a écrit :Pas d'accord avec toi !

Le C est vraiment important aux débutants de comprendre COMMENT programmer, avec des boucles, la récursivité, etc ... La technique de base, quoi !

Si on leur impose en même temps la notion du orienté objets, ils seront perdus...


moi je suis passé du Basic au Java, sans passer par le C (bon j'ai fait aussi du Pascal et du Fortran, d'accord).
En fait je pense que la plus grande erreur de la plupart des bouquins c'est d'essayer d'enseigner l'orienté-pbjet en le comparant au C (voir "Thinking in Java" par exemple). Et là je dis non !
Moi j'ai lu d'abbord un bouquin sur la théorie de l'orienté-objet puis je me suis lancé dans Java sans jamais avoir fait de C. Et c'est là que l'OO prend toute sa mesure.

Pour revenir aux IDE. Ben moi j'utilise XCode (après Project Builder) et il me satisfait plutôt bien. En fait j'adore Interface Builder.
Est-ce que IE est utilisable avec Eclispe, ou est-ce que ce dernier ne fait que du Pure-Java ?


Publié : 07.11.2003 - 21h06 par jibu

bon personnelement, j'ai choisis la programmation orienté projet ... c'est pas efficace du tout, mais ça fait causer en société :shock: :o 8)


Publié : 07.11.2003 - 21h43 par Oli

Sébastien Pennec a écrit :Donc ma question: comment faire, avec XCode ou un autre, pour que je puisse faire mon programme, le compiler et l'exécuter sans trop de complications?
Au cours, on utilise MS Visual C Studio (ou un nom du genre). Y'a rien de semblable sur Mac (ça m'étonnerais!)

Donc voilà: help! :wink:


Avec Xcode tu peux créer un projet C++ Tool, ça te génère un projet basic avec un main. Tu vas me dire mais je veux faire du C pas du C++, mais le compilateur est le même, et le C++ inclut le C, donc pas de problème il me semble...

Fabien a écrit :Pour revenir aux IDE. Ben moi j'utilise XCode (après Project Builder) et il me satisfait plutôt bien. En fait j'adore Interface Builder.
Est-ce que IE est utilisable avec Eclispe, ou est-ce que ce dernier ne fait que du Pure-Java ?


Oui interface builder est génial, je l'ai essayé qques fois en testant des tutoriaux, et c'est vraiment cool. (en fait on m'a dit qu'il existait deja du temps du Next...)
Mais bon, il génère du java uniquement utilisable sur OsX, et apparemment il n'existe rien pour le convertir en Swing.?!..

pour en revenir a eclipse je ne crois pas qu'il est possible de faire le lien avec un interface IB, mais bon ... j'ai jamais creusé


Publié : 08.11.2003 - 8h02 par Jerome

Pour en revenir au fait de commencer la programmation par le C puis d'apprendre l'OO, je suis convaincu (mais je n'ai jamais pu le vérifier) qu'une fois que quelqu'un pense en procédural, c'est plus difficile de passer à l'OO, ou alors, ce sera du mauvais OO, c'est à dire des appels procéduraux enrobés dans une classe.
Je ne vois pas en quoi, pour un débutant, il est plus simple de lui montrer le main() d'un programme C pour qu'il apprenne les structures de bases et de lui expliquer que main() est appelé automatiquement plutôt que de lui monter (par exemple en Java) qu'il faut déclarer un classe et que c'est le main() de sa classe qui sera appelé
Pour apprendre les structures de bases, pas besoin qu'il connaisse déjà plus de notions que nécessaire.

Ensuite, je pense qu'il est mieux pour un débutant que la notion d'objet, d'encapsulation etc lui soit apprise au plus vite, afin d'éviter qu'il prenne les mauvaises habitudes qu'on peut facilement prendre en procédural et qu'il comprenne directement la notion d'objets et d'héritage, qui finalement est bien plus naturelle que la notion de procédures.

Je ne sais pas si l'observation qui suit est exacte, mais pour ma part, je crois que c'est presque une tradition dans les écoles en informatique d'apprendre d'abord le C tout simplement parce que les profs ont pour la plupart commencé la programmation à l'époque ou l'OO n'était pas encore connu, ont donc appris l'informatique par des languages procéduraux. Ce n'est que ces dernières année qu'ils ont du comprendre et maitriser les concepts objets, et je pense que pour cette raison, beaucoup ne sont pas encore à l'aise en OO et pensent qu'il est naturel de commencer la programmation par l'apprentissage d'un language procédural.

Jerome


Publié : 08.11.2003 - 22h42 par jibu

J'ai pas tout compris, mais ça à l'air cool ce qui dit.

t'as compris Seb, faut sécher les cours d'info, mais c'est pour ton intégrité de programmeur.

Imprime tout ça et t'aura un mot d'excuse


Publié : 10.11.2003 - 10h23 par Sebastien Pennec

Jibu,

Ben je vais étudier la question... :wink:

Plus sérieusement, en faisant un nouveau projet de command-line tool, avec fichier source en C++, ça marche nickel...


Publié : 18.11.2003 - 14h26 par Barock

Appars ça, les compilateurs C++ et C ne sont pas les mêmes. Mais celui de C++ (g++) compile du code C.
Enfait si on a des programmes vriament très basiques (genre un fichier) lun truc bien simple est la ligne de commande:
> gcc -o monProg MonProgramme.c
>./monProg
gcc compile "MonProgramme.c" et crée l'eéxécutable "monProg".

NonNon, j'ai bien MacOsX à la maison, pas Lunix ;-)


Publié : 19.12.2003 - 21h27 par Moumoutte

jibu a écrit :un copain programmeur m'avait dit: si tu veux qpprendre à programmer, laisse tomber le C, commence par un language orienté objet, C++-java !

je dis ça comme ça...


Personellement je pense que ni le C ni le C++ ni le java ne sont de bon languages pour démarrer. Pour les débutants, rien ne vaut un bon vieux BASIC: avec des concepts et des fonctions de bases, ont peut vite faire des programmes assez interessants sans trop se compliquer, c'est motivant pour les débutants.

remarque:
à l'EPFL, section Informatique, on commence par du java. Ca me semble assez bon pour les débutants même si certains ont pas mal de peine..

Sébastien, avec un Xcode, fais un Standard tool pour avoir un programme en C simple.


Publié : 20.12.2003 - 10h00 par Fabien

Moumoutte a écrit :Personellement je pense que ni le C ni le C++ ni le java ne sont de bon languages pour démarrer. Pour les débutants, rien ne vaut un bon vieux BASIC: avec des concepts et des fonctions de bases, ont peut vite faire des programmes assez interessants sans trop se compliquer, c'est motivant pour les débutants.


Non, car le basic n'est pas orienté-objet. Et je reste convaincu qu'il faut apprendre l'OO car c'est beaucoup plus naturel.

La syntaxe de Java étant proche de celle du C ça en fait un language parfait pour commencer.


Publié : 23.01.2004 - 18h32 par cux221

Moi je dis tout dépend de ce que tu veux faire. J'ai commencé par OCaml
puis j'ai appris le C et Java en même temps, j'ai pas eu trop de problème.


Publié : 08.02.2004 - 22h46 par Reno

Non, car le basic n'est pas orienté-objet. Et je reste convaincu qu'il faut apprendre l'OO car c'est beaucoup plus naturel.


Si tu prends un logiciel comme RealBasic, c'est quand même orienté objet, et c'est du Basic. Ça reste à mes yeux la meilleure façon de commencer la programmation (juste un problème de prix). J'ai pas encore essayé l'applescript studio, mais pour un mac-user ça peut aussi être intéressant.


Publié : 09.02.2004 - 9h40 par Fabien

Franchement RealBasic c'est de la bidouille.
C'est rendre OO un language qui ne l'est pas.

Je maintient que Java est tellement simple, naturel et complet que ce serait dommage de ne pas commencer avec ça.


Publié : 09.02.2004 - 12h32 par Reno

Cette remarque peut aussi s'appliquer au C, qui est n'est pas non plus à la base orienté objet. Pourtant je ne sais pas si tu qualifierais le C++ ou l'Obj-C de bidouille...


Publié : 09.02.2004 - 12h55 par Fabien

Je ne sais pas si le C++ et l'OBJ-C sont de la bidouille, mais c'est certain que je ne les conseillerais pas pour un programmeur débutant.