Wku

Hur koppla ihop program

Par programmering är en metod för programmering där två personer arbetar tillsammans på ett tangentbord. En person, "föraren", typ på tangentbordet. Den andra personen, "observatören" (eller "navigator") granskar varje kodrad som det skrivs, kolla efter fel och tänka på den övergripande designen.


Några fördelar du kan förvänta dig: bättre kod (enklare konstruktion, färre buggar, mer underhålla), högre moral (roligare!), Delad kunskap inom hela ditt team (både specifika kunskaper om din kodbas och allmän programmering kunskap), bättre tidsplanering, högre produktivitet.

Steg

Hur koppla ihop program. Börja med en någorlunda väldefinierad uppgift innan du sätter dig ner.
Hur koppla ihop program. Börja med en någorlunda väldefinierad uppgift innan du sätter dig ner.
  1. 1
    Börja med en någorlunda väldefinierad uppgift innan du sätter dig ner. Uppgiften ska vara något du är säker på att du kan fylla i en timme eller två. Till exempel, "Lägg till" underhåll historia "till inflyttningen van databas koden." Du kanske tycker att det är bra att beskriva vad du planerar att göra innan du börjar koda.
  2. 2
    Överens om en liten mål i taget: något du kan fylla inom några minuter. Angivande av problemet i ord till en annan person hjälper till att fokusera ditt sinne och hjälper till att engagera din partners sinne. Det garanterar också att ni båda vet vad du jobbar med just nu.
  3. 3
    Lita på din partner, stödja din partner.
    • När du är föraren, fullfölja pågående lilla målet så fort du kan, ignorera större frågor. Lita observatören att vara din skyddsnät.
    • När du är observatören, läser koden att föraren skriver när han eller hon skriver det. Ditt jobb är koden översyn. Du bör ägna total uppmärksamhet, som syftar till att låta något komma efter dig. Tänk på eventuella buggar, större problem och sätt att förenkla eller förbättra design. Ta upp fel och kod som du hittar oläsbar direkt. Vänta tills den nuvarande lilla målet görs för att ta upp större frågor och idéer för utformning förbättras. Krafsa dessa senare uppgifter ner så att föraren kan fokusera på den nuvarande lilla uppgiften. Till exempel, om du ser att den aktuella koden inte står för en null-ingång, skriva ner på ett papper, "Lägg enhetstest för null-ingång."
    • När du är observatören, inte diktera inte koden. Föraren bör aktivt tänka på hur man ska uppnå den aktuella uppgiften, inte bara skriva passivt. Och som observatör, bör du utnyttja det faktum att du inte behöver uppfinna de små detaljerna, du kan och bör tänka på en högre nivå. Att säga "Det ser rätt. Hur handlägger ärendet där vi passerade ett nollpekare nu?" är bättre än "OK, nu typ" if (s == null) {return... '"
  4. 4
    Prata mycket! Säg vad du håller på att göra, be om en implementering idé, be om ett bättre sätt att lösa problemet till hands, ta fram alternativa idéer, visa på möjliga ingångar att koden inte täcker, föreslår tydligare namn för variabler och subrutiner, föreslå sätt att genomföra koden i mindre steg, tala om för föraren att lite av API kunskap som de behöver i det ögonblick de behöver den, etc. Lyssna en hel del också, förstås. När människor parar väl, talar de fram och tillbaka nästan non-stop. Här är några vanliga saker att säga vid ihopparning:
    • "Tror du att detta är ett giltigt test?"
    • "Ser det rätt för dig?"
    • "Vad händer nu?"
    • "Lita på mig" (när det är lättare att skriva lite kod för att göra din punkt än att säga det högt)
  5. 5
    Synka upp ofta. När du arbetar tillsammans, kommer du att hitta dig själv att komma ur synk: bli osäker på vad din partner gör, eller blir oklart om den aktuella uppgiften. Detta är normalt. När det händer, synka upp igen. Nyckeln till god hopkopplingen att synka upp väldigt ofta inom några sekunder eller en minut för att märka att du är ur synk. Om du spenderar fem minuter (eller mer) ur synk, kan man lika gärna vara kodning solo, eftersom det är den frekventa re-sync'ing som skapar synergieffekter för parning.
    • När du kan, säga vad du ska göra innan du gör det. Ännu bättre, be din partner, till exempel, "Ska vi skriva provet för null fallet nu?" Men ibland måste du skriva koden för att förstå din tanke, och det är okej. Sedan kan du säga att du gör det: ". Jag måste skriva detta för att se om det är en bra idé" Bäst att hålla den typen av prospektering till mindre än en minut, men.
    • När din partner frågar om du håller med något, som "Ska vi skriva provet för null fallet nu?" eller "Jag tror att denna metod kan tas bort nu. håller du med?", säger "Ja" eller "Nej" tydligt och omedelbart.
    • Det är okej att passera tangentbordet och tillbaka väldigt ofta. Till exempel, ibland är det mycket lättare att "säga" något genom att skriva den i koden än genom att försöka förklara det högt. Så låt observatören greppa tangentbordet och typ. Sedan kan du byta tillbaka, eller låta observatören hålla körning, beroende på vilket som är mer förnuftigt just då.
  6. 6
    Ta en stund för att fira när du utföra uppgifter och lösa problem. Till exempel, varje gång du får ett test för att passera, ge varandra lite. Om du också high-five varje gång du får ett nytt test för att misslyckas, får du verkligen i spåret av kollaborativ planering och testdriven design.
  7. 7
    Byt roller ofta minst varje halvtimme. Detta håller dig både fullt engagerad, både av dig i samklang med den låga nivå detaljer och helheten. Dessutom, kan köra full blast trötta ut dig, och det är svårt att upprätthålla vaksamhet krävs för observatören roll längre än en halvtimme. Byta roller laddar du.

Tips

  • Var särskilt tillmötesgående. Till exempel när din partner pekar ut ett fel, säger, "Tack." När påpeka ett fel, gör det försiktigt, för att undvika att kränka egon. Fel och korrigera dem är en normal del av planeringen, inte bevis för att någon saknar förmåga. Som observatör, låt föraren skriva färdigt en komplett kodrad innan påpeka ett fel. De flesta människor tycker att det är irriterande att rättas som de skriver, men bra att rättas till när de är färdiga att skriva.
  • Skriv ett enhetstest först, innan du skriver genomförande (om koden är enhet-testbara). Enheten Testet hjälper till att definiera nästa lilla mål på ett sätt som ni båda förstår, eftersom du kan både se koden. Nästa lilla målet blir, "Gör detta test pass." kan vara svårt att lära sig i början, men para ihop med någon som redan är vana vid att det kan lära färdigheten ganska snabbt.
  • Skillnaden mellan okej / dålig parning och underbara ihopkopplingen är helt enkelt denna:. Uppmärksam Titta på skärmen som föraren typerna. När din partner talar, lyssnar. Ät inte spannmål. Kontrollera inte din e-postadress. Kontrollera inte Digg. Låt ingen detalj komma förbi dig. När man är uppmärksam, prata och lyssna, blir du enkelt uppslukad av jobbet, och du anger glada "flow" för parning. Detta är när din produktivitet skjuter i höjden. Om en eller båda av er är mentalt checkar ut, då parningen suger i grunden och du kan lika gärna jobba solo.
    • Om du har en livslång vana att mentalt checkar ut när andra människor pratar med dig, eller alltid multitasking mellan 5 olika saker, prova att lägga 100% av din uppmärksamhet på uppgiften som en en-dagars experiment. Se själv om du gillar det och tycker de resultat du får. Du kanske mentalt kolla flera gånger, bara av gammal vana. Om det händer, kan du para påminna försiktigt du om den aktuella uppgiften varje gång. Komma fokuserad kan vara mycket enklare med ett par än ensam.
  • Sitta vid ett bord där du kan lätt passera tangentbordet mellan dig att byta roller. En vanlig ol rektangulärt bord fungerar bäst (i motsats till konstig, kurvig, "ergonomiska" möbler).
  • Om du är tekniskt übersavvy, prova att använda två tangentbord och två möss. "Växla" mellan förare blir mycket lättare. Detta görs med en apparat som kallas en KVM-switch, som du ansluter till tangentbord och möss till, och köra kablarna till datorn. Switchen är lika enkelt som att vrida en ratt. En andra skärm kan läggas lika lätt, och vissa kan inte stödja en bildskärm (även om "V" står för video) och kan vara perfekt om dina behov är mindre.
  • Bärbara datorer är mindre än idealisk på grund av den lilla storleken och svårt att se skärmen från en vinkel, men du kan fortfarande ihop på en bärbar dator. Ett knep är att ha observatören sitter något bakom föraren snarare än åt sidan.
  • Argumentera inte om heller arkitektoniska frågor eller triviala frågor som hur långt du vill dra in hängslen. Dessa saker bör beslutas innan du para.
  • Den person som vet mindre om systemet eller språk ska göra det mesta av körningen, så att nybörjare förblir engagerade. Du lär dig mer aktivt än passivt.

Varningar

  • Om para en expert med en nybörjare, bör den sakkunnige vara beredd att spela rollen av mentor, annars parningen inte blir harmonisk.