DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > Web aplikacije, web servisi i software
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

Web aplikacije, web servisi i software Frameworks, web servisi, programi, plugin-ovi, ekstenzije korisni za razvoj web sajtova. Sponzor: vivvo

Odgovori
 
Alati teme Način prikaza
Staro 29. 02. 2008.   #1
mangia
Pukovnik u penziji
Grand Master
 
Datum učlanjenja: 11.10.2006
Lokacija: Banjaluka, BiH
Poruke: 941
Hvala: 209
585 "Hvala" u 137 poruka
mangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoro
Pošaljite poruku preko MSN za mangia Pošaljite poruku preko Skype™ za mangia
Default Organizacija modula

Dakle drage kolege interesuje me na koji nacin organizujete razne module koje napisete i na koji nacin ih ukljucujete u vase web aplikacije ...
__________________
mangiaphoto | BLOGERAJBLOG | ServerAdminBlog
mangia je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #2
Ilija Studen
Direktor Kombinata
Invented the damn thing
 
Avatar Ilija Studen
 
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
Ilija Studen će postati "faca" uskoroIlija Studen će postati "faca" uskoro
Default

Kako organizujemo kod unutar samih modula ili?

PS: 100% reusable moduli koje samo "sipaš i ne misliš" su čista utopija.
Ilija Studen je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #3
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

moje shvatanje stvari je da su biblioteke klasa/funkcija ono sto treba da se samo kopira izmedju projekata, a da su moduli delovi aplikacija koji su specijalizovani za neki task u toj konkretnoj aplikaciji. Samo moduli koji rade iskljucivo sa sopstvenim podacima mogu da budu 100% reusable, cim imas neke zajednicke strukture podataka koje se dele medju modulima (kategorije, usere, itd..) tu stvari pocinju da se komplikuju do te mere da je lakse prepraviti modul za svaki novi projekat, nego ga pisati da bude 100% reusable..
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #4
cvele
Banned
Knowledge base
 
Avatar cvele
 
Datum učlanjenja: 01.07.2005
Poruke: 1.598
Hvala: 206
140 "Hvala" u 89 poruka
cvele ima spektakularnu aurucvele ima spektakularnu auru
Default

ivanhoe, mislim da gresis

Ako makar malo radis prateci neke osnovne ideje mvc koncepta pisanje reusable "modula" je peace of cake. Jednostavno Apstrakcija > all

PS.
PEAR je gomila reusable modula koji zavise od drugih modula, nevidim da posoji neki problem
cvele je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #5
mangia
Pukovnik u penziji
Grand Master
 
Datum učlanjenja: 11.10.2006
Lokacija: Banjaluka, BiH
Poruke: 941
Hvala: 209
585 "Hvala" u 137 poruka
mangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoromangia će postati "faca" uskoro
Pošaljite poruku preko MSN za mangia Pošaljite poruku preko Skype™ za mangia
Default

@Ilija

Znam da nema 'ljeba bez motike ali postoji dosta stvari koje mogu biti identicne od projekta do projekta (validacija datuma, IP adrese, MAC adrese, email-a itd. )

Recimo da pravite web aplikaciju i cijenu da odredjuju moduli koji su ugradjeni u nju (tipa modul za to i to kosta 100$)

Svidja mi se sistem organizacije kod WP-a pa cu malo da zabijem nos...
__________________
mangiaphoto | BLOGERAJBLOG | ServerAdminBlog
mangia je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #6
kodi
133t
Master
 
Avatar kodi
 
Datum učlanjenja: 08.01.2006
Lokacija: Beograd
Poruke: 714
Hvala: 16
37 "Hvala" u 28 poruka
kodi is on a distinguished road
Pošaljite ICQ poruku za kodi
Default

sve zavisi sta je po vama "modul"

nekome je modul kad doda nesto sitno, recimo validaciju email adrese, a nekome je ceo sajt modularan.. recimo /blog/ je jedan ceo modul /gallery/ je drugi i oni apsolutno nemaju pojma jedni o drugom, svako ima svoj controller, view, i modele a koriste zajednicke core klase, recimo klasu za pristup bazi...

ja stvari organizujem po zendovom modelu:
http://framework.zend.com/manual/en/...nventions.html

evo jedan primer
Citat:
Class names may only contain alphanumeric characters.
Numbers are permitted in class names but are discouraged.
Underscores are only permitted in place of the path separator --
the filename "Zend/Db/Table.php" must map to the class name "Zend_Db_Table".
s tim sto moj autolader ima i mogucnost izuzetka, tj postoji array class_index i ako se u njemu nadje ime klase prvo se gleda tamo a ne u standardnom dir-u.
__________________

Poslednja izmena od kodi : 29. 02. 2008. u 19:01.
kodi je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #7
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

Citat:
Originalno napisao cvele Pogledajte poruku
PEAR je gomila reusable modula koji zavise od drugih modula, nevidim da posoji neki problem
pa ja bih rekao da je PEAR gomila klasa ili biblioteka klasa, to sam i pokusavao da kazem, ja to ne bih nazvao modulima... po meni su moduli delovi aplikacije, tipa news, blog, bla, bla... nesto sto glavni kontroler includuje i pozove odgovarajucu metodu, a oni dalje umeju da prihvate input, prikazu output i sl.. znaci jedna zaokruzena i samostalna celina.... IMHO u MVC arhitekturi modul treba da ima sva 3 leyera, ili bar da ume da koristi view i model od glavne aplikacije... inace je to obicna biblioteka cije funkcije pozivas...
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #8
Ilija Studen
Direktor Kombinata
Invented the damn thing
 
Avatar Ilija Studen
 
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
Ilija Studen će postati "faca" uskoroIlija Studen će postati "faca" uskoro
Default

PEAR i Zend Framework su biblioteka klasa. Kao što su Kodi i Ivan već rekli, modul je više kao mini aplikacija unutar same aplikacije.

Kada smo dizajnirali activeCollab 1.0 cilj je bio da imamo u potpunosti modularnu platformu gde korisnici neće morati nužno da se oslanjaju samo na nas za razvoj već će moći da šire sistem i kroje ga kako njima odgovara.

Na kraju smo završili sa sistemom gde je svaki modul mala MVC aplikacija. Iako izolovani, moduli mogu da dele dele neke resurse (helpere na primer), a međusobno komuniciraju kroz evente. Na primer, kada activeCollab slaže glavni meni samo triggeruje on_build_menu event. Moduli "slušaju" event i naslažu opcije koje se kasnije prikazuju.

Sistem je jako fleksibilan i radi prilično lepo, ali ima par mana - kompleksnost, smanjena brzina izvršavanja, zahteva dosta discipline...

Modularna arhitektura za activeCollab je upalila jer MI kontrolišemo razvoj. Kada ti dođe klijent koji izvoljeva i ima razne fix ideje možeš samo da gledaš kako se tvoj "prelepo dizajniran modularan sistem" raspada jer moraš da ga krpiš i hakuješ kako bi napravio šta klijent hoće.

PS: Attachovao sam kako izgleda struktura jednog activeCollab modula. Sistem isporučujemo sa 10 modula u Corporate i 6 u Small Biz verziji.
Priloženi thumbnailovi
Kliknite na sliku za uvećanu verziju

Naziv:	discussions.jpg
Pregleda:	1031
Veličina:	14,4 KB
ID:	535  

Poslednja izmena od Ilija Studen : 29. 02. 2008. u 20:07.
Ilija Studen je offline   Odgovorite uz citat
Staro 29. 02. 2008.   #9
kodi
133t
Master
 
Avatar kodi
 
Datum učlanjenja: 08.01.2006
Lokacija: Beograd
Poruke: 714
Hvala: 16
37 "Hvala" u 28 poruka
kodi is on a distinguished road
Pošaljite ICQ poruku za kodi
Default

Citat:
Originalno napisao Ilija Studen Pogledajte poruku
Sistem je jako fleksibilan i radi prilično lepo, ali ima par mana - kompleksnost, smanjena brzina izvršavanja, zahteva dosta discipline...
u vezi kompleksnosti i performansi:

Istina je da covek moze da se zanese, i da u ovakvom vidu razvoja previdi neke stvari, ili jednostavno previshe zakomplikuje stvar koja je u sustini prosta.
Po meni, recept za uspeh je da stvarima koje obavljaju najnize funkcije (front kontroler, autentifikacija, registrovanje modela, mapiranje url-ova, db layer) posveti najvise paznje i taj deo se jesdnostavno mora DOBRO osmisliti, jer ti delovi aplikacije trpe najvise load-a, pa obicno odatle i poticu problemi.

Obicno ljudi iz najbolje namere previse zakomplikuju stvar, pa se od trenutka kad neko ukuca app.com/news/ do momenta kada se izrenderuje sadrzaj desi:
-par upita u bazu
-par upita dali fajl postoji
-par provera dali klasa postoji
-par provera dali metoda postoji
+ autentifikacija, provera nivoa pristupa + trigerovanje nekih eventova shodno tome

sto naravno ima tendenciju da uspori celu stvar i poveca kompleksnost


Naravno postoje i resenja za te probleme, neka su krajnje prljava, neka malo manje, najbolje je naci se negde na sredini, optimizovati koliko se moze, ono sto ne mora u bazu ne stavljati tamo po svaku cenu.
Ili cak neke od provera koje sam naveo uraditi pri svakom deploymentu na server (pokretanjem neke test skripte, koja ce da protrci kroz app i vidi jel sve na svom mestu)a onda u slucaju da se ipak desi neka gdeska servirati generic error, modela ima koliko hoces, samo treba izabrati onaj koji najvise odgovara za datu aplikaciju...
__________________
kodi je offline   Odgovorite uz citat
"Hvala" kodi za poruku:
Odgovori


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Organizacija projekta kai e-Business 5 16. 10. 2011. 22:19
Problem sa XDS Modula-2 kompajlerom nmcyber Programiranje 3 19. 01. 2011. 02:48
Codeigniter (CI) setup, organizacija fajlova bOkIcA PHP 9 11. 05. 2010. 12:35
Google indexiranje foruma kao php nuke modula bukovski Marketing i SEO 4 11. 11. 2006. 09:47
Organizacija koda Zeljko PHP 0 23. 07. 2005. 00:17


Vreme je GMT +2. Trenutno vreme je 14:59.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.