====== 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}}