MVC
Z Wikipedii
MVC (ang. Model-View-Controller) - Model-Widok-Kontroler to wzorzec projektowy w informatyce, którego głównym założeniem jest wyodrębnienie trzech podstawowych komponentów aplikacji:
w taki sposób, aby modyfikacje jednego komponentu minimalnie wpływały na pozostałe. Czasem, w odniesieniu do MVC stosuje się nazwę "modelu trójwarstwowego".
[edytuj] MVC i strony WWW
Wzorzec Model-Widok-Kontroler jest często używany we frameworkach do szybkiego tworzenia aplikacji internetowych. Istnieje kilkanaście dużych frameworków PHP stosujących ten wzorzec jak np. Code Igniter, Kohana, CakePHP, Zend Framework, Symfony, ale też zupełnie prostych i "lekkich" jak np. TinyMVC - bardzo pomocny w zrozumieniu idei MVC. W Ruby jest napisany bardzo popularny Ruby on Rails, w Perlu Catalyst, a w Pythonie TurboGears, Pylons, Django (ten ostatni stosuje MTV, ang. Model-Template-View). Popularność wzorca MVC wynika z jego przydatności.
Frameworki MVC do operacji na bazach danych używają modeli i mapowania relacyjno-obiektowego, ORM (ang. object-relationship mapping) - w Railsach jest to ActiveRecord, w Catalyscie np. DBIx::Class, a framework Spring w Javie używa Hibernate. Zwykle jest też możliwe użycie baz danych przez bezpośrednie zapytania SQL. Użycie modeli upraszcza typowe operacje - wyświetlanie ze stronicowaniem, edycję danych, a także uniezależnia od konkretnego typu bazy danych.
Właściwy kod programu zwykle jest umieszczany w kontrolerze, a przetworzone dane przekazywane są do odpowiedniego widoku - tu przy pomocy bibliotek szablonów (Smarty, Template Toolkit czy też JSP w przypadku Springa) generowany jest HTML, inny rodzaj widoku może generować PDF albo XML.
Wspólną cechą wielu webowych frameworków MVC jest narzucanie pewnych praktyk programistycznych - samo użycie wzorca MVC jest tego przejawem, zwykle też narzuca się pewną konwencję nazw pól w bazie danych, strukturę katalogów i plików w projekcie, konwencję nazw klas, szablonów. Dzięki temu można uniknąć żmudnej konfiguracji każdego aspektu takiej aplikacji (choć zwykle można te konwencje zmienić), a powstające projekty są spójne i łatwiejsze do zrozumienia przez nowe osoby.
Praktycznie każda aplikacja WWW korzysta z baz danych - operacje na bazach stanowią modele danych. Szablony HTML odpowiedzialne za wygląd i wyświetlanie danych są częścią widoków (np. Smarty). Kod odpowiedzialny za wykonanie określonych operacji (spinający wszystko razem) tworzy sterowniki.
| Odkryto kolejne groby w Spalonym Mieście |
|
Archeolodzy pracujący w pozostałościach Spalonego Miasta sprzed ponad 5000 lat w południowo-wschodnim Iranie odkryli kolejne starożytne groby - donosi serwis internetowy Press TV.
|
| Mamuty zabiła "diamentowa" kometa? |
|
Na terenie Ameryki Północnej odkryto ślady mikroskopijnych diamentów w warstwach archeologicznych sprzed 13 tys. lat. Zdaniem naukowców, jest to świadectwo uderzenia w Ziemię ciała niebieskiego. Wyniki badań opublikowano na łamach tygodnika "Science".
|
| Naukowcy o dobroczynności kobiet i mężczyzn |
|
Komu dałbyś pieniądze: osobie w potrzebie z najbliższego otoczenia czy z innego kraju? Okazuje się, że jeśli jesteś mężczyzną, chętniej wspomożesz kogoś, kto jest bliżej, o ile w ogóle.
|
| Usto-mysz dla sparaliżowanych |
|
Usto-mysz, nowoczesny interfejs multimedialny, może pomóc osobom o dużym stopniu niepełnosprawności oraz sparaliżowanym w korzystaniu z komputera. Tym samym ułatwi im kontakt z otoczeniem. Autorami usto-myszy są prof. dr hab. inż Andrzej Czyżewski oraz inż. Piotr Dalka z Katedry Systemów Multimedialnych Politechniki Gdańskiej.
|
| Kopalnie zarobią na ziarenkach węgla? |
|
7 mln zł rocznie zarobi dodatkowo kopalnia "Borynia" dzięki innowacyjnej technologii, pozwalającej na odzyskanie i sprzedaż powstających podczas wzbogacania węgla jego mikroskopijnych ziarenek, pojedynczo niewidocznych gołym okiem.
|