Grâce à sa machine virtuelle, il est tout à fait possible de développer en Java sur un système d'exploitation différent du (ou des) système(s) cible(s).
Mais vous, sur quel système est installé votre environnement de développement ?
Windows
Mac OS
Linux
Autres (Précisez)
Grâce à sa machine virtuelle, il est tout à fait possible de développer en Java sur un système d'exploitation différent du (ou des) système(s) cible(s).
Mais vous, sur quel système est installé votre environnement de développement ?
Hikage
SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
[Personal Web] [CV]
F.A.Q Spring Framework - Participez !
Personnellement, je développe sur du Windows, mais mes applications tournent à la fois sur du Windows, du Linux et du Solaris...
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Pour ma part, je développe sous Windows, mais j'hésite à passer sous Linux pour la puissance du shell et la rapidité de certains outils (SVN par exemple).
J'ai voté Windows mais à vrai dire je trouve la question curieuse car il me semble que ce qui fait l'environnement de dev c'est plus l'EDI que le système (du moins quand on travail avec un netbean ou un eclipse et que l'on a pas besoin de trop d'outils externes).
Sinon j'ai entendu dire que les claviers Apple étaient plus adaptés au dev que ceux des PC. Info objective ou intox intégriste ?
Disons que pour du développement 'serveur', l'intérêt est peut être moindre.
Et encore, avoir un shell c'est parfois fort utile.
Mais pour le développement 'Swing', il y a tout de même des différences de ce que j'en sais.
De manière générale, bien que j'utilise principalement l'IDE, il m'arrive tout de même d'utiliser des logiciels tiers : editeur d'image, editeur xml, ...
Ceux-ci étant différent de l'un à l'autre OS.
Hikage
SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
[Personal Web] [CV]
F.A.Q Spring Framework - Participez !
Pour ma part, il m'arrive de développer sur du RedHat comme sur du Xp, après, c'est en fonction du projet. On a des pc avec un Master JAVA contenant Eclipse, les librairies spécifique et tous les petits outils qui rende le développement sous windows plus facile. Concernant RedHat, c'est à chacun de décider.
Sur un clavier Mac, les caractères spéciaux tels que '+', '-', '[', '{', '}', ']', '|', '@', '#', '~', que nous utilisons tous les jours en Java ne sont pas à la même place que sur un clavier PC. Certains nécessitent des combinaisons de 2 ou 3 touches. Par exemple sur un clavier Mac azerty, pour faire un pipe '|', il faut taper MAJ+Alt+L. Sur un clavier Mac qwerty, c'est Maj+'\'
Je trouve donc sa question tout à fait légitime...
Pour ma part, je travaille dans le milieu de la physique des particules, dans un milieu où UNIX a une grande part de marché. Je développe donc en Java avec Eclipse sous Linux (desktop) et sous Mac OS X (laptop).
Je n'ai jusqu'ici eu très peu de problèmes à faire du cross-platform en Java, à part une fois où un code multithread qui tournait très bien sur mes deux plateformes de développement et provoquait un deadlock sous Windows d'après une utilisatrice.
Il a fallu que je courre dans tout le laboratoire pendant 2 heures pour trouver une bécane Windows de libre afin de tester notre soft.
Il s'est avéré qu'un de mes collègues avait fait appel à une méthode bas niveau de Swing alors que la documentation déconseillait fortement l'emploi direct de celle-ci.
@ludosoft : Les claviers Apple QWERTY sont parait-il pas mal. Les claviers AZERTY nécéssitent des combinaisons de 3 touches pour faire des caractères comme '[', ']' ou encore '|'. Alors, oui, avec l'habitude, on s'y fait, mais c'est quand même pas terrible.
Moi je suis sous XP, parce qu'en fait avec Eclipse ça n'a pas vraiment d'importance, que je devrai de toutes façons avoir XP sur mon ordi (la plupart des utilisateurs sont sous XP), que XP est assez stable et rapide (une fois nettoyé) et que passer à Linux va me coûter du temps, à l'installation et aussi ensuite pour tous les détails de mise au point. En plus, pour avoir des tests sérieux il faudrait installer plusieurs distros, je ferai ça quand j'aurai quelques ordis en plus...
Quant au côté multiplateformes de Java, il est très relatif, en fait : j'ai une appli qui démarre en webstart ; au départ le fichier jnlp était créé au vol par un script PHP, car il fallait un paramètre dépendant de l'utilisateur. Ca a été testé sous XP+Firefox, XP+IE, MacOS + Safari, Ubuntu + Opera, Ubuntu+Firefox (j'en oublie)... Ca ne marchait parfaitement que sous XP+Firefox... J'ai du créer un jnlp par utilisateur (!) ... Sous Ubuntu, ça ne marchait qu'en lançant directement le jar, donc pas de ws et de mise à jour automatique... La seule info disponible semble être "certains linux ont des problèmes de gestion du jws"...
Au lancement de l'appli : sous Ubuntu, OpenJDK ne trouvait pas les algo de chiffrage, ça marchait sous Sun Java 6 (j'ai pas essayé avec les autres jvm présentes sur la machine)... Sous OSX, là carrément la jvm (ou le jws ?) semble buggée quand il y a des paramètres... Ca n'arrivait pas jusqu'au lancement de l'appli... genre SEG_FAIL pendant le lancement de la jvm...
Donc finalement, Java c'est multiplateforme seulement si on développe pour 1.5 sans utiliser des trucs un peu trop rarement utilisés... En principe, par exemple, le login au niveau du serveur Apache est sensé être géré par le ws, mais c'est buggé, si on entre pas de login et qu'on fait "Annuler", le jar se charge et démarre...
Moralité : en principe il faudrait que je travaille sous Ubuntu + OpenJDK ou IcedTea (la moins standard d'un point de vue Java, donc si ça marche comme ça, ça marchera presque partout) ou OSX (mais vraiment là c'est trop me demander), mais je reste sous XP, avec parfois une install provisoire de l'un ou l'autre linux (presque toujours Ubuntu, vu que c'est celle qui est utilisée par la plupart des end-users qui sont sous linux) pour pouvoir règler des problèmes spécifiques.
"c'est un problème de configuration que tu as sous linux pour les jws"
Je m'en doute, oui... Mais ce n'est pas moi qui ai le problème, mais l'utilisateur ; je ne vois pas très bien ce que je peux faire pour lui... Si je fais un truc en java+jws, c'est justement pour ne pas avoir à m'occuper de la configuration des utilisateurs... Après tout, choisir Linux c'est aussi assumer ces "problèmes de configuration", mais depuis Ubuntu c'est plus trop le cas...
J'ai voté Linux car c'est là que je développe le plus en Java. Sinon Java est multiplateforme, c'est cela sa force. Toutefois, il faut respecter les normes de développements. Si vous voulez que votre code soit portable, il faut éviter les API propres au système d'exploitation donné.
Windows XP au travail, Ubuntu à la maison
Hello,
Pour moi, c'est Linux ( Slackware ), parce que Windows, j'sais pas faire
Ma JVM, mon IDE ( Netbeans ) mon serveur ( Apache + Tomcat ) et mes BD ( Mysql, Postgresql ) bien installés ( donc manuellement : ce qui permet de mieux maitriser les configurations ) sur mon PC qui fait donc à la fois office de poste de dev., de serveur et de client web.
Et s'il y a problème : je sais où intervenir. Sous Windows je n'arriverais jamais à faire fonctionner cet ensemble : l'OS est trop opaque, et vu mon age ( à 2 doigts de la retraite ) l'effort à fournir en terme d'apprentissage est trop important par rapport à un système ouvert comme Linux.
De plus comme les serveurs de production sont la plupart sous Linux/Mandriva, je vois les galères que doivent affronter ceux qui ont effectué un développement sous Windows. Quand il s'agit de la mise en service des applications il y a une grande incompréhesion entre les devs Windows et les admins des serveurs.; les problématiques entre le développement et l'administration ne sont pas les mêmes, alors si on a le même OS des 2 côtés, le fossé est moins grand.
Voilà.
PS : Et puis à entendre râler en permanence le développeur qui est en face de moi ( Windows + NetBeans ) qui accuse Netbeans et Java de bloquer XP ... il est vrai qu'auparavant, il avait Notepad++ pour du C sur cible embarquée.
On va dire que c'est l'âge qui te fait dire ça parce qu'objectivement, tous les logiciels que tu cites fonctionnent sans l'ombre d'un problème sous windows.
Les "vieux" ne se remettent pas en cause diront les jeunes
J'utilise les 2 OS pour le développement avec Eclipse, je ne trouve pas de grosse différences, Linux consomme moins de mémoire, c'est clair, mais SVN n'a pas le même comportement sous Linux que sous XP... Rien de bien grave tout de même...
faisant partie des ancêtres je reconnais que je n'arrive pas trop à comprendre Windows (j'ai démarré sous Multics puis Unix).
ceci dit j'ai Win$*%§ au bureau parceque je n'ai pas trop le choix (avant je bossais chez Sun et j'étais sur Solaris!) mais sur mon portable perso c'est dual boot (windows passeque certains trucs me sont demandés dessus, mais ubuntu est mon env. de développement: j'ai la manie des scripts shell).
Eclipse sous Windows au boulot, Ubuntu à la maison.
Partager