1411609602260097

Frisch von der Schule kommst du mit einem Diplom, das noch nach Tinte riecht, ins Berufsleben und erhältst sofort ein böses Erwachen durch ungeschriebene Regeln und allerlei triviale Alltagsangelegenheiten. Solche Geschichten sind allzu häufig, und Programmierarbeit ist keine Ausnahme.

Nur wenige Studenten sind 100% auf ihren ersten echten Job vorbereitet. Wenn du nicht einer von ihnen sein willst, lerne die folgenden 10 Grundfähigkeiten, die du dir ohne Anleitung aneignen kannst:

1. Versionskontrollsystem (VCS)

VCS ist vielleicht das größte Versäumnis in Informatikkursen. Diese Kurse denken nur daran, zu lehren, wie man Code schreibt, vergessen aber oft, den Studenten beizubringen, wie man Code verwaltet. Jeder Programmierer sollte wissen, wie man mit Git oder Subversion effektiv ein Repository erstellt, Code bearbeitet und committet, Verzweigungen erstellt und zusammenführt und Projektworkflows versteht.

2. Schreiben lernen

Als Programmierer schreibst du nicht nur Code. Du musst auch Release Notes für Projekte, Commit-Nachrichten für die Versionsverwaltung und Fehlerberichte im System schreiben. An diesen und vielen anderen Stellen ist eine klare und effektive schriftliche Kommunikation erforderlich – aber die Informatik legt selten Wert auf diese Fähigkeit.

3. Reguläre Ausdrücke

Reguläre Ausdrücke sind eine Sprache für sich, und jeder moderne Programmierer sollte sie beherrschen. Jede moderne Sprache unterstützt reguläre Ausdrücke oder verfügt über eine zugehörige Standardbibliothek. Wenn der Code überprüfen muss, ob eine Zeichenkette 5 Zeichen, 1 Bindestrich und 1 Ziffer enthält, solltest du sofort /^[A-Z]{5}-\d$/ schreiben können.

4. Bibliotheken verwenden

Es ist bereits 2014, also muss niemand mehr reguläre Ausdrücke verwenden, um einen Hostnamen aus einer URL zu extrahieren. Denn jede moderne Programmiersprache besitzt eine Standardbibliothek, die gängige Funktionen bereitstellt.

Programmierer müssen verstehen, dass Code, der entwickelt, getestet und debuggt wurde, normalerweise besser ist als Code, den sie selbst schreiben. Wichtiger noch: Code, der nicht geschrieben werden muss, ist viel schneller umzusetzen.

5、SQL

Viele Menschen lernen SQL im Beruf. Wie könnten Datenbanken ein Wahlfach sein? Gibt es irgendjemanden, der keine Datenbank verwendet?

Die Ära, Daten in Flat Files zu speichern, ist vorbei. Alles geht in Datenbanken hinein und wieder heraus, und SQL ist die Sprache zum Speichern und Abrufen von Daten. Sie ist eine deklarative Sprache, keine prozedurale, daher erfordert ihre Verwendung zur Problemlösung eine neue Denkweise. Jeder Programmierer sollte die Grundlagen der Datenbanknormalisierung verstehen und SELECT (einschließlich INNER und OUTER JOIN), INSERT, UPDATE und DELETE ausführen können.

6. Beherrschung von IDEs, Editoren und CLI-Tools

Ein Tischler, der nur den Umgang mit einer Säge beherrscht, wird nie eine Lehre abschließen, daher ist es erstaunlich, dass Informatikabsolventen nur Notepad oder pico kennen. Programmierungswerkzeuge helfen dabei, Code und andere Daten zu bearbeiten, und erleichtern Programmierern das Leben. Also sollte jeder Programmierer wissen, wie man die Kommandozeile, Shell-Skripte, find, grep und sed verwendet.

7. Debugging

Jeder Programmierer sollte wissen, wie man ein Programm mit einem interaktiven Debugger oder durch das Einfügen von Ausgabeanweisungen im Code debuggt. Die Fähigkeit, Probleme durch schrittweise Verfeinerung aufzuspüren, ist äußerst wichtig.

8. Defensive Programmierung

Fehler sind unvermeidlich, selbst für Star-Programmierer. Kontrollverlust ist die Norm in der Welt, und Fehler sind nicht überraschend. Defensives Programmieren bedeutet genau, diese Tatsache zu verstehen. Wenn nie etwas schiefgehen würde, würden wir nicht prüfen, ob eine Datei erfolgreich geöffnet wurde, nicht prüfen, ob eine Kunden-ID eine gültige Zahl ist, und müssten nicht testen, ob Code korrekt läuft.

Programmierer müssen wissen, dass Compiler-Warnungen nützliche Werkzeuge sind, die unser Leben angenehmer machen, und keine Ärgernisse, die man vermeiden sollte. Jeder Programmierer sollte wissen, warum jedes PHP-Programm so beginnen sollte:

set_error_reporting(E_ALL)

Jedes Perl-Programm sollte diese Anweisungen enthalten:

use strict; use warnings;

9. Teamzusammenarbeit

Nur wenige Programmierjobs lassen einen allein arbeiten. Wenn man das oft tut, leidet der Intellekt und die Leistung lässt nach. Dein Code muss mit dem Code anderer interagieren oder sich damit mischen. Egal wie talentiert ein Programmierer ist, wenn er nicht mit anderen zusammenarbeiten kann, wirkt er sich negativ auf das Projekt aus und wird schnell zur Belastung für die Organisation.

10. Bestehenden Code nutzen

In der Schule war jede Aufgabe ein neues Projekt. Aber die reale Welt ist nicht so. Für jemanden, der gerade anfängt zu arbeiten, ist die erste Aufgabe, die er erhält, oft das Beheben eines Fehlers im Code. Dann fügt er auf Basis der bestehenden Codebasis eine kleine Funktion zu einem vorhandenen System hinzu. Neuen Code zu entwerfen, passiert Monate später, wenn man Glück hat.

Originalquelle: http://www.36kr.com/p/212678.html