Hlavní menu

Nástroje

UvodDoKomponent / Priklady

View (print) - Edit page | Recent changes - Page history

Updated 22 January 2015, 15:49 by PremekBrada

UvodDoKomponent.Priklady History

Hide minor edits - Show changes to output

22 January 2015, 15:49 by PremekBrada -
Added line 4:
* informaci, jak používá [[obecné koncepty -> UvodDoKomponent#pojmy]] (čili jejich mapování na daný konkrétní framework)
Changed lines 7-9 from:
* implementaci Message printer (viz. níže)
* implementaci Parkoviště (viz. níže)
to:
* implementaci příkladu Message printer (viz níže)
* implementaci příkladu Parkoviště (viz níže)
22 January 2015, 15:27 by PremekBrada -
Added lines 41-45:
Kromě hotových příkladů ve výše uvedených technologiích by bylo zajímavé doplnit například:

* [[SOFA2 -> http://sofa.ow2.org/]]
* [[Fractal -> http://fractal.ow2.org/]]
* [=SaveCCM=] and [=ProCom=] from [[MDH.se Progress project -> http://www.mrtc.mdh.se/progress/index.php?choice=selected_results]]
22 January 2015, 15:21 by PremekBrada -
Changed lines 35-40 from:
https://www.assembla.com/spaces/cosi/documents/cNiLQuHYyr3QHfeJe5afGb/download?filename=parkoviste-diagram.png
to:
https://www.assembla.com/spaces/cosi/documents/cNiLQuHYyr3QHfeJe5afGb/download?filename=parkoviste-diagram.png

!! Další zdroje

Zajímavým pokusem ukázat, jak se různé komponentové modely vypořádají s větší aplikací, je [[Common Component Modelling Example -> http://www.cocome.org/]].
22 January 2015, 15:14 by PremekBrada -
Added lines 11-12:
! Přehled příkladů
22 January 2015, 15:13 by PremekBrada -
Deleted lines 0-2:

(:include Navigation :)
Changed lines 9-10 from:
Tyto příklady jsou převzaty [[https://www.assembla.com/wiki/show/cosi/Tutorial_examples | z projektu CoSi]].
to:
(:include Navigation :)

Základní příklady pro ilustraci daného komponentového modelu jsou převzaty [[https://www.assembla.com/wiki/show/cosi/Tutorial_examples | z projektu experimentálního komponentového modelu CoSi]].
21 February 2011, 10:59 by PremekBrada -
Added lines 2-3:
(:include Navigation :)
Deleted lines 5-7:

(:include Navigation :)
21 February 2011, 10:58 by PremekBrada -
Added lines 1-35:

V této praktické části tutoriálu jsou [[obecné koncepty -> UvodDoKomponent#pojmy]] ukázány na příkladech v konkrétních technologiích/frameworcích.


(:include Navigation :)

U každého popisovaného modelu lze vždy najít:
* návod jak vytvořit prázdný projekt (někdy spojené s následujícím bodem)
* návod na jednoduchou [=HelloWorld=] aplikaci
* implementaci Message printer (viz. níže)
* implementaci Parkoviště (viz. níže)

Tyto příklady jsou převzaty [[https://www.assembla.com/wiki/show/cosi/Tutorial_examples | z projektu CoSi]].

!! Message printer

Nejdříve opravdu jednoduchá aplikace:

* "server" komponenta, která exportuje službu na rozhranní [=IMsgGen=], které má jednu metodu @@String getMsg()@@
* "client" komponenta, která importuje tuto službu a vytiskne zprávu na standardní výstup


!! Parkoviště

Jako další je zde trochu komplexnější příklad, s následujícím scénářem: u dálnice je tabule, která motoristy informuje o tom, kolik je ještě volných míst na parkovišti. Auta, autobusy a náklaďáky přijíždí a odjíždí přes bránu, která pouští pouze v případě, že se na parkoviště daný typ vozidla vejde - auto spotřebuje jedno místo, autobus 2 místa, náklaďák 4.


Komponentový model má následující komponenty (rovněž znázorněny v diagramu níže):
* "Brana" která náhodně generuje příjezdy/odjezdy a volá "Parkoviste", aby si je zpracovalo
* "Parkoviste" které přes události oznamuje kolik je volných míst, které se nastavují přes metody volané "Branou"
* "Tabule" vypisuje kolik je volných míst
* "[=KonfiguraceZarizeni=]" poskytuje konfiguraci ostatním komponentám - "frekvence" pro "Branu" a "kapacita" pro "Parkoviste"


https://www.assembla.com/spaces/cosi/documents/cNiLQuHYyr3QHfeJe5afGb/download?filename=parkoviste-diagram.png