Comment être un bon programmeur

image
Il arrive que les débutants aient du mal à comprendre où aller ensuite, quoi faire. Il arrive que de tels problèmes ne se posent pas seulement aux débutants.

Beaucoup de gens comprennent où se déplacer, quoi faire, se fait une idée. Et cela prend beaucoup de temps. Le temps est la ressource humaine la plus importante qui doit être protégée et non dispersée par elle. Et pour ne pas perdre ce temps, je souhaite partager quelques réflexions, astuces.
Ces conseils semblent à beaucoup être «capitaines» et évidents, en particulier pour les programmeurs expérimentés, mais cela ne doit pas nier leur exactitude.

La critique constructive est la bienvenue.


Soyez honnête, n'ayez pas peur de poser des questions et d'avoir l'air stupide.
Etudiez!

  • Les systèmes d'exploitation des appareils, les compilateurs, les interprètes, l'architecture des systèmes logiciels reconnus et des systèmes .
    Tout code exécutable est créé et exécuté dans une sorte d'environnement. Ne connaissant pas cet environnement, il est difficile de créer un bon produit.
  • Algorithmes, structures de données, mathématiques discrètes .
    Dans notre vie réelle, il y a des programmeurs qui se sentent bien sans avoir les connaissances répertoriées en détail. Par exemple, pour résoudre de nombreux problèmes appliqués aux applications d'entreprise, cela suffit. L'implémentation de nombreux algorithmes est déjà intégrée à la plateforme. Par exemple, trier, rechercher, etc.
    Mais lorsqu'il devient nécessaire de résoudre des problèmes plus complexes, l'invention du vélo peut commencer. La connaissance des algorithmes peut grandement simplifier la tâche.
  • Autres langages, outils de développement et d'interaction .
    Différentes langues résolvent différents problèmes. Par exemple, R, MathLab fera un excellent travail de problèmes mathématiques. Sans langages de balisage HTML, XML ne développe pas d'application Web.
    Et la connaissance, par exemple, du C ou de l'assembleur vous permettra de développer un produit qui fonctionnera le plus efficacement avec du "hardware".
    Apprendre de nouveaux langages, comprendre leur philosophie, et pas seulement la syntaxe, élargira la portée de la réflexion et de la compréhension des principes de programmation. La connaissance de quelques langues "de base" seulement permettra à l'avenir d'en apprendre facilement de nouvelles.
  • Code étranger, documentation et description .
    En étudiant le code de quelqu'un d'autre, vous pouvez découvrir beaucoup de choses intéressantes. Autres approches et méthodes de programmation pouvant être adoptées. Tout débutant devrait le faire afin de rejoindre rapidement l'équipe de développement.
    Et si, avant de commencer à rechercher la cause de l'erreur dans le code de quelqu'un d'autre, lisez la documentation ou la description, vous pouvez réduire considérablement le temps de recherche.
  • Commentaires sur la révision de votre code .
    Vous pouvez considérer cela comme un conseil pour améliorer le code et, en plus, gratuitement.
    C'est également un bon moyen de «communiquer» entre les programmeurs. Surtout si l'équipe de développement est répartie ou s'il y a des introvertis fortement exprimés dans l'équipe.
    Cela ressemble aussi à apprendre le code de quelqu'un d'autre, mais d'un autre côté, la pièce. Lorsque les deux: le réviseur et le réviseur, acquérez de l'expérience et apprenez quelque chose de nouveau.
  • Méthodologie de développement .
    Les méthodologies sont essentielles à la gestion du développement logiciel.
    Le choix d'une méthodologie spécifique dépend de nombreux facteurs: la taille de l'équipe, les spécificités et la complexité du projet, la stabilité et la maturité des processus dans l'entreprise, les qualités personnelles des employés et bien d'autres. Le succès du projet dépend largement de ce choix.
  • Le domaine avec lequel vous travaillez .
    Ne connaissant pas les principes du processus, quoi et comment les personnes, futurs utilisateurs du produit font dans ce processus, il est presque impossible de l'automatiser et d'autant plus de l'améliorer.
    Il est nécessaire d'essayer de comprendre ce que l'utilisateur final «cuisine».


Vous pouvez lire un tas de livres, faire mille tâches, mais sans entraînement, vous ne pouvez pas obtenir de bons résultats.
Agis!

  • Présentez vos idées .
    Pour que le futur produit ne soit pas développé pour lui-même, mais pour apporter des bénéfices, vous devez être en mesure de présenter vos idées. Dans le même temps, en réfléchissant aux objectifs et aux résultats attendus que le client commercial, l'utilisateur final poursuit. Sinon, l'idée n'est pas de vendre.
    Avec une bonne présentation de l'idée, vous pouvez obtenir de bons conseils avant sa mise en œuvre. Même si l'idée ne se vend pas la première fois.
  • Écrivez du code lisible, compréhensible, structuré et extensible .
    Si nécessaire, développez des fonctionnalités, fournissez une assistance produit, un certain temps plus tard, vous devrez peut-être trouver rapidement le code vous-même ou quelqu'un d'autre.
  • Concevez du code avec le comportement attendu .
    Le produit libéré doit être fiable et maintenable.
  • Testez vous-même votre code .
    Cet élément ne signifie pas que vous devez tester à la place du testeur. Ce paragraphe indique que le développeur doit soumettre le code pour les tests en ayant la certitude qu'il a fait tout ce qui est nécessaire pour que le testeur puisse détecter le moins de bogues possible.
    Lors de l'élaboration du code, on peut supposer que le produit final sera le système de contrôle de l'avion, pendant les vols d'essai dont le concepteur du système doit être à bord.
  • Pratiquez plus .
    Comme dans toute autre entreprise, l'expérience ne vient que de la pratique. La maîtrise de la programmation n'est pas la fin d'une université ou d'un cours. C'est un long chemin de vie. Et c'est important de ne pas s'arrêter là.


Sans communication, vous êtes comme un bon livre dans une langue "morte". C'est, mais pas utile.
Partagez-le!

  • Aidez, partagez vos connaissances .
    Il y a un «mais!» Important: ne le faites pas pour un autre.
    Il faut supprimer le désir "il est plus facile de le faire soi-même que de l'expliquer".
    Le plus souvent vous expliquez, plutôt que de faire pour un autre, plus les gens autour de vous pourront apprendre quelque chose de nouveau.
  • Trouvez-vous un Padawan / mentor et devenez son mentor / Padawan .
    Besoin de souligner.
    Malgré l'apparente contradiction des phrases, l'essence réside dans une chose - le mentor et Padawan grandissent et se développent ensemble. Il s'agit de la différence principale et essentielle de l'interaction des rôles «enseignant - élève» appris de l'école. Lorsque dans la plupart des cas, cette interaction se résume à la formule "Je suis le patron, tu es un imbécile."
  • Participez aux championnats de programmation .
    Cela vous permettra d'effectuer une tranche de connaissances, d'identifier les lacunes, les forces et les faiblesses, de vous regarder de l'extérieur.
  • Communiquez, travaillez dans une équipe de gourous comme vous .
    Dans ce cas, deux composants peuvent être distingués:
    - le premier est le perfectionnement des compétences techniques;
    - le deuxième - perfectionner les communications, les compétences en communication.
    Les deux composants sont nécessaires pour devenir un professionnel. Et les deux doivent être affinés.


Littérature et références


Les liens fournis ne sont pas nécessairement lus. Quel livre, article, matériel à lire, où vous devez vous rattraper - c'est purement individuel. Chacun doit décider de lui-même.
Les liens ci-dessous sont plutôt des points de départ à partir desquels vous pouvez commencer.

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


All Articles