Contenu | Rechercher | Menus

Annonce

DVD, clés USB et t-shirts Ubuntu-fr disponibles sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/04/2021, à 23:26

zephyre123

[RESOLU] Question simple sur les outils pour les développeurs ?

Bonjour,

Pour coder un programme il y a deux grandes méthodes :
- télécharger chacun des outils séparément (éditeur de texte + compilateur + debuggeur)
- utiliser un IDE

A la suite de cela j'ai  deux questions :
- quelle est selon vous la meilleur méthode j'entends par la la plus efficace et pas forcément la plus complexe ?
- qu'es ce qui est utilisé en entreprise selon votre expérience ?

Merci pour vos réponses.

Ps : je me suis vraiment fais chier à comprendre comment fonctionne vim, le paramétrer, les plugins, les raccourcis ...
       mais je ne regrette rien. Vim est hyper efficace

D'après la philosophie linux un programme fait une seule chose mais il l'a fait super bien donc personnellement je pencherai pour la première méthode.
Cependant j'ai vraiment l'impression que c'est plus chiant et moins efficace.

Vos avis et votre expérience m'intéresse à ce sujet.

Dernière modification par zephyre123 (Le 26/04/2021, à 13:53)

Hors ligne

#2 Le 20/04/2021, à 08:28

ssdg

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Franchement, ça doit.dépendre du langage, du développeur et peut être meme de la tache a faire.

Par exemple, je fais du java et du web. Et je préfère vscode pour le web, éclipse pour découvrir une librairie ou écrire du code qui utilise des api que je ne connais pas bien et intellij pour refactorer. ( revenir sur le code pour le rendre plus lisible et organisé)

Je recommande de faire comme tu le sens.


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#3 Le 21/04/2021, à 01:48

kamaris

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Bah la meilleure méthode est celle qui te convient.
L'important étant de se sentir bien pour travailler, et donc d'être productif avec plaisir (ou au moins pas trop de déplaisir quand on doit subir des outils imposés).
Au final de toutes façons, ça n'est pas ça qui influence le plus la qualité du code produit.

Hors ligne

#4 Le 24/04/2021, à 23:30

WW

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Bonjour @zephyre,

Comme indiqué précédement, même si cette réponse peut sembler être une manière d'éluder la question, @kamaris : "la meilleure méthode est celle qui te convient", celle avec laquelle tu seras à l'aise. Le fait d'être à l'aise amène de la performance et du plaisir. Une méthode qui ne t'apporte aucun plaisir est difficile à garder sur le long terme.

Comme le dit @ssdg, ça dépend en partie de la technologie ciblée puisque certains outils sont dédiés à des technologies. Il peut parfois être préférable d'utiliser un outil plus adapté même si l'on n'en a pas l'habitude.

Sachant que l'utilisation d'un nouvel outil est profitable s'il remplit mieux un besoin que tes outils précédents et soit :
- qu'il demande très peu d'apprentissage,
- que ta fréquence d'utilisation de ce nouvel outil rend l'investissement dans l'apprentissage intéressant.

Ma préférence est l'utilisation de plusieurs outils mais cela est effectivement plus complexe/pénible au moins au début.
Ceci étant tout à fait compréhensible puisque l'intégration de plusieurs outils dans un environnement de développement a justement pour but de simplifier l'usage.

Un IDE permet d'avoir plusieurs outils dans une interface homogène et pré-configurés pour fonctionner ensemble. Une partie de la complexité technique peut-être diminuée grâce à l'utilisation d'un IDE. Cependant c'est justement cela qui, d'expérience, est désagréable: les comportements automatiques que l'on ne comprend pas. L'apport de l'IDE va t'aider dans la majorité des cas mais peut te faire perdre du temps (beaucoup) parfois à cause d'un traitement automatique non souhaité.
Cela est également vrai en dehors des IDE par exemple dans les frameworks. Et ce n'est pas pour cela qu'il ne faut pas utiliser de frameworks, les briques d'abstraction permettent de s'affranchir de certaines problématiques pour avancer. Mais quand ces briques plantent il faut bien descendre pour comprendre leur fonctionnement afin de solutionner le problème.

Le précepte Unix : 1 outil 1 tâche. Dans cette approche il faut connaître plusieurs outils et leurs options, c'est donc potentiellement plus fastidieux. Les outils étant plus simples même lorsqu'ils ont des comportements automatiques, ils sont généralement plus simples à comprendre. Je vois principalement trois avantages à ce fonctionnement :
- changer une brique entraîne peu d'impact sur l'environnement global
- pouvoir combiner les outils pour répondre à de nombreux besoins
- utiliser en partie les mêmes outils que sur les environnements post-développement.

Il a toujours des avantages et des inconvénients à une méthode, or nous avons la chance que ces deux méthodes soient non exclusives.

En entreprise, j'ai principalement vu l'utilisation d'un IDE imposé au moins aux débutants. Cela permet d'avoir des postes homogènes, ce qui est plus simple pour l'entre-aide. La diminution de la complexité peut-être une bonne chose quand on débute.
Une fois que les personnes sont plus autonomes, elles peuvent choisir leurs outils si cela n'engendre pas de support particulier.

J'ai souvent vu les plus expérimentés continuer à utiliser l'IDE par habitude et donc efficacité mais en y ajoutant de plus en plus d'outils autour. Notamment pour l'aspect spécialisation des outils. Mais également remplacer l'usage d'outils intégrés par des lancements hors IDE (potentiellement de ces mêmes outils mais sans la surcouche IDE) afin d'éviter les automatismes non souhaités. Cela permettant par exemple d'être plus proche (voire à l'identique) du fonctionnement de la plateforme d'intégration continue.

PS: tu es bien motivé car vim est certainement l'un des utilitaires Unix les plus complexes à prendre en main.


Quand on sait c'est facile, mais qui n'a jamais été débutant.

Hors ligne

#5 Le 26/04/2021, à 13:53

zephyre123

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Merci à tous pour vos réponses c'est clair désormais pour moi wink

Hors ligne

#6 Le 26/04/2021, à 14:24

JBF

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

zephyre123 a écrit :

Bonjour,

Pour coder un programme il y a deux grandes méthodes :
- télécharger chacun des outils séparément (éditeur de texte + compilateur + debuggeur)
- utiliser un IDE

Pour moi il faut maîtriser les 2. Le risque de travailler uniquement avec un IDE est de s'enfermer dans cet IDE et donc de prendre le risque d'avoir beaucoup de mal à en sortir si un jour cela s'avérait nécessaire. Par exemple, utiliser Eclipse pour un projet Java c'est bien, sauf que rapidement tu n'écris plus du Java mais de l'Eclipse. Et si un jour tu as besoin d'intervenir sur ton code sans avoir ton IDE bien configuré, tu ne sauras pas comment faire.

Pour les stages où les CDD que j'encadre, je demande que les personnes soient capables de travailler avec les outils de base que sont un éditeur de texte, make, un compilateur et un debuggeur, auquel j'ajoute une forge logicielle basée sur git ou analogue. Après ils prennent l'IDE qu'ils veulent, mais je veux que celui qui récupère le code sur la forge ne soit pas obligé de se servir du même IDE.


LibreOffice : https://fr.libreoffice.org/ (téléchargement, documentation, FAQ, assistance, contribuer, ...)
Aide pour LibreOffice par la communauté francophone : https://ask.libreoffice.org/fr/

Hors ligne

#7 Le 26/04/2021, à 15:17

zephyre123

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Merci JBF pour tes précision.
Je comprends il faut maîtriser les deux.
Cependant au niveau de la masse de travail à accomplir ça double, car si on utilise des outils spécialisés pour chaque langage ça devient vite une usine à gaz, exemple (je ne sais pas) , eclipse pour java, intelliJ pour c#, visual studio pour c++, Qt pour pour le C etc etc y a de quoi très vite se paumer dans tout se "bordel".
Sachant que l'interface est différente à chaque fois => travail x 10
Bref tout ça pour des outils alors que au final il n'y a que la qualité du code qui est importante.

Hors ligne

#8 Le 26/04/2021, à 15:51

JBF

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Je pense que c'est une erreur de ne voir que des couples (langage ; IDE), il faut aussi penser (projet ; IDE). Ainsi tu peux très bien faire du C++ avec Eclipse, par contre travailler avec Eclipse sur LibreOffice, jusqu'à récemment c'était impossible parce qu'Eclipse était incapable de charger le code de LibreOffice bien trop gros pour lui. Du coup c'est vim qui a longtemps été recommandé pour coder en C++ dans LibreOffice.

Il faut aussi te demander comment travailler sur un projet qui utilise C, C++ et Python + des fichiers de ressources en xml. J'avais eu le problème avec un projet qui utilisait Fortran + C + XML + Java et je n'avais trouvé que JEdit (c'était autour de 2004) qui pouvait m'éditer tout ça avec la coloration syntaxique propre à chaque langage.


LibreOffice : https://fr.libreoffice.org/ (téléchargement, documentation, FAQ, assistance, contribuer, ...)
Aide pour LibreOffice par la communauté francophone : https://ask.libreoffice.org/fr/

Hors ligne

#9 Le 26/04/2021, à 19:03

zephyre123

Re : [RESOLU] Question simple sur les outils pour les développeurs ?

Je n'ai aucun problème avec la coloration syntaxique avec vim pour n'importe quelle langage.
Je ne suis pas un professionnel mais je compte le devenir dans le langage informatique.
Je m'oriente plus vers un profil système donc les langages qu'il faut que je maîtrise  sont le bash (indispensable) le c pour faire de la programmation système le python pour maitriser un langage de script et ensuite peut être si j'ai le temps le powershell.
Je ne compte pas développer des applications mais plutôt intégrer ses applications dans des serveurs.
Une fois que je serai faire tout cela alors je m'intéresserai à des langages de POO tels que C++ et Java mais ce n'est pas à l'ordre du jour pour le moment.

Hors ligne