utmaningen med kodåteranvändning (och hur man återanvänder kod effektivt)

konsumenterna kräver smartare, mer anslutna produkter. Denna efterfrågan har lett till en explosiv tillväxt av programvara och anslutning.

mängden inbäddad programvara i produkter växer exponentiellt. Produktfunktionalitet blir mer beroende av programvara och mindre av hårdvara och mekaniska komponenter. Och det händer i alla branscher.

inom flyg och försvar har en Boeing 787 6,5 miljoner kodrader. I fordonsindustrin har en bil 100 miljoner kodrader. Och inom konsumentelektronik har en Android-telefon 12 miljoner kodrader.

men när programvaran växer skapar den både affärs-och tekniska utmaningar. Tillgängliga kvalificerade utvecklare är begränsade. Och när de blir knappa blir de dyrare.

återanvändning av kod kan lösa programvarutillväxtproblemet och här förklarar vi vad som är återanvändning av kod och hur man återanvänder kod effektivt.

Vad Är Kodåteranvändning?

kodåteranvändning är praxis att använda befintlig kod för en ny funktion eller programvara.

men för att återanvända kod måste den koden vara av hög kvalitet. Och det betyder att det ska vara säkert, säkert och pålitligt.

att utveckla programvara som uppfyller dessa krav är en utmaning. Att systematiskt utveckla högkvalitativa återanvändbara programvarukomponenter och ramverk är ännu svårare.

När kan du återanvända kod

återanvända kod är ett bra mål.

i en idealisk miljö skulle en utvecklare kunna komma åt stabila och betrodda kodbibliotek. De skulle då kunna återanvända kod från dessa bibliotek som byggstenar i deras applikation.

så, du kan återanvända kod när det kan vara:

  • enkelt utökat och anpassat för den nya applikationen.
  • portas till olika hårdvara om det behövs.
  • visat sig vara fri från defekter eller problem som påverkar tillförlitligheten, säkerheten eller säkerheten för den nya applikationen.

men miljön är inte alltid idealisk. Och koden uppfyller inte alltid dessa krav. Så att återanvända kod låter ofta mycket lättare än det är.

när återanvändning av kod inte fungerar

återanvändning av kod visar sig ofta vara svårt.

i praktiken slutar utvecklare ofta att bygga om programvara från början. Eller de kan bara återanvända en liten del av befintlig kod i nya projekt.

varför återanvändning av programvara är svårt

återanvändning av programvara är svårt. Detta gäller särskilt för organisationer med ett stort antal produktkomponenter och geografiskt distribuerade utvecklingsteam.

här är tre anledningar till att återanvändning av programvara är svårt.

organisation och skala

när antalet projekt och utvecklare ökar blir det svårare att återanvända programvara. Det är en utmaning att effektivt kommunicera detaljerna och kraven för återanvändning av kod. Och det är svårt att ge adekvat vägledning och feedback om återanvändning av kod.

Administration

när antalet projekt och utvecklare växer är det svårt att dela bibliotek med återanvändbar kod. Det är en utmaning att katalogisera, arkivera och hämta återanvändbara tillgångar på global basis.

plattformar som GitHub kan göra det enklare. Men det tar fortfarande tid och ansträngning att skapa ett användbart och skalbart kodförvar.

politik och psykologi

på organisationsnivå kan kontorspolitik vara ett hinder för återanvändning av programvara. När affärsenheter strävar efter autonomi — eller konkurrerar med varandra — kan de försöka blockera återanvändning av sina tillgångar av andra enheter.

på individnivå kan utvecklare se kodåteranvändning som kvävande deras kreativitet-eller som organisationen saknar förtroende för sina tekniska förmågor. Sådana uppfattningar får vissa utvecklare att motstå ansträngningar för att öka återanvändning av kod.

utmaningar med kodåteranvändning

det finns både operativa och tekniska utmaningar med återanvändning av kod.

operativa utmaningar

att skapa återanvändbar kod kräver en investering av tid och resurser under utvecklingen. Verkligt återanvändbar kod kan återanvändas på nya sätt som skiljer sig väsentligt från kodens ursprungliga designintention.

mer tid

för att stödja planerad återanvändning måste utvecklingsteam spendera ytterligare tid på att skriva dokumentation för sin kod. Och de måste testa det mer noggrant än kod slated för bara ett enda projekt.

detta är en utmaning för utvecklare med snäva tidsfrister. Vissa misslyckas eftersom de är alltför ambitiösa. De investerar för mycket i initiala designinsatser. Andra misslyckas på grund av dålig planering, brist på designflexibilitet eller brist på finansiering.

fler resurser

skapa återanvändbar kod kräver att projektledare planerar ytterligare resurser i förväg.

i början måste projektledare förbinda sig till den tid som behövs för att designa, dokumentera och testa kod, en investering med långsiktiga fördelar. Alternativet är ett kortsiktigt tillvägagångssätt där de fokuserar på att snabbt utforma programvaran för att möta sina kunders tidsfrister och planerar att refactoring koden för att kunna återanvändas vid ett senare tillfälle.

tekniska utmaningar

programvarukvalitet spelar en viktig roll för hur lätt programvara kan återanvändas.

det finns fyra huvuddrag av programvarukvalitet som påverkar återanvändning.

säkerhet

för att återanvändas måste koden vara säker. Du kan säkerställa säker kod på ett antal sätt, inklusive att använda en CWE-lista.

tillförlitlighet

för att återanvändas måste koden vara tillförlitlig. Du kan säkerställa tillförlitlig kod genom att säkerställa tillgänglighet, feltolerans och återvinningsbarhet.

Prestanda Effektivitet

för att återanvändas måste koden vara effektiv. Du kan säkerställa effektivitet genom att förbättra svarstider och övervaka processor, minne och användning.

underhåll

för att återanvändas måste koden vara underhållbar. Ett sätt att säkerställa att koden är underhållbar är att se till att den är kompatibel.

statisk analys gör det enkelt att återanvända kod

du kan använda statisk analys för att återanvända kod enkelt. Det beror på att statisk analys förbättrar den totala kodkvaliteten.

statisk analys identifierar problem i kod tidigt. Det utförs direkt på källkoden. Detta gör det möjligt att utföra kvalitetskontroller i god tid innan koden är klar för integration och funktionstest.

statiska kodanalysverktyg kan hjälpa till att upptäcka vanliga brister i säkerhet, design och programflöde. Och de kan utföra datatyp och variabel funktionskontroller. Dessa verktyg hittar ofta fel som inte lätt upptäcks med andra former av testning.

statiska kodanalysverktyg:

  • automatisera kod recensioner.
  • minska cyklomatisk komplexitet.
  • säkerställa tillförlitlighet och säkerhet.
  • tillämpa kodningsstandarder.
  • förbättra äldre kodbaser.

och det gör det lättare att återanvända kod.

hur man återanvänder kod effektivt

du kan återanvända kod mer effektivt med ett statiskt analysverktyg, som Helix QAC och Klocwork.

lär dig hur Helix QAC förbättrar C-och C++ – kodkvaliteten-även i de mest komplexa kodbaserna.

utforska HELIX QAC

lär dig hur Klocwork förbättrar C, C++, C# och Java — kodkvalitet-även i de mest komplexa kodbaserna.

Utforska Klocwork

Lämna ett svar

Din e-postadress kommer inte publiceras.