Hirdetés
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- ASUS notebook topic
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Projektor topic
- Kormányok / autós szimulátorok topikja
- Léghűtés topik
- Soundbar, soundplate, hangprojektor
- Milyen billentyűzetet vegyek?
- Gaming notebook topik
Új hozzászólás Aktív témák
-
Drizzt
nagyúr
válasz
axioma
#10244
üzenetére
Alapvetően probléma nincsen vele, de én inkább csinálnék egy másik mátrix típust(Matrix), ami teljesen a ProjMatrix implementációitól. És akkor nem lenne generikus a ProjMatrix interface, a getUnderlying helyett meg lenne egy Matrix getMatrix. És az egyes implementációknak lenne az az implementation detail-je, hogy a belső saját mátrixából hogyan fog mátrixot csinálni, factory-kal, különböző bemenő adatok alapján. Pl.: lenne egy ilyen a Matrix createMatrix(double[][] mtx), illetve valami más értelmes adat. A konstruálás paramétereit mindig az vezényelje, hogy milyen adataid lesznek ahol felhasználod ezt az interface-et.
Működni tökéletesen működni fog amit csináltál, viszont az nem fog nekem tetszeni, hogy a felhasználó kódnak végül mindenképpen tudnia kell a konkrét implementáló osztályokról, mert van olyan method az interface-ben, ami implementáció specifikus értéket vár/ad vissza. Így nem tudod pl.: ServiceLoaderrel betölteni az implementációkat, hanem minden új implementációnál újra kell majd fordítanod a kódot. Ami nem feltétlenül probléma, de egy megfontolandó dolog.
Ami sérül ebben az interface-ben, az a SOLID design elvekben a "dependency inversion principle". Nem jó practice, ha az interface felhasználója bármilyen specifikus dolgot kell tudjon az implementációból(esetedben az M típust).
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Villanyszerelés
- AMD Navi Radeon™ RX 9xxx sorozat
- PlayStation 5
- Battlefield 6
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Elemlámpa, zseblámpa
- ASUS notebook topic
- BMW topik
- Brogyi: CTEK akkumulátor töltő és másolatai
- További aktív témák...
- Akko, Gateron, Haimu x Geon kapcsolók
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- Samsung Galaxy Tab S10 Ultra 256 GB újszerű állapot
- GamerPC RX 9070/7700X/32GB DDR5/1TB M2
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- BESZÁMÍTÁS! Gigabyte B760M i5 14600K 16GB DDR4 512GB SSD RX 9060 XT 16GB Asus A31 PLUS TG ARGB 650W
- Bomba ár! Lenovo ThinkPad X13 G1- i7-10610U I 16GB I 512SSD I 13,3" FHD Touch I Cam I W11 I Gari!
- Telefon felvásárlás!! Samsung Galaxy A22/Samsung Galaxy A23/Samsung Galaxy A25/Samsung Galaxy A05s
- HIBÁTLAN iPhone 14 Pro 256GB Space Black -1 ÉV GARANCIA -Kártyafüggetlen, MS3235
- 35" ASUS ROG Swift PG35VQ curved GAMER monitor
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



