Pourquoi si peu de Cocoa ????

TomX

Membre confirmé
15 Avril 2001
88
0
Visiter le site
Je n'aime pas carbon...

Notre nouveau systeme est doté de quelque chose de fabuleux... Et d'extremement agréable à utiliser: Cocoa !

Alors pourquoi IE en soi-disant carbon, pourquoi Office X carbon, Photoshop, etc...

Pour l'instant, utiliser IE classic, ou IE carbon, de toute facon, j'ai l'impression de toujours etre sous OS9...

Pas les superbes polices lissées, pas de redimensionement convenable, et j'en passe...

Je crois qu'OSX sera vraiment OSX à mes yeux lorsque toutes ces applis sauront tirer profit de tous les avantages de ce systeme...
 
Je suis entièrement d'accord. C'est d'aileur la raison pour laquelle je boycotte systèmatiquement IE sur X... J'utilise OmniWeb 4.1 et il est parfait. Ses défauts sur Java et en coréen(je suis coréen) et encore importants mais il est beaucoup plus agréable de surfer avec ce logiciel...
 
Le problème avec cocoa c'est que programmable qu'en Objectif C et que beaucoup de programmeurs travaillent encore en C et en C++.

Moi personnellement je préfère travailler en C++ et j'aime pas trop l'objectif C, donc go to Carbon.
 
Bonjour,

En ce qui concerne Cocoa, je ne sais pas si son utilisation peut être appliqué à tout les types de développement.

Par exemple, les applications Apple utilisent elles même autres chose que Cocoa dans bien des cas, citons quelques cas celèbres :
Finder, Sherlock, et iTunes qui ne seraient pas des applications Cocoa.

Cordialement
 
Re salut,

Je dit ça car je l'ai lu sur une mailing list Apple. Mais comment le vérifier ?
Comment savoir à coup sur qu'une application utilise Cocoa ou est simplement écrite en C/C++ sur X ?

Cordialement
 
Question en parallèle a ce sujet : Objective C est-il plus puissant que C/C++.

Il y a t'il des choses qu'on peut pas faire en objective C ou tout est permis
 
J'avais lu sur ce forum une analogie intéressante...(pardon de ne pas pouvoir la rendre à son auteur!) :

Programmer en langage objet, c'est comme construire une maison avec des murs, des fenetres, un toit, plutot qu'avec du ciment, du sable, des briques...

En gros, la programmation en cocoa est grandement facilitée par les outils de très haut niveau fournis...

Par exemple, un éditeur de texte, ou un lecteur quicktime est deja tout fait... il n'y a plus qu'a l'insérer dans le programme...

Mais c'est vrai que tant que peux de programmeurs se seront tournés vers le langage objet, la plupart des logiciels seront écrits en C... Quel dommage!

Espéront juste que Microsoft ne fera pas entrave à son insertion dans le monde de la prog par la politique que l'on connait...
 
<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par TomX:
Mais c'est vrai que tant que peux de programmeurs se seront tournés vers le langage objet, la plupart des logiciels seront écrits en C... Quel dommage!
<HR></BLOCKQUOTE>
tiens
Je croyais que le C était du language orienté objet????

Mais le cocoa va venir d'abbord sur les app issues de neXT puis sur les petits freewares/shareware dévelopé par des pationnés et enfin sur des gros softs nouveaux (MAYA...)
Enfin les appli monstrueuses du style MS office ou les softs d'Adobe seront de +en+ carbonisées elles ne marcheront plus que le X et petit à petit disposeront de des services cocoa.....
grin.gif
grin.gif


Mais je préfère des gros soft maintenant en Carbon que dans 2 ans en Cocoa..
 
<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Ouizard:

tiens
Je croyais que le C était du language orienté objet????
<HR></BLOCKQUOTE>

c'est le C++, qui est orienté objet
wink.gif


Je pens euq ele problème n'est pas d'attendre que les développeurs se mettent à l'objet (tout le monde y est, déjà). C'est juste que dans ce domaine, la concurrence entre langage est féroce: C++, java, bientôt C#... Que peut bien faire l'objectiveC la dedans ?
 
Pour répondre aux differentes messages et aux affirmations plus ou moins justes, il est indispensable de remettre certaines choses à leur place.

• Cocoa necessite une réecriture totale des logiciels que l'on veut adapter. Pour leurs logiciels "classic", beaucoup donc préferent utiliser l'API de transition carbon.

• Le C n'est pas un langage à objets.

• Le C++ est de loin le pire (à tous les niveaux) et le moins élégant des langages à objets, bien que très populaire (comme le chocolat mars).

• Cocoa supporte Java et Objective-C.

• Objective-C est l'un des langages à objets le plus puissant. Objective-C reprend la syntaxe de base du C et possede des extensions autorisant la programmation objet.

[14 octobre 2001 : message édité par Cocoa]
 
<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Cocoa:
bien que très populaire (comme le chocolat mars).<HR></BLOCKQUOTE>

…encore un coup de nesquick et on aura presque fait toutes les marques, et le poulain de mon enfance, il est où? hein, je vous le demande…
confused.gif
 
Juste un petit mot en + bien que Cocoa (le mec plus haut, pas le système
smile.gif
) ait très bien résumé la situation :

1) C++ est en effet un des pires langages objet qui soit et de plus, bien inférieur à objective C. Le terme inférieur étant ici employé au sens strict : on fait en objc des choses qu'on ne peut pas faire en C++ sauf par une gymnastique qui donne un mal de tronche pendant des semaines, et ceci à un niveau conceptuel.

2) Le développement d'une application sous OS X est structurée objets car le système LUI-MEME est objet. Ce qui n'empeche pas de déclarer un objet avec du code en objc pour les appels Cocoa, de lui rajouter des fonctions en C++ agrémentées d'un peu de C pour aller plus vite... Bref, on peut mixer ce qu'on veut.

3) Cocoa n'est qu'une couche système donnant accès à des bibliothèques d'objets tout faits. On peut très bien utiliser des objets Cocoa dans 99% du temps, et rajouter comme je l'ai dit plus haut du code C/C++ pour utiliser des fonctions non accessibles sous Cocoa (couches basses d'unix notemment).

Voila, c'est à peu près tout.
smile.gif
 
Bonsoir,

J'ai parcouru les exemples fournis sur le CD développeur pour essayer de me faire une idée sur la clarté de l'Objective C. Le C++ ne m'avais jamais vraiment convaincu sur la clarté de son écriture.

Considérez vous que l'exemple TextEdit fourni par Apple est un bon exemple de ce que peut donner un source écrit en Cocoa en ce qui concerne la lisibilité ?

Si non, que me conseillez vous pour essayer de me forger une opinion ?

Deuxième question, l'objective C existe sur quelles plateformes ?

Cordialement
 
Faut pas déconner, le C++ est un exelent langage de programmation et très puissant.
De plus énnormément d'applications sont écrites en C++, notament de plus en plus les jeux.
Ca fait 4 ans que j'utilise ce langage et j'ai toujours été emplement satisfait.
C'est domage je trouve pour apple de ne pas avoir orienté Cocoa vers le C++, un peu à la sauce Visual C++ sous Windows, mais en mieux.
De plus, il est très bien plus répendu que l'obj-c.
 
<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>
C'est domage je trouve pour apple de ne pas avoir orienté Cocoa vers le C++, un peu à la sauce Visual C++ sous Windows, mais en mieux.
De plus, il est très bien plus répendu que l'obj-c.
<HR></BLOCKQUOTE>

Windows est plus répandu que mac OS, ce n'est pas pour ca qu'il est mieux.

Quant à l'orientation Cocoa -&gt; C++, il est plutot dommage que les concepteurs du C++ ne se soient pas basés sur des langages purement objets comme Smalltalk ou Eiffel car le C++ aurait la tête d'objective C. Les dérives permissives du C++, sa complexité de mise en oeuvre (voire la sur-définition des opérateurs : mal utilisée, le programme devient incompréhensible, et bonjour el débuggage !!) et l'impossibilité de typage dynamique autre que par le biais de "bidouilles de programmations" en font un langage qui aurait "le cul entre deux chaises", c'est à dire à mi-chemin entre un langage structuré de base et un langage Objet.

Si on rajoute qu'on peut facilement détourner les préceptes même de la COO avec les héritages croisés, que l'encapsulation des données peut être violée très facilement, on obtient un langage qui est certe, puissant, mais un cran au-dessous d'un vrai langage OO.

Quant au fait qu'il soit très utilisé, c'est parce qu'il s'est annoncé comme une extension logique au C ANSI de 1989, et qu'il n'y avait pas bcp d'alternatives Grand Public crédibles sur le marché.

Donc, Cocoa en C++ n'aurait pas la souplesse ni la puissance que Cocoa en objc.

M'enfin, ce que je dis n'engage que moi....
 
C'est possible ça ????
confused.gif
confused.gif
confused.gif


De faire une appli Carbon avec quelques API Cocoa ?????

On peut faiire la transisition en douceur ???


Je croyais que c'était l'un ou l'autre ???
 
En fait cocoa sert surtout a gerer les fonctions les plus utilisées dans une appli (Interface, acces aux fichiers, texte, drag & drop) par contre pour ce qui est d'implémenter des fonction réseau (pour un prog client serveur) il vaut mieux faire appel au socket unix et dans ce cas ce n'est plus du cocoa c'est du c voir du c ++. Résultat : On peut utiliser un peu de cocoa, un peu de java, un peu de c et de c++. En fait expérience faite l'utilisation de cocoa fait gagner un temps enorme au niveau de le gestion de l'interface de l'appli, avant le code pour gerer les menus et les fenetres représentait une grande partie du développement, maintenant tout est automatique ... ou presque ...
 
Il me semble stupide de préférer Cocoa à Carbon, du point de vue utilisateur... le fait que IE ne lisse pas les caractères ne vient pas du fait que IE est écrit en Carbon; c'est simplement que IE utilise QuickDraw, et non Quartz. Et oui, on peut utiliser Quartz dans une appli Carbon.
Si les applis Carbon ont tendance à ressembler à des applis Classic, c'est simplement que ce sont des portages (peut-être mal réalisés) d'applis Classic. L'API Carbon n'est pas en cause.

Préférer Cocoa, c'est simplement une question pour le développeur. Pour utiliser Cocoa, deux solutions : Objective C ou Java. ObjC est peut-être beau et élégant, mais "Apple-only" donc pas susceptibles d'intéresser les développeurs Wind*ws.
Quant à Java... j'aime bien personnellement pour son côté "cross-platform", donc avec Swing, pas Cocoa
rolleyes.gif


Les APIs Carbon sont superbes, beaucoup sont toutes neuves pour MacOS X, et je ne vois pas ce qu'on peut leur reprocher *objectivement*
grin.gif


Autre différence entre Cocoa et Carbon : les applis Cocoa sont au format Mach-O ("natif" pour MacOS X),
alors que les applis Carbon sont en Mach-O ou PEF (format Classic)...