Polémique incorrecte

Dans cet article, nous essaierons d'envisager des options pour des polémiques incorrectes, qui, hélas, sont souvent trouvées sur Habr et d'autres sites.


Absolutisation de l'approche décrite


On sait que toute méthode portée à l'absolu devient stupide.


Par exemple, une utilisation excessive de la POO entraîne un code illisible. Un rejet complet de la POO et la transition vers un code purement fonctionnel réduisent également la lisibilité.


La vérité est toujours quelque part entre les deux.


Mais quand vous voulez dire à quelqu'un comment vous avez réussi à appliquer une méthode, préparez-vous au fait qu'il y a un adversaire qui essaiera d'utiliser cette méthode absolument partout.


Une fois, j'ai écrit un article sur l'utilisation d'événements nommés, et un commentateur est venu me voir et m'a dit:


Merde pleine! J'ai remplacé toutes les fonctions de mon code par des événements nommés. Il s'est avéré un enfer d'identifiants à travers lesquels il était extrêmement difficile de passer! Après cela, je suis retourné au bon vieux React!

Que faire


  1. Ne vous impliquez pas dans un différend.
  2. Une fois pour dire qu'il ne faut pas en faire trop avec l'outil.

Bavardage terminologique


Ce n'est un secret pour personne que, dans de nombreux cas, la frontière entre les termes est difficile à tracer. Souvent, deux termes différents signifient la même chose et vice versa. Dépend du contexte et des limites d'utilisation.


Par exemple, vous parlez de quelque chose. À propos du problème X :


Considérons le problème X , qui se manifeste, par exemple, dans les cas A , B , C et D Le problème est ceci et cela. Vous pouvez le résoudre tel ou tel.

Il y aura certainement un commentateur qui dira:


Merde pleine! Votre terme D appliqué incorrectement! En fait, vous devez dire D- . Le terme D introduit tel ou tel .. en telle ou telle année. Et le terme D- un autre .. d'une autre année.

Pour une raison quelconque, les années et le nom sont importants.


Vous lui répondez:


Dans le cadre de cet article, il n'est pas particulièrement important qu'il s'agisse de D ou d'un D- , puisque nous parlons ici du problème X D voici un exemple et un D- peut être le même exemple. Dans ce contexte, il n'y a pas de différence: le problème X présent à la fois en D et en D- .

Un autre participant apparaît immédiatement. Déclare:


Ce n'est pas un D- , c'est E !

Un débat sur les termes commence, qui peut durer éternellement. Pâte spéciale: si après quelques jours de différends un autre participant apparaît, à un certain stade du différend revient au terme D :


Non, ce n'est pas E , c'est D !

En conséquence, la publication a recueilli plus de 100 commentaires sur les termes D , D- , E et les années de naissance de ceux qui ont introduit les termes. Mais le problème X pas X discuté.


J'ai déjà fait un commentaire sur les problèmes liés à l'utilisation de variables globales (ou statiques).


Il a fourni un exemple avec un singleton. Le singleton dans l'exemple a été implémenté à l'aide d'une variable globale.


Singleton

Singleton est un objet instancié dans le système une seule fois. Une seule instance peut être garantie de plusieurs manières:


  • La classe elle-même le garantit en quelque sorte (se référant généralement à une variable globale / statique).
  • Cela se fait en dehors de la classe - au moment de l'instanciation (dans ce cas, plusieurs objets de cette classe peuvent théoriquement être créés, mais si le point d'instanciation est lié, par exemple, à une variable globale, alors nous pouvons supposer que nous avons créé un singleton).

J'ai choisi la deuxième option.


Immédiatement, un personnage s'est exclamé:


Merde pleine! Ce n'est pas un singleton, c'est de la mémorisation!

J'ai répondu:


Il s'agit d'un singleton, qui dans cet exemple est implémenté à l'aide de la mémorisation.

Et donc je me suis impliqué dans ce jeu. Le problème des variables globales / statiques a été oublié.


Que faire


  1. Ne vous impliquez pas dans le différend (si nous voulons vraiment discuter exactement de ce qu'ils ont écrit dans l'article).
  2. Vérifiez soigneusement les termes de l'article. Si quelque chose peut avoir deux noms, nous leur donnons les deux.
  3. Retournez doucement le public à la question en discussion. Rappelle-moi d'elle.

Ce n'est pas une solution miracle!


Toute solution a des limites dans lesquelles elle fonctionne bien et en dehors desquelles elle fonctionne mal - une autre solution est requise.


Supposons que vous discutiez d'un moyen de résoudre une série de problèmes.


Il y a sûrement une personne qui viendra et dira:


Merde pleine! J'ai essayé avec ta pelle d'enfoncer des clous dans le mur, ça tourne mal. Les mains ne font que mal! Je reviens au vieux marteau.

Que faire


Ne vous impliquez pas dans un différend. Ignorez simplement le commentaire.


Hyperbolisation des problèmes


Vous décrivez un moyen de simplifier l'écriture de code dans une sorte de paradigme. Il y aura certainement une personne qui recherchera des exemples / options qui sont des contre-exemples et les hyperbolisera.


Ses commentaires peuvent être réduits à cela (seulement il ne le dit pas directement):


Une fois sur 100 cas, nous n'en améliorons que 99, et le tout n'est pas amélioré, votre proposition est un gâchis complet.

En règle générale, il propose en même temps une autre solution, que vous proposez simplement de refuser dans votre article.


Que faire


  1. Reconnaissez un problème.
  2. Essayez de donner plus d'exemples lorsque votre approche est meilleure.

Ignorer les problèmes


L'opposé de l'option précédente.


Copier le code 23 fois? Pff quelle bagatelle! Définissez-vous l'IDE correct, où cela se fait avec un seul bouton, et vous n'avez pas besoin d'écrire des articles ici!

Que faire


Ignorez ces commentaires.


Et quelles options de polémique incorrecte connaissez-vous?

Source: https://habr.com/ru/post/fr485770/


All Articles