Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3132 connectés 

 

Sujet(s) à lire :
    - Who's who@Programmation
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  23325  23326  23327  ..  27204  27205  27206  27207  27208  27209
Auteur Sujet :

[blabla@olympe] Le topic du modo, dieu de la fibre et du monde

n°2354879
Hermes le ​Messager
Breton Quiétiste
Posté le 01-06-2020 à 19:09:26  profilanswer
 

Reprise du message précédent :

nraynaud a écrit :

dites, vous avez un moyen de de différencier les "fichiers actifs" dans les IDE jetbrains ?
 
genre j'ai des fichiers que j'édite et une tonne d'autre fichiers où je fais que lire le code. Souvent on retrouve les fichiers édités parce qu'ils sont en vert, mais là j'ai committé pour essayer d'apaiser la foule qui veut des petits commits et la baisse de la TVA sur les tiki torches. Du coups mes fichiers "du moment" sont redevenus blancs.
 
Je sais pas trop si y'a un mécanisme pour retrouver rapidement ses fichiers "en cours".


 
click droit sur ton project name, puis local history, puis show history.
 
Chez moi, si je clique sur le dernier fichier dans le panel de gauche, j'ai accès à la liste de tous les fichiers sur lesquels j'ai travaillé durant les deux derniers mois. Tu peux regarder les dates dans le panel de gauche et choisir une date différente.


---------------
Expert en expertises
mood
Publicité
Posté le 01-06-2020 à 19:09:26  profilanswer
 

n°2354880
nraynaud
lol
Posté le 01-06-2020 à 19:13:01  profilanswer
 

intéressant, je sais pas trop comment ça va se passer avec les branches.
 
sinon, peut-être que je devrais essayer de jouer avec les bookmarks.


---------------
trainoo.com, c'est fini
n°2354881
flo850
moi je
Posté le 01-06-2020 à 19:43:43  profilanswer
 

nraynaud a écrit :


comment on fait ?


moi je coupe mon IDE en 2 ou 3 groupes de tabs, j'imagine que tu pourrais rtier comme ça, mais ça reste très manuel  
 


---------------

n°2354882
nraynaud
lol
Posté le 01-06-2020 à 19:46:28  profilanswer
 

flo850 a écrit :


moi je coupe mon IDE en 2 ou 3 groupes de tabs, j'imagine que tu pourrais rtier comme ça, mais ça reste très manuel  


 
tu utilises des split ?
 
J'ai l'impression qu'il y a toute un pan de features que je connais pas, donc ELI5 stp.


---------------
trainoo.com, c'est fini
n°2354883
Elmoricq
Posté le 01-06-2020 à 19:59:40  profilanswer
 

___alt a écrit :

 

Autant j'ai bénéficié d'une aide financière en béton pour mes études (ils ont payé les deux premières années de mon école, soit environ 12k€ + le loyer et la bouffe quand je logeais là-bas, j'ai plus les chiffres mais c'était conséquent), autant ils n'ont plus la capacité financière pour m'aider niveau logement, il faut qu'ils pensent à eux et à leur retraite maintenant. Bon d'un autre côté c'est pas grave. Je suis arrivé trop tard avec des moyens financiers sur le marché immo pour espérer acheter quoi que ce soit là où je veux vivre, donc j'épargne comme un goret à la place et je verrai plus tard.

 

Parents interdits bancaire ici, donc pas de prêt ni d'aide, j'ai bossé à 20 piges un dut en poche, je pouvais pas aller en école d'ingé.
Avec le recul je sais même pas si un prêt étudiant était possible, de toute façon mes parents étaient perturbés, j'étais perturbé, et je n'avais en ligne de mire que de gagner des ronds et vite pour être autonome. :o

 

Au début y a des fins de mois où j'ai un peu jeûné, parce qu'en plus j'étais un branque pour gérer mes sous et pour demander à être payé décemment. :d

n°2354884
flo850
moi je
Posté le 01-06-2020 à 20:02:31  profilanswer
 

mon ide ressemble à ça en général : https://i.imgur.com/VzvK5u2.png
3 colonnes pour le code, 2 terminaux . Quand j'en suis a spliter les colonnes en 2 (verticalement,) c'est qje suis dans un moment de génie ou de galère :o
 
Je suis a peu prêt sur qu'il y a cette fonctionnalité dans jetbrain


---------------

n°2354885
nraynaud
lol
Posté le 01-06-2020 à 20:11:54  profilanswer
 

flo850 a écrit :

mon ide ressemble à ça en général : https://i.imgur.com/VzvK5u2.png
3 colonnes pour le code, 2 terminaux . Quand j'en suis a spliter les colonnes en 2 (verticalement,) c'est qje suis dans un moment de génie ou de galère :o
 
Je suis a peu prêt sur qu'il y a cette fonctionnalité dans jetbrain


merci, je vais regarder. Je vois des trucs autour du split, j'ai jamais bossé avec ça avant.


---------------
trainoo.com, c'est fini
n°2354886
flo850
moi je
Posté le 01-06-2020 à 20:13:01  profilanswer
 

c'est indispensable pour moi qui ait une mémoire de poisson rouge
 
et quand je suis sur l'écran du MBP, je suis en 2 colonne sans les fichiers


---------------

n°2354887
flo850
moi je
Posté le 01-06-2020 à 20:13:32  profilanswer
 

Elmoricq a écrit :


 
Parents interdits bancaire ici, donc pas de prêt ni d'aide, j'ai bossé à 20 piges un dut en poche, je pouvais pas aller en école d'ingé.  
Avec le recul je sais même pas si un prêt étudiant était possible, de toute façon mes parents étaient perturbés, j'étais perturbé, et je n'avais en ligne de mire que de gagner des ronds et vite pour être autonome. :o
 
Au début y a des fins de mois où j'ai un peu jeûné, parce qu'en plus j'étais un branque pour gérer mes sous et pour demander à être payé décemment. :d


et aujourd'hui tu changes de maisons tous les 2 ans :o


---------------

n°2354889
flo850
moi je
Posté le 01-06-2020 à 20:32:05  profilanswer
 

https://twitter.com/olesovhcom/stat [...] 8108375040 < ovh qui parle de l'appel d'offre pour le cloud données de santé  


---------------

mood
Publicité
Posté le 01-06-2020 à 20:32:05  profilanswer
 

n°2354890
Dion
Acceuil
Posté le 01-06-2020 à 20:46:50  profilanswer
 

flo850 a écrit :

https://twitter.com/olesovhcom/stat [...] 8108375040 < ovh qui parle de l'appel d'offre pour le cloud données de santé  


Allez on piétine la réglementation sur les marchés publics pour donner le marché à une bande de clanpins avec des effectifs et un gros levier de développement aux USA  :love:  
 
Il ne manque plus que la demande d’avoir une golden key pour le chiffrement et Cédric O cochera toutes les cases  :love:


---------------
It is not called show art
n°2354891
Elmoricq
Posté le 01-06-2020 à 20:49:02  profilanswer
 

flo850 a écrit :


et aujourd'hui tu changes de maisons tous les 2 ans :o


C'est ça :d

 

Je te cache pas que j'aspire à me poser maintenant :o

n°2354894
rufo
Pas me confondre avec Lycos!
Posté le 01-06-2020 à 22:25:35  profilanswer
 

Hermes le Messager a écrit :


 
Avec teamviewer tu as des options pour ne pas afficher le fond d'écran et pour optimiser la vitesse. Le streaming induit par teamviewer est vraiment faible si tu choisis les bonnes options. C'est étonnant que la connexion ADSL, meme pourrie, de tes parents ne suffise pas. :/


Mes parents avaient au mieux 160 ko/s. Sur la fin, avec les dégradations (cause inconnue), ils n'avaient plus que 30 ko/s max :/
J'avais utilisé spark angel en n&b sans fond d'écran : même ça, ça laguait grave. Plusieurs secondes entre le clic droit de la souris et l'ouverture du menu contextuel, pareil pour un clic sur un menu. Compliqué d'arriver à coordonner ses mouvements avec la souris et les éléments de l'IHM avec un tel lag.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2354902
el muchach​o
Comfortably Numb
Posté le 02-06-2020 à 09:41:42  profilanswer
 
n°2354903
rokhlan
Posté le 02-06-2020 à 09:45:25  profilanswer
 

flo850 a écrit :

et aujourd'hui tu changes de maisons tous les 2 ans :o


J'avais lu un truc qui disait qu'il fallait au moins 5 ans avant de revendre sinon on perdait forcément de l'argent dessus parce qu'on ne paie que l'équivalent des intérêts pendant cette période [:transparency]

n°2354904
skeye
Posté le 02-06-2020 à 09:47:40  profilanswer
 

rokhlan a écrit :


J'avais lu un truc qui disait qu'il fallait au moins 5 ans avant de revendre sinon on perdait forcément de l'argent dessus parce qu'on ne paie que l'équivalent des intérêts pendant cette période [:transparency]


 
Faux, mais le résultat est proche dans la pratique.
 
Tu payes plus d'intérêts au départ...parce-que le capital restant à rembourser est plus important. Plus le temps passe, moins il te reste de capital à rembourser, et plus la part de capital remboursé dans le montant fixe que tu payes est importante.


---------------
Can't buy what I want because it's free -
n°2354905
Elmoricq
Posté le 02-06-2020 à 09:50:11  profilanswer
 

el muchacho a écrit :

Dites y'a un modo dans ce topic ?


Tous les modos ont reçu ton mp.

n°2354906
gfive
Posté le 02-06-2020 à 09:50:12  profilanswer
 

putain, mais à quel moment quand tu écris un framework de test, tu te dis que ça serait une bonne idée de chercher à vérifier que TOUS les paramètres (qui sont tous des String) que tu reçois sont peut être des dates, et si oui, les reformater dans un truc qui peut être :

 

Jour/Mois/Année Heure:Minute:secondeTimeZone
Jour/Mois/AnnéeTimeZone (oui, Timezone, sans horaire)

 

Le tout sans aucun moyen de le débrayer.


Message édité par gfive le 02-06-2020 à 09:51:20

---------------
Tous les sud africains sont ségrégationistes, à part Ted. (P. Desproges)
n°2354907
Hermes le ​Messager
Breton Quiétiste
Posté le 02-06-2020 à 09:50:38  profilanswer
 

el muchacho a écrit :

Dites y'a un modo dans ce topic ?


 
Si tu veux le savoir, poste des images degueulasses.  :o


---------------
Expert en expertises
n°2354908
rokhlan
Posté le 02-06-2020 à 09:52:06  profilanswer
 

skeye a écrit :

Faux, mais le résultat est proche dans la pratique.
 
Tu payes plus d'intérêts au départ...parce-que le capital restant à rembourser est plus important. Plus le temps passe, moins il te reste de capital à rembourser, et plus la part de capital remboursé dans le montant fixe que tu payes est importante.


 :jap:

n°2354909
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:05:57  profilanswer
 

el muchacho a écrit :


Les RE devraient être interdites sans commentaire explicitant exactement ce qu'elles signifient, avec des mots.


 

hephaestos a écrit :


 
 
 
 
C'est complètement con ces remarques. Un développeur expérimenté vous fait comprendre que c'est imbitable, et vous tout ce que vous trouvez à répondre c'est que vous les trouvez simples. À se demander si on fait le même métier.


 

hephaestos a écrit :

Ma politique c'est que toutes les regex (à l'exception des plus triviales) doivent être converties en anglais lisible et avoir des tests unitaires. Je pense que j'accepterais pas le genre de truc que Nicolas a cité dans du code dont je suis responsable.


 
J'ai quand-même l'impression que vous avez un autre soucis s'il faut commenter la moindre regexp non :??: (ou alors faut bien se mettre d'accord sur ce que vous appelez 'triviales').
 
Ça fait partie des outils de base d'un programmeur ou d'un sysadmin linux je trouve (et ça fait partie d'à peu près tous les cursus en info non ?)... si on commence à commenter des trucs du genre s/\(Use[A-Z][^ (]*[ (]\)/\1(/g' pour moi c'est un peu comme commenter un ternary operator ou une récursion en faisant la supposition que certains ne seront pas à l'aise avec ces concepts, ya plus un gros défaut de formation là :o


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354910
flo850
moi je
Posté le 02-06-2020 à 10:07:29  profilanswer
 

une regexp comme ça me pose problème, en tout cas je ne la lis pas aussi trivialement qu'un opérateur ternaire ou des suite de map/join/reduce
Je vais avoir besoin de me concentrer pour la comprendre.

 

Mettre à côté un exemple acceptable rend le truc trivial

Message cité 1 fois
Message édité par flo850 le 02-06-2020 à 10:09:05

---------------

n°2354911
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:12:17  profilanswer
 

flo850 a écrit :

une regexp comme ça me pose problème, en tout cas je ne la lis pas aussi trivialement qu'un opérateur ternaire ou des suite de map/join/reduce

 

Ben c'est un bon exemple, c'est plus lisible je trouve que certains bout de python équivalent à base de reduce/zip/etc. Ce genre de bout de code est bien plus 'obfuscant' selon moi, en plus d'exiger une expertise spécifique à python alors que la regexp est plus universelle.

 

Dans mon équipe un programmeur C ou Java ne sait pas lire un truc du genre functools.reduce(lambda u, wb: np.maximum(0, u.dot(wb[0])+wb[1]), zip(ws, bs), x) à mon avis.

Message cité 1 fois
Message édité par Xavier_OM le 02-06-2020 à 10:14:28

---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354912
skeye
Posté le 02-06-2020 à 10:18:28  profilanswer
 

Xavier_OM a écrit :

 

J'ai quand-même l'impression que vous avez un autre soucis s'il faut commenter la moindre regexp non :??: (ou alors faut bien se mettre d'accord sur ce que vous appelez 'triviales').

 

Ça fait partie des outils de base d'un programmeur ou d'un sysadmin linux je trouve (et ça fait partie d'à peu près tous les cursus en info non ?)... si on commence à commenter des trucs du genre s/\(Use[A-Z][^ (]*[ (]\)/\1(/g' pour moi c'est un peu comme commenter un ternary operator ou une récursion en faisant la supposition que certains ne seront pas à l'aise avec ces concepts, ya plus un gros défaut de formation là :o

 

Non, les regexp ne font pas partie des outils de base d'un programmeur. Un mec qui fait 100% d'info de gestion a à peu près jamais touché une regexp de sa vie et celle que tu postes là est un charabia illisible, pour lui.
Je ne me rappelle pas avoir touché à une regexp dans mon cursus.

Message cité 1 fois
Message édité par skeye le 02-06-2020 à 10:18:42

---------------
Can't buy what I want because it's free -
n°2354913
Kenshineuh
Posté le 02-06-2020 à 10:22:10  profilanswer
 

Idem, je trouve ça d'un chiant à lire. Je les fuis comme la peste. Et quand j'ai besoin d'une, je suis obligé d'utiliser des sites pour en construire une et bien la tester. :o

 

Ou alors, j'utilise des toutes faites.

Message cité 2 fois
Message édité par Kenshineuh le 02-06-2020 à 10:22:57
n°2354914
skeye
Posté le 02-06-2020 à 10:22:15  profilanswer
 

Xavier_OM a écrit :


Dans mon équipe un programmeur C ou Java ne sait pas lire un truc du genre functools.reduce(lambda u, wb: np.maximum(0, u.dot(wb[0])+wb[1]), zip(ws, bs), x) à mon avis.

 

Vu d'ici le programmeur moyen ne comprendra pas mieux ça qu'une regexp, effectivement. Moi-même j'ai absolument aucune idée de ce que ça fait (et j'imagine seulement que c'est du python parce-que t'en parles avant).:D


Message édité par skeye le 02-06-2020 à 10:22:54

---------------
Can't buy what I want because it's free -
n°2354915
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:23:14  profilanswer
 

skeye a écrit :

 

Non, les regexp ne font pas partie des outils de base d'un programmeur. Un mec qui fait 100% d'info de gestion a à peu près jamais touché une regexp de sa vie et celle que tu postes là est un charabia illisible, pour lui.
Je ne me rappelle pas avoir touché à une regexp dans mon cursus.

 

Les cours d'automates et langages avec regexp, théorème de kleene, les grammaires etc c'est dès la license en info  [:spamafote]

 

Les trucs comme ça (les regexp commentées donc) sont littéralement à la fin du premier cours

# regexp to match test case label
# opening quote                      "
# then start a group                 (
#   anything but backslash or quote    [^\"]    
#   or                                 |
#   backslash and anything             \.
# end of group                       )*
# closing quote                     "

 
Kenshineuh a écrit :

Ou alors, j'utilise des toutes faites.

 

:D :D :D

Message cité 1 fois
Message édité par Xavier_OM le 02-06-2020 à 10:24:25

---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354916
Hermes le ​Messager
Breton Quiétiste
Posté le 02-06-2020 à 10:24:30  profilanswer
 

Kenshineuh a écrit :

Idem, je trouve ça d'un chiant à lire. Je les fuis comme la peste. Et quand j'ai besoin d'une, je suis obligé d'utiliser des sites pour en construire une et bien la tester. :o
 
Ou alors, j'utilise des toutes faites.


 
Idem ici. J'évite comme la peste.  :o


---------------
Expert en expertises
n°2354917
hephaestos
Sanctis Recorda, Sanctis deus.
Posté le 02-06-2020 à 10:25:15  profilanswer
 

Xavier_OM a écrit :

 

J'ai quand-même l'impression que vous avez un autre soucis s'il faut commenter la moindre regexp non :??: (ou alors faut bien se mettre d'accord sur ce que vous appelez 'triviales').

 

Ça fait partie des outils de base d'un programmeur ou d'un sysadmin linux je trouve (et ça fait partie d'à peu près tous les cursus en info non ?)... si on commence à commenter des trucs du genre s/\(Use[A-Z][^ (]*[ (]\)/\1(/g' pour moi c'est un peu comme commenter un ternary operator ou une récursion en faisant la supposition que certains ne seront pas à l'aise avec ces concepts, ya plus un gros défaut de formation là :o


Un sysadmin si tu veux, un programmeur non. Une regex par design c'est illisible, c'est fait pour être concis et puissant. C'est bien pour faire tourner un script sed à l'arrache. Dans une base de code, non. On a passé 70 ans à améliorer nos langages pour qu'ils soient de plus en plus expressifs, c'est pas pour se retrouver avec ce genre d'horreur dans du code qui est sensé être lu par nos pairs. Et une fois de plus, à mon très humble avis l'argument mais moi je la lis très ben c'est toi qu'est trop con, c'est de la merde, c'est le contraire de ce qu'on cherche à faire quand on écrit du code. Si un collègue pas complétement con te dit qu'il ne comprend pas ton code, tu le réécris de façon plus lisible tu lui demandes pas d'apprendre le langage que tu utilises. Si le code c'est une regex, c'est pas possible.

Message cité 3 fois
Message édité par hephaestos le 02-06-2020 à 10:27:18
n°2354918
skeye
Posté le 02-06-2020 à 10:25:38  profilanswer
 

Xavier_OM a écrit :

 

Les cours d'automates et langages avec regexp, théorème de kleene, les grammaires etc c'est dès la license en info  [:spamafote]

 

Les trucs comme ça (les regexp commentées donc) sont littéralement à la fin du premier cours

# regexp to match test case label
# opening quote                      "
# then start a group                 (
#   anything but backslash or quote    [^\"]    
#   or                                 |
#   backslash and anything             \.
# end of group                       )*
 # closing quote                     "


 

ben...non. [:skeye]
En tout cas pas à mon époque. Et je vois pas le gain pour un dev "haut niveau" de ce type d'outils.


Message édité par skeye le 02-06-2020 à 10:26:24

---------------
Can't buy what I want because it's free -
n°2354919
Hermes le ​Messager
Breton Quiétiste
Posté le 02-06-2020 à 10:28:17  profilanswer
 

hephaestos a écrit :


Un sysadmin si tu veux, un programmeur non. Une regex par design c'est illisible, c'est fait pour être concis et puissant. C'est bien pour faire tourner un script sed à l'arrache. Dans une base de code, non. On a passé 70 ans à améliorer nos langages pour qu'ils soient de plus en plus expressifs, c'est pas pour se retrouver avec ce genre d'horreur dans du code qui est sensé être lu par nos pairs. Et une fois de plus, à mon très humble avis l'argument mais moi je la lis très ben c'est toi qu'est trop con, c'est de la merde, c'est le contraire de ce qu'on cherche à faire quand on écrit du code. Si un collègue pas complétement con te dit qu'il ne comprend pas ton code, tu le réécris de façon plus lisible tu lui demandes pas d'apprendre le langage que tu utilises. Si le code c'est une regex, c'est pas possible.


 
Un énorme +1 avec cela.


---------------
Expert en expertises
n°2354920
Devil'sTig​er
Posté le 02-06-2020 à 10:29:38  profilanswer
 

Xavier_OM a écrit :


 
J'ai quand-même l'impression que vous avez un autre soucis s'il faut commenter la moindre regexp non :??: (ou alors faut bien se mettre d'accord sur ce que vous appelez 'triviales').
 
Ça fait partie des outils de base d'un programmeur ou d'un sysadmin linux je trouve (et ça fait partie d'à peu près tous les cursus en info non ?)... si on commence à commenter des trucs du genre s/\(Use[A-Z][^ (]*[ (]\)/\1(/g' pour moi c'est un peu comme commenter un ternary operator ou une récursion en faisant la supposition que certains ne seront pas à l'aise avec ces concepts, ya plus un gros défaut de formation là :o


T'facon les vrais utilisent flex/bison et peg :o

n°2354921
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:34:22  profilanswer
 

Kenshineuh a écrit :

Idem, je trouve ça d'un chiant à lire. Je les fuis comme la peste. Et quand j'ai besoin d'une, je suis obligé d'utiliser des sites pour en construire une et bien la tester. :o

 

Ou alors, j'utilise des toutes faites.

 
hephaestos a écrit :


Un sysadmin si tu veux, un programmeur non. Une regex par design c'est illisible, c'est fait pour être concis et puissant. C'est bien pour faire tourner un script sed à l'arrache. Dans une base de code, non. On a passé 70 ans à améliorer nos langages pour qu'ils soient de plus en plus expressifs, c'est pas pour se retrouver avec ce genre d'horreur dans du code qui est sensé être lu par nos pairs. Et une fois de plus, à mon très humble avis l'argument mais moi je la lis très ben c'est toi qu'est trop con, c'est de la merde, c'est le contraire de ce qu'on cherche à faire quand on écrit du code. Si un collègue pas complétement con te dit qu'il ne comprend pas ton code, tu le réécris de façon plus lisible tu lui demandes pas d'apprendre le langage que tu utilises. Si le code c'est une regex, c'est pas possible.

 

Je m'inscris en faux désolé, les regexp ont la qualité de pouvoir être décrites par des patterns souvent bien plus simples que les autres moyens.

 

La regexp ^[ \t]+|[ \t]+$ détecte les espaces ou tab inutiles en début de ligne ou en fin de ligne, pour peu que tu connaisses la base en effet (^ pour début, $ pour fin, | pour OR...), elle est à la fois plus lisible, plus fiable et moins error-prone qu'un bout de code maison qui viserait à détecter la même chose (et qui aurait sans doute besoin d'une batterie de test pour garantir que ça fait bien ce que c'est censé faire, surtout si on rajoute de l'unicode ou autre). La regexp t'évite d'écrire ton parsing à la main en fait.

Message cité 4 fois
Message édité par Xavier_OM le 02-06-2020 à 10:36:48

---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354922
DDT
Few understand
Posté le 02-06-2020 à 10:36:01  profilanswer
 

hephaestos a écrit :


On a passé 70 ans à améliorer nos langages pour qu'ils soient de plus en plus expressifs


*tousse* Go *tousse*


---------------
click clack clunka thunk
n°2354923
DDT
Few understand
Posté le 02-06-2020 à 10:38:37  profilanswer
 

Xavier_OM a écrit :


 
Je m'inscris en faux désolé, les regexp ont la qualité de pouvoir être décrites par des patterns souvent bien plus simples que les autres moyens.


nray a mentionné les parser combinators, c'est vraiment mille fois mieux dans pas mal de cas, typiquement vérifier ou déconstruire des URLs.


---------------
click clack clunka thunk
n°2354924
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:40:46  profilanswer
 

DDT a écrit :


nray a mentionné les parser combinators, c'est vraiment mille fois mieux dans pas mal de cas, typiquement vérifier ou déconstruire des URLs.


 
J'ai rien contre les parsers combinators (boost spirit c'est bieng), mais c'est moins connu hélas  [:spamafote]


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354925
Elmoricq
Posté le 02-06-2020 à 10:40:51  profilanswer
 

Xavier_OM a écrit :

 

Je m'inscris en faux désolé, les regexp ont la qualité de pouvoir être décrites par des patterns souvent bien plus simples que les autres moyens.

 

La regexp ^[ \t]+|[ \t]+$ détecte les espaces ou tab inutiles en début de ligne ou en fin de ligne, pour peu que tu connaisses la base en effet (^ pour début, $ pour fin, | pour OR...), elle est à la fois plus lisible, plus fiable et moins error-prone qu'un bout de code maison qui viserait à détecter la même chose (et qui aurait sans doute besoin d'une batterie de test pour garantir que ça fait bien ce que c'est censé faire, surtout si on rajoute de l'unicode ou autre). La regexp t'évite d'écrire ton parsing à la main en fait.

 

Outre la lisibilité de la regex, quand tu tombes dessus, il y a la compréhension de l'intention du dev qui l'a écrite qui compte.

 

Et dès qu'il y a doute possible sur une intention (truc non trivial ou contre intuitif) il faut pallier à ce que ne dit pas le code par des commentaires.
Une regex par essence, c'est pas trivial. Si ça l'est c'est que c'est remplaçable par un if-else et c'est préférable car mieux testable.

 

Ergo, une regex doit être accompagnée d'un commentaire avec au min. ce qui est attendu en entrée et le résultat escompté.

Message cité 2 fois
Message édité par Elmoricq le 02-06-2020 à 10:41:25
n°2354926
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:45:27  profilanswer
 

Elmoricq a écrit :

 

Outre la lisibilité de la regex, quand tu tombes dessus, il y a la compréhension de l'intention du dev qui l'a écrite qui compte.

 

Et dès qu'il y a doute possible sur une intention (truc non trivial ou contre intuitif) il faut pallier à ce que ne dit pas le code par des commentaires.
Une regex par essence, c'est pas trivial. Si ça l'est c'est que c'est remplaçable par un if-else et c'est préférable car mieux testable.

 

Ergo, une regex doit être accompagnée d'un commentaire avec au min. ce qui est attendu en entrée et le résultat escompté.

 

Dans l'exemple ci-dessus ^[ \t]+|[ \t]+$  tu ne peux pas la remplacer par un if-else, et pourtant en terme de complexité ça ne mérite pas vraiment un commentaire je trouve  [:spamafote]  (à part si on suppose que le lecteur ne connait pas du tout et que tu dois lui dire que \t c'est tab, | c'est OR, etc)
Le code doit être auto-documenté le + possible c'est toujours mieux que les commentaires qui sont parfois périmés, et là c'est exactement le cas.

Message cité 1 fois
Message édité par Xavier_OM le 02-06-2020 à 10:46:47

---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°2354927
skeye
Posté le 02-06-2020 à 10:45:59  profilanswer
 

Xavier_OM a écrit :


 
Je m'inscris en faux désolé, les regexp ont la qualité de pouvoir être décrites par des patterns souvent bien plus simples que les autres moyens.  
 
La regexp ^[ \t]+|[ \t]+$ détecte les espaces ou tab inutiles en début de ligne ou en fin de ligne, pour peu que tu connaisses la base en effet (^ pour début, $ pour fin, | pour OR...), elle est à la fois plus lisible, plus fiable et moins error-prone qu'un bout de code maison qui viserait à détecter la même chose (et qui aurait sans doute besoin d'une batterie de test pour garantir que ça fait bien ce que c'est censé faire, surtout si on rajoute de l'unicode ou autre). La regexp t'évite d'écrire ton parsing à la main en fait.


 
tu veux juste vérifier s'il y a un espace inutile au début ou à la fin d'une chaine de caractères et t'as besoin d'écrire un parser? Quel langage moderne ne permet pas de faire un truc du genre

Code :
  1. if(var != trim(var)){
  2. //do struff
  3. }


---------------
Can't buy what I want because it's free -
n°2354928
Hermes le ​Messager
Breton Quiétiste
Posté le 02-06-2020 à 10:47:25  profilanswer
 

Elmoricq a écrit :


 
Outre la lisibilité de la regex, quand tu tombes dessus, il y a la compréhension de l'intention du dev qui l'a écrite qui compte.
 
Et dès qu'il y a doute possible sur une intention (truc non trivial ou contre intuitif) il faut pallier à ce que ne dit pas le code par des commentaires.
Une regex par essence, c'est pas trivial. Si ça l'est c'est que c'est remplaçable par un if-else et c'est préférable car mieux testable.
 
Ergo, une regex doit être accompagnée d'un commentaire avec au min. ce qui est attendu en entrée et le résultat escompté.


 
Sans aller jusqu'au "if-else" il y a aussi la plupart du temps des bibliotheques qui existent, qui sont maintenues, testées etc... Par exemple, si je veux vérifier qu'un email est valide, je vais pas m'embêter avec une regex que ce soit moi ou non qui l'écrive, je vais prendre une bibliothèque qui a fait ses preuves, est utilisée massivement et dont le dernier commit est pas trop vieux.


---------------
Expert en expertises
n°2354929
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 02-06-2020 à 10:48:11  profilanswer
 

skeye a écrit :


 
tu veux juste vérifier s'il y a un espace inutile au début ou à la fin d'une chaine de caractères et t'as besoin d'écrire un parser? Quel langage moderne ne permet pas de faire un truc du genre

Code :
  1. if(var != trim(var)){
  2. //do struff
  3. }



 
C++ ? Après j'ai pris cet exemple j'aurais pu en prendre un autre hein, tu as trim certes mais il ne faut pas chercher bien loin pour trouver une fonction que tu n'auras pas 'clef en main'.


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  23325  23326  23327  ..  27204  27205  27206  27207  27208  27209

Aller à :
Ajouter une réponse
 

Sujets relatifs
Plus de sujets relatifs à : [blabla@olympe] Le topic du modo, dieu de la fibre et du monde


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)