Bedste svar
Grundlæggende er kedelpladekode en ramme for dit projekt.
Lad os sige, at du hurtigt skal prototype en produkt til kunden inden for bestemt teknologi. Uden kedelplade skal du starte fra bunden eller en eller anden CLI-genereret skabelon og ikke altid matche din stil med at gøre ting.
Forestil dig nu, at du har et rent lille projekt, som du har lavet for en anden kunde for et stykke tid siden, der stort set kun har brug for nogle ændringer, fjernelse af nogle linjer, tilføjelse af nogle andre, og det er dybest set klar til at præsentere for din kunde. Pænt, hva?
At have en kogeplade er som det andet scenario. Når du ved, at der vil være nogle projekter, der kræver brug af bestemt teknologi / ramme / bibliotek, kan du lave en plade, en kedelplade. Det vil have dine yndlingsfunktioner som form og farve (og din kodestil også!), Så du nemt kan fokusere på at tilføje ting til det og ikke på at ændre det hver gang du vil starte et nyt projekt.
For at uddybe et eksempel, lad os antage, at du ofte bliver bedt om at oprette en applikation i Angular2 + eller React, der har sidebjælke med forhåndsvisning af nogle data og fast header med menukontrol på den. I stedet for at oprette et tomt projekt hver gang en ny kunde når dig, kan du bare bruge en tom kedelplade til bare at fokusere uden at tilføje passende menuindgange, previews og hovedindhold.
For at opsummere dette, når du ved du har mange lignende projekter i fremtiden, en kedelplade er en massiv tidsbesparelse 🙂
Svar
Elazar havde nogle gode punkter (især undgå kontrollerede undtagelser), men jeg “Jeg tilføjer mine egne anbefalinger på grund af A2A 🙂
Du behøver ikke nødvendigvis Guava for at undgå markerede undtagelser. Du kan bare kaste undtagelser for runtime i stedet. Det er bare når du har brug for kode, der allerede kaster disse afkrydsede undtagelser, der er problemet. Hvis du vil, kan du eksplicit fange dem og kaste undtagelser fra runtime i stedet.
Polymorfisme er en måde at undgå at skrive en metode til at håndtere hver afledt type af den samme underklasse.
Refleksion hjælper dig med at genbruge kode også. Måske vil du være i stand til at droppe en klasse i et bibliotek, og det genkendes som en “ny komponent”, som din software kan bruge. Du kan registrere og bruge det via refleksion i stedet for at skulle tilslutte det sammen med de andre komponenter via eksplicit gentagende kode.
Frameworks er også en måde at undgå nogle kedelplader på. Nogle gange opmuntrer de kogepladen, men andre gange gør de ting for dig. Du kan prøve forårsnoteringer for at undgå eksplicit at videregive ting.
Hvorfor ser det ud til, at alle andre Java-relaterede svar, jeg skriver, indeholder et link til denne artikel ? Under alle omstændigheder kan refactoring på den måde hjælpe dig med at reducere kedelpladen med små, meget genanvendelige funktioner.
Også fra Wikipedias artikel om Kedelpladekode :
“Behovet for kedelplade kan reduceres gennem mekanismer på højt niveau såsom metaprogrammering (som har computeren automatisk til at skrive den nødvendige kedeltekst), konvention over konfiguration (som giver gode standardværdier, hvilket reducerer behovet for at specificere programoplysninger i hvert projekt) og model -kørt teknik (som bruger modeller og model-til-kodegeneratorer, hvilket eliminerer behovet for kedelplades manuelle kode). “