GNUstep and Cocoa

marssmarss Membre
03:18 modifié dans Actualités #1
Bonjour,

J'ai passé des années à  utiliser NeXTstep/OpenSTEP dans les années 90 et je suis quelque peu dégoûté par le revisionnisme d'Apple. Je decouvre ce site à  l'instant et je suis très content de voir autant de gens réunis autour de Cocoa. Je travaille sous MacOSX Tiger, OpenStep, Linux et Windows (très dispersé le garçon :-) ). J'ai testé (pour vous) GNUstep: c'est pas au point mais c'est pas loin. J'en appelle donc au petite main qui voudrais que leur application Cocoa tourne aussi bien sur Linux/FreeBSD/NetBSD/Darwin que sous OpenStep (héroique...) ou même Windows.

L'idée de GNUstep date d'il y a plus de dix ans. Les API OPENStep c'est bien mais pourquoi ça tourne que sur Mach, Solaris, Windows et pas ailleurs? Pourquoi c'est si cher?... Les fans et defenseurs de NextStep sont partis en 'croisade' pour defendre l'une des meilleurs API de tout les temps. Simple et efficace. Le projet GNUstep avait pour idée de proposer l'efficacité de NeXT sous les unix libres qui florissaient dans les années 90.

Pour faire court: jetez donc un oeil sur www.gnustep.org : et rêvez comme les gens du GNU (ou comme Steve Jobs quand il ne pensait pas qu'à  son compte en banque) à  une API comme Cocoa (OpenStep) sur toutes les machines. Imaginez vos programmes sur Mac mais aussi sous Unix ou même (cette grosse merde de) Windows...

L'idée de ce poste sur ce forum que je découvre à  l'instant est de faire réagir et ouvrir un débat. Imaginez demain! Plus de mac que des PC. Apple fait faire des machines Intel. MacOSX tourne sur PC mais c'est trop cher. Les développeurs s'en vont. Bref, quelle solution autre que le libre est l'idée que ses programmes tournent dans vingt ans. J'ai été heureux de connaitre le projet GNUstep en 1996 quand NeXTstep mourrait et grace à  ça mes applis tournent sous MacOSX. Il faut que cette interface de programmation InterfaceBuilder(NeXT)/ProjectBuilder GORM/ProjectCenter IB(Apple)/XCode dure et dure longtemps... pour les developpeurs.. pour les utilisateurs...

Marss

Réponses

  • 03:18 modifié #2
    Salut,, et bienvenue sur le site.

    En fait, GNUStep est connu et un débat du genre a déjà  eu il y a quelque temps:
    http://www.objective-cocoa.org/forum/index.php?topic=284.0

    Pour ma part, je reste très attaché à  GNUStep, mais par manque de temps, je n'ai pas envie de refaire tout ce qui ce qui se faisait 'à  l'ancienne' sans les bindings. Donc ma 'voie' actuelle est de faire des classes qui sont compatibles GNUStep (GNUStep va plus loin que OpenStep, dans la mesure où il intègre des classes de OS X (NSToolbar, NSKeyedArchiver, NSIndexSet pour ne donner que quelques exemples), mais ce n'est hélas pas 'suffisant'.
  • CéroceCéroce Membre, Modérateur
    03:18 modifié #3
    Oui mais...

    Programmer une application ne se résume pas à  programmer son interface utilisateur dans beaucoup de cas. J'ai besoin de CoreAudio, CoreImage, QuickTime et compagnie dans mes applications. Aujourd'hui, il me semble important d'interfacer mon appli avec iTunes ou iPhoto.

    Désolé, mais je ne veux pas faire du multi-plateforme si c'est pour programmer avec le plus petit dénominateur commun de chacune.

    Reste que ça peut être utile pour une partie d'un projet multi-plateforme justement.
  • odjauodjau Membre
    03:18 modifié #4
    Je suis d'accord avec Céroce, faire du "multiplateforme" oblige à  utiliser le plus petit dénominateur commun de chacune des plateforme et c'est quelquechose de très frustrant :(
  • marssmarss Membre
    03:18 modifié #5
    Merci pour vos réponses (Renaud, Céroce, Odjau)...

    Effectivement Apple ajoute pleins de bonnes choses qui deviennent de plus en plus indispensables. Mais, avec une extrême lenteur, GNUstep tend à  respecter plus Cocoa qu'OpenStep.
    L'idée utopiste de mon poste était de tenter de créer un engouement/une reaction pour GNUstep. Mon espoir n'est pas tout à  fait de voir les développeurs se contraindre dans le GNUstep actuel mais plutôt d'attirer des petites mains (et grands cerveaux) au développement de GNUstep dans le but d'intégrer les nouvelles spécifs.
    Depuis MacOSX, GNUstep s'efforce bien souvent par projet parallèle de faire évoluer les API mais ça manque cruellement de développeurs. Il y a dejà  le Java sous GNUstep et des ajouts de NS* mais bien sûr ça ne suffit pas pour du multimedia. Gageons qu'un jour, il y ait tout. Mais, faut pas trop rêver, s'il y a toujours si peu de monde dans l'équipe GNUstep, Apple va continuer encore longtemps le jeu du chat et de la souris: en proposant de nouvelles fonctions alors que le GNU vient de finir d'implementer les anciennes.
    L'idée du multiplateforme (par du logiciel libre ou pas), c'est d'en finir avec les pertes de temps pour le portage d'applis dans le monde industriel et d'assurer la perennité des produits. Quand NeXT a arreté le hardware, forte heureusement les applis tournaient sous Mach PC, Solaris, HP et Windows. Quand Apple commencera à  faire du PC, quand sera-t-il du software ?

    En tout cas bon développement et bravo pour le site (malgré les bugs de php  ;) )

    Marss
Connectez-vous ou Inscrivez-vous pour répondre.