Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1751 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

java, mettre le programme en attente

n°625175
chrisbk
-
Posté le 29-01-2004 à 18:00:04  profilanswer
 

Reprise du message précédent :

benou a écrit :


Parce qu'il y avait que des anciens programmeurs C pour pouvoir immaginer qu'il était logique de balancer un int en tant qu'exception [:spamafote]


 
nan ca (desole) c'est naze comme explication  :D surtout en java ou y'a pas d'autoboxing. A la rigueur un Integer [:aloy]
 
d'ailleurs y'a pas d'exception en C
 

mood
Publicité
Posté le 29-01-2004 à 18:00:04  profilanswer
 

n°625176
chrisbk
-
Posté le 29-01-2004 à 18:00:50  profilanswer
 

benou a écrit :


une dépendance au core dump [:spamafote]


 
ce genre de reponses cretines me saoulent
ok java c'est le meilleur langage, le reste c de la merde bugogene, on l'a compris. merci

n°625178
benou
Posté le 29-01-2004 à 18:02:42  profilanswer
 

chrisbk a écrit :


d'ailleurs y'a pas d'exception en C


je parlais de ceux qui ont fait le C++ ...
 
Sérieusement, c'est plutot une bonne idée d'avoir un ancêtre commun aux exceptions : déjà c'est logique par nature : uneException, bha c'est une exceptino quoi, c'est pas un entier, pas un objet quelquonque, c'est un truc qui peut être lancé ... Ensuite, ca permet de factoriser les propriétés communes (stacktrace et totu le toutime).


---------------
ma vie, mon oeuvre - HomePlayer
n°625180
benou
Posté le 29-01-2004 à 18:04:25  profilanswer
 

chrisbk a écrit :


ce genre de reponses cretines me saoulent
ok java c'est le meilleur langage, le reste c de la merde bugogene, on l'a compris. merci


 :sweat:  
 
Ca s'appelle de l'humour ce que tu as quoté, là ...


---------------
ma vie, mon oeuvre - HomePlayer
n°625181
the real m​oins moins
Posté le 29-01-2004 à 18:04:30  profilanswer
 

benou a écrit :


Tu peux être inteliggent et passer involontairement à côté d'une exception : ca t'oblige à toujours avoir une parfaite connaissance des API que tu utilises.  
 
Et puis, imagine le cas où tu utilises une API qui a été mal documentée : pas moyen de savoir quelle methode peut déclencher quelle exception, sauf à aller parcourir tout le code que cette methode utilise :/

tout à fait, je suis d'accord avec ton point de vue que tu as donné plus haut;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°625185
the real m​oins moins
Posté le 29-01-2004 à 18:07:48  profilanswer
 

benou a écrit :


Sérieusement, c'est plutot une bonne idée d'avoir un ancêtre commun aux exceptions  

et puis ça permet à ceux à qui ça donne des boutons de declarer les throws de leurs methodes de mettre throws Exception [:mlc]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°625187
benou
Posté le 29-01-2004 à 18:09:11  profilanswer
 

benou a écrit :

Ca s'appelle de l'humour ce que tu as quoté, là ...


plus sérieusement, je suis pas le mieux placé pour te répondre puisque je trouve que les checked c'est une bonne idée [:spamafote]
 
Mais j'imagine que y a pas de bonne ou de mauvaise solution. C'est une question de point de vue et de priorité.
 
D'un côté le checked est contraignant mais apporte de la robustesse si il est bien employé (mais aussi des bug difficilement visible dans le cas contraire), de l'autre côté le unchecked est moins pénible pour le développeur pressé mais demande des efforts beaucoup plus considérables pour le développeur consciencieux pour obtenir le même niveau de robustesse.
 
Après c'est une question de choix lors de la conception du langage ...


---------------
ma vie, mon oeuvre - HomePlayer
n°625207
nraynaud
lol
Posté le 29-01-2004 à 18:32:37  profilanswer
 

moi je trouve ça super contre-productif : les débutants mettent des catch vides (alors que sinon ils auraient eu le bon comportement).  
Et de toutes façon les docs sont trop vagues pour faire quelquechose avec une exception vérifiée qu'on a reçu (tous ceux qui catchent des IOException savent de quoi je parle : c'est tellement vague qu'a part la faire remonter et afficher à l'utilisateur le message qui est dedans, on peut rien faire).
 
Les checked exceptions, c'est typiquement la fausse bonne-idée.


---------------
trainoo.com, c'est fini
n°625217
nraynaud
lol
Posté le 29-01-2004 à 18:41:07  profilanswer
 

benou a écrit :

Et puis, imagine le cas où tu utilises une API qui a été mal documentée : pas moyen de savoir quelle methode peut déclencher quelle exception, sauf à aller parcourir tout le code que cette methode utilise :/

De toutes façons on est obligé d'aller dans le code des applis, les effets de bords sont pas documentés (notement prises de références ou copies) et on a quasiment aucune indication sur les performances et la complexité des bordels mis en jeu (on sait rarement si une fonction est faite pour bourriner dessus ou si on doit faire nos caches nous-même, ou si sa petite soeur est, elle, fait pour bourriner dessus).
 
Dans l'absolu, il est plus simple pour l'IDE d'aller voir lui-même ce qu'il se passe au niveau des exceptions (ça lui permettra au passage de nous parler des fonctions qui acceptent null en entrée ou non) et de faire documenter par le dev les effets de bords et la complexité que l'inverse.


---------------
trainoo.com, c'est fini
n°625228
benou
Posté le 29-01-2004 à 18:47:38  profilanswer
 

nraynaud a écrit :

moi je trouve ça super contre-productif : les débutants mettent des catch vides (alors que sinon ils auraient eu le bon comportement).  


bha non, le bon comportement c'est de traiter els exceptions quand on le peut, pas de laisser planter le programme ...
 

nraynaud a écrit :


Et de toutes façon les docs sont trop vagues pour faire quelquechose avec une exception vérifiée qu'on a reçu (tous ceux qui catchent des IOException savent de quoi je parle : c'est tellement vague qu'a part la faire remonter et afficher à l'utilisateur le message qui est dedans, on peut rien faire).


Une exception ne peut pas toujours être précise (c'est dû à la notion de signature des interfaces). Mais dans tous les cas elle permet de savoir qu'un truc a planté. Savoir quoi c'est presque du luxe ;)
 
Et puis dans le cas des IOException, la plupart du temps tu peux savorien fonction de la nature de l'objet que tu intéroge quel type d'exception tu peux obtenir (en allant voir dans la doc) : FileNotFoundException à l'ouverture d'un fichier, UnknownHostException en cas de lecture sur le réseau, etc ...
 
Mais je suis d'accord : la notion d'interface oblige à déclarer des exceptions "génériques" qui masque la nature réélle de l'exception ... Mais dans ce cas là, on en est à l'état de la unckeckedExceptino : on doit allé voir dans la doc pour voir quelle exception cachée la IOException  
 

nraynaud a écrit :

Les checked exceptions, c'est typiquement la fausse bonne-idée.


ben vraiment je trouve pas :/
 
Avec un poil de rigueur c'est hyper puissant !


---------------
ma vie, mon oeuvre - HomePlayer
mood
Publicité
Posté le 29-01-2004 à 18:47:38  profilanswer
 

n°625229
chrisbk
-
Posté le 29-01-2004 à 18:49:14  profilanswer
 

la question que je me pose benou, c'est de savoir si tu ecrirais un code different (moins blindé) si tes exceptions etaient non checkés

n°625230
benou
Posté le 29-01-2004 à 18:50:17  profilanswer
 

nraynaud a écrit :

De toutes façons on est obligé d'aller dans le code des applis


ben non, et heureusement que c'est pas le cas !
Si je devais aller voir le code de toutes les librairies que j'utilise [:totoz]


---------------
ma vie, mon oeuvre - HomePlayer
n°625238
benou
Posté le 29-01-2004 à 18:59:18  profilanswer
 

chrisbk a écrit :

la question que je me pose benou, c'est de savoir si tu ecrirais un code different (moins blindé) si tes exceptions etaient non checkés


Ha mon avis oui. Pour avoir le même blindage ca demanderait un effort beaucoup plus important : avoir la doc à disposition pour pouvoir regarder à chaque appel d'une API ce que ca peut balancer.
J'imagine même quand tu dois débugguer un code qui n'est pas toi ! C'est doit être vraiment horrible !
 
Et puis c'est surtout que tu risques de passer accidentallement à côté d'exception ...
 
Avec des checked, tu sais que si tu traites correctement les catch tu peux garantir que ton programme fonctionnera correctement. Avec des unchecked, c'est risquer de prendre ce genre de pari : comment être sûr que tu n'en a pas oublié une quelque part ?


---------------
ma vie, mon oeuvre - HomePlayer
n°625242
R3g
fonctionnaire certifié ITIL
Posté le 29-01-2004 à 19:01:22  profilanswer
 

Tout ça pour un sleep()....

n°625244
benou
Posté le 29-01-2004 à 19:02:22  profilanswer
 

R3g a écrit :

Tout ça pour un sleep()....


[:ddr555]
 
j'aurais jamais cru que mon pétage de boule prendrait à ce point !  [:xx_xx]


Message édité par benou le 29-01-2004 à 19:02:51

---------------
ma vie, mon oeuvre - HomePlayer
n°625252
chrisbk
-
Posté le 29-01-2004 à 19:07:10  profilanswer
 

benou a écrit :


[:ddr555]
 
j'aurais jamais cru que mon pétage de boule prendrait à ce point !  [:xx_xx]  


 
bah j'avais deja essayé d'amener ca sur blabla ca m'avait valu un "[:ula]" alors bon

n°625253
chrisbk
-
Posté le 29-01-2004 à 19:08:52  profilanswer
 

benou a écrit :


Ha mon avis oui. Pour avoir le même blindage ca demanderait un effort beaucoup plus important : avoir la doc à disposition pour pouvoir regarder à chaque appel d'une API ce que ca peut balancer.
J'imagine même quand tu dois débugguer un code qui n'est pas toi ! C'est doit être vraiment horrible !
 


 
non, l'exception remonte jusqu'au main, t'as la stack trace tu vois en deux coup de cuiller a pot d'ou ca vient (cf quand tu te manges un nullpointer ou dans le genre, tu passes pas des heures a t'arracher les cheveux sur le "ou ca vient ?" )

n°625258
the real m​oins moins
Posté le 29-01-2004 à 19:14:56  profilanswer
 

chrisbk a écrit :


 
non, l'exception remonte jusqu'au main, t'as la stack trace tu vois en deux coup de cuiller a pot d'ou ca vient (cf quand tu te manges un nullpointer ou dans le genre, tu passes pas des heures a t'arracher les cheveux sur le "ou ca vient ?" )
 

euh tu crois vraiment que ton end user il a envie de voir une stacktrace sortir de ton appli?
 
 
meme des soit-disant developpeurs java sont pas capables de decrypter correctement une stacktrace alors jte dis pas les end users..


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°625259
benou
Posté le 29-01-2004 à 19:15:06  profilanswer
 

chrisbk a écrit :


non, l'exception remonte jusqu'au main


nan mais ca ok, moi je te parle de quand tu dois relire du code : comment savoir si le mec laisse passer une exception parce qu'il la traite plus haut ou si il a oublié de la gérer ou si elle ne se produit pas dans ce cas là ...
 
T'es toujours obligé d'avoir une vision précise de tout le projet => quand tu débarque dans du code qui est pas à toi ca doit être horrible.
 
quand au fait de disposer du stacktrace, comme ca a déjà été dit plein de fois, y qu'à correctement gérer le catch. Le minimum étant un bon vieux e.printStackTrace();


---------------
ma vie, mon oeuvre - HomePlayer
n°625261
chrisbk
-
Posté le 29-01-2004 à 19:15:23  profilanswer
 

the real moins moins a écrit :

euh tu crois vraiment que ton end user il a envie de voir une stacktrace sortir de ton appli?


 
on parlait de debugguer

n°625262
benou
Posté le 29-01-2004 à 19:16:45  profilanswer
 

the real moins moins a écrit :

euh tu crois vraiment que ton end user il a envie de voir une stacktrace sortir de ton appli?


toi tu es de ceux qui ont pas aimé la possibilité d'afficher l'état des registres quand une appli plantait sous win 9x [:ddr555]


---------------
ma vie, mon oeuvre - HomePlayer
n°625265
the real m​oins moins
Posté le 29-01-2004 à 19:19:00  profilanswer
 

benou a écrit :


toi tu es de ceux qui ont pas aimé la possibilité d'afficher l'état des registres quand une appli plantait sous win 9x [:ddr555]

barf, avoir la possibilité, pq pas, avoir un écran bleu, non merci.
(laisser remonter une ex jusqu'au main en java, c'est l'equivalent d'un core dump ou d'un ecran bleu pour moi...)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°625266
chrisbk
-
Posté le 29-01-2004 à 19:19:30  profilanswer
 

the real moins moins a écrit :

barf, avoir la possibilité, pq pas, avoir un écran bleu, non merci.
(laisser remonter une ex jusqu'au main en java, c'est l'equivalent d'un core dump ou d'un ecran bleu pour moi...)


je prefere le core dump (a l'ecran bleu)


Message édité par chrisbk le 29-01-2004 à 19:19:40
n°625270
benou
Posté le 29-01-2004 à 19:26:20  profilanswer
 

chrisbk a écrit :


je prefere le core dump (a l'ecran bleu)


un core dump de l'os, c'est mal :/


---------------
ma vie, mon oeuvre - HomePlayer
n°625271
chrisbk
-
Posté le 29-01-2004 à 19:27:34  profilanswer
 

benou a écrit :


un core dump de l'os, c'est mal :/


 
oué ben vu que je code pas en kernel space j'ai normalement pas a craindre ce genre de blague :D


Message édité par chrisbk le 29-01-2004 à 19:27:52
n°625505
darklord
You're welcome
Posté le 29-01-2004 à 23:26:49  profilanswer
 

the real moins moins a écrit :


meme des soit-disant developpeurs java sont pas capables de decrypter correctement une stacktrace alors jte dis pas les end users..


 
[:rofl2]
 
fallait que tu la sortes celle là [:rofl2]
 
(pour ceux qui sont intéressés par la private joke, deux de nos 'collègues' ont passé la journée devant 2 problèmes 'hyper grave'. Greg est arrivé a lu les 2 stacktraces et en 15 min montre en main c'était reglé)
 
j'avais bien rigolé ce jour là (surtout comme les deux idiots ont nié l'affaire [:kiki] )

n°625507
darklord
You're welcome
Posté le 29-01-2004 à 23:27:43  profilanswer
 

sinon pour le débat, je suis tout à fait d'accord avec benou et --

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[JAVA] question sur JList et JDesktopPane[JAVA] compiler en natif
[JAVA] récupérer efficacement des sequences dans un fichier texte[JAVA] éliminer la redondance dans un fichier texte !
comment reduire un programme dans la systray?[Java] Sockets et http
probleme pour parser un format notation scientifique (ex : e-179) JAVA[JAVA] Afficher en couleur dans la console (sous Windows) ????
[Dec C++] Impossibilité de compiler un programmeprogramme de type crococlip
Plus de sujets relatifs à : java, mettre le programme en attente


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR