Le 23/06/2011 16:02, Toxico Nimbus a écrit :
Euh ! Tu sais qu'on est aujourd'hui le 22 juin et non le 23 ?
Le 23/06/2011 16:02, Toxico Nimbus a écrit :
Euh ! Tu sais qu'on est aujourd'hui le 22 juin et non le 23 ?
Le 23/06/2011 16:02, Toxico Nimbus a écrit :
Euh ! Tu sais qu'on est aujourd'hui le 22 juin et non le 23 ?
Le Wed, 22 Jun 2011 01:59:12 -0700 (PDT),
Aeris Imirhil écrivait :
> Dans l'exemple précédent, elle nécessite la connaissance du code de la
> fonction « writeToFile » et l'analyse de toutes les valeurs de retour
> possibles.
Non. Elle nécessite de connaître le prototype de la f onction. Point
barre. Et en Java, si tu ne connais pas le prototype d'un e fonction,
tu ne vas pas loin non plus.
Le Wed, 22 Jun 2011 01:59:12 -0700 (PDT),
Aeris Imirhil <aeris.imir...@gmail.com> écrivait :
> Dans l'exemple précédent, elle nécessite la connaissance du code de la
> fonction « writeToFile » et l'analyse de toutes les valeurs de retour
> possibles.
Non. Elle nécessite de connaître le prototype de la f onction. Point
barre. Et en Java, si tu ne connais pas le prototype d'un e fonction,
tu ne vas pas loin non plus.
Le Wed, 22 Jun 2011 01:59:12 -0700 (PDT),
Aeris Imirhil écrivait :
> Dans l'exemple précédent, elle nécessite la connaissance du code de la
> fonction « writeToFile » et l'analyse de toutes les valeurs de retour
> possibles.
Non. Elle nécessite de connaître le prototype de la f onction. Point
barre. Et en Java, si tu ne connais pas le prototype d'un e fonction,
tu ne vas pas loin non plus.
Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
> Je fais comment avec ta macro pour traiter diff remment l'absence de
> fichier et le crash disque, et pour en avertir diff remment
> l'utilisateur ?
man errno
Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
> Je fais comment avec ta macro pour traiter diff remment l'absence de
> fichier et le crash disque, et pour en avertir diff remment
> l'utilisateur ?
man errno
Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
> Je fais comment avec ta macro pour traiter diff remment l'absence de
> fichier et le crash disque, et pour en avertir diff remment
> l'utilisateur ?
man errno
On 23 juin, 16:02, Toxico Nimbus wrote:Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Qui, en faisant l'hypothèse que le développeur est mauvais, pue très
fortement.
Et même avec de bons devs, en cours de dev, est très fortement
parcellaire.
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Un bug pour moi est que la fonction ne fasse pas ce qu'on attend
d'elle dans le cas nominal, mais aussi qu'elle plante dans les cas
hors limite.
Pour moi, la documentation n'est pas un élément viable.
Elle sert essentiellement au début du projet pour comprendre le
fonctionnement global d'une lib et ses principes généraux. Mais je ne
m'en servirais pas comme unique hypothèse que mon code est correct et
fiable.
La doc peut elle aussi être buggée ou non fiable et ne peut donc pas
servir d'élément de preuve.
Les exceptions, elles, sont des éléments fiables, puisque le
compilateur me garantit qu'aucune exception autre que celles déclarées
ne peut se produire, quelque soit la correction du code ou de la doc.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
Je ne sais peut-être pas quoi en faire, mais je sais au moins protéger
mon programme contre elle.
En C, si un cas alternatif d'erreur a été mis dans le code mais ne se
trouve ni dans le prototype ni dans l'interface (erreur du dev,
fainéantise, manque de temps…), ton code résultant est non fiable car
peut laisser passer des erreurs.
Je fais comment avec ta macro pour traiter diff remment l'absence de
fichier et le crash disque, et pour en avertir diff remment
l'utilisateur ?
man errno
Et le code devient imbouffable…
Ne serait-ce que pour penser renseigner cette variable dans chaque cas
d'erreur…
Et quand je lis des choses comme « Parfois, si -1 est une valeur de
retour légale, il faut positionner errno à 0 avant d'effectuer l'appel
système, de manière à détecter une erreur éventuelle. », ça ne me
rassure pas sur sa fiabilité ni sur la propreté du code…
Sans parler que le problème reste le même : errno t'a retourné une
fois -2 et une fois -3, qui te *garantit* qu'il n'y a aucune
possibilité d'obtenir -4 à un moment ?
On 23 juin, 16:02, Toxico Nimbus<T...@free.fr> wrote:
Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Qui, en faisant l'hypothèse que le développeur est mauvais, pue très
fortement.
Et même avec de bons devs, en cours de dev, est très fortement
parcellaire.
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Un bug pour moi est que la fonction ne fasse pas ce qu'on attend
d'elle dans le cas nominal, mais aussi qu'elle plante dans les cas
hors limite.
Pour moi, la documentation n'est pas un élément viable.
Elle sert essentiellement au début du projet pour comprendre le
fonctionnement global d'une lib et ses principes généraux. Mais je ne
m'en servirais pas comme unique hypothèse que mon code est correct et
fiable.
La doc peut elle aussi être buggée ou non fiable et ne peut donc pas
servir d'élément de preuve.
Les exceptions, elles, sont des éléments fiables, puisque le
compilateur me garantit qu'aucune exception autre que celles déclarées
ne peut se produire, quelque soit la correction du code ou de la doc.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
Je ne sais peut-être pas quoi en faire, mais je sais au moins protéger
mon programme contre elle.
En C, si un cas alternatif d'erreur a été mis dans le code mais ne se
trouve ni dans le prototype ni dans l'interface (erreur du dev,
fainéantise, manque de temps…), ton code résultant est non fiable car
peut laisser passer des erreurs.
Je fais comment avec ta macro pour traiter diff remment l'absence de
fichier et le crash disque, et pour en avertir diff remment
l'utilisateur ?
man errno
Et le code devient imbouffable…
Ne serait-ce que pour penser renseigner cette variable dans chaque cas
d'erreur…
Et quand je lis des choses comme « Parfois, si -1 est une valeur de
retour légale, il faut positionner errno à 0 avant d'effectuer l'appel
système, de manière à détecter une erreur éventuelle. », ça ne me
rassure pas sur sa fiabilité ni sur la propreté du code…
Sans parler que le problème reste le même : errno t'a retourné une
fois -2 et une fois -3, qui te *garantit* qu'il n'y a aucune
possibilité d'obtenir -4 à un moment ?
On 23 juin, 16:02, Toxico Nimbus wrote:Comme dans tous les langages, c'est la documentation compl te de
l'interaction de la fonction/m thode avec son environnement d' x cution
(arguments, valeur de retour, exceptions, variables globales modifi es,
etc).
Qui, en faisant l'hypothèse que le développeur est mauvais, pue très
fortement.
Et même avec de bons devs, en cours de dev, est très fortement
parcellaire.
Comment d finis-tu un bug ? Pour moi c'est quand le fonctionnement n'est
pas conforme celui qui est pr vu dans la documentation.
Un bug pour moi est que la fonction ne fasse pas ce qu'on attend
d'elle dans le cas nominal, mais aussi qu'elle plante dans les cas
hors limite.
Pour moi, la documentation n'est pas un élément viable.
Elle sert essentiellement au début du projet pour comprendre le
fonctionnement global d'une lib et ses principes généraux. Mais je ne
m'en servirais pas comme unique hypothèse que mon code est correct et
fiable.
La doc peut elle aussi être buggée ou non fiable et ne peut donc pas
servir d'élément de preuve.
Les exceptions, elles, sont des éléments fiables, puisque le
compilateur me garantit qu'aucune exception autre que celles déclarées
ne peut se produire, quelque soit la correction du code ou de la doc.
Si tu ne sais pas en quoi consiste l'exception, tu ne sais pas quoi en
faire.
Je ne sais peut-être pas quoi en faire, mais je sais au moins protéger
mon programme contre elle.
En C, si un cas alternatif d'erreur a été mis dans le code mais ne se
trouve ni dans le prototype ni dans l'interface (erreur du dev,
fainéantise, manque de temps…), ton code résultant est non fiable car
peut laisser passer des erreurs.
Je fais comment avec ta macro pour traiter diff remment l'absence de
fichier et le crash disque, et pour en avertir diff remment
l'utilisateur ?
man errno
Et le code devient imbouffable…
Ne serait-ce que pour penser renseigner cette variable dans chaque cas
d'erreur…
Et quand je lis des choses comme « Parfois, si -1 est une valeur de
retour légale, il faut positionner errno à 0 avant d'effectuer l'appel
système, de manière à détecter une erreur éventuelle. », ça ne me
rassure pas sur sa fiabilité ni sur la propreté du code…
Sans parler que le problème reste le même : errno t'a retourné une
fois -2 et une fois -3, qui te *garantit* qu'il n'y a aucune
possibilité d'obtenir -4 à un moment ?
Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
> Qui, en faisant l'hypoth se que le d veloppeur est mauvais, pue tr s
> fortement.
Moi je ne fais pas ce genre d'hypoth se, c'est assez st rile.
Une API mal document e est rarement bien crite. Un dev qui b cle sa doc
aura sons doute d j b cl ses comment , son code, sa conception.
1. Ce qu'on attend d'elle ne peut se trouver ailleurs que dans la doc.
2. Je ne vois pas ce qu'est un cas hors limite, part peut- tre une
m thode/classe utilis e en dehors de son domaine de validit ?
Gn ? Tu sors ta boule de cristal, ou tu d cide la place du concepteur
ce que doit faire telle ou telle fonction ?
> Je ne sais peut- tre pas quoi en faire, mais je sais au moins prot ger
> mon programme contre elle.
Pas forc ment si tu ne sais pas dans quel tat est le syst me quand elle
est lev e. Il n'y a que le concepteur qui peut te le dire, ou alors il
faut relire les sources de ta lib.
> En C, si un cas alternatif d'erreur a t mis dans le code mais ne se
> trouve ni dans le prototype ni dans l'interface (erreur du dev,
> fain antise, manque de temps ), ton code r sultant est non fiable car
> peut laisser passer des erreurs.
c'est le default du switch, a ne vaut pas mieux qu'avec des exceptions.
Par ailleurs toutes les valeurs de errno
forment partie du standard POSIX, donc c'est assez peu sujet
changement. Sinon c'est "erreur inconnue".
> Qui, en faisant l'hypoth se que le d veloppeur est mauvais, pue tr s
> fortement.
Moi je ne fais pas ce genre d'hypoth se, c'est assez st rile.
Une API mal document e est rarement bien crite. Un dev qui b cle sa doc
aura sons doute d j b cl ses comment , son code, sa conception.
1. Ce qu'on attend d'elle ne peut se trouver ailleurs que dans la doc.
2. Je ne vois pas ce qu'est un cas hors limite, part peut- tre une
m thode/classe utilis e en dehors de son domaine de validit ?
Gn ? Tu sors ta boule de cristal, ou tu d cide la place du concepteur
ce que doit faire telle ou telle fonction ?
> Je ne sais peut- tre pas quoi en faire, mais je sais au moins prot ger
> mon programme contre elle.
Pas forc ment si tu ne sais pas dans quel tat est le syst me quand elle
est lev e. Il n'y a que le concepteur qui peut te le dire, ou alors il
faut relire les sources de ta lib.
> En C, si un cas alternatif d'erreur a t mis dans le code mais ne se
> trouve ni dans le prototype ni dans l'interface (erreur du dev,
> fain antise, manque de temps ), ton code r sultant est non fiable car
> peut laisser passer des erreurs.
c'est le default du switch, a ne vaut pas mieux qu'avec des exceptions.
Par ailleurs toutes les valeurs de errno
forment partie du standard POSIX, donc c'est assez peu sujet
changement. Sinon c'est "erreur inconnue".
> Qui, en faisant l'hypoth se que le d veloppeur est mauvais, pue tr s
> fortement.
Moi je ne fais pas ce genre d'hypoth se, c'est assez st rile.
Une API mal document e est rarement bien crite. Un dev qui b cle sa doc
aura sons doute d j b cl ses comment , son code, sa conception.
1. Ce qu'on attend d'elle ne peut se trouver ailleurs que dans la doc.
2. Je ne vois pas ce qu'est un cas hors limite, part peut- tre une
m thode/classe utilis e en dehors de son domaine de validit ?
Gn ? Tu sors ta boule de cristal, ou tu d cide la place du concepteur
ce que doit faire telle ou telle fonction ?
> Je ne sais peut- tre pas quoi en faire, mais je sais au moins prot ger
> mon programme contre elle.
Pas forc ment si tu ne sais pas dans quel tat est le syst me quand elle
est lev e. Il n'y a que le concepteur qui peut te le dire, ou alors il
faut relire les sources de ta lib.
> En C, si un cas alternatif d'erreur a t mis dans le code mais ne se
> trouve ni dans le prototype ni dans l'interface (erreur du dev,
> fain antise, manque de temps ), ton code r sultant est non fiable car
> peut laisser passer des erreurs.
c'est le default du switch, a ne vaut pas mieux qu'avec des exceptions.
Par ailleurs toutes les valeurs de errno
forment partie du standard POSIX, donc c'est assez peu sujet
changement. Sinon c'est "erreur inconnue".
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:Il y en a surtout une qui avantage énormément les GC : les mecs de chez
Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
On Mon, 20 Jun 2011 22:42:16 +0200, Aéris wrote:
> Il y en a surtout une qui avantage énormément les GC : les mecs de chez
> Sun, Oracle ou IBM sont bien plus compétents que nous pour savoir
> comment gérer (proprement si possible) la mémoire.
Et merde, tu viens de baisser le niveau de l'équipe qui est ici.
Prends le temps de faire des recherches sur tes correspondants.
C'est pratique quand on poste avec son vrai nom. Pas comme toi.
witch(ios = bar())
witch(ios = bar())
witch(ios = bar())