Șablon în Java
Modelele de proiectare ajută un codificator să scrie cod curat, eficient și care nu se repetă, cu mai puțin cuplaj sau dependență între unitățile individuale de operare. Ori de câte ori un codificator analizează cerința prezentată de client, atunci modelul de proiectare corespunzător pentru implementarea codului este prima soluție care trebuie să fie îngrijită, la care codul va fi scalat ulterior, se pot încorpora și unele constrângeri suplimentare.
Modelele de design sunt alese întotdeauna în contextul scalabilității și a implementării curate.
Optăm pentru șabloane atunci când ne uităm să le completăm prin anumite implementări, acestea se numesc șabloane.
Și în arena de codificare, folosim aceste paradigme în următoarele tipuri de scenarii de afaceri.
Scenariul 1 -
Trebuie să proiectați o soluție bazată pe web pentru șablon în Java, unde vi se cere să implementați proprietățile caracteristice ale unui vehicul, cum ar fi formula de calcul a vitezei sale, calculul cuplului, etc. Deci, pentru o bicicletă, ar fi diferit de ceea ce ar fi pentru o mașină și dacă vedem din perspectiva scalabilității, atunci adăugăm un șablon de bază care are doar scheletul exterior al acestor metode legate de calcul și atunci tocmai am adăugat variante ale implementărilor din codul nostru, făcând astfel un design flexibil. Văzând acest șablon doar un utilizator ar avea o idee despre funcționalitățile pe care le oferiți și poate aștepta cu nerăbdare doar în clasele conexe.
Scenariul 2 -
Un alt caz poate fi generarea unui șablon comun pentru clasele de baze de date pe care urmează să le apelați în proiectul dvs., puteți utiliza Oracle, MySQL sau DB2 și, probabil, în diferite scenarii de codare așteptați cu nerăbdare să vă conectați cu ele în diferite instanțe de timp, deci în șablon poți alimenta numele de utilizator, parola, obține proprietăți de conexiune, etc.
Un dezvoltator Java știe să obțină acest tip de funcționalitate implementată !! Da, o clasă abstractă este un răspuns corect, sper să știți că ori de câte ori avem scenarii în care entitățile strâns legate trebuie puse într-o soluție, atunci alegem clase abstracte (în alt caz, interfețele ne rezolvă și scopul nostru).
Implementarea șablonului în Java
1. Faceți clasa de bază ca abstractă care încorporează metodele șablon și metodele abstracte.
2. Metodele șabloanelor sunt de natură finală și nu se vor schimba ulterior.
3. Metodele abstracte sunt necesare pentru a fi implementate prin intermediul codului logicii de afaceri din clasele de implementare.
4. Metoda ar putea fi făcută abstract în clasele de copii, dacă nu trebuie pusă în aplicare doar acolo.
5. Grija de manipularea excepțiilor într-un mod adecvat este, de asemenea, un scenariu important.
6. Alegerea corectă asupra a ceea ce trebuie marcat abstract și a ceea ce nu trebuie să fie.
Metodele cu caroserii din clasa de bază sunt făcute să fie de tip final, întrucât nu trebuie să fie suprasolicitate, cum ar fi pentru clasa vehiculului rpm calculul poate fi făcut la fel.
Mai jos aici am definit exemplul bazat pe șablonul java, încorporează exemplul de implementare a acestuia -
public abstract Vehicle
(
String fuelType;
Int countOfSeats;
public abstract double calcSpeed() throws Exception;
public abstract double calcTorque() throws Exception;
public final void templateMethod()
(
Task1();
Task2();
Task3();
)
public Bike extends Vehicle
(
@Override
public abstract double calcSpeed() throws Exception
(
try
(
return distance/time;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
@Override
public abstract double calcTorque() throws Exception
(
try
(
return radialLength * force;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
)
public car extends Vehicle
(
Int doorCount; // door doesn't exist in all vehicles so has been added here
@Override
public abstract double calcSpeed() throws Exception
(
try
(
return distance/time;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
@Override
public abstract double calcTorque() throws Exception
(
try
(
return radialLength * force;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
)
Puteți utiliza eclipse sau alte platforme de compilare online pentru a verifica această implementare folosind propriile dvs. implementări.
Cerințe de sistem înainte de a vă coda
1. De preferat este instalat Java 8.
2. Variabilele de sistem trebuie configurate corespunzător pentru JRE.
3. De asemenea, este necesar un IDE precum eclipsa care verifică automat erorile sintactice.
4. Debugging doar cu IDE.
5. Plug-in-uri pentru analiza proiectării șabloanelor.
6. Instrumente de asociere a diagramei de clasă pentru a cunoaște relația la nivel superior de moștenire între clasele realizate de dvs. în implementarea modelului de design de șablon.
7. Orice ferestre, Linux sau MAC și-ar face sarcina.
Avantajele șabloanelor în Java
- Previne duplicarea codului, deoarece lucrurile generale pot fi implementate doar în clasa abstractă, variațiile necesare pot fi implementate în subclase.
- Modele variabile pot fi implementate în subclase pe baza relației de moștenire a implementării. Acest proces se numește metodă suprasolicitare.
- Modelul principal poate avea metode abstracte și non-abstracte, facilitând implementarea mai ușoară și mai flexibilă.
- Lungimea codului rămâne restricționată.
- Codul apare curat și eficient.
- Ușor de depanat, făcând astfel viața dezvoltatorului ușoară.
Cazuri de utilizare
- Are-o relație implementări.
- Implementări de baze de date.
- Implementarea variantelor vehiculului.
- Colectarea fructelor și implementarea efectelor de vitamine.
- Implementarea metodei fluxurilor de lucru.
Ce altceva poți explora?
Sunteți conștient de conceptele de implementare a interfeței, Java 8, care oferă funcții noi, puteți încerca implementarea interfeței cu clasele derivate menționate mai sus și puteți încerca diferite scenarii de afaceri, în versiunile Java 8 și de mai sus, puteți să treceți peste metode abstracte de interfețe din clasele de implementare, ar trebui să aruncați o privire la documentația prezentată de Oracle pentru aceeași.
De asemenea, ar trebui să explorați alte modele de design, deoarece acestea sunt importante și așteptate de la dezvoltatorii Java experimentați din întreaga industrie.
Articole recomandate
Acesta a fost un ghid pentru șabloane în Java. Aici am discutat Conceptul, Cerința, Utilizarea și Avantajul Șabloanelor în Java. Puteți parcurge și alte articole sugerate pentru a afla mai multe -
- Ce este modelul de design în Java?
- Introducere în JavaScript
- Cum se instalează Selenium
- Ce este Cognos?
- Clasele abstracte în JavaScript
- JRE vs JVM | Top 8 diferențe cu (Infografie)