Hirdetés
Új hozzászólás Aktív témák
-
Peter Kiss
őstag
Hát, ezt elég hosszan lehetne sorolni, miként valósítható meg.
Valószínűleg neked a DAO fogalmával kellene megismerkedned, aztán ilyen objektumokon megvalósítani az adatelérést, persze olyan módon, hogy az alkalmazás egy DAO-t sem lát csak egy interface-t.
interface UserDao() {
function GetUserById($id);
function GetByMailAddress($mailAddress);
function GetAll();
function AddUser(User $user)
/* ... */
}
Aztán ezt implementálni egy osztállyal, aminek van egy függősége a PDO-ra, ha SQL-t szeretnél mögé tenni. Nyilván, ekkor is SQL típus specifikus lesz a DAO-d. Az interface-t nyilván implementálhatod úgyis, hogy az adatok memóriában vannak pl. egy tömbben, így elég könnyen lehet (unit) tesztelni, mert nem fügsz gyakorlatilag semmitől, ismertek, stabilak az adatok.
Ha ez átjön, hogyan tud működni, akkor léphetsz tovább, például az is megoldható, hogy leírod az adott SQL típust (speciális karakterek, sémákat használ-e, speciális műveletek, stb) egy abstract "izén" (abstract class-t kell elképzelni egy jól felépített alap logikával [interface-t ebből is érdemes kreálni], majd pl. ebből lehet származtatni MySqlProvider és hasonló megnevezésű dolgokat.) keresztül, majd ezt felhasználva dinamikus építed meg a lekérdezéseket, de ez nem 2 perc alatt hozható össze.
Új hozzászólás Aktív témák
- Apple MacBook
- BestBuy ruhás topik
- Xiaomi 14T - nem baj, hogy nem Pro
- BestBuy topik
- World of Tanks - MMO
- Megbüntették, ezért feloszlatná az EU-t Elon Musk
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Xbox Series X|S
- SörcsaPH!
- További aktív témák...
- Gamer PC-Számítógép! Csere-Beszámítás! R7 2700X / 16GB DDR4 / RTX 3060 / 256SSD + 1TB HDD
- ÚJ! Logitech Astro A50 Gen. 4 vezeték nélküli Gamer fejhallgató + Bases Station!
- Samsung Galaxy Watch 7 40mm LTE ( esim ) SM-L305 okosóra - dobozában!
- Precision 7680 16" FHD+ IPS i7-13850HX RTX 2000 Ada 32GB 1TB NVMe IR kam gar
- Nothing Phone 3 A024 12GB / 256GB Black (Egyszer beüzemelt)
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


