Alors que l’extrémisme d'une glacière en béton, qu'il faut payer en 30 ans et qui se révèle une passoire thermique à l'usage, ça juste passe.
Pourquoi inventer ? Les maisons modernes sont loin d'êtres des passoires thermiques surtout aux nouvelles normes. J'ai du mal à croire qu'une yourte fasse mieux (pour le même nombre de m²)
Souvent les algo finissent avec de la bouillis de constantes. C est parfois difficile de trouver la bonne unité.
Le delta vs valeur absolu se généralise à toutes les unités. Cela aide si tu ne simplifie pas trop l eqyation dans le code.
Si tu utilises une précision, le mieux est d'utilisé une valeur absolu et surtout pas un pourcentage. Cela correspond aux capteurs physiques réels. Avec un tel système, tu dois même pouvoir choisir entre float, double, int et int64, à la génération de code.
Autant la SSA semble simple avec des expression types "a := f(b,c)", autant je n'ai rien compris à l'usage du CPS.
En SSA, on comprend que l'on nomme le retour de chaque expression ce qui permet facilement de réutiliser un résultat, ou de simplifier un nœud derrière.
CPS utilise une fonction supplémentaire en argument, pour matérialiser le "return", j'imagine. Mais je ne comprends pas l'utilité (et les exemple en lisp ou haskell n'aide pas à comprendre :)
car cela implique de creer/detruire pas mal d'objet.
Non justement. C'est le boulot de React de ne pas le faire.
Ainsi une API dans laquel on va juste rendre invisible explicitement le button sera plus efficace qu'une dans laquelle on va soit traverser un arbre ou parser une commande pour decider de rendre invisible ou detruire un button.
Oui, cela sera plus efficace, mais 90% du temps, tu veux surtout un code de GUI léger.
J'ai très bien compris le concept de retained, ce n'est pas le sujet. Dans une interface, tu n'as pas seulement le champs string qui bouge, tu as possiblement la création/destruction d'un ensemble de widget eux-même.
Si tu fonctionnes par modification de l'existant, cela donne du code touffu et plein de bug. Si tu fais (semblant) de tout recréer à chaque fois, c'est mille fois plus simple.
function Example() {
// Declare a new state variable, which we'll call "count"
const [count, setCount] = useState(0);
if (count === 10) {
return (<p> Ten time !<p>)
} else {
return (
<div>
<p>You clicked {count} times</p>
<button onClick={() => setCount(count + 1)}>
Click me
</button>
</div>
);
}
}
"Quel est l'interet de dupliquer en memoire une information qui ne sera pas utiliser pour realiser le contenu de l'application a l'ecran? Quel est l'interet de calculer le delta de quelques choses qui sera ignore au final?"
Je ne vois pas de quoi tu parles.
"Il est donc necessaire pour un framework JS d'implementer une technique "retained" en interne pour avoir de bonne performance."
Oui, c'est la téchnique du shadow DOM. Mais tu veux dire que tu peux recréer complètement tout tes widgets à la volé à chaque modification du modèle applicatif sans perte de performance ? J'ai un gros doute.
Ce n'est même pas la technique de redux, c'est du pure reactjs. Essayes un hello-wold si tu as du mal à comprendre.
Le problème ne situe pas du tout au niveau dont tu parles.
Le problème concerne l'état réel de l'application vs ce que l'on peut afficher.
Avoir un objet "field" en cache ne t'aide en rien. Redessiner est bien plus simple au niveau de l'API, l’intérêt de react ou vue est de détecter les changements au niveau état de l'application, pas au niveau des widgets.
Oui, c'est ça qui est génial. Et je trouve dommage de ne pas avoir ce genre de puissance dans un langage compilé.
Je n'ai pas non plus parlé des Hooks que je trouve totalement génial car on remplace des classes et des High Order composant illisible par… des appels de fonctions tout simple !
Vu que tout ça est implémenté en Javascript, cela doit pouvoir se faire en autre chose.
C'est l'api qui te fait croire cela et qui simplifie tout.
Par contre, en vrai, il utilise la techno du "shadow DOM", ou il reconstruit un DOM, fait un "diff" et ne met à jour que les parties intéressantes. Je pense aussi qu'il fait une liaison entre l'object graphique généré et ses entrées, si l'entrée bouge, la fonction est relancé.
L'appli maintenable par un stagiaire, je n'y crois pas trop. L'avantage est justement de ne pas avoir le bordel de dépendance dans tous les sens. Cela ne se voit que sur des applis un peu grosses et/ou dynamiques.
La lourdeur de react&Co, c'est la techno web derrière, pas le concept de programmation.
Est-ce que ce genre de lib 2d peut servir de fondation à une structure imitant react ou vue ? en gros, les widgets seraient vue comme le DOM du navigateur web.
L'idée est vraiment de coder des appels de fonctions avec des entrées, et le framework appel la fonction à la demande, pas en passant par en dessous, avec tous les effets de bord de la terre imaginable.
Redux rajoute un cycle d’événement qui modifie l'état global qui ensuite modifie le rendu complet (le tout optimisé par le framework en dessous).
[^] # Re: faut voir
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Petites observations sur le travail (que l'on fait pour soi). Évalué à 4.
En création de CO2, une machine n'est rien par rapport à un maison.
"La première sécurité est la liberté"
[^] # Re: Deux poids deux mesures ?
Posté par Nicolas Boulay (site web personnel) . En réponse au lien Pourquoi s’opposer à la création de Mon Espace Santé ?. Évalué à 3.
Comme pour n importe quelle prestataire de santé en fait.
"La première sécurité est la liberté"
[^] # Re: faut voir
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Petites observations sur le travail (que l'on fait pour soi). Évalué à 2.
Pourquoi inventer ? Les maisons modernes sont loin d'êtres des passoires thermiques surtout aux nouvelles normes. J'ai du mal à croire qu'une yourte fasse mieux (pour le même nombre de m²)
"La première sécurité est la liberté"
# les constantes !
Posté par Nicolas Boulay (site web personnel) . En réponse au journal [Letlang] Faire la différence entre un nombre et une quantité. Évalué à 3.
Souvent les algo finissent avec de la bouillis de constantes. C est parfois difficile de trouver la bonne unité.
Le delta vs valeur absolu se généralise à toutes les unités. Cela aide si tu ne simplifie pas trop l eqyation dans le code.
Si tu utilises une précision, le mieux est d'utilisé une valeur absolu et surtout pas un pourcentage. Cela correspond aux capteurs physiques réels. Avec un tel système, tu dois même pouvoir choisir entre float, double, int et int64, à la génération de code.
"La première sécurité est la liberté"
# test ?
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche Pulseview et sigrok pour un analyseur logique libre. Évalué à 4.
Est-ce qu il existe des fonctions de tests pour automatiser des verifications ?
"La première sécurité est la liberté"
[^] # Re: Mais pour
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Les données de 510 000 personnes fuitent sur Ameli. Évalué à 6. Dernière modification le 19 mars 2022 à 13:19.
Il doit aussi être possible de limiter le nombre de patient vu par une seule personne.
"La première sécurité est la liberté"
[^] # Re: Vraiment écologique ?
Posté par Nicolas Boulay (site web personnel) . En réponse au lien Matériel reconditionné, France : les contribuables paieront 15 millions d’euros à la SACEM & co . Évalué à 4.
Dans le numérique, la création de CO2 est surtout dans les terminaux, et parmi les terminaux surtout les TV.
"La première sécurité est la liberté"
[^] # Re: Vraiment écologique ?
Posté par Nicolas Boulay (site web personnel) . En réponse au lien Matériel reconditionné, France : les contribuables paieront 15 millions d’euros à la SACEM & co . Évalué à 4.
Pas vraiment, en France, on a 50/50 fabrication (chine plein de charbon) et utilisation (France plein de nucléaire) pour les ordinateurs.
"La première sécurité est la liberté"
[^] # Re: Trivial ?!?!?!
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche TuxMake et le noyau Linux. Évalué à 3.
Je crois que Linus avait refuser un gestionnaire de dependances de source dans le noyau à une époque.
"La première sécurité est la liberté"
[^] # Re: super article !
Posté par Nicolas Boulay (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 2). Évalué à 6.
Autant la SSA semble simple avec des expression types "a := f(b,c)", autant je n'ai rien compris à l'usage du CPS.
En SSA, on comprend que l'on nomme le retour de chaque expression ce qui permet facilement de réutiliser un résultat, ou de simplifier un nœud derrière.
CPS utilise une fonction supplémentaire en argument, pour matérialiser le "return", j'imagine. Mais je ne comprends pas l'utilité (et les exemple en lisp ou haskell n'aide pas à comprendre :)
"La première sécurité est la liberté"
# super article !
Posté par Nicolas Boulay (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 2). Évalué à 8.
Est-ce que tu va parler de la forme de l'ast ?
J'ai déja écrit des ast sous la forme de simple type somme. A priori, la forme SSA simplifie la manipulation du code ( https://en.m.wikipedia.org/wiki/Static_single_assignment_form )
Qu'en penses-tu ?
"La première sécurité est la liberté"
[^] # Re: Trivial ?!?!?!
Posté par Nicolas Boulay (site web personnel) . En réponse à la dépêche TuxMake et le noyau Linux. Évalué à 10.
Il y a 10 ans, c'était courant de s'amuser à recompiler son noyau et c'est effectivement assez trival.
"La première sécurité est la liberté"
[^] # Re: Sur quelle planète ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Écrire directement aux Russes. Évalué à -2.
dis toi que dans le tas, il y a quelques trolls russes…
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
Non justement. C'est le boulot de React de ne pas le faire.
Oui, cela sera plus efficace, mais 90% du temps, tu veux surtout un code de GUI léger.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
J'ai très bien compris le concept de retained, ce n'est pas le sujet. Dans une interface, tu n'as pas seulement le champs string qui bouge, tu as possiblement la création/destruction d'un ensemble de widget eux-même.
Si tu fonctionnes par modification de l'existant, cela donne du code touffu et plein de bug. Si tu fais (semblant) de tout recréer à chaque fois, c'est mille fois plus simple.
"La première sécurité est la liberté"
[^] # Re: Belle liste
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Des faits saillants pour une plus que centenaire. Évalué à 3. Dernière modification le 08 mars 2022 à 18:11.
.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 2.
Je ne vois pas de quoi tu parles.
Oui, c'est la téchnique du shadow DOM. Mais tu veux dire que tu peux recréer complètement tout tes widgets à la volé à chaque modification du modèle applicatif sans perte de performance ? J'ai un gros doute.
Ce n'est même pas la technique de redux, c'est du pure reactjs. Essayes un hello-wold si tu as du mal à comprendre.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
Le problème ne situe pas du tout au niveau dont tu parles.
Le problème concerne l'état réel de l'application vs ce que l'on peut afficher.
Avoir un objet "field" en cache ne t'aide en rien. Redessiner est bien plus simple au niveau de l'API, l’intérêt de react ou vue est de détecter les changements au niveau état de l'application, pas au niveau des widgets.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
Sauf si cela a fondamentalement changé depuis 10 ans, non pas du tout.
"La première sécurité est la liberté"
[^] # Re: Noms de domaines
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Quand la DGFiP (les impôts) donne des conseils de sécurité.... Évalué à 4.
Au pire, il devrait y avoir une redirection depuis un gouv.fr pour valider qu'un site est bien un site officiel.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
Oui, c'est ça qui est génial. Et je trouve dommage de ne pas avoir ce genre de puissance dans un langage compilé.
Je n'ai pas non plus parlé des Hooks que je trouve totalement génial car on remplace des classes et des High Order composant illisible par… des appels de fonctions tout simple !
Vu que tout ça est implémenté en Javascript, cela doit pouvoir se faire en autre chose.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 6.
C'est l'api qui te fait croire cela et qui simplifie tout.
Par contre, en vrai, il utilise la techno du "shadow DOM", ou il reconstruit un DOM, fait un "diff" et ne met à jour que les parties intéressantes. Je pense aussi qu'il fait une liaison entre l'object graphique généré et ses entrées, si l'entrée bouge, la fonction est relancé.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 4.
L'appli maintenable par un stagiaire, je n'y crois pas trop. L'avantage est justement de ne pas avoir le bordel de dépendance dans tous les sens. Cela ne se voit que sur des applis un peu grosses et/ou dynamiques.
La lourdeur de react&Co, c'est la techno web derrière, pas le concept de programmation.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 3.
Est-ce que ce genre de lib 2d peut servir de fondation à une structure imitant react ou vue ? en gros, les widgets seraient vue comme le DOM du navigateur web.
"La première sécurité est la liberté"
[^] # Re: Trop simple ?
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 6.
C'est comme les slot de Qt ? On est loin de redux (https://redux.js.org/) ou de l'architecture d'ELM (https://guide.elm-lang.org/architecture/).
L'idée est vraiment de coder des appels de fonctions avec des entrées, et le framework appel la fonction à la demande, pas en passant par en dessous, avec tous les effets de bord de la terre imaginable.
Redux rajoute un cycle d’événement qui modifie l'état global qui ensuite modifie le rendu complet (le tout optimisé par le framework en dessous).
"La première sécurité est la liberté"