1411609602260097

Tout juste sorti de l’école, vous entrez dans le monde du travail avec un diplôme qui sent encore l’encre, et vous êtes immédiatement brutalement confronté aux règles non écrites et à toutes sortes de petites tâches quotidiennes. Ces histoires sont monnaie courante, et le travail de programmation ne fait pas exception.

Peu d’étudiants sont préparés à 100% pour leur premier vrai emploi. Si vous ne voulez pas être l’un d’eux, apprenez les 10 compétences de base suivantes que vous pouvez acquérir sans qu’on vous tienne par la main :

1. Système de gestion de versions (VCS)

Le VCS est peut-être le plus grand oubli des cours d’informatique. Ces cours se souviennent seulement d’enseigner comment écrire du code, mais oublient souvent d’enseigner aux étudiants comment gérer le code. Chaque programmeur devrait savoir créer efficacement un dépôt avec Git ou Subversion, modifier et committer du code, créer des branches et fusionner, et comprendre les flux de travail de projet.

2. Apprendre à écrire

En tant que programmeur, vous n'écrivez pas seulement du code. Vous devez aussi rédiger des notes de version du projet, des messages de commit pour la gestion de versions et des rapports de bug dans le système. Ces endroits et bien d'autres exigent une communication écrite claire et efficace—mais l'informatique met rarement l'accent sur cette compétence.

3. Expressions régulières

Les expressions régulières sont un langage en soi, et tout programmeur moderne devrait les maîtriser. Chaque langage moderne prend en charge les expressions régulières ou dispose d'une bibliothèque standard associée. Si le code doit vérifier qu'une chaîne contient 5 caractères, 1 tiret et 1 chiffre, vous devriez pouvoir écrire immédiatement /^[A-Z]{5}-\d$/.

4. Utilisation des bibliothèques

Nous sommes déjà en 2014, donc plus personne n'a besoin d'utiliser des expressions régulières pour extraire un nom d'hôte d'une URL. Car tout langage de programmation moderne dispose d'une bibliothèque standard qui exécute les fonctions courantes.

Les programmeurs doivent comprendre que le code qui a été développé, testé et débogué est généralement meilleur que le code qu'ils écrivent eux-mêmes. Plus important encore, le code qui n'a pas besoin d'être écrit est bien plus rapide à mettre en œuvre.

5、SQL

Beaucoup de gens apprennent SQL sur le tas. Comment une base de données pourrait-elle être un cours facultatif ? Y a-t-il quelqu'un qui n'utilise pas de base de données ?

L'ère du stockage des données dans des fichiers plats est révolue. Tout entre et sort des bases de données, et SQL est le langage pour stocker et récupérer des données. C'est un langage déclaratif, pas procédural, donc l'utiliser pour résoudre des problèmes exige une nouvelle façon de penser. Chaque programmeur devrait comprendre les bases de la normalisation des bases de données et être capable d'effectuer SELECT (y compris INNER et OUTER JOIN), INSERT, UPDATE et DELETE.

6. Maîtrise des IDE, éditeurs et outils CLI

Un charpentier qui ne sait utiliser qu'une scie ne terminera jamais son apprentissage, il est donc étonnant que les diplômés en informatique ne connaissent que Notepad ou pico. Les outils de programmation aident à manipuler le code et d'autres données, ce qui facilite la vie d'un programmeur. Ainsi, chaque programmeur devrait savoir utiliser la ligne de commande, les scripts shell, find, grep et sed.

7. Débogage

Tout programmeur devrait savoir comment déboguer un programme à l'aide d'un débogueur interactif ou en parsemant des instructions de sortie dans le code. La capacité à localiser les problèmes par raffinements successifs est extrêmement importante.

8. Programmation défensive

Les erreurs sont inévitables, même pour les programmeurs vedettes. La perte de contrôle est la norme dans le monde, et les erreurs ne sont pas surprenantes. La programmation défensive consiste précisément à comprendre ce fait. Si les choses ne tournaient jamais mal, nous ne vérifierions pas si un fichier s'est ouvert avec succès, nous ne vérifierions pas si un identifiant client est un nombre valide, et nous n'aurions pas besoin de tester si le code s'exécute correctement.

Les programmeurs doivent savoir que les avertissements du compilateur sont des outils utiles qui rendent notre vie plus confortable, et non des nuisances à éviter. Chaque programmeur devrait savoir pourquoi chaque programme PHP devrait commencer comme ceci :

set_error_reporting(E_ALL)

Chaque programme Perl devrait inclure ces instructions :

use strict; use warnings;

9. Collaboration en équipe

Peu d'emplois de programmation vous permettent de travailler seul. Si vous le faites souvent, votre intellect en souffrira et vos performances s'affaibliront. Votre code doit interagir ou se mélanger avec le code des autres. Peu importe le talent d'un programmeur, s'il ne peut pas collaborer avec les autres, il aura un impact négatif sur le projet et deviendra rapidement un fardeau pour l'organisation.

10. Tirer parti du code existant

À l'école, chaque devoir était un nouveau projet. Mais le monde réel n'est pas comme ça. Pour quelqu'un qui commence à travailler, la première tâche qu'il reçoit consiste souvent à corriger un bug dans le code. Ensuite, il ajoute une petite fonctionnalité à un système existant en se basant sur la base de code existante. Concevoir du nouveau code est quelque chose qui arrive des mois plus tard, si vous avez de la chance.

Source originale : http://www.36kr.com/p/212678.html