BoBo Business on Babes-Bolyai Webalkalmazás Tervezıi dokumentáció 1. Bevezetés - avagy kinek, kitıl, miért, hogyan, mikor? 1.1 Kinek? A program elsısorban a Babeş Bolyai Tudományegyetem, diákjainak készült azzal a céllal, hogy megkönnyitse az egyetemi idıszak során adódó problémák megoldását, pontosabban az utazásokat különbözı helységekbe, valamint a lakás keresés - ajánlásokat, és az egyébb csoportüzenetként megjelenı( de nem közérdekü közleménynek tekinthetı) különféle ajánlásokat, kéréseket. Természetesen bárki más használhatja, ha úgy érzi, hogy hasznos és munkáját elıresegiti. 1.2 Kitıl? Tılem, pontosabban jbim0840 tól de ha igy sem eléggé világos, akkor Józsa Béla Tamástól, aki a fennebb emlitett tudományos egyetem informatika karán másodéves hallgató. Ha egyéb dolog is érdekel rólam, nézd meg a Hi5 vagy a Facebook profilom: az elérési útvonalat majd megadom személyesen. 1.3 Miért? 10 millió... Ez jól hangzik tudom - viszont ez csak legjobb esetben is egy 10 es osztályzat, de ez sem rossz, sıt kifejezetten jó. Ha minden jól megy és rendesen dolgoztam akkor ezt az osztályzatot az Egyéni Projekt tantárgy keretein belül fogom megkapni méltó jutalomként. Természetesen van egy nemesebb célja is amit fennebb már emlitettem.
2 1.4 Hogyan? Ez a rész eléggé hosszas, és késıbb részletesen fogom tárgyalni, bevezetınek épp egy-két mágikus süti: PHP, XHTML, MySQL, JavaScript és egy szövegszerkeszı ami remélhetıleg valami cuccos dolog lesz, mondjuk phpdesigner, NotePad ++, DreamViewer. 1.5 Mikor? 2009 október és 2010 január között. Ez a legjobb rész, mert a legrövidebb, csak a sok dumával ez is hosszú lesz, igy hát nem folytatom tovább... na tessék, mégiscsak hosszú lett. Ilyen az én formám. 2. A Rendszer 2.1 Felhasználók A felhasználók két kategóriába fognak esni. Lesznek akik bemehetnek, lesznek akik nem. Nem hasonlitnám azonban az Utolsó nap itéletéhez mert aki ide nem léphet be nem sokmindent veszit, viszont aki akkor és oda nem lép be, az mindent elveszt. 2.2 Táblák Mint minden valamit érı és magára valamit is adó alkalmazásban, úgy itt is az információk adattáblákban lesznek eltárolva, amit a MySQL adatbáziskezelı-rendszer segitségével használhatunk. A legfontosabb táblák: felhasználók, ajánlatok, keresések, jelszavak. 2.3 Design A Design elsısorban kellemes és figyelemfelkeltı, ugyanakkor nem gátolja a böngészıt a keresésben. Nem lesz tuldiszitett sem, hogy a Wireless Lan-t használó egyetemi hallgatóknak ne legyen idelyük az oldal betöltésére várakozva regényeket olvasni.
3 3. Design 3.1 XHTML Az XHTML ( HTML 4.01 ) nyelvet csak az oldal vázának meghatározásához és leirásához használjuk. Vagyis a képek, szinek, méretek beillesztése lehetıleg nem itt történik. PL. <html> <head> <title> Ide jön a cim </title> </head> <body> <div id = header > Fejléc </div> <div id = container > <div id = menu > Menu </div> <div id = content > Tartalom</div> </div> <div id = footer > Lábléc </div> </body> </html> Amint a példán megfigyelhetı, csak a strukturát határozom meg az XHTML segitségével, és minden oldalelemet külön modulként kezelek, ami átláthatóva teszi a kódot. Az igazi designról a CSS fog felelni. 3.2 CSS A CSS stiluslapokban lesznek leirva a különbözı HTML elemekre vonatkozó formázások. Minden elemnek beszédes ID-t(nevet) választok, igy a késıbbi változtatás sokkal könnyebb lesz és egyéni kinézeteket is könnyebb lesz irni egyébb felhasználói környezetekben. 3.3 JavaScript A JavaScript speciális effektek megjelenitésére szolgál az oldal keretein belül.
4 4. Mőködés 4.1 index.php Az oldal betöltésekor egy barátságos kis oldal jelenik meg. Találunk egy Bejelentkezés panelt, valamint egy-két kiemelt ajánlatot és tájékoztatót az oldal mőködésérıl. Ha valami felkeltette a figyelmünket és szeretnénk többet megtudni rólla, az elıbb emlitett kis tájékoztató segiteni fog nekünk. Több mint valószinü, a következtetés az lesz, hogy be kell jelentkeznünk vagy regisztrálnunk. Ami még jobb, hogy errıl is van tájekoztató, és talán még a tájékoztatóról is. Félretéve a félretehetıt elérkeztünk oda, hogy vagy bejelentkezünk(regisztrálunk) vagy pedig elhagyjuk az oldalt. Azoknak akik, úgy döntenek, hogy elhagyják az oldalt csak annyit, hogy jobbat úgy sem találnak. Akik viszont belépnek, azok be kell irják a e-mail cimüket és egy általuk meghatározott jelszót. A jelszók kódolt formátumban vannak tárolva, a biztonság kedvéért. Ha létezik a bejelentkezni próbáló felhasználó az adatbázisban akkor beléptetjük, és megjelenitjük a Home Page jét(home.php). Az oldal tartalma nagy mértékben függ a felhasználó igényeitıl. Nem Hi5 oldal, teljes testreszabhatósággal, hanem BoBo a könnyed és gyors navigáláshoz. 4.2 home.php Amint már emlitettem a saját oldalon, többnyire a minket érdeklı ajánlatok, események fognak megjelenni. Ezenkivül itt lesz lehetıségünk saját ajánlatokat közétenni valamint keresni különbözı feltételek alapján. 4.3 register.php Ha valaki még nem tagja az oldalnak, azt ez az oldal fogja fogadni, egy kitöltendı form-al. Itt meg kell adjon egy - két információt ami szükséges, hogy a rendszer pontos adatokat tudjon megjeleniteni. Miután ezt megtette, az oldal elmenti az adatokat az adatbázisba, és indulhat is a keresés.
5 4.4 mail.php Ha a felhasználó igényli, a rendszer leveleket küldhet, ha olyan esemény történik ami a felhasználót érdekli. Személyes levelezésre nem lesz alkalmas, esetleg ha idıvel lesz rá igény, addig is tudom ajánlani a freemailt, vagy a citromailt, de aki valami jobbra vágyik az próbálja ki a Gmail-t, Yahoo-t vagy MSN-t, esetleg az új Google Wave-et. 5. Programozói környezetek és módszerek. 5.1 Módszer Ez a fejezetcim eléggé ijesztınek tőnik pedig korántsem az, azonnal meglátjuk, hogy miért. A PHP lehetıséget nyújt Objektumorientált programozásra. Ennek a módszernek a legfıbb elınye, hogy biztositja az adatok védelmét, valamint jó modularitási lehetıséget nyújt, amit késıbbi fejlesztéseknél remekül kamatoztathatunk majd. A legfontosabb osztályok a felhasználó és ajánlat osztályok lesznek. Ezekben olyan metódusokat implementálok amelyek beállitják a megfelelı adattagokat, lekérdezéseket hajtanak végre, valamint komunikálnak más osztályokkal. Egy másik fontos osztály a a MySQL osztály lesz amelynek különbözı metódusain keresztül biztonságos lekérdezéseket hajtunk végre a a MySQL adatbázissal. 5.2 Környezet Windows környezetben, R&B, Pop és esetleg Trance zenei aláfestéssel. Ezenkivül szükséges lesz még: PHP 5 szerveroldali szkriptnyelv Apache 2 Kiszolgáló MySQL Adatbáziskezelı NotePad ++, Eclipse - Szövegszerkesztı Ezek a programok ingyen letölthetık az Internetrıl. Van 2 nyelv ami még ennél is ingyenesebb (olcsóbb a lopásnál) az XHTML és a CSS. Ha ezek megvannak akkor már nagyon kevés választ el minket attól, hogy nekikezdjünk az igazi munkának.
6 6. Rendszer és ember követelmények Elérkeztünk az utolsó részhez. Ez abból is látszik, hogy itt nem lesznek alcimek. Szóval vágjunk is bele. Ahhoz, hogy az alkalmazás megfelelıen mőködjön elıször is szükségünk van egy számiógépre, és internet kapcsolatra, no meg egy böngészıre. Ha ezek megvannak akkor sinen vagyunk. Végezetül még kell hozzá egy olvasó képességekkel rendelkezı felhasználó. Ha ez is megvan akkor már semmi akadálya annak, hogy a programunk betöltse küldetését.