====== a7b36ass -- Architektura SW systémů ======
Odkaz na původní web.. http://wiki.cs.czacm.org/xwiki/bin/view/36ASS/osnova
Skrblíkova banka: [[https://docs.google.com/spreadsheets/d/1lCd2hgqoqS7pcUy4vZH1ymxR8FjDjYSoLXjPnyU8GTk/edit?usp=sharing|Piggy bank]]
* Šablona prezentace {{:courses:a7b36ass:sablona.ppt|zde}}
* Šablona latex {{:courses:a7b36ass:ieeeexamplepaper.zip|zde}} avšak vybereme dle konference = http://icatse.org/icitcs/
* KWIC [[http://en.wikipedia.org/wiki/Key_Word_in_Context| zde]]
====== Týden 1. ======
* Úvod do architektonických vzorů - {{:courses:a7b36ass:1_styly.pdf|PDF}}
Cvičení
* Generátory XML z Objektů [[https://jaxb.java.net/|JAXB]]
* Reflexe: pro danou třídu vypište její metody, jejich parametry a návratové hodnoty a anotace [[http://docs.oracle.com/javase/tutorial/reflect/|doc (page next..)]]
Napr.
public class Person {
String name;
Date born;
int age;
....
@NotNull
@Length(min=3, max=5)
public String getName() {..}
..
}
vygenerujte
Úkoly
* Latex IDE např TexClipse a rozchození šablony IEEE, viz výše a demonstrace češtiny v PDF - {{:courses:a7b36ass:ieeeexamplepaper.zip|zde}}
* [[http://texlipse.sourceforge.net/|TexClipse]] importujte šablonu {{:courses:a7b36ass:ieeeexamplepaper.zip|IEEE}} a demonstrujte
* Přečíst článek [[http://www.cs.cmu.edu/afs/cs/project/vit/ftp/pdf/intro_softarch.pdf|An Introduction to SW Architectures]] - bude Quiz!!
====== Týden 2. ======
* Definice {{:courses:a7b36ass:2_architektury_definice.pdf|PDF}}
* Kvality {{:courses:a7b36ass:3-kvality.pdf|PDF}}
Cvičení
češtinu.
* SearchChallenge {{:courses:a7b36ass:searchchallenge.pdf|zde}} a {{:courses:a7b36ass:zadani-searchchallenge.zip|zdroj}}
* Quiz článek [[http://www.cs.cmu.edu/afs/cs/project/vit/ftp/pdf/intro_softarch.pdf|An Introduction to SW Architectures]]
====== Týden 3. ======
* Komunikace {{:courses:a7b36ass:5_komunikace.pdf|PDF}}
* Studie {{:courses:a7b36ass:6_casestudy.pdf|PDF}}
* GOF Intro - {{:courses:a7b36ass:0-designpatterns.pdf|PDF}}
Cvičení
* KWIC
* EasterEgg {{:courses:a7b36ass:easterfun.jar.zip|zip}} {{:courses:a7b36ass:popis.pdf|PDF}}
====== Týden 4. ======
* Singleton - {{:courses:a7b36ass:01-singleton.pdf|PDF}}
* FactoryMethod {{:courses:a7b36ass:02-FactoryMethod.pdf|PDF}}
* AbstractFactory - {{:courses:a7b36ass:03-AbstractFactory.pdf|PDF}}
* Builder - {{:courses:a7b36ass:04-Builder.pdf|PDF}}
Cvičení
* Quiz.
* Towards a UML Profile for Model-driven ORM a dale pak Software Engineering a Roadmap - jen 4 strany
* http://www.lbd.dcc.ufmg.br/colecoes/sbes/2009/010.pdf
* http://eprints.ucl.ac.uk/1121/1/13.6_seroadmap.pdf
* http://users.csc.calpoly.edu/~csturner/courses/508w10/Readings/finalfinkelstein.pdf
* SingletonChallenge {{:courses:a7b36ass:singleton.docx|zde}} a {{:courses:a7b36ass:singleton.zip|zdroj}}
======= Týden 5. =======
* Prototype - {{:courses:a7b36ass:05-Prototype.pdf|PDF}}
* Adaptér {{:courses:a7b36ass:06-Adapter.pdf|PDF}}
* Bridge - {{:courses:a7b36ass:07-Bridge.pdf|PDF}}
* Facade - {{:courses:a7b36ass:08-Facade.pdf|PDF}}
* Proxy - {{:courses:a7b36ass:09-Proxy.pdf|PDF}}
Cvičení
* Tvorive vzory - {{:courses:a7b36ass:singleton.pdf|PDF}}
* Builder vzory - {{:courses:a7b36ass:builder.pdf|PDF}} | {{:courses:a7b36ass:builder.zip|zip}}
* Oprava Builder - {{:courses:a7b36ass:1-5-tvorive.zip|zip}}
Úkol!!!
* AdapterChallenge {{:courses:a7b36ass:nanocontainer.zip|zdroj}} {{:courses:a7b36ass:nanocontainer.pdf|PDF}}
* AOP článek - http://www2.parc.com/csl/groups/sda/publications/papers/Kiczales-ECOOP97/for-web.pdf
====== Týden 6. ======
* Proxy - {{:courses:a7b36ass:09-Proxy.pdf|PDF}}
* Decorator - {{:courses:a7b36ass:10-Decorator.pdf|PDF}}
* Composite - {{:courses:a7b36ass:11-Composite.pdf|PDF}}
* Flyweight - {{:courses:a7b36ass:12-Flyweight.pdf|PDF}}
Cvičení
* AOP článek - http://www2.parc.com/csl/groups/sda/publications/papers/Kiczales-ECOOP97/for-web.pdf
* ProxyChallenge {{:courses:a7b36ass:proxy.zip|zdroj}} {{:courses:a7b36ass:proxy.pdf|PDF}}
* AlzaChallenge {{:courses:a7b36ass:alzachallenge.pdf|PDF}}
Zadání na příšte
* TEST!!!
====== Týden 7. ======
* TEST!!!
====== Týden 8. ======
* Flyweight - {{:courses:a7b36ass:12-Flyweight.pdf|PDF}}
* State - {{:courses:a7b36ass:13-State.pdf|PDF}}
* Command - {{:courses:a7b36ass:14-Command.pdf|PDF}}
* Memento - {{:courses:a7b36ass:15-Memento.pdf|PDF}}
Cvičení
* Quiz.
* Diskuze článek [[https://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf]]
* Command refaktorizace nanocontraineru {{:courses:a7b36ass:nanocontainer.zip|zdroj}} {{:courses:a7b36ass:nanocontainer.pdf|PDF - ukol 2 a 3 (a)}}
* State semafor {{:courses:a7b36ass:stateofartchallenge.pdf|PDF}}
====== Týden 9. ======
* Iterator - {{:courses:a7b36ass:16-Iterator.pdf|PDF}}
* Interpreter - {{:courses:a7b36ass:17-Interpreter.pdf|PDF}}
* ChainOfResponsibility - {{:courses:a7b36ass:18-ChainOfResponsibility.pdf|PDF}}
* Mediator - {{:courses:a7b36ass:19-Mediator.pdf|PDF}}
* Observer - {{:courses:a7b36ass:20-Observer.pdf|PDF}}
Cvičení
* Interpreter - (http://juel.sourceforge.net) {{courses:a7b36ass:interpret.pdf|PDF}}
* Chain of Responsibility - {{courses:a7b36ass:chain_of_responsibility2.pdf|PDF}}
====== Týden 10. ======
* Observer - {{:courses:a7b36ass:20-Observer.pdf|PDF}}
* Strategy - {{:courses:a7b36ass:21-Strategy.pdf|PDF}}
* TemplateMethod - {{:courses:a7b36ass:22-TemplateMethod.pdf|PDF}}
* Visitor - {{:courses:a7b36ass:23-Visitor.pdf|PDF}}
Cvičení
* TemplateMethod - nanoContainer - refaktorizace
* Visitor - visitorChallenge {{:courses:a7b36ass:visitorchallenge.zip|zdroj}} {{:courses:a7b36ass:visitor.pdf|PDF}}