|
Fr:NeoOffice et Aqua
From NeoWiki
Revision as of 14:35, 7 July 2006 (edit) Samwise (Talk | contribs) m (Edited the "Fr:NeoOffice/J|NeoOffice" link to "Fr.NeoOffice|NeoOffice") ← Previous diff |
Current revision (03:32, 4 July 2012) (edit) (undo) Sardisson (Talk | contribs) (→J'ai une question sur le design ou le développement de NeoOffice; où puis je obtenir une réponse ? - update link) |
||
(22 intermediate revisions not shown.) | |||
Line 1: | Line 1: | ||
+ | {{fr:Fixme}} | ||
''Questions fréquemment posées à propos du design et du développement de NeoOffice'' | ''Questions fréquemment posées à propos du design et du développement de NeoOffice'' | ||
Line 4: | Line 5: | ||
=== Pourquoi NeoOffice n'a pas les "boutons bleus" typiques de l'interface Aqua de Mac OS X ? === | === Pourquoi NeoOffice n'a pas les "boutons bleus" typiques de l'interface Aqua de Mac OS X ? === | ||
- | + | Depuis NeoOffice 2.0 Aqua Beta, NeoOffice inclut une "Aquafication" considérable. Les utilisateurs de Mac qui sont clairvoyants (mais y en a-t-il d'autres ?) peuvent remarquer que certaines choses ne sont pas encore tout à fait au point, mais ne vous inquiétez pas ; c'est seulement la première version de NeoOffice dotée de nombreux gadgets Aqua, et les développeurs travaillent à éliminer tout ce qui reste d'affreux. | |
Le but est d'ajouter lentement les fonctionnalités Aqua à NeoOffice pour qu'il soit de mieux en mieux intégré dans Mac OS X jusqu'à ce qu'il ne reste plus une seule preuve qu'il ait été autre chose qu'une application Mac OS X. | Le but est d'ajouter lentement les fonctionnalités Aqua à NeoOffice pour qu'il soit de mieux en mieux intégré dans Mac OS X jusqu'à ce qu'il ne reste plus une seule preuve qu'il ait été autre chose qu'une application Mac OS X. | ||
Line 12: | Line 13: | ||
=== Quels sont les avancées les plus récentes de l'"Aquafication" ? === | === Quels sont les avancées les plus récentes de l'"Aquafication" ? === | ||
- | Etat au mois de | + | Etat au mois de Juin 2007 : |
+ | * Support de la fonction QuickLook de Mac OS X 10.5 (06/2007) | ||
+ | * Support de la possibilité de modifier le clignotement du curseur en utilisant la propriété standard de Cocoa | ||
+ | * Les widgets en arrière-plan apparaissent maintenant désactivés et le curseur ne clignote plus en arrière-plan (05/2007) | ||
+ | * Support de l'indicateur de "modifications non enregistrées" dans le bouton de fermeture de la fenêtre (04/2007) | ||
+ | * Les documents NeoOffice apparaissent maintenant dans le menu "Derniers documents utilisés" de Mac OS X (03/2007) | ||
+ | * Les boutons des barres d'outils sont maintenant des boutons biseautés Aqua (03/2007) | ||
+ | * Nouvel ensemble d'icônes Aqua (02/2007) | ||
+ | * Fenêtres de dialogue "Ouvrir" et "Enregistrer" natives (Cocoa) (07/2006) | ||
+ | * Nouvelles icônes de documents plus conformes à l'apparence Aqua (07/2006) | ||
+ | * Les icônes désactivées dans les barres d'outils ont l'apparence Mac OS X correcte (auparavant elles étaient d'un gris soutenu) (07/2006) | ||
+ | * Nombreux gadgets Aqua (barres de défilement, boutons, barres de progression, etc.) (04/2006-07/2006) | ||
* Compatibilité améliorée avec le logiciel de dictée de voix (10/2005) | * Compatibilité améliorée avec le logiciel de dictée de voix (10/2005) | ||
* Support de l'impression de fichiers EPS intégrés aux documents (09/2005) | * Support de l'impression de fichiers EPS intégrés aux documents (09/2005) | ||
Line 45: | Line 57: | ||
*Carbon (sorte de mode de compatibilité OS 9, aussi utilisé par Mozilla/Firefox) | *Carbon (sorte de mode de compatibilité OS 9, aussi utilisé par Mozilla/Firefox) | ||
*Cocoa (nouveau cadriciel adapté de NeXT pour Mac OS X) | *Cocoa (nouveau cadriciel adapté de NeXT pour Mac OS X) | ||
- | *Java (langage multi- | + | *Java (langage multi-plateforme, incluant JFC/Swing pour des éléments d'interface ressemblant à ceux natifs) |
- | [[NeoOffice/C]] (le projet de prototype original) fut une tentative utilisant Cocoa et Carbon. Le projet le plus réussi, [[Fr:NeoOffice|NeoOffice]] (anciennement NeoOffice/J), utilise actuellement un mix de Java 1.4.2 et Cocoa. | + | [[NeoOffice/C]] (le projet de prototype original) fut une tentative utilisant Cocoa et Carbon. Le projet le plus réussi, [[Fr:NeoOffice|NeoOffice]] (anciennement NeoOffice/J), utilise actuellement un mix de Java 1.4.2/1/5, Carbon, et Cocoa. |
=== Alors... NeoOffice est écrit en Java? === | === Alors... NeoOffice est écrit en Java? === | ||
Line 53: | Line 65: | ||
Non. | Non. | ||
- | NeoOffice est une version native Mac OS X d'[[Fr:OpenOffice.org|OpenOffice.org]] utilisant des | + | NeoOffice est une version native Mac OS X d'[[Fr:OpenOffice.org|OpenOffice.org]] utilisant des petites parties de code Java pour l'affichage et la configuration. |
- | OpenOffice.org est écrit principalement en C++ portable. Néanmoins, NeoOffice utilise l'intégration avancée de Java dans Mac OS X pour introduire le look and feel OS X. En d'autres termes, les petites parties en Java ont principalement à voir avec comment l'application apparait aux yeux de l'utilisateur. Les "entrailles" de la suite bureautique sont écrits en C++. (Le code composant NeoOffice provient à 99% du code partagé entre les différentes plateformes supportées d'OpenOffice.org et 1% du code est spécifique à Mac OS X et contient du Java, C++, C et Objective-C.) | + | OpenOffice.org est écrit principalement en C++ portable. Néanmoins, NeoOffice utilise l'intégration avancée de Java dans Mac OS X pour introduire le look and feel OS X. En d'autres termes, les petites parties en Java ont principalement à voir avec comment l'application apparait aux yeux de l'utilisateur. Les "entrailles" de la suite bureautique sont écrits en C++. (Le code composant NeoOffice provient à 99% du code partagé entre les différentes plateformes supportées d'OpenOffice.org et 1% du code est spécifique à Mac OS X et contient du Java, C++, C et Objective-C. Sur Ohloh.net vous pouvez voir que le code spécifique à NeoOffice est [http://www.ohloh.net/projects/4043/analyses/latest à 93% du C/C++].) |
De ce fait, NeoOffice tourne seulement sur des Macintosh équipés de [[Wikipedia:Mac_os_x|Mac OS X]] 10.2.x, 10.3.x ou 10.4.x — pas sur Mac OS 9, Windows, Linux, Darwin ou toute autre forme d'UNIX. | De ce fait, NeoOffice tourne seulement sur des Macintosh équipés de [[Wikipedia:Mac_os_x|Mac OS X]] 10.2.x, 10.3.x ou 10.4.x — pas sur Mac OS 9, Windows, Linux, Darwin ou toute autre forme d'UNIX. | ||
Line 63: | Line 75: | ||
Comme cela a été mentionné au dessus, Java est principalement utilisé pour fournir le "look & feel" de Mac OS X. Ce qui fait fonctionner NeoOffice n'est pas le langage Java lui même mais plutôt les bibliothèques de la machine virtuelle Java comme Java 2D pour l'affichage et AWT pour les menus. Ceux-ci sont déjà natifs dans la machine virtuelle d'Apple dans le sens ou Java 2D utilise Quartz et AWT est en Carbon. [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=4218#4218] | Comme cela a été mentionné au dessus, Java est principalement utilisé pour fournir le "look & feel" de Mac OS X. Ce qui fait fonctionner NeoOffice n'est pas le langage Java lui même mais plutôt les bibliothèques de la machine virtuelle Java comme Java 2D pour l'affichage et AWT pour les menus. Ceux-ci sont déjà natifs dans la machine virtuelle d'Apple dans le sens ou Java 2D utilise Quartz et AWT est en Carbon. [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=4218#4218] | ||
- | La quantité de code écrite en Java a aussi diminué avec le temps. Quand NeoOffice/J a été mis à jour avec le code d'OpenOffice.org 1.1.2 (NeoOffice/J 1.1 Alpha), le rendu du texte a été modifié pour utiliser les API natives ATSUI de Mac OS X au lieu de Java puisqu'elles sont mieux adaptées à des mises en formes complexes que ne le sont celles de Java. [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=3692#3692] D'autres fonctionnalités n'ont jamais été implémentées en Java (par exemple, le menu Dock qui utilise Carbon). | + | La quantité de code écrite en Java a aussi diminué avec le temps.[http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=60734#60734] Quand NeoOffice/J a été mis à jour avec le code d'OpenOffice.org 1.1.2 (NeoOffice/J 1.1 Alpha), le rendu du texte a été modifié pour utiliser les API natives ATSUI de Mac OS X au lieu de Java puisqu'elles sont mieux adaptées à des mises en formes complexes que ne le sont celles de Java. [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=3692#3692] D'autres fonctionnalités n'ont jamais été implémentées en Java (par exemple, le menu Dock qui utilise Carbon). |
=== Pourquoi ne travaillez vous pas sur une version Cocoa d'OpenOffice.org Aqua ? === | === Pourquoi ne travaillez vous pas sur une version Cocoa d'OpenOffice.org Aqua ? === | ||
Line 75: | Line 87: | ||
''Aqua est aqua''. | ''Aqua est aqua''. | ||
- | Cette question est souvent posée par les développeurs et les | + | Cette question est souvent posée par les développeurs et les utilisateurs professionnels. Les utilisateurs moyens, d'un autre côté, tendent à juger uniquement le résultat. Comme l'a dit un testeur : |
- | "Si | + | "Si cela ressemble à un canard, marche comme un canard et caquète comme un canard, alors, pour l'utilisateur moyen, c'est un canard et les utilisateurs moyens ont clairement dit qu'ils voulaient un canard; que le canard boive du chocolat chaud ou du café n'a pas d'importance." |
- | Et, comme le dit [http://daringfireball.net/linked/2005/may#tue-31-apis John Gruber], après avoir cité [http://lists.apple.com/archives/Carbon-dev/2005/May/msg01121.html un ingénieur Apple sur la liste Carbon-Dev], " | + | Et, comme le dit [http://daringfireball.net/linked/2005/may#tue-31-apis John Gruber], après avoir cité [http://lists.apple.com/archives/Carbon-dev/2005/May/msg01121.html un ingénieur Apple sur la liste Carbon-Dev], "envoyez [le second paragraphe] à toute personne clamant que seules les applications 'purement Cocoa' sont des applications 'natives' Mac OS X." |
=== Java n'est pas lent ? === | === Java n'est pas lent ? === | ||
Line 89: | Line 101: | ||
=== Pourquoi NeoOffice n'utilise pas Java 1.5.x? === | === Pourquoi NeoOffice n'utilise pas Java 1.5.x? === | ||
- | + | NeoOffice 2.0 Aqua Beta 3 et ultérieur peuvent maintenant utiliser Java 1.5 (et Java 1.5 est la version requise sur les Macs Intel et Mac OS X 10.4). Pour comprendre pourquoi NeoOffice a historiquement utilisé une version de Java différente de la dernière version diffusée par Apple, voyez les lignes ci-dessous. | |
- | + | Il y a un nombre de raisons, à la fois humaines et techniques, pour lesquelles NeoOffice utilise Java 1.4.2 sur la plupart des Macs. Pour revenir au commencement, lorsque le développement de l'application a démarré (en tant que NeoOffice/J), Java 1.4.x n'était pas disponible sur Mac OS X. Lorsque Java 1.4.1 fut finalement disponible sur Mac OS X, il se révéla assez plein de bugs et il lui manquait beaucoup de fonctionnalités importantes sur Mac OS X 10.2.x. Java 1.5 n'est disponible que sur Mac OS X 10.4.x. De plus, Java 1.4.x et 1.5 sont basés sur Cocoa alors que Java 1.3.1 est basé sur Carbon. Aussi pendant une grande partie de sa vie initiale en tant que NeoOffice/J, l'application a utilisé Java 1.3.1 sur Mac OS X 10.2.x, 10.3.x, sur 10.4.x. | |
- | + | Passer à une nouvelle version de Java non seulement impliquait la fin du support des utilisateurs des anciennes versions de Mac OS X, mais exigeait aussi des centaines sinon des milliers d'heures de travail pour ré-implémenter en Cocoa de nombreuses parties de l'application écrites en Carbon et pour travailler sur de nouveaux bugs dans les nouvelles versions de Java. Donc passer à Java 1.4.x (ou 1.5) n'était pas une option viable pour la plupart de ce qui existait dans NeoOffice/J, étant donnés l'importance de l'équipe de développement et le fait que Java 1.3.1 continuait à bien fonctionner. | |
- | + | Comme Java 1.3.1 ne prévoit pas de transition vers les Macs Intel, l'été 2005 (Juillet-Septembre) se passa dans un travail à plein temps à réaliser la transition de NeoOffice/J à Java 1.4.2 et, Octobre et une grande partie de Novembre se passèrent (encore à plein temps) à corriger de nouveaux bugs qui apparaissaient à l'occasion de tests plus nombreux. NeoOffice 1.2 Alpha est la première version qui demande Java 1.4.2 et Mac OS X 10.3 ou ultérieur. | |
+ | |||
+ | La transition à Java 1.5.x ne fut pas si difficile puisqu'il est aussi basé sur Cocoa, et elle a été faite (pour les Macs Intel) pendant le cycle de NeoOffice 2.0 Aqua Beta. Java 1.4.2 est encore la version de Java utilisée par défaut par NeoOffice sur les Macs PowerPC utilisant les systèmes 10.3.x et 10.4.x. (Obliger NeoOffice/J 1.1 ou NeoOffice 1.2 Alpha à utiliser Java 1.5 '''provoquerait''' des plantages et '''n'est pas supporté'''.) | ||
=== Pourquoi ne pas utiliser GTK ou Qt ou un autre toolkit multiplateforme ? === | === Pourquoi ne pas utiliser GTK ou Qt ou un autre toolkit multiplateforme ? === | ||
- | Voir [[ | + | Voir [[#Pourquoi_ne_travaillez_vous_pas_sur_une_version_Cocoa_d.27OpenOffice.org_Aqua_.3F|Pourquoi ne travaillez vous pas sur une version Cocoa d'OpenOffice.org Aqua ?]] et [[#Cocoa_n.27est_il_pas_meilleur_que_Java_.3F|Cocoa n'est il pas meilleur que Java ?]] :-) La réponse courte est que retravailler le code d'OpenOffice.org pour utiliser un autre toolkit prendrait au moins autant de temps et de travail que ça en a pris pour amener NeoOffice au point où il en est actuellement (deux ans de travail à temps presque complet pour 1,5 développeurs et du travail accompli avant cela), sans garantie de stabilité du résultat. |
== Autres questions == | == Autres questions == | ||
=== Est ce que NeoOffice a remplacé NeoOffice/C ? === | === Est ce que NeoOffice a remplacé NeoOffice/C ? === | ||
- | + | [[NeoOffice/C|Oui]]. | |
+ | |||
+ | ===Qu'est-il advenu de NeoOffice/J ?=== | ||
+ | Afin de tenir compte du fait que le portage "classique" CoreGraphics/Cocoa ([[NeoOffice/C]]) était une impasse et n'était plus développé, et que le "/J" prêtait à confusion pour de nombreux utilisateurs et experts, l'application NeoOffice/J a été simplement renommée NeoOffice dès la version 1.2 Alpha. | ||
+ | |||
+ | ===Est-ce qu'il y a une feuille de route pour le développement ?=== | ||
+ | |||
+ | La direction prise par le projet NeoOffice est en règle générale discutée dans le forum [http://trinity.neooffice.org/modules.php?name=Forums&file=viewforum&f=9 NeoOffice Development sur trinity]. Les plans actuels sont exposés dans le sujet [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=4818 What's planned after NeoOffice 2.2.1?] et dans [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&p=37478#37478 ce message] en ce qui concerne Mac OS X 10.5. | ||
+ | |||
+ | ====Rappel des précédentes feuilles de route==== | ||
+ | Les plans [http://www.apple.com/pr/library/2005/jun/06intel.html post-6 juin 2005] des deux principaux développeurs de NeoOffice pour 2005-2006 furent exposés dans [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=1481 ce sujet de discussion]. Les plans provisoires pour l'après NeoOffice 2.0 Aqua Beta incluaient d'autres améliorations des widgets Aqua et un [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=2933 projet de la communauté pour développer un ensemble d'icônes de barres d'outils Aqua], mais aucun plan précis ou aucune feuille de route n'étaient annoncés. | ||
=== Où puis je en apprendre plus sur NeoOffice ? === | === Où puis je en apprendre plus sur NeoOffice ? === | ||
- | Pour des trucs et astuces sur l'utilisation de NeoOffice, voir la section [[Fr: | + | Pour des trucs et astuces sur l'utilisation de NeoOffice, voir la section [[Fr:NeoOffice_Trucs_et_astuces|trucs et astuces]] de ce Wiki. |
=== J'ai une question sur le design ou le développement de NeoOffice; où puis je obtenir une réponse ? === | === J'ai une question sur le design ou le développement de NeoOffice; où puis je obtenir une réponse ? === | ||
- | * Visitez la [http://www. | + | * Visitez la [http://www.neooffice.org/neojava/faq.php FAQ officielle de NeoOffice] |
* Cherchez dans ce wiki | * Cherchez dans ce wiki | ||
* Cherchez dans les [http://trinity.neooffice.org/modules.php?name=Forums Forums trinity] | * Cherchez dans les [http://trinity.neooffice.org/modules.php?name=Forums Forums trinity] | ||
Line 117: | Line 141: | ||
- | {{botlangbarFR|[[:NeoOffice and Aqua|English]], [[de:NeoOffice_und_Aqua|Deutsch]]}} | + | {{botlangbarFR|[[:NeoOffice and Aqua|English]], [[de:NeoOffice_und_Aqua|Deutsch]], [[It:NeoOffice_e_Aqua|Italiano]] [[Es:NeoOffice y Aqua|Español]] [[nl:NeoOffice en Aqua|Nederlands]]}} |
- | [[Category:NeoOffice | + | [[Category:NeoOffice]][[Category:NeoOffice/C]][[Category:NeoWikiFR]] |
Current revision
Questions fréquemment posées à propos du design et du développement de NeoOffice
Aquafication et intégration à Mac OS X
Pourquoi NeoOffice n'a pas les "boutons bleus" typiques de l'interface Aqua de Mac OS X ?
Depuis NeoOffice 2.0 Aqua Beta, NeoOffice inclut une "Aquafication" considérable. Les utilisateurs de Mac qui sont clairvoyants (mais y en a-t-il d'autres ?) peuvent remarquer que certaines choses ne sont pas encore tout à fait au point, mais ne vous inquiétez pas ; c'est seulement la première version de NeoOffice dotée de nombreux gadgets Aqua, et les développeurs travaillent à éliminer tout ce qui reste d'affreux.
Le but est d'ajouter lentement les fonctionnalités Aqua à NeoOffice pour qu'il soit de mieux en mieux intégré dans Mac OS X jusqu'à ce qu'il ne reste plus une seule preuve qu'il ait été autre chose qu'une application Mac OS X.
Durant les derniers mois, NeoOffice a été amélioré touche par touche.
Quels sont les avancées les plus récentes de l'"Aquafication" ?
Etat au mois de Juin 2007 :
- Support de la fonction QuickLook de Mac OS X 10.5 (06/2007)
- Support de la possibilité de modifier le clignotement du curseur en utilisant la propriété standard de Cocoa
- Les widgets en arrière-plan apparaissent maintenant désactivés et le curseur ne clignote plus en arrière-plan (05/2007)
- Support de l'indicateur de "modifications non enregistrées" dans le bouton de fermeture de la fenêtre (04/2007)
- Les documents NeoOffice apparaissent maintenant dans le menu "Derniers documents utilisés" de Mac OS X (03/2007)
- Les boutons des barres d'outils sont maintenant des boutons biseautés Aqua (03/2007)
- Nouvel ensemble d'icônes Aqua (02/2007)
- Fenêtres de dialogue "Ouvrir" et "Enregistrer" natives (Cocoa) (07/2006)
- Nouvelles icônes de documents plus conformes à l'apparence Aqua (07/2006)
- Les icônes désactivées dans les barres d'outils ont l'apparence Mac OS X correcte (auparavant elles étaient d'un gris soutenu) (07/2006)
- Nombreux gadgets Aqua (barres de défilement, boutons, barres de progression, etc.) (04/2006-07/2006)
- Compatibilité améliorée avec le logiciel de dictée de voix (10/2005)
- Support de l'impression de fichiers EPS intégrés aux documents (09/2005)
- Support amélioré des claviers internationaux (09/2005)
- Le menu du Dock permet de créer des nouveaux documents ou d'en ouvrir d'anciens (06/2005)
- Ne montre plus de "fenêtre grise" à la fermeture du dernier document ouvert mais l'application reste ouverte comme les applications Mac normales (05/2005)
- Intégration de Spotlight sur Mac OS X 10.4 "Tiger" via NeoLight (05/2005)
- Utilise les couleurs définies dans le panneau Apparence des Préférences Système (04/2005)
- Support des langues Indiennes (04/2005)
- Support pour Eudora, Entourage et Mail comme client mail externe (03/2005)
- AppleScript pour l'installation des fichiers d'aide des langues non anglaises par glisser-déposer (03/2005)
- Glisser-déposer entre NeoOffice et les autres applications (03/2005)
- Ne quitte plus lors de la fermeture du dernier document ouvert (03/2005)
- Eléments "A propos de NeoOffice" et "Préférences" ajoutés dans le menu "NeoOffice" (02/2005)
- Interface localisée pour 40 langues (12/2004)
- Nouvelle icône Aqua et nouvel écran de chargement (12/2004)
- PDFs optimisés/plus légers (12/2004)
- Glisser-déposer du texte (12/2004)
- Support du défilement à l'aide de la molette (11/2004)
- Les menus sont maintenant situés dans la barre des menus en haut de l'écran, comme toutes les autres applications pour Mac (avant, ils étaient en haut de la fenêtre du document) (11/2004)
- Notification automatique des nouveaux patchs et nouvelles versions (11/2004)
- Patchs disponibles en paquets d'installation standards Mac OS X (09/2004)
- Support pour les alias Mac dans les dialogues d'ouverture et de sauvegarde de fichiers (09/2004)
Suivez les nouvelles fonctionnalités à mesure qu'elles sont annoncées !
Technologies et cadriciels
Quelles technologies sont utilisées pour l'"Aquafication" de NeoOffice ?
Aqua est le "look and feel" développé par Apple pour OS X. Apple fournit 3 cadriciels (frameworks) pour développer des applications ayant une interface Aqua :
- Carbon (sorte de mode de compatibilité OS 9, aussi utilisé par Mozilla/Firefox)
- Cocoa (nouveau cadriciel adapté de NeXT pour Mac OS X)
- Java (langage multi-plateforme, incluant JFC/Swing pour des éléments d'interface ressemblant à ceux natifs)
NeoOffice/C (le projet de prototype original) fut une tentative utilisant Cocoa et Carbon. Le projet le plus réussi, NeoOffice (anciennement NeoOffice/J), utilise actuellement un mix de Java 1.4.2/1/5, Carbon, et Cocoa.
Alors... NeoOffice est écrit en Java?
Non.
NeoOffice est une version native Mac OS X d'OpenOffice.org utilisant des petites parties de code Java pour l'affichage et la configuration.
OpenOffice.org est écrit principalement en C++ portable. Néanmoins, NeoOffice utilise l'intégration avancée de Java dans Mac OS X pour introduire le look and feel OS X. En d'autres termes, les petites parties en Java ont principalement à voir avec comment l'application apparait aux yeux de l'utilisateur. Les "entrailles" de la suite bureautique sont écrits en C++. (Le code composant NeoOffice provient à 99% du code partagé entre les différentes plateformes supportées d'OpenOffice.org et 1% du code est spécifique à Mac OS X et contient du Java, C++, C et Objective-C. Sur Ohloh.net vous pouvez voir que le code spécifique à NeoOffice est à 93% du C/C++.)
De ce fait, NeoOffice tourne seulement sur des Macintosh équipés de Mac OS X 10.2.x, 10.3.x ou 10.4.x — pas sur Mac OS 9, Windows, Linux, Darwin ou toute autre forme d'UNIX.
Comment Java est utilisé dans NeoOffice ?
Comme cela a été mentionné au dessus, Java est principalement utilisé pour fournir le "look & feel" de Mac OS X. Ce qui fait fonctionner NeoOffice n'est pas le langage Java lui même mais plutôt les bibliothèques de la machine virtuelle Java comme Java 2D pour l'affichage et AWT pour les menus. Ceux-ci sont déjà natifs dans la machine virtuelle d'Apple dans le sens ou Java 2D utilise Quartz et AWT est en Carbon. [1]
La quantité de code écrite en Java a aussi diminué avec le temps.[2] Quand NeoOffice/J a été mis à jour avec le code d'OpenOffice.org 1.1.2 (NeoOffice/J 1.1 Alpha), le rendu du texte a été modifié pour utiliser les API natives ATSUI de Mac OS X au lieu de Java puisqu'elles sont mieux adaptées à des mises en formes complexes que ne le sont celles de Java. [3] D'autres fonctionnalités n'ont jamais été implémentées en Java (par exemple, le menu Dock qui utilise Carbon).
Pourquoi ne travaillez vous pas sur une version Cocoa d'OpenOffice.org Aqua ?
Il y a plusieurs raisons. OpenOffice.org n'est pas conçu comme une application native Cocoa pour Mac. Traduire tout le modèle d'évènements, la gestion des polices et les routines d'affichage en Cocoa serait un énorme travail. D'un autre côté, l'implémentation Java d'Apple fournit un bon accès aux fonctionnalités Aqua et est plus facile à intégrer dans le code d'OpenOffice.org. NeoOffice/C a prouvé qu'une implémentation Cocoa n'était pas une solution viable à court et à moyen terme; bien que son apparence était réussie après de nombreux hacks, il n'était même pas assez stable pour une utilisation occasionnelle.
A présent, NeoOffice est très stable et bien parti pour fournir une interface utilisateur totalement Aqua. Et choisir une nouvelle orientation maintenant signifierait l'abandon de beaucoup de bon code. Le défaut de l'utilisation de Java est qu'il consomme (un peu) plus de ressources qu'une implémentation Cocoa. (Vous avez besoin de plus de RAM que la configuration minimale recommandée pour Mac OS X mais Mac OS X bénéficie d'avoir plus de RAM que la configuration minimale recommandée ! Et la RAM est bon marché; ajouter de la RAM est le meilleur moyen d'accélérer votre Mac à moindre coût.)
Cocoa n'est il pas meilleur que Java ?
Aqua est aqua.
Cette question est souvent posée par les développeurs et les utilisateurs professionnels. Les utilisateurs moyens, d'un autre côté, tendent à juger uniquement le résultat. Comme l'a dit un testeur :
"Si cela ressemble à un canard, marche comme un canard et caquète comme un canard, alors, pour l'utilisateur moyen, c'est un canard et les utilisateurs moyens ont clairement dit qu'ils voulaient un canard; que le canard boive du chocolat chaud ou du café n'a pas d'importance."
Et, comme le dit John Gruber, après avoir cité un ingénieur Apple sur la liste Carbon-Dev, "envoyez [le second paragraphe] à toute personne clamant que seules les applications 'purement Cocoa' sont des applications 'natives' Mac OS X."
Java n'est pas lent ?
La majorité de NeoOffice est écrit en C++. Seuls les parties qui facilitent l'intégration du look Aqua ont été personnalisées en Java. La raison est que Java pour OS X a un look terrible et s'intègre à merveille dans l'interface native "bouton bleu" Aqua.
Et au fait, Java n'est plus si lent de nos jours.
Pourquoi NeoOffice n'utilise pas Java 1.5.x?
NeoOffice 2.0 Aqua Beta 3 et ultérieur peuvent maintenant utiliser Java 1.5 (et Java 1.5 est la version requise sur les Macs Intel et Mac OS X 10.4). Pour comprendre pourquoi NeoOffice a historiquement utilisé une version de Java différente de la dernière version diffusée par Apple, voyez les lignes ci-dessous.
Il y a un nombre de raisons, à la fois humaines et techniques, pour lesquelles NeoOffice utilise Java 1.4.2 sur la plupart des Macs. Pour revenir au commencement, lorsque le développement de l'application a démarré (en tant que NeoOffice/J), Java 1.4.x n'était pas disponible sur Mac OS X. Lorsque Java 1.4.1 fut finalement disponible sur Mac OS X, il se révéla assez plein de bugs et il lui manquait beaucoup de fonctionnalités importantes sur Mac OS X 10.2.x. Java 1.5 n'est disponible que sur Mac OS X 10.4.x. De plus, Java 1.4.x et 1.5 sont basés sur Cocoa alors que Java 1.3.1 est basé sur Carbon. Aussi pendant une grande partie de sa vie initiale en tant que NeoOffice/J, l'application a utilisé Java 1.3.1 sur Mac OS X 10.2.x, 10.3.x, sur 10.4.x.
Passer à une nouvelle version de Java non seulement impliquait la fin du support des utilisateurs des anciennes versions de Mac OS X, mais exigeait aussi des centaines sinon des milliers d'heures de travail pour ré-implémenter en Cocoa de nombreuses parties de l'application écrites en Carbon et pour travailler sur de nouveaux bugs dans les nouvelles versions de Java. Donc passer à Java 1.4.x (ou 1.5) n'était pas une option viable pour la plupart de ce qui existait dans NeoOffice/J, étant donnés l'importance de l'équipe de développement et le fait que Java 1.3.1 continuait à bien fonctionner.
Comme Java 1.3.1 ne prévoit pas de transition vers les Macs Intel, l'été 2005 (Juillet-Septembre) se passa dans un travail à plein temps à réaliser la transition de NeoOffice/J à Java 1.4.2 et, Octobre et une grande partie de Novembre se passèrent (encore à plein temps) à corriger de nouveaux bugs qui apparaissaient à l'occasion de tests plus nombreux. NeoOffice 1.2 Alpha est la première version qui demande Java 1.4.2 et Mac OS X 10.3 ou ultérieur.
La transition à Java 1.5.x ne fut pas si difficile puisqu'il est aussi basé sur Cocoa, et elle a été faite (pour les Macs Intel) pendant le cycle de NeoOffice 2.0 Aqua Beta. Java 1.4.2 est encore la version de Java utilisée par défaut par NeoOffice sur les Macs PowerPC utilisant les systèmes 10.3.x et 10.4.x. (Obliger NeoOffice/J 1.1 ou NeoOffice 1.2 Alpha à utiliser Java 1.5 provoquerait des plantages et n'est pas supporté.)
Pourquoi ne pas utiliser GTK ou Qt ou un autre toolkit multiplateforme ?
Voir Pourquoi ne travaillez vous pas sur une version Cocoa d'OpenOffice.org Aqua ? et Cocoa n'est il pas meilleur que Java ? :-) La réponse courte est que retravailler le code d'OpenOffice.org pour utiliser un autre toolkit prendrait au moins autant de temps et de travail que ça en a pris pour amener NeoOffice au point où il en est actuellement (deux ans de travail à temps presque complet pour 1,5 développeurs et du travail accompli avant cela), sans garantie de stabilité du résultat.
Autres questions
Est ce que NeoOffice a remplacé NeoOffice/C ?
Oui.
Qu'est-il advenu de NeoOffice/J ?
Afin de tenir compte du fait que le portage "classique" CoreGraphics/Cocoa (NeoOffice/C) était une impasse et n'était plus développé, et que le "/J" prêtait à confusion pour de nombreux utilisateurs et experts, l'application NeoOffice/J a été simplement renommée NeoOffice dès la version 1.2 Alpha.
Est-ce qu'il y a une feuille de route pour le développement ?
La direction prise par le projet NeoOffice est en règle générale discutée dans le forum NeoOffice Development sur trinity. Les plans actuels sont exposés dans le sujet What's planned after NeoOffice 2.2.1? et dans ce message en ce qui concerne Mac OS X 10.5.
Rappel des précédentes feuilles de route
Les plans post-6 juin 2005 des deux principaux développeurs de NeoOffice pour 2005-2006 furent exposés dans ce sujet de discussion. Les plans provisoires pour l'après NeoOffice 2.0 Aqua Beta incluaient d'autres améliorations des widgets Aqua et un projet de la communauté pour développer un ensemble d'icônes de barres d'outils Aqua, mais aucun plan précis ou aucune feuille de route n'étaient annoncés.
Où puis je en apprendre plus sur NeoOffice ?
Pour des trucs et astuces sur l'utilisation de NeoOffice, voir la section trucs et astuces de ce Wiki.
J'ai une question sur le design ou le développement de NeoOffice; où puis je obtenir une réponse ?
- Visitez la FAQ officielle de NeoOffice
- Cherchez dans ce wiki
- Cherchez dans les Forums trinity
- Si vous n'avez toujours rien trouvé, posez votre question dans la section appropriée des Forums trinity
Categories: Fixme | NeoOffice | NeoOffice/C | NeoWikiFR