Adresarova struktura preco prave takto?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
David Ďurika
Člen | 328
+
0
-

Zdravim,

mam otazku: preco sa puuziva nasledovana struktura?

<?php

app/
    |- FooModul
        |- presenters
            |- ArticlePresenter.php
        |- templates
            |- Article
                |- default.latte
                |- list.latte
?>

a nie napr tato:

<?php
app/
    |- FooModul
        |- Article
            |- ArticlePresenter.php
            |- default.latte
            |- list.latte
?>

pride mi to prehladnejsie a praktickejsie… v praxy (aspon u mna) sa dokazalo ze najcastejsie editujem konkretny presenter a jeho latte-cka a nie vsetky latte-cka … s toho mi vypliva ze ta druha stromova struktura ja vyhovujucejsia…

viem niekto povie ze pre koderov su tie latte-cka zvlast, ale predsa stromova struktura ‚FooModul/template‘ zlozky v prvom priklade je taka ista ako stromova struktura FooModul/ dokonca o jedno vnorenie menej… plust v kazdom FooModul/ podpriecinku je *Presener.php ale to kodera nemusi zaujimat…

potom este niekto moze namietat ze je to tam lebo MVC ale MVC je navrhovy vzor a nezalezi mu na adresarovej strukture…

tak preco to je prave takto?

naozaj ma to zaujima a rad by som pocul vas nazor, nieje to pokus o trollovanie ani nic podobne!

Editoval achtan (23. 9. 2013 18:34)

Filip Procházka
Moderator | 4668
+
0
-

Myslím si, že první způsob vytváří pocitově výraznější oddělení. Tvůj návrh se mi ale líbí daleko více.

Jen bych ho možná trochu upravil.

app/
    |- FrontModule/
        |- Article/
            |- ArticlePresenter.php
            |- CreateArticleForm.php
            |- view/
                |- default.latte
                |- list.latte

Popřípadě když mám komponenty složitější

app/
    |- FrontModule/
        |- Article/
            |- ArticlePresenter.php
            |- CreateArticle/
                |- CreateArticleForm.php
                |- CreateArticleControl.php
                |- view/
                    |- default.latte
            |- view/
                |- default.latte
                |- list.latte

Asi si to na nějakém projektu zkusím :)

Majkl578
Moderator | 1364
+
0
-

Hlavní myšlenka byla IMHO co nejvíce oddělit šablony od presenterů, kvůli oddělení zodpovědnosti (programátor/kodér). Osobně třeba podsložku presenters vůbec nepoužívám.

Grelek
Člen | 233
+
0
-

Zrovna jsem nad adresářovou strukturou přemýšlel a spojení tvé myšlenky a HosipLana mi přijde výborné. Asi to taky zkusím.

Tomáš Jablonický
Člen | 115
+
0
-

Filip Procházka napsal(a):

A co kdyby byl Article samotný modul co obsahuje jak Fronend tak i Backend presentery?

Šaman
Člen | 2666
+
0
-

Taky se mi víc líbí šablony ve stejném adresáři jako příslušný presenter/komponenta. Na jednom velkém projektu jsme si to upravili a bylo to dost návykové.
Kdybych nedělal každou chvíli na jiném projektu jiného zákazníka a do toho ještě neučil, tak už bych to používal natrvalo. Takhle jsou pro mě všechny vychytávky nepoužitelné, protože se musím přizpůsobit a k tomu se nejlépe hodí čistý sandbox a Nette konvence.

David Ďurika
Člen | 328
+
0
-

@Šaman co takto zmenit konvenciu ?

Šaman
Člen | 2666
+
0
-

Jj, to by bylo fajn. Jen předpokládám, že David k tomu nějaký důvod má a nebude to chtít jen tak měnit.

Filip Procházka
Moderator | 4668
+
0
-

jablon napsal(a):

A co kdyby byl Article samotný modul co obsahuje jak Fronend tak i Backend presentery?

Mně osobně se to nelíbí, protože na backend nepoužívám presentery. Ale tak.. možná ;)

enumag
Člen | 2118
+
0
-

@Filip Procházka: Moc rád bych od tebe viděl článek jak udělat backend pomocí komponent. :-P Mám to přes presentery ale už jsem s tím párkrát narazil, komponenty by byly lepší.

David Ďurika
Člen | 328
+
0
-

@enumag @Filip Procházka ja tiez