Autor | Zpráva | ||
---|---|---|---|
abcOpy Profil * |
#1 · Zasláno: 16. 6. 2010, 19:40:49
Budu vyvíjet aplikaci na správu uživatelských účtů. Tzn. admin se přihlásí a spravuje tisíce uživatelských účtů uložených např. v mysql. Doposud jsem nikdy frameworky nepoužíval. Jaký je váš názor, pro/proti použití frameworku(např. nette) pro takovou aplikaci?
|
||
denCo Profil |
#2 · Zasláno: 16. 6. 2010, 20:02:30
Podľa mňa to je čisto na tebe. Ja osobne nikdy nepoužívam framework, radšej si to sám naprogramujem a mám nad kódom plnú kontrolu.
|
||
abcOpy Profil * |
#3 · Zasláno: 16. 6. 2010, 20:06:49
Takový je přesně můj názor, ale vede mě k pochybám třeba nette fw, že má ošetřené prakticky všechno proti různým druhům útoků, ale zase mě dost odrazuje, že do toho přímo nevidím a může tam být nějaký bug apod.
|
||
Lamicz Profil |
#4 · Zasláno: 16. 6. 2010, 20:07:04
IMHO jde i o to, jak je projekt rozsáhlý, co má vše "umět". Jestli je to web dělaný ve stylu naprogramuj a zapomeň, je FW zbytečný. Jestli se ale předpokládá budoucí rozšiřování, framework do toho vnáší jistou unifikaci, což se hlavně hodí pro práci v týmu.
|
||
AM_ Profil |
#5 · Zasláno: 16. 6. 2010, 20:55:39
abcOpy:
„ale zase mě dost odrazuje, že do toho přímo nevidím a může tam být nějaký bug apod“ K tomuto bych vznesl protiargument - omylný je každý programátor, a můj názor je, že člověk ve svém vlastním kódu naseká mnohem víc a hloupějších chyb, než je v nějakém relativně slušně napsaném frameworku, o který se třeba stará celá komunita. Frameworky jsou podle mě výborná věc, ale aby to mělo smysl, chce to umět dobře objektové programování, mít schopnost správně dekomponovat problém a hlavně se s frameworkem naučit - což rozhodně není ke škodě, ale pokud by to bylo jen kvůli jedné aplikaci (správa uživatelských účtů není zas nic tak složitého), asi to nemá moc smyslu. |
||
abcOpy Profil * |
#6 · Zasláno: 16. 6. 2010, 21:18:29
AM:
„správa uživatelských účtů není zas nic tak složitého“ Ta aplikace nebude zas tak jednoduchá, nebude to jen obyčejné fádní spravování uživatelů. Nicméně já budu jediný vývojář a rozšiřovat se to do budoucna bude. Ale počítám s tím že si vytvořím čistý objektový návrh což mě ještě víc přivádí k nerozhodnosti použití/nepoužití frameworku. Docela by mě zajímalo kolik z vás používá na takové "kritické" aplikace frameworky a kolik ne? |
||
AM_ Profil |
#7 · Zasláno: 16. 6. 2010, 21:55:07
v čem je ta aplikace "kritická"? pokud ale bude složitější, rozhodně bych framework nasadil, dělal jsem jeden složitý software v PHP bez frameworku a doteď toho lituji, s frameworkem by to bývalo mnohem přehlednější s 1/10 práce
|
||
mckay Profil |
#8 · Zasláno: 16. 6. 2010, 22:25:15
abcOpy:
Ačkoliv sám zatím používám jen svůj "rádoby" framework, jsem pro to, aby jsi použil nějaký již hotový, je to bezesporu dobrá věc - ošetřené téměř vše, pravděpodobně dobrá podpora od ostatních uživatelů i dokumentace a hlavně je to povětšinou kód prověřený multi-uživatelskou praxí :). |
||
radvis Profil * |
#9 · Zasláno: 16. 6. 2010, 23:18:28
Já bych byl pro framework:)
|
||
dRaGen Profil |
#10 · Zasláno: 17. 6. 2010, 02:04:26
I když by to měla bejt jednoduchá aplikace (neberu skript jako aplikaci - tedy jednorázovou činnost) ale více stránek, nějakej ten formulář tak rozhodně doporučuji nasadit framework. Už hlediska spravovatelnosti (má to logy, když se stane chyba), je to bezpečné (jeden blbě zapomenutej htmlspecialchar dělá divy) a v poslední řadě možnost přenositelnosti do budoucna + máš možnost využít pluginy a málem bych zapoměl na šablonovací systém
|
||
__construct Profil |
#11 · Zasláno: 17. 6. 2010, 07:48:49
abcOpy:
„Ale počítám s tím že si vytvořím čistý objektový návrh“ Toto sa Ti pravdepodobne nepodarí - to by si musel mať viac skúseností :-) A aby som nebol OT - osobne odporúčam používať framework, práve kvôli mnohým veciam ktoré tu už boli spomínané. Tvrdiť „zase mě dost odrazuje, že do toho přímo nevidím a může tam být nějaký bug“ je dosť odvážne - staviaš sa tým do pozície lepšieho programátora ako sú autori frameworku. Pokiaľ sa ale predsa len rozhodneš robiť si to po svojom, tak z vlastnej skúsenosti odporúčam všetko si dobre komentovať. |
||
abcOpy Profil * |
#12 · Zasláno: 17. 6. 2010, 15:20:21
Něco jsem početl o Nette a vypadá to že bych asi využil jen práci s formuláři, který vypadá docela dobře. Nevíte někdo jestli je potřeba data formuláře ještě nějak slashovat před vložením do db nebo jestli to všechno udělá to formulářové rozhraní Nette fw?
|
||
Alphard Profil |
#13 · Zasláno: 17. 6. 2010, 15:41:13
abcOpy:
Nette je vhodné kombinovat třeba s dibi. Ale jestli vážně použijete jen formuláře, lze je používat samostatně (http://doc.nette.org/cs/nette-forms). Hlavní výhoda frameworku je v tom, že vám usnadní návrh databáze, tj. v případě Nette MVP struktura. Samozřejmě se to ale nejdřív musíte naučit a přistoupit na filozofii fw, který si vyberete. |
||
Majkl578 Profil |
#14 · Zasláno: 17. 6. 2010, 15:56:13
abcOpy:
Použití frameworku má mnoho výhod, které rozhodně převažují nad nevýhodami. Já už přes rok pracuji s Nette Frameworkem a troufám si říct, že svou kvalitní implementací MVP návrhu značně usnadňuje vývoj. Když přidám aktivní českou komunitu (fórum, jabber - realtime řešení problému), brzy novou dokumentaci (momentálně ji píšeme), má začátečník (pozor, ne s objektovým programováním, ale s frameworkem!) otevřené dveře. Alphard: „Nette je vhodné kombinovat třeba s dibi.“ Asi jedinou výhodou použití dibi v Nette je profiler v Debug Baru. Jinak je naprosto jedno co člověk použije, klidně čisté MySQLi. Já třeba aktuálně používám Doctrine 2. radvis: Bohužel. |
||
AM_ Profil |
#15 · Zasláno: 17. 6. 2010, 16:03:06 · Upravil/a: AM_
abcOpy:
„Nevíte někdo jestli je potřeba data formuláře ještě nějak slashovat před vložením do db nebo jestli to všechno udělá to formulářové rozhraní Nette fw?“ Oescapování dat je otázka databázové vrstvy a nikoli formuláře. Takže Nette\Forms se o escapování pro databázi nestará (každé datové úložiště může vyžadovat jiné escapování). Majkl578: „Asi jedinou výhodou použití dibi v Nette je profiler v Debug Baru.“ Mě se docela dost líbí automatické "escapování", a to jak pro různé verze SQL (použije se jednotný syntax dibi a driver pro danou DB si to už oescapuje), tak i rozvinutí některých složitějších struktur (např. %v expanduje asociativní pole na jinak těžkopádně sestavitelné (sloupec,sloupec,sloupec) VALUES (hodnota,hodnota,hodnota) //jinak celkově k Dibi: přijde mi v něčem dost nedotažená, narozdíl od robustního nette je to spíše opravdu taková intimní vložka mezi programátora a nepohodlnou syntaxi SQL, ale pro jednoduché věci je skvělá a jednoduchá a pro složitější se vyplatí použít nějaký propracovaný ORM. |
||
Majkl578 Profil |
#16 · Zasláno: 17. 6. 2010, 16:07:51
[#15] AM:
To je ovšem argument pro použití dibi, nikoliv dibi v Nette. :) Doctrine to dělá taky, troufnu si říct, že dobrý DBAL by to uměl měl. |
||
abcOpy Profil * |
#17 · Zasláno: 17. 6. 2010, 16:42:18
Mě se syntaxe SQL líbí a nemám moc rád různé vychytávky typu $db->select(neco)->from(neco).
|
||
Alphard Profil |
#18 · Zasláno: 17. 6. 2010, 18:07:51
abcOpy:
To se mi také nelíbí, ale knihovna může ulehčit např. escapování vkládaných hodnot. $vysledek = dibi::fetchAll("select [name] from [jmeno_tabulky] where [id] = %d", $_GET['id']); Když jste ve vývojářském módu, tak se vám posílají vygenerované dotazy, čas, explain, případně chyby, aniž byste musel dopisovat mysql_error() a cokoliv podobného. |
||
abcOpy Profil * |
#19 · Zasláno: 17. 6. 2010, 20:52:46
Dá se dibi provozovat v čistě objektovém přístupu(potřebuju několik připojení k různým databázím, ale jen v části aplikace)? V těch manuálech jsem viděl jen přístup přes třídu(dibi::) nebo kombinaci.
|
||
Alphard Profil |
#20 · Zasláno: 17. 6. 2010, 21:00:08
Jde to
$connection = new DibiConnection($options); $connection->query('TRUNCATE `table`'); |
||
abcOpy Profil * |
#21 · Zasláno: 17. 6. 2010, 21:02:47
A co chybové výstupy? Kdybych chtěl zjistit zda nedošlo v posledním dotazu k chybě, příp. vypsat číslo a text chyby.
|
||
Alphard Profil |
#22 · Zasláno: 17. 6. 2010, 21:16:46
Dobrý pomocník je http://dibiphp.com/cs/profiler-a-propojeni-na-firebug.
Více informací na http://doc.nette.org/cs/nette-debug-firebug. |
||
abcOpy Profil * |
#23 · Zasláno: 17. 6. 2010, 21:36:56
To jsem četl, mě jde ale o chybové zprávy vypisované přímo v php aplikaci přímo uživatelům ty aplikace.
|
||
AM_ Profil |
#24 · Zasláno: 17. 6. 2010, 23:24:02
abcOpy:
„Mě se syntaxe SQL líbí a nemám moc rád různé vychytávky typu $db->select(neco)->from(neco).“ Tohle je jen "syntactic sugar" - někdo to má rád a používá, žádná technická výhoda v tom není. Co se týče syntaxe tak je hezky human-readable, ale blbě se tvoří strojově (hlavně složitější dotazy), což dibi částečně usnadňuje. [#16] Majkl578 jasně, s tím souhlasím - jak jsem říkal, dibi je jednoduchá a pouze se základními vychytávkami, které samozřejmě větší DBAL mají. |
||
Časová prodleva: 15 let
|
0