29850

Pen^2 (./29847) :
En fait elle a émis l'hypothèse d'une matière noire pour expliquer son observation (d'après l'article, et contrairement à son titre)Mais oui, je dirais même plus : une grande dame en tout cas.

L'observation étant que les planètes en périphéries tournaient aussi vite que celles proches du centre de la galaxie. (C'est important de préciser, elle n'a pas simplement collé son oeil au téléscope et regardé bouche bée le ciel grin)

29851

29852

J'ai cru que c'était une page dédiée au pokémon, j'ai halluciné quelques secondes, puis j'ai cliqué x)

29853



mmm mmm.

29854

return "asfloat(0x7FC8EE5E)"; // cheese nan
-----------
wtf pcf cheeky
avatar
HURRRR !

29855

29856

29857

29858

grin
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

29859

29860

FOlco-esque, d'une certaine façon... grin (et moi-même-esque)

29861

Et Nhutesque smile
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

29862

Clairement grin

29863

*(dest + 0x4F) = (file_size >> 24) & 0xFF; // (ahahah)Des fois je fais des commentaires très éclairés, quand même triso

29864

* 0.0
avatar
HURRRR !

29865

./29863 : est-ce bien le même Folco qui se pose des questions angoissées sur le meilleur style de code à adopter, tout ça ? grin
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

29866

Oué ben parles-en, tu me fais angoisser avec ton "les vars globales, c'est mal" et "les singleton, c'est mal" grin
On fait comment pour un jeu, mettons le renderer principal t'en fais quoi ?
En soi, c'est global à l'appli, donc ça pourrait être une var globale mais c'est pas bien
On peut faire le faux-cul avec un singleton et un simple getter, mais c'est carrément hypocrite
Passer le renderer à chaque fonction du programme n'est pas une solution

Alors, c'est quoi la bonne façon de faire ? tongue

29867

Même si un singleton te semble hypocrite, cela me semble beaucoup mieux. Les variables globales t'interdisent pas mal de choses comme de faire facilement des tests unitaires ou de réutiliser le code (bon, ça peut être secondaire si le code est vraiment spécifique).
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

29868

Client-serveur multi-threadé massivement parallèle avec zero copy message passing.

Comme ça.

Carrément.

29869

J'ai commencé un hello world comme ça, je compte bien le terminer un jour !

Flanker -> ok, merci. C'esdt le genre d'expérience que j'ai pas smile

29870

Folco (./29866) :
Oué ben parles-en, tu me fais angoisser avec ton "les vars globales, c'est mal" et "les singleton, c'est mal" grin
Je ne me souviens pas avoir dit ça, et ce n'est pas ce que je pense, tu dois me confondre avec quelqu'un d'autre smile

(enfin je n'encourage pas l'abus de variables globales non plus, on est d'accord ^^)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

29871

(cela dit, il faut toujours se méfier des « il ne faut jamais » : si une mauvaise pratique permet de diviser par 10 ton code tout en l'accélérant, peut-être qu'elle n'est pas si mauvaise que ça dans un cas précis ^^)
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

29872

(c'esdt vrai aussi, merci pour cette nuance hehe)

29873

Perso je ne vois pas la différence entre une variable globale et un singleton, les conséquences me semblent être les mêmes à tout point de vue. J'aurais tendance à les éviter dès qu'ils exposent un service qui a des effets de bord, pour les raisons de tests que Flan évoque.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

29874

(je voyais un singleton comme une classe qu'on instance généralement une seule fois ; me trompé-je ?)
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

29875

(non, pour moi c'est ça ; par rapport aux variables globales, un singleton avec des getters/setters de singleton est plus puissant, ils peut par exemple inclure des mécanismes de synchronisation pour éviter les race conditions. Et puis du point de vue encapsulation, c'est plus propre aussi.)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

29876

C'est pas seulement ça, si vous parlez du pattern "singleton" ça veut généralement aussi dire que cette classe expose de façon globale (via une méthode statique par exemple) un accesseur qui permet d'obtenir cette instance unique depuis n'importe où, si besoin en l'initialisant. Du coup ça a exactement les mêmes soucis de couplage fort qu'une variable globale et c'est tout autant impossible à injecter pour des tests. À moins de supporter une sorte de "mode test" au niveau du singleton, mais ça ne règle pas le problème de couplage et ça veut aussi dire polluer le code de son singleton à cause des tests donc c'est pas top comme solution.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

29877

Alors quelle solution propre adopter pour le cas de variables assez uniques, genre le handle de la fenêtre principale de ton programme, auquel beaucoup d'endroits du code ont légitimement besoin d'accéder ?
Une variable statique dans un source, avec à côté des fonctions pour l'initialiser et y accéder ? Pour moi c'est pareil, m'enfinça se présente différemment ^^

29878

En fait je crois que je ne sais jamais si tu demandes une solution ou un avis. Comme souvent, ici c'est surtout une question de goût, la solution que tu proposes fonctionne et c'en est une parmi plein d'autres ^^ Si tu veux discuter de goûts et de couleur en revanche, moi j'aime bien ce qui est explicite y compris pour les dépendances, donc si une fonction a besoin d'accéder à une variable je lui passe en paramètre. Ça peut vouloir dire que beaucoup de fonctions vont avoir cette variable assez unique dont tu parles comme paramètre, et je trouve que c'est une bonne chose de ne pas le cacher en la remplaçant par une variable globale ou un singleton auquel tout le monde pourra magiquement accéder sans que ça se voit dans les signatures.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

29879

Zeph (./29878) :
moi j'aime bien ce qui est explicite y compris pour les dépendances
epee

(et je déteste encore plus quand même un IDE est incapable de savoir d'où vient un élément)
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

29880

Zeph -> ben des solutions qui marchent, je viens d'en proposer 4 (var globale, var statique, singleton, et paramètre un peu partour).
C'est donc un avis que je demandais, et Flanker et toi venez d'être parfaitement clair à ce sujet. smile

J'ai juste un blocage psychologique très fort avec une variable qui va être passé à 50 fonctions en paramètre, donc 30 fois inutilement : question perf, c'est l'horreur grin

M'enfin, c'est oujours un peu le cas avec la programmation structurée. Merci beaucoup pour votre avis top