2250

Personnellement j'ai vraiment du mal à comprendre comment on peut vouloir ne pas toucher à la base de données et espérer que des outils de génération automatique donnent toujours un résultat parfait.
Sauf à réécrire le SQL dans un autre langage que le SQL, c'est impossible d'avoir un schéma de BDD géré au poil sans mettre les mains dans le cambouis. (Puis les requêtes SQL, bordel… !)
C'est peut-être parce que je suis moins un développeur web que certains ici, mais ça me sidère. À chaque fois que j'ai vu des outils "magiques" qui gère la BDD à ma place, le résultat derrière (SQL) était profondément horrible.

Je peux comprendre le côté "cool" de ne pas avoir à gérer deux bases de code en parallèle, mais de tout ce que j'ai vu, rien ne remplacera jamais un bon développement SQL. Et la rapidité de développement n'est pas une excuse pour une qualité de SQL médiocre :/

Clairement, je comprends beaucoup mieux l'approche de Meowcate à ce niveau, mais le seul outil que j'ai vu mapper des tables vers du code, c'était chez MS avec EntityFramework (et c'est un truc reconnu par certains pour ses qualités, qui fonctionne avec des tas de gens), mais à chaque fois que j'ai essayé de lui faire bouffer un schéma SQL juste un peu plus que basique (typiquement des relations N <-> N + attributs), j'ai très vite vu les limites du système.
Du coup, dans un sens comme dans l'autre, je ne sais pas comment tout peut bien marcher, mais il existe peut-être des outils miraculeux qui arrivent à envoyer un batch transactionnel de plusieurs instructions SQL (lectures ET écritures) coordonnées en une seule fois au serveur SQL (plutôt que 50 échanges client<->serveur incontrôlés) avec un schéma de BDD non trivial. Si c'est le cas, faites moi découvrir cet outil miraculeux, parce que j'ai vraiment du mal à y croire.
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

2251

GoldenCrystal (./2250) :
À chaque fois que j'ai vu des outils "magiques" qui gère la BDD à ma place, le résultat derrière (SQL) était profondément horrible.
Folco (./2250) :
À chaque fois que j'ai vu des outils "magiques" qui gère l'assembleur à ma place, le résultat derrière GCC était profondément horrible.
Finalement, à quelques détails près, on est sur la même longueur d'onde avec Golden embarrassed

2252

Tss
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2253

GC > En fait, je trouve que la réflexion de Folco est très juste. Mais avec un bémol : la conversion de Ruby|PHP|Python vers SQL est un problème beaucoup plus simple que la conversion du C vers de l'ASM : pas de soucis d'allocations de registre, de détection de code mort, d'optimisations qui vont déplacer ou modifier des pans entiers de code. Ça reste essentiellement de la réécriture, presque mot à mot.

Ensuite, tu ne parles que de choses compliquées en SQL. Certes, les choses compliquées existent mais ce n'est pas le plus courant. Même avec des modèles assez simples, on peut faire plein, plein de choses… Faire ses choix en utilisant uniquement les cas rares n'est pas forcément la meilleure idée. Je ne connais pas Ruby/RoR ou PHP/Doctrine, mais en Python/Django, tu peux faire l'équivalent de l'ASM inline en C : au lieu de définir la table depuis le Python, tu utilises une table SQL existante et tu associes toi-même chaque colonne à un champ Python. Pour les requêtes, il y a la même chose : faire la requête en SQL pur et récupérer soit des résultats bruts, soit des objets Python correctement peuplés (si tu débrouilles pour que la requête renvoie des résultats au bon format).
Je trouve vraiment dommage de se passer d'un outil qui peut faciliter la vie 99% du temps à cause du 1% de cas compliqués (alors qu'on peut utiliser les deux en même temps : l'ORM pour les cas simples, le SQL brut pour les cas compliqués), surtout que le temps humain est souvent la ressource critique qu'il faut optimiser.

Pour finir, oui, le SQL est assez simple… sauf qu'il y a autant de SQL que de bases de données, ce qui complique lourdement la tâche quand tu veux faire un code indépendant de la base.
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

2254

Je suis d'accord avec Flanker, generer le code SQL est tres simple, c'est quasiment impossible qu'il y ai des erreurs (Je ne jamais entendu quelqu'un me parler d'une erreur avec Doctrine), de plus ca permet de ne pas etre lie a mysql, car le code est generique et peut s'adapter a postgre par exemple.
flanker (./2253) :
Je trouve vraiment dommage de se passer d'un outil qui peut faciliter la vie 99% du temps à cause du 1% de cas compliqués (alors qu'on peut utiliser les deux en même temps : l'ORM pour les cas simples, le SQL brut pour les cas compliqués), surtout que le temps humain est souvent la ressource critique qu'il faut optimiser.
pencil C'est tellement pratique, et effectivement on peut toujours faire a la main pour les cas speciaux (mais c'est rare).

2255

Ce qui me surprend, c'est que personne n'ait encore mentionné Hibernate comme ORM. (C'est du Java, et il existe d'ailleurs un fork NHibernate pour C#.) J'ai affaire à ça au boulot, et finalement ça marche mieux que j'attendais. Le gros inconvénient est que c'est une usine à gaz (bonne chance pour déboguer s'il y a un problème), un autre ennui est qu'on a dû bidouiller un peu pour l'utiliser avec SQLite (le "pilote" pour l'utiliser n'est pas livré avec Hibernate, et quand on rajoute le "pilote" tiers, il reste des limitations à contourner: notamment, les générateurs d'identité de Hibernate ne sont pas compatibles avec le fonctionnement du verrouillage de SQLite), mais la liste des fonctionnalités est impressionnante (normal, c'est un produit de Red Hat tongue), et globalement, ça marche très bien. Ça permet aussi d'utiliser le même code avec SQLite (très pratique pour tester et pour des applications locales), MySQL/MariaDB (le MariaDB Connector/J est sous LGPL), Derby (qui peut être intéressant pour déboguer avec NetBeans, c'est la BDD la mieux gérée par ses outils de débogage de BDD), et plein d'autres BDD que nous n'avons pas essayées.

Hibernate crée aussi des batches, mais si vous utilisez le MariaDB Connector/J, vous avez intérêt à utiliser rewriteBatchedStatements=true, parce que sinon, les limitations du protocole font que le batching ne serve pas à grand chose. (Cette option réécrit les batches de type INSERT ('foo'); INSERT ('bar'); en INSERT ('foo'), ('bar');.) Avec les bonnes options, ça marche même convenablement avec une BDD distante (la BDD de test – l'accès distant n'est pas autorisé pour la BDD de production pour des raisons de sécurité).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2256

c'est ce que j'avais essayé avec le dernier projet du genre

truc a la con j'avais passé pas mal de temps a chercher comment on évitait qu'il purge la base a chaque démarrage d'appli triso

2257

Faut pas utiliser la stratégie "create" en production, effectivement. gni
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2258

https://codebabes.com/
(Pas forcément SFW)

Je sais pas si c'est une blague ou pas 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

2259

Je te conseille de jeter un œil au catalogues publicitaire de Windev, c'est un référence dans le domaine.
avatar

2260

Ah oui, Windev, ils sont forts dans le genre (on en avait déjà parlé d'ailleurs). Mais c'est de la publicité mensongère, les femmes de leur publicité ne font pas partie du produit embarrassed
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

2261

Pas plus au salon de l'auto, avec toutes les babes qui se languissent sur le capot des berlines.

Enfin au moins elles les lustrent...

2262

What the fucking fuck ? et à voir les commentaires, ce truc (si ce n'est pas une blague) tournerait depuis près de deux ans minimum ?
avatar
« Nous avons propagé sur Extranet une histoire fabriquée de toutes pièces selon laquelle une certaine disposition d'étoiles, vue depuis la planète d'origine des butariens, formaient le visage d'une déesse galarienne.
Sans chercher à vérifier ces informations, certains ont décrété que c'était la preuve de l'existence de la déesse. Ceux qui notaient le manque de preuves se faisaient attaquer. »

Legion, geth trolleur à portée galactique

2263

C'est gé-ni-al !
Si c'est sérieux on en rira bien dans qqes années grin
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

2264

Ca me fait penser a https://www.sexymandarin.com/ smile
(Pas specialement SFW non plus)

2265

Quelque part, j'ai l'impression de m'être fait avoir à avoir appris le web avec le site du zéro. En guise de sexy teacher on avait un âne fait sous Paint sad
avatar
« Nous avons propagé sur Extranet une histoire fabriquée de toutes pièces selon laquelle une certaine disposition d'étoiles, vue depuis la planète d'origine des butariens, formaient le visage d'une déesse galarienne.
Sans chercher à vérifier ces informations, certains ont décrété que c'était la preuve de l'existence de la déesse. Ceux qui notaient le manque de preuves se faisaient attaquer. »

Legion, geth trolleur à portée galactique

2266

Vu le nom du site en même temps tu peux pas t'attendre à mieux!
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2267

Arvi89 (./2264) :
Ca me fait penser a https://www.sexymandarin.com/ smile(Pas specialement SFW non plus)
Mmmmmmhhhhhh...
Non, je crois que ça me distrairais trop et que j'aurais du mal à me souvenir du contenu des leçons, du coup.
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

2268

Probablement le but
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2269

Au contraire, moyen mnémotechnique de rappel.

"Ah oui, la blonde, donc..."

2270

https://linuxfr.org/news/les-coulisses-du-standard-cpp#d%C3%A9p%C3%AAches-c

Franchement, je comprends plus la majorité des nouvelles syntaxes et pas mal de concept du C++ >= 14. Avant, la majorité des sources bien écrits étaient lisibles. Maintenant, faudra aller lire la doc de je ne sais quelle syntaxe exotique qu'un programmeur aura trouvée marrante et qu'il utilisera à tour de bras.
Et franchement, ces nouvelles syntaxes, je les trouve pas intuitives couic

2271

Bienvenu dans le merveilleux monde du C++ !
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2272

#sifflote#

2273

./2271 -> Tu veux dire du Java++ ? langue

2274

Certains trucs sont quand-même très pratiques dans les contextes qui vont avec, genre les lambdas pour la programmation asynchrone. Tu n'es pas obligé d'utiliser les nouveautés qui ne t'aident pas.

En revanche, je ne suis pas du tout d'accord avec certaines recommandations officielles, genre utiliser auto i{0}; ou même, si on veut quand-même mettre un type explicit, auto i = int{0}; sick au lieu du tout simple int i=0;. mur (Cette ânerie s'appelle Almost Always Auto (AAA).) Personnellement, je conseille d'éviter au maximum auto, déclarer explicitement les types donne du code beaucoup plus lisible et évite les mauvaises surprises (comme par exemple les types intermédiaires que tu peux avoir à la place d'un type comme QString si tu utilises auto).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2275

Ce qui me fait plus peur, c'est que certaines personnes très vocales (Marc Mutz avant tout) essaient à tout prix de déprécier des APIs Qt simples à utiliser en faveur d'un équivalent STL imbitable. sick
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2276

Est-ce qu'on attend d'un bon programmeur qu'il trouve tous ses bugs quand il review son code ?
Je pense à moi débogant de l'asm, quand je teste un nouveau bout de code. 99% des fois les bugs sont évidents, et pourtant j'y ai vu que du feu.
Manque d'entrainement, distraction, manque de skill intellectuel, ou tout simplement fatalité qui arrive à tout le monde ?

2277

Folco (./2276) :
Est-ce qu'on attend d'un bon programmeur qu'il trouve tous ses bugs quand il review son code ?
Non. On attend d'un bon programmeur qu'il n'en fasse pas wink
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

2278

Folco: un melange de tout, mais principalement tu as le nez dans ton code, des fois des trucs evident ne sont pas visible parce que tu connais trop bien ton code.

C'est pour ca que les review se font par une personne autre que toi, pas toi meme
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2279

Le style de code influe aussi beaucoup, on a tendance à faire des raccourcis pour simplifier.

Or c'est dans les détails que se cache les bugs. Il faut donc rester tout le temps rigoureux.

2280

Folco: non. on attend ca du testeur.