Wie man NICHT ein mittelmäßiger Entwickler ist

Hallo Habr! Ich präsentiere Ihnen die Übersetzung des Artikels "Wie man kein mittelmäßiger Entwickler ist!"
Dushyant Sabharwal. Der Artikel enthält einige Tipps für Anfänger und möglicherweise einige erfahrene Programmierer, die dazu beitragen können, ihre Professionalität erheblich zu verbessern und ihre Einstellung zur Arbeit zu ändern. Einige von ihnen scheinen alltäglich zu sein, aber Anfänger finden möglicherweise etwas Nützliches für sich.

Schreiben Sie mehr Code


Wenn Sie Ihre Fähigkeiten in einem Beruf verbessern möchten, müssen Sie mehr üben - es gibt leider keine Problemumgehungen. Es spielt keine Rolle, wie viele Programmierartikel Sie pro Tag lesen oder wie oft Sie täglich die Dokumentation lesen - Sie werden keine Ergebnisse erzielen, ohne mit Ihren eigenen Händen zu arbeiten. Entwurfsmuster, die für viele Anfänger schwierig zu verwenden scheinen, fliegen automatisch unter Ihren Fingern hervor, wenn Sie üben, sie in verschiedenen Kontexten anzuwenden.



Schreiben Sie Tests


Als ich anfing, meinen Code aktiv zu testen, war ich überrascht, dass ich nicht darauf vorbereitet war, Qualitätstests zu schreiben. Wenn Sie Tests schreiben, lernen Sie, Ihren Code auf eine neue Art und Weise zu betrachten. Wenn Sie Möglichkeiten finden, Ihren Code zu brechen, werden Sie höchstwahrscheinlich die Struktur und Logik Ihres Codes besser verstehen und einige eigene Fehler finden (noch bevor die Tests ausgeführt werden, während sie geschrieben werden). und beachten Sie, dass es sich möglicherweise lohnt, einige Teile Ihres Codes in Hilfsfunktionen zu integrieren oder einige Funktionen allgemeiner zu gestalten. In einigen Fällen sind Sie sogar dazu gezwungen, wenn Sie feststellen, dass Ihr Code nicht getestet werden kann.

Schauen wir uns ein Beispiel an:

function postData(data) {
 boolean valid = true;
 //   
 if (data === undefined) {
   valid = false;
 }
//    
 if (!regex(data['email']) {
   valid = false;
 }
//   
 if (data['password'].length < 8) {
   valid = false;
 }
if (valid) {
  http
   .post(`example.com/user/create`, data)
   .then((response) => {
    //   
    this.users.append(response.userid);
   })
   .catch((error) => {
    //    
   });
 } else {
   showValidationError();
 }
}

postData : , , . postData . , :

function postData(data) {
 return http
   .post(`example.com/user/create`, data);
}

function validate(data) {
 //   
 if (data === undefined) {
   return false;
 }
//    
 if (!regex(data['email']) {
   return false;
 }
//   
 if (data['password'].length >= 8) {
   return false;
 }
  return true;
}

function appendUsers(userId) {
  this.users.append(response.userid);
}

function main() {
 if (validate(data)) {
  postData(data)
   .then(data => appendToList(data.userId))
   .catch(error => handleError(error))
 } else {
  showValidationError();
 }
}

, — , , .


. , - API, , , , - .

open-source


open-source , , . . . , open-source . , open-source .


-, , , , , . , 100%, - .


, . product manager-, — , ! , , !


/ . , , , . , , . , , , .




, , API, ( ) . , .

var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

, vue.js. , :

  1. new? «» ?
  2. , el id , #? , , ?
  3. data vue. ?

, , , .


, . , , , — ! , . API. , , , .


( , , ) , . . , , API.

. , . , , , .

, , : hackerrank, leetcode, codingame .


, , . stackoverflow, . medium , . github. , , .

-


API , , : « — . ». , . , DRY, , , .. (, ), . , , , , « », .


, , , . , — , !

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


All Articles