#2226 Le 08/10/2014, à 10:43
- The Uploader
Re : /* Topic des codeurs [8] */
Le code est nul, mais le reste est cool. (ville, ambiance, coût de la vie, collègues, on-mange-ben-à-la-cantine (important), temps pour arriver au boulot, fibre optique à la maison, ...)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2227 Le 08/10/2014, à 11:19
- grim7reaper
Re : /* Topic des codeurs [8] */
Le reste est probablement cool, mais le travail est quand même déprimant : faire du C# sous Windows et avec une base de code dégueulasse
Après, chacun ses goûts c’est sûr
Hors ligne
#2228 Le 08/10/2014, à 12:17
- The Uploader
Re : /* Topic des codeurs [8] */
Bah je pense que c'est très difficile de ne pas tomber sur du legacy code dégeulasse...
Et puis c'est un défi intéressant : comment faire des évolutions sans tout péter, et refactoriser quand même au passage, petit à petit ? Rajouter des tests unitaires après que le code ait été écrit ? Etc...
Après ça pourrait être mieux, mais y'a un moment faut bosser et se faire des XP (surtout quand on débute, comme moi). Tant pis si c'est sur des trucs dégueulasses. Ou tant mieux, c'est selon... (ça forge le caractère )
Et C# (et WPF) n'est pas si mauvais que ça. (y'a pas mal de bonnes différences par rapport à Java).
Dernière modification par The Uploader (Le 08/10/2014, à 12:21)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2229 Le 08/10/2014, à 14:41
- Elzen
Re : /* Topic des codeurs [8] */
De mémoire, ça tentait de chopper les bons trucs à droite à gauche sans trop y arriver. Mais c'est vrai qu'il y a pire, comme langage.
Et courage. Me connaissant, y a longtemps que j'aurais recodé de zéro.
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#2230 Le 08/10/2014, à 14:46
- grim7reaper
Re : /* Topic des codeurs [8] */
Bah je pense que c'est très difficile de ne pas tomber sur du legacy code dégeulasse...
C’est du code qui a combien d’année ?
Et puis c'est un défi intéressant : comment faire des évolutions sans tout péter, et refactoriser quand même au passage, petit à petit ? Rajouter des tests unitaires après que le code ait été écrit ? Etc...
Ça, ça reste une tâche courante à partir du moment où tu arrives dans dans un projet avec une base de code existante.
Et C# (et WPF) n'est pas si mauvais que ça. (y'a pas mal de bonnes différences par rapport à Java).
Oui, le plus chiant c’est de bosser sous Windows, C# est un moindre mal à côté.
Hors ligne
#2231 Le 08/10/2014, à 15:21
- The Uploader
Re : /* Topic des codeurs [8] */
De mémoire, ça tentait de chopper les bons trucs à droite à gauche sans trop y arriver. Mais c'est vrai qu'il y a pire, comme langage.
Ben je trouve que y'a pas un mélange de types primitifs vs. types objets comme en Java. Ça, c'est cool.
Je connais très mal Java mais y'a plein de trucs que j'apprécie dans C# comme par exemple :
La TPL.
Les nouveautés comme Async et Await.
Pouvoir mettre des "espions" dans le débogueur VS est sympa aussi (variables existantes ou expressions dont je veux savoir le résultat pendant que je stoppe le programme sur la ligne X ou Y. Et j'ai autant d'espions que je veux). Ou mettre des conditions (nombre de hit, si <quelque chose>) sur mes points d'arrêt.
La doc MSDN est aussi une des plus fournie que j'ai vu.
Linq (et PLINQ) est sympa aussi. Par exemple, Parralel.ForEach ne sait pas le type des éléments de ma collection provenant d'un objet COM écrit en C++ ? Pas grave, il suffit d'utiliser une extension :
using System.Linq;
…
Parallel.ForEach(nonGenericCollection.Cast<YourTypeHere>(),
currentElement =>
{
//loop code
});
C’est du code qui a combien d’année ?
5 ans, au moins.
Ça, ça reste une tâche courante à partir du moment où tu arrives dans dans un projet avec une base de code existante.
Oui mais je serais plus à l'aise avec une couverture de tests...
Oui, le plus chiant c’est de bosser sous Windows, C# est un moindre mal à côté.
J'avoue qu'un WM qui ne sait pas accrocher les fenêtres entre elles en 2014, ça craint.
Dernière modification par The Uploader (Le 08/10/2014, à 15:22)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2232 Le 09/10/2014, à 01:24
- Pylades
Re : /* Topic des codeurs [8] */
@ grim7reaper : http://grim7reaper.rolinh.ch/blog/2014/ … frequente/
C’est moi ou tu nous as gratifiés d’un int main () en C ?
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#2233 Le 09/10/2014, à 05:52
- The Uploader
Re : /* Topic des codeurs [8] */
Ben non, c'est l'exemple de cplusplus.com
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2234 Le 09/10/2014, à 06:31
- Pylades
Re : /* Topic des codeurs [8] */
Sauf que c’est du C et que c’est la norme du C qui est citée.
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#2235 Le 09/10/2014, à 06:42
- The Uploader
Re : /* Topic des codeurs [8] */
Je sais bien, merci.
Je veux dire que le code ne vient pas de Grim'.
Dernière modification par The Uploader (Le 09/10/2014, à 06:43)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2236 Le 09/10/2014, à 08:58
- grim7reaper
Re : /* Topic des codeurs [8] */
Elzen a écrit :De mémoire, ça tentait de chopper les bons trucs à droite à gauche sans trop y arriver. Mais c'est vrai qu'il y a pire, comme langage.
Ben je trouve que y'a pas un mélange de types primitifs vs. types objets comme en Java. Ça, c'est cool.
C’est pas plutôt que C# fait de l’autoboxing ?
Pouvoir mettre des "espions" dans le débogueur VS est sympa aussi (variables existantes ou expressions dont je veux savoir le résultat pendant que je stoppe le programme sur la ligne X ou Y. Et j'ai autant d'espions que je veux). Ou mettre des conditions (nombre de hit, si <quelque chose>) sur mes points d'arrêt.
Les points d’arrêt conditionnel ça se fait très bien en C (avec GDB du moins), rien de nouveau sous le soleil.
Pour ce que tu appelles « espions », il me semble que ça existe aussi.
Linq (et PLINQ) est sympa aussi.
Ça pour le coup c’est spécifique à C# et j’en entend souvent parler en effet.
grim7reaper a écrit :C’est du code qui a combien d’année ?
5 ans, au moins.
5 ans c’est pas encore du legacy hein, loin de là
@ grim7reaper : http://grim7reaper.rolinh.ch/blog/2014/ … frequente/
C’est moi ou tu nous as gratifiés d’un int main () en C ?
Comme l’a dit The Uploader, le bout de code vient d’un site qui parle de C++, donc le code est valide.
Après c’est vrai que j’aurais pu citer un exemple en C (mais seul l’exemple de bien-programmer.fr est correct, et il est un peu long), mais pour le coup ce n’est pas gênant car, sur ce point (comportement en cas d’overflow sur un entier signé), la norme du C et celle du C++ sont identique.
Hors ligne
#2237 Le 09/10/2014, à 09:06
- Pylades
Re : /* Topic des codeurs [8] */
Oulàh, faut pas m’en vouloir, je suis fatigué.
Après du code qui inclue les en-tête du C et qui utilise printf, pour moi, c’est du C.
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#2238 Le 09/10/2014, à 09:15
- The Uploader
Re : /* Topic des codeurs [8] */
C’est pas plutôt que C# fait de l’autoboxing ?
Mhh, bonne question :
http://blogs.msdn.com/b/ericlippert/arc … bject.aspx
http://stackoverflow.com/questions/4362 … -an-object
Dernière modification par The Uploader (Le 09/10/2014, à 09:15)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2239 Le 09/10/2014, à 10:41
- grim7reaper
Re : /* Topic des codeurs [8] */
Après du code qui inclue les en-tête du C et qui utilise printf, pour moi, c’est du C.
Oui, ou plus probablement du très mauvais C++ (le site cplusplus.com avais une sale réputation à une époque, ça c’est amélioré mais y’a encore des trucs moches…)
Hors ligne
#2240 Le 09/10/2014, à 11:54
- The Uploader
Re : /* Topic des codeurs [8] */
Z'avez pas vu le mélange C/C++ de DOSBox...
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2241 Le 09/10/2014, à 13:11
- grim7reaper
Re : /* Topic des codeurs [8] */
Hum, du coup ça doit pas être joli à voir
(On voit que le topic s‘essoufle, cette édition aura bientôt 2 ans oO (la première édition avait fait 2 mois ))
Dernière modification par grim7reaper (Le 09/10/2014, à 13:15)
Hors ligne
#2242 Le 09/10/2014, à 15:39
- The Uploader
Re : /* Topic des codeurs [8] */
Mais non.
Voilà pourquoi je lis The Old New Thing :
Why is 0x00400000 the default base address for an executable?
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2243 Le 09/10/2014, à 19:51
- grim7reaper
Re : /* Topic des codeurs [8] */
Tiens, pour ressusciter un peu le topic : pouvez-vous me dire ce que le code suivant va afficher (sans l’exécuter) :
perl -le 'print(two + two == five ? "true" : "false")'
C’est pas aussi évident que ça en a l’air
Dernière modification par grim7reaper (Le 09/10/2014, à 19:52)
Hors ligne
#2244 Le 09/10/2014, à 21:07
- ljere
Re : /* Topic des codeurs [8] */
je doute qu'un programme sache lire des chiffres non numérique
ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon
Hors ligne
#2245 Le 09/10/2014, à 21:12
- grim7reaper
Re : /* Topic des codeurs [8] */
C’est du Perl, c’est magique
En effet, il ne va pas comprendre two comme étant 2 et five comme étant 5. Cela dit, il ne va pas planter ni faire d’erreur (Perl est très permissif par défaut (c’est bien pour ça qu’il ne faut jamais faire de scripts sans use strict; et use warning), c’est pas pour rien que PHP l’est aussi (PHP étant du Perl à l’origine)).
Donc que va t-il se passer ?
Dernière modification par grim7reaper (Le 09/10/2014, à 21:13)
Hors ligne
#2246 Le 09/10/2014, à 21:30
- The Uploader
Re : /* Topic des codeurs [8] */
Genre il va faire un truc con : il va dire true parce qu'il croit qu'on lui demande si un string + un string == un string ?
edit : tiens ben chez moi ça donne.... rien du tout ! Genre Perl a fait "Screw this, I'm outta here !" mais je sais pas comment il est arrivé là...
Dernière modification par The Uploader (Le 09/10/2014, à 21:41)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2247 Le 10/10/2014, à 06:35
- ljere
Re : /* Topic des codeurs [8] */
ben rien comme dit The Uploader, car ce n'est ni true ni false donc pas de retour?
ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon
Hors ligne
#2248 Le 10/10/2014, à 07:24
- grim7reaper
Re : /* Topic des codeurs [8] */
Genre il va faire un truc con : il va dire true parce qu'il croit qu'on lui demande si un string + un string == un string ?
J’avais pensé ça aussi.
En fait le raisonnement c’est de se dire que Perl va traiter les symboles two et five en tant que chaîne de caractères (comme si on avait écrit "two" et "five", ensuite il applique l’addition (en Perl la concatenation c'est le .) et comme les chaînes ne contienne rien de décimal il va convertir en 0 et donc 0 + 0 == 0 => true.
Ouais, mais non c’est pas tout à fait ça (vu que rien de s’affiche sur la sortie standard (indice)), mais ça donne bien "true" quand même.
ben rien comme dit The Uploader, car ce n'est ni true ni false donc pas de retour?
Mais ça c’est impossible.
Tu ne connais peut-être pas l‘opérateur ternaire, mais en gros c’est un if/else donc si la c’est vrai tu va afficher "true", sinon tu va afficher "false". Tu ne peux pas ne rien afficher.
edit : tiens ben chez moi ça donne.... rien du tout ! Genre Perl a fait "Screw this, I'm outta here !" mais je sais pas comment il est arrivé là...
Quand vous en aurez marre de chercher, vous pourrez aller lire l’explication là-bas.
Dernière modification par grim7reaper (Le 10/10/2014, à 07:25)
Hors ligne
#2249 Le 22/10/2014, à 06:40
- The Uploader
Re : /* Topic des codeurs [8] */
Les vidéos prises lors de la CPP Con 2014, LA conférence C++ de l'année, à Bellevue WA, commencent à arriver sur Youtube.
Parmi mes préférées, la présentation de l'équipe Microsoft Office sur leur approche pour partager autant de code que possible pour tourner sous Windows 32 et 64 bits, MacOSX, iOS, Android, WinRT, et peut-être un jour iWatch, était tout à fait intéressant. Bon, et manifestement, le support de GNU/Linux n'est pas sur leur feuille de route.
D'autres présentations, par exemple sur le Join Strike Fighter ou encore sur le Mars rover, sont également à voir. En terme de processus qualité, c'est autre chose que le tertiaire!
Pour les fondus de performances, voir également la présentation d'Andrei Alexandrescu, "Optimization tips". Étonnant les optimisations possibles dans un shared_ptr!
Dernière modification par The Uploader (Le 22/10/2014, à 06:44)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#2250 Le 24/10/2014, à 13:22
- Elzen
Re : /* Topic des codeurs [8] */
Tiens, s'il y a des gens qui ont prévu de venir à la PyCon à Lyon, faites signe.
Sinon, quelqu'un s'y connaît en DataLog, dans le coin ?
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne