29
Metodologie OOHDM, jazyk Metodologie OOHDM, jazyk Lua a tvorba webových Lua a tvorba webových aplika aplika Martin Molhanec ČVUT-FEL, K- 313

Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

  • Upload
    roch

  • View
    34

  • Download
    2

Embed Size (px)

DESCRIPTION

To insert your company logo on this slide From the Insert Menu Select “Picture” Locate your logo file Click OK To resize the logo Click anywhere inside the logo. The boxes that appear outside the logo are known as “resize handles.” Use these to resize the object. - PowerPoint PPT Presentation

Citation preview

Page 1: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Metodologie OOHDM, jazyk Lua Metodologie OOHDM, jazyk Lua a tvorba webových aplikaa tvorba webových aplikacící

Martin Molhanec

ČVUT-FEL, K-313

Page 2: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

ÚvodÚvod

• Tvorba webových sídel jako inženýrský úkol - Tvorba software 2001

• The Object-Oriented Hypermedia Design Model (OOHDM) - Objekty 2001

Page 3: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

LuaLua

• Vyvinut na universitě PUC-Rio v Brasilii • Skriptovací jazyk• Embadded jazyk• Object oriented jazyk• Mnoho aplikací• Aktivní rozvoj• Přeložen pro mnoho platforem• Free včetně zdrojových textů

Page 4: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Lua – datové typyLua – datové typy

• Number

• String

• Function – podobně jako Javascript

• Nil

• Userdata – pro komunikaci např. s C++

• Table – asociativní (objekty)

Page 5: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Lua – navratové hodnotyLua – navratové hodnoty

Function Pokus (par1, par2)

Local Nasobeno = par1 * par2

Local Deleno = par1 / par2

Return Nasobeno, Deleno

End

 

X, Y = Pokus(20, 2)

Page 6: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Lua - poleLua - pole

Pole = {}

Pole[”barva”] = ”zelena”

X = pole.barva

Y = pole[”barva”]

Jine_pole = {barva = ”modra”}

Page 7: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Lua - objektyLua - objekty

Zam1 = zamestnanec { parent = osoba{ RC=123456789, Vek=30, Jmeno=”John Novak” }, Telefon = 123456, Mistnost = ”450/B3”}

Page 8: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

CGILuaCGILua

• Aplikace jazyku Lua určená pro psaní CGI skriptů

• Koncovka souborů .lua

• Lua scripts

• HTML templates

Page 9: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

CGILuaCGILuacgilua.htmlheader()  

write('<html>')  

if cgi.language == 'english' then  

   greeting = 'Hello World!'  

elseif cgi.language == 'portuguese' then  

   greeting = 'Olá Mundo!'  

else  

   greeting = '[unknown language]'  

end      

write('<head></head><body>')  

write('<b>'..greeting..'</b>')  

write('</body></html>')  

Page 10: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

HTML templatesHTML templatesExpression fieldsExpression fields

Good Morning, <b>$|firstname|$</b>

<input

type="text" name="cor"

value="$|cgi.cor|$"> 

<a href=

"$|cgilua.mkurl("ajuda.html", cgi )|$"

>Ajuda</a>  

Page 11: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

HTML templatesHTML templates Code fieldsCode fields

<!--$$function SubscriptionCharge() dofile( 'charges.lua') return value_subscriptionend$$--><b>The value of the Subscription: $|SubscriptionCharge()|$</b>

Page 12: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

HTML templatesHTML templatesLoop and If directivesLoop and If directives

<table border=1><tr>

<!--$$ LOOP

start='i=1', test='i<10',

action='i=i+1‚

$$-->

<td>$|i|$</td>

<!--$$ ENDLOOP $$-->

</tr></table>

Page 13: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDM

• 1. Konceptuální modelování (Conceptual Modeling)

• 2. Návrh navigace (Navigational Design)

• 3. Návrh abstraktního rozhraní (Abstract Interface Design)

• 4. Implementace (Implementation)

Page 14: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMkonceptuální modelkonceptuální model

Page 15: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMkonceptuální modelkonceptuální model

Page 16: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMschéma navigačních třídschéma navigačních tříd

Page 17: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMschéma navigačních kontextůschéma navigačních kontextů

Page 18: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMAbstract Interface DesignAbstract Interface Design

• Způsob, jak jsou jednotlivé prvky rozhraní strukturovány pomocí agregace a hierarchie

• Způsob, jak jsou staticky spojeny s navigačními objekty. V OOHDM se zde využívají tzv. Configuration Diagrams

• Jak se chovají na vnější události, například klik nebo dvojklik myší, atp. V OOHDM se využívají tzv. ADV-Charts nebo Petri-Net like notation

Page 19: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDMOOHDMImplementaceImplementace

• Mapování informačních položek– Jsou uloženy v databázi (OOER)

• Implementace kontextu– Přenos stavové informace (cookies)

• Implementace rozhraní– Dynamické stránky (ASP, PHP, JSP)– OOHDM-Web (based on CGILua)

Page 20: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDM-WebOOHDM-Web

• OOHDM analýza

• CGILua – skriptovací nástroj pro vytváření dynamických stránek

• Lua – jazyk skriptů

Page 21: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

databázové tabulkydatabázové tabulkyodpovídajíodpovídají konceptuálnímu diagramukonceptuálnímu diagramu

Page 22: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

databázové tabulkydatabázové tabulkyodpovídajíodpovídají diagramudiagramu kontextů kontextů

• 6 tabulek popisujících všechny kontexty

– Tabulka kontext• Název, typ – kontextu

– 5 tabulek pro jednotlivé kontexty

Page 23: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Tabulka kontextTabulka kontext

Page 24: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDM-WebOOHDM-Webknihovna funkcíknihovna funkcí

Index {context = ”build_alpha”, anchor = ”building_name”, function = ’Horizontal_Tab( col = 6, par_table = ”align-center cellspacing = 12”, par_cell = ”<center>” )’}

Page 25: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDM-WebOOHDM-Web

Page 26: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDM-WebOOHDM-Web

Page 27: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

OOHDM-WebOOHDM-Web

Page 28: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

ZávěrZávěr

• Praktické využití metodologie pro návrh webových sídel

• Navržena kompletní cesta od analýzy až po implementaci

Jen tak dál !

Page 29: Metodologie OOHDM, jazyk Lua a tvorba webových aplika cí

Ing. Martin Molhanec, CSc.Ing. Martin Molhanec, CSc.

České vysoké učení technickéFakulta elektrotechnickáKatedra elektrotechnologieTechnická 2166 27 PRAHA 6, DejviceČeská republika

mailto: [email protected]

phone: ++420 (2) 2435 2118

http://martin.feld.cvut.cz/~mmm

http://k313.feld.cvut.cz