Re: réflexion sur StarOffice

Page principale

Répondre à ce message
Auteur: Cyrille Lefranc
Date:  
À: guilde
Sujet: Re: réflexion sur StarOffice
Yves Martin wrote:
>         Je considere justement que le Java permet le 'genie logiciel'.
>    Un projet ecrit avec une hierarchie de classes bien pensee, une bonne
>    connaissance de Java, permet d'ecrire un code propre, leger,
>    autodocumente (javadoc) et facilement maintenable.
>    Je fais du Java depuis un an et demi et je suis capable d'ecrire
>    du code 'tres rapidement' et facilement lisible.
>    Donc l'interet du Java : programmation objet avec toute la theorie
>    necessaire pour une mise en pratique efficace, code auto- et
>    documente, facile a maintenir, etendre ... et surtout une API
>    ideale pour faire jaillir une interface qui aurait pris plusieurs
>    mois a ecrire en C/Motif ou en C++ non visual sous Microsoft, avec
>    l'avantage du portage.


Nul ne peut nier, même pas moi, les avantages apportés par ce langage, qui permet d'appronfondir les concepts de hauts
niveaux, tout en se détachant du fonctionnement bas niveau de la machine, sinon il n'aurait jamais été créé.
Celà dit, j'estime que la lenteur des applications résultantes de toute cette architecture ne peut en aucun cas être
négligée au vu de la puissance sans cesse croissante des machines.
Il s'agit de peser judicieusement les facilités de dévelloppement apportées avec la nature du produit et ses conditions d'utilisation.
Par exemple, une simulation d'apprentissage sur un réseau de neurones en JAVA, permettant d'observer dynamiquement les
modifications des poids synaptiques, pour "visualiser" la classification des entrées est une abération. Certes, on se
libère complètement du problème de l'interface graphique, mais quand on "connait" la puissance calculatoire nécessaire à
l'algorithme de rétropropagation du gradient, permettant de recalculer tous les poids au vue d'une entrée mal classée,
on cherchera plutôt à utiliser un langage qui "calcule vite" (fortran, C), et on ne pensera jamais à utiliser une
machine virtuelle (JAVA, Lisp - et je fais du lisp tous les jours ! -).

>    Je developpe mon projet actuel sous Unix (avec Swing en plus !)
>    et le fait fonctionner sous Windows, Pentium 200 avec 64 Mo.
>    Petite remarque : Swing fait 1,3 Mo pour Motif/Unix et
>                      ... 85 Ko pour Windows
>    Donc l'interface qui fonctionne sous Windows utilise enormement
>    de code natifs du systeme !


Natif ? Tu veux parler de l'API windaube ?
Comment se fait-il que cette "performance" n'est pas été réalisée sur Motif/Unix ?

>    Maintenant, je suis encore assez lucide pour ecrire un prog en C
>    quand il s'agit de programmation systeme !


Là n'est pas la question.

>         OK maintenant je te pose la question :
>    As-tu deja programme des interfaces graphiques ?
>    [ et ne me repond pas qu'il n'y en a pas besoin,
>      la secretaire n'a qu'a utiliser la ligne de commande ]


C'est une tâche évidemment plus simple à réaliser avec JAVA, ou à l'aide d'un interprète comme Tk, ou une API "haut
niveau", du moins plus que la Xlib ou Xt. Cependant, le choix du langage ne doit pas être dicté pas les besoins de
l'interface, mais par les besoins de l'ensemble du logiciel. On peut toujours écrire l'interface avec un autre langage,
ou une librairie offrant une API de haut niveau, ça ne pose aucun problème actuellement (Lisp/C , Perl/tk, C/gtk).
Quand à faire tourner des applis dans un navigateur, ça va bien pour une petite démo, ou jouer au solitaire ...
J'ai eu l'occasion de toucher à une de ces fameuses JAVA Station de Sun, et bien ça rame à mort !
Le navigateur HotJava est nettement plus lent que Navigator sur mon PowerMac 7600/132 (une machine qui a plus de trois
ans !), et tu noteras que navigator, en terme de vitesse, n'est franchement pas une référence.

--
Cyrille Lefranc