Bienvenue sur PEBKAC.fr, le site qui recense les anecdotes où l’on se moque des utilisateurs ne maîtrisant pas l’outil informatique. PEBKAC est un acronyme signifiant « Problem Exists Between Keyboard And Chair ».
Le problème se situe entre la chaise et le clavier : soumettez vos histoires, donnez votre avis !
Ce site n'est pas le site original pebkac.fr. Je publie ici la liste des PEBKAC que j'ai pu sauvegarder avant que le site original ne soit mis hors ligne.
Un ami avait une façon bien à lui de changer le nom d'une fonction en langage C : il remplaçait l'ancien nom de la fonction dans le prototype par le nouveau, puis il ajoutait, dans un "header" que tous les fichiers du projet incluaient, ceci :

#define [ancien nom de la fonction] [nouveau nom de la fonction]

L'idée n'est pas absolument mauvaise en soi, mais ne pas connaître la fonction rechercher/remplacer par contre, c'est totalement un… PEBKAC.
PEBKAC #8072 proposé par Somadeva le 28/06/2013 | 8 commentaires | 👍🏽 👎🏽 +148
Je vote pour le contraire : ne pas connaître la fonction est une chose, passer par le define est un pebkac.
Suffit d'imaginer la maintenance du code par quelqu'un d'autre pour s'en convaincre.
Commentaire #99464 écrit par Peredur le 28/06/2013 à 13h04 | 👍🏽 👎🏽
Ça peut se _justifier_ en rush, quand on a pas le temps de faire le Rechercher/Remplacer (le nom de la fonction peut être inclus dans des noms de variables/d'autres fonctions) mais c'est clair que ça ne doit pas être généralisé (ne serait-ce que pour pouvoir facilement retrouver les arguments si on doit la réutiliser) en plus qu'effectivement, la maintenance est en largement complexifié.
Commentaire #99469 écrit par Taiki le 28/06/2013 à 13h21 | 👍🏽 👎🏽
Le truc c'est, combien de fichiers ont cette fonction en dépendance? Si on est dans un rush.

Mais de toute manière si une fonction à besoin d'être renommée, c'est qu'il y a un problème quelque part (conception, architecture, ...).
Commentaire #99566 écrit par Yimi le 28/06/2013 à 19h59 | 👍🏽 👎🏽
L'utilisation de ce genre de choses en préprocesseur donne toujours des résultats magiques...
Petit souvenirs d'école d'ingénieur : nous faisions des #define pour respecter les 80 colonnes & 25 lignes (norme) par fonction...
Le debug en devenait d'une simplicité... déconcertante.
Commentaire #99575 écrit par audhulma le 28/06/2013 à 20h54 | 👍🏽 👎🏽
Le seul cas où ce serait justifié, c'est le développement d'une librairie, pour conserver l rétrocompatibilité... Mais c'est manifestement pas le cas ici.
Commentaire #99599 écrit par D-z le 28/06/2013 à 23h02 | 👍🏽 👎🏽
Qu'est-ce qui t'indique que ça ne serait pas le cas ?
Commentaire #99613 écrit par Acorah le 29/06/2013 à 01h27 | 👍🏽 👎🏽
En effet... J'ai dû interpréter le ton du pebcak à ma manière et me laisser influencer par les autres commentaires ! Je rectifie donc : cela n'a pas l'air d'aitre le cas :)
Commentaire #99917 écrit par D-z le 30/06/2013 à 15h51 | 👍🏽 👎🏽
Il était ultra-débutant, et n'était donc ni en rush, ni en train de développer une bibliothèque.
Commentaire #99920 écrit par Somadeva le 30/06/2013 à 16h19 | 👍🏽 👎🏽