Icône du site Apprenez Delphi

Loi de l'instrument et malédiction du programmeur

Si vous n'êtes pas familier avec le Loi de l'instrument, otherwise known as Maslow’s hammer/gavel, or the golden hammer it is often expressed as

Si votre seul outil est un marteau, vous traitez tout comme un clou.

Je crois comprendre que la loi de l'instrument signifie que vous êtes limité par des instruments ou des outils que vous savez utiliser. Par exemple, si vous avez une vis, du bois et un marteau, vous pourriez réussir à insérer la vis dans le bois, mais un tournevis serait une meilleure alternative.

La loi de l'instrument signifie également une obsession de la perfection des instruments que vous connaissez. I remember back in the day when I was convinced there was no reason to bother with any other programming languages because Delphi was the best. Now I’ve spent some time using a lot of other programming languages, and so I can confidently say Delphi is the best, while I can also see the value and use of other programming languages.

Je pense qu'il vaut la peine de se renseigner sur les nouvelles technologies, cadres, langages ou méthodologies. Ensuite, vous pouvez choisir le bon pour le travail. Cela ne signifie pas que vous devez être un expert dans chacun d'entre eux, mais vous devez en savoir suffisamment pour être sûr de votre choix.

L'inverse est l'obsession de rechercher de nouvelles technologies passionnantes et de recréer des choses toutes les quelques années. Cela divertit les développeurs, mais n'apporte pas vraiment de valeur commerciale. Encore une fois, je pense que Delphi fait du bon travail avec cela car il respecte votre code existant tout en progressant vers de nouvelles plates-formes, fonctionnalités et cadres.

Alors quel est le Malédiction du programmeur?

Quand je parle à d'autres programmeurs, je vois deux comportements. Le premier est, à chaque problème qu'ils rencontrent dans la vie (au travail et au-delà), ils répondent avec "Je pourrais écrire un programme pour faire ça», Ou une variante. Par extension, ils jettent également un œil critique sur tout système logiciel (même ceux développés par eux-mêmes) pour voir comment les faire mieux. Cela se traduit par un énorme arriéré de projets qu'ils créent pour résoudre des problèmes, mieux résoudre un problème ou simplement par curiosité pour voir s'ils le peuvent.

This is similar to the Law of the Instrument, but I see it more as your learning the flexibility and power of programming results in your seeing many opportunities to apply it. I’ve talked to people in other industries, and I think the general tendency is fairly universal, it is just that programming is (in my opinion) so much more powerful and flexible than many other applied technologies.

Le deuxième comportement, dans lequel il faut être plus prudent de tomber, est le envie de créer un "bibliothèque" ou "cadre»Au lieu de terminer le programme en cours. For example, you are creating a program to solve a problem, and in the process, you create series of libraries just in case you need to solve similar problems.

Il est utile d'avoir des bibliothèques, des fonctions, des composants et des frameworks réutilisables. L'astuce est de ne pas laisser leur création gêner l'expédition. Le meilleur moyen que j'ai trouvé pour résoudre ce problème est de ne créer la bibliothèque que lorsque vous en avez besoin. Écrivez votre code avec le niveau de couplage approprié pour résoudre le problème à résoudre. Lorsque vous avez besoin d'en réutiliser un peu ailleurs, envisagez de le refactoriser en quelque chose de réutilisable. Ensuite, au fur et à mesure que vous l'utilisez dans plus d'endroits, vous pouvez continuer à le refactoriser et à l'étendre jusqu'à ce que vous ayez un cadre complet.

Comment voyez-vous la malédiction du programmeur dans votre vie? Qu'utilisez-vous pour empêcher chaque projet de générer une série de frameworks réutilisables?

La source:http://delphi.org/2018/01/curse-of-the-programmer/

Quitter la version mobile