The Clean Architecture in php


Poor Usage of Database Abstraction



Download 2,26 Mb.
Pdf ko'rish
bet34/179
Sana24.06.2021
Hajmi2,26 Mb.
#100337
1   ...   30   31   32   33   34   35   36   37   ...   179
Bog'liq
The-Clean-Architecture-in-PHP-Kristopher-Wilson

Poor Usage of Database Abstraction
Finally, we get smart and abstract away the data source using the Repository design pattern:


What is Architecture?
11
class
CustomersController
{
public function
usersAction
() {
$repository
=
new
CustomersRepository();
$customers
=
$repository
->
getAll
();
return
[
'customers'
=>
$customers
];
}
}
<
h2
>
Customers
h2
>
<
ul
>
php
foreach
(
$this
->
customers
as
$customer
)
:
?>


  • =
    $customer
    [
    'name'
    ]
    ?>


  • endforeach
    ;
    ?>

    This code is much better than our original example, and even better than our second. We’re
    slowly coalescing to some good application architecture.
    Instead of interfacing directly with the database, we’ve abstracted it away into a Repository
    class. The repository is responsible for understanding our datasource and retrieving and saving
    data for us. Our controller doesn’t have to know anything about where the data comes from,
    so we’ve removed the bad, hard-coded queries from the controller. We could easily refactor
    CustomersRepository
    to get its data from a different source, but wouldn’t have to touch any
    code that uses the repository so long as the
    getAll()
    method’s signature and return result are
    still the same.
    While this is much better architecture, it still suffers some issues:

    Download 2,26 Mb.

    Do'stlaringiz bilan baham:
    1   ...   30   31   32   33   34   35   36   37   ...   179




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
    ma'muriyatiga murojaat qiling

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish