diff --git a/labs/2022/03-composition/README.md b/labs/2022/03-composition/README.md index 14bb991f1..8160aa626 100644 --- a/labs/2022/03-composition/README.md +++ b/labs/2022/03-composition/README.md @@ -15,3 +15,11 @@ a) Considere que haverá um DTO (Data Transfer Object) que incorpora toda a nego b) Construa um diagrama dos componentes envolvidos na negociação e descreva com as suas palavras como eles interagem (escreva na forma de tópicos em que item é descrito brevemente). Para esta tarefa utilize os [Diagramas de Referência](https://docs.google.com/presentation/d/1g2mds_SA_w0WNuJmoMg1UZtNbPQMnEz54XWL_DoRDtg/edit?usp=sharing). + +## Tarefa 2 - Recomendação de Preço + +Considerando o que existe um conjunto de dados históricos sobre produtos, valores, frete e dias de entrega, ranqueados por preferência, escreva um sistema que ranqueie produtos de acordo com ofertas feitas pelos fornecedores. + +a) Elabore um workflow em Orange para recomendação. Utilize o arquivo [products-negotiated.csv](products-negotiated.csv) para o treinamento e o arquivo [products-negotiated-test.csv]( products-negotiated-test.csv) para teste. + +b) Transforme esse workflow em uma representação UML. diff --git a/labs/2022/03-composition/products-negotiated-test.csv b/labs/2022/03-composition/products-negotiated-test.csv new file mode 100644 index 000000000..d6b4b502d --- /dev/null +++ b/labs/2022/03-composition/products-negotiated-test.csv @@ -0,0 +1,21 @@ +product,price,shipping,days,rank +Product 01,0.7,4,7,1 +Product 02,19.6,2.1,8,6 +Product 03,38,4,6,10 +Product 04,50,1.3,2,2 +Product 05,66,0.5,10,1 +Product 06,74.7,5,1,10 +Product 07,94.3,0.5,7,4 +Product 08,110.8,4,0,9 +Product 09,120.2,1.9,6,5 +Product 10,139.2,1.5,4,3 +Product 11,163.3,3.2,0,7 +Product 12,171.3,4,1,8 +Product 13,188,1.6,6,2 +Product 14,204.1,3.3,0,9 +Product 15,214.7,2.5,6,4 +Product 16,228.2,1.6,4,6 +Product 17,237.4,0.5,5,3 +Product 18,255.3,2.8,6,5 +Product 19,262.7,2.8,5,7 +Product 20,289.7,4.2,5,8 diff --git a/labs/2022/03-composition/products-negotiated.csv b/labs/2022/03-composition/products-negotiated.csv new file mode 100644 index 000000000..4f1f5acb3 --- /dev/null +++ b/labs/2022/03-composition/products-negotiated.csv @@ -0,0 +1,201 @@ +product,price,shipping,days,rank +Product 01,0.7,4,7,1 +Product 01,4.1,1.2,7,2 +Product 01,8.6,0.2,8,3 +Product 01,5.4,3,7,4 +Product 01,13.1,0,5,5 +Product 01,7.3,2.8,4,6 +Product 01,8.4,2.7,8,7 +Product 01,7.8,3.9,3,8 +Product 01,8.7,4.9,0,9 +Product 01,11.7,3.7,3,10 +Product 02,13.2,1.6,4,1 +Product 02,17.2,0.4,6,2 +Product 02,19.4,1.6,7,3 +Product 02,18.7,1.2,7,4 +Product 02,18.8,2.2,4,5 +Product 02,19.6,2,7,6 +Product 02,17.9,3.8,7,7 +Product 02,16.9,4.4,0,8 +Product 02,23.8,3.5,2,9 +Product 02,17.2,4.6,2,10 +Product 03,27.5,0.2,5,1 +Product 03,25,1.1,4,2 +Product 03,28.6,0.2,4,3 +Product 03,38.2,0.4,6,4 +Product 03,25.1,2.6,3,5 +Product 03,26.8,3.3,5,6 +Product 03,25.6,3.9,6,7 +Product 03,31.5,2.5,7,8 +Product 03,36.9,3.9,0,9 +Product 03,38,4,6,10 +Product 04,53.5,0.2,3,1 +Product 04,50,1.2,3,2 +Product 04,56.2,0.6,2,3 +Product 04,43,2.6,3,4 +Product 04,43.1,2.7,1,5 +Product 04,44.7,2.6,3,6 +Product 04,44.5,3.9,0,7 +Product 04,39.5,4.1,4,8 +Product 04,48.3,4.7,4,9 +Product 04,57.5,3.3,3,10 +Product 05,66.1,0.6,9,1 +Product 05,69,0.9,11,2 +Product 05,59.6,1.2,7,3 +Product 05,62.3,1.3,9,4 +Product 05,66.9,1.2,7,5 +Product 05,70.6,1.6,7,6 +Product 05,73.4,1.7,10,7 +Product 05,69.2,2.1,9,8 +Product 05,67.8,3.7,0,9 +Product 05,68.4,4.5,7,10 +Product 06,80.2,0,4,1 +Product 06,76.4,0.1,4,2 +Product 06,75.5,1.1,4,3 +Product 06,75.3,2,2,4 +Product 06,76.4,2.7,3,5 +Product 06,76.3,2.8,3,6 +Product 06,75.1,3.5,0,7 +Product 06,85.7,3.6,0,8 +Product 06,78.2,4.7,2,9 +Product 06,74.7,4.9,0,10 +Product 07,90.4,0,5,1 +Product 07,95.7,0.1,6,2 +Product 07,97.2,0.2,4,3 +Product 07,94.2,0.5,6,4 +Product 07,97.5,0.8,6,5 +Product 07,87.2,1.2,4,6 +Product 07,89.7,1,3,7 +Product 07,96.2,1.5,3,8 +Product 07,88.3,2.6,0,9 +Product 07,93.9,4.4,2,10 +Product 08,104.6,0.6,3,1 +Product 08,100.4,1,6,2 +Product 08,116,0.8,4,3 +Product 08,107.4,1.4,5,4 +Product 08,112.9,1.7,2,5 +Product 08,117.2,1.5,5,6 +Product 08,109.8,1.4,3,7 +Product 08,102.7,3,5,8 +Product 08,110.7,4.1,0,9 +Product 08,109.8,4.8,1,10 +Product 09,129.4,0.6,5,1 +Product 09,134.3,0.5,7,2 +Product 09,121,0.8,3,3 +Product 09,131.7,1.8,5,4 +Product 09,120.2,2,7,5 +Product 09,120.5,2.9,7,6 +Product 09,123.1,3.5,7,7 +Product 09,125.7,3.7,0,8 +Product 09,135.2,4.2,3,9 +Product 09,131.1,4.3,5,10 +Product 10,139.5,0.2,3,1 +Product 10,140.3,0.2,5,2 +Product 10,139.2,1.4,3,3 +Product 10,136.2,1.9,4,4 +Product 10,139.3,1.5,5,5 +Product 10,147.3,2.4,4,6 +Product 10,142.9,2.9,5,7 +Product 10,141.3,2.7,1,8 +Product 10,149.7,3.6,5,9 +Product 10,137.9,4.6,0,10 +Product 11,149.8,0.1,4,1 +Product 11,156.6,0.3,5,2 +Product 11,168.4,0.7,5,3 +Product 11,170.2,0.8,2,4 +Product 11,165.6,1,4,5 +Product 11,164.5,2.1,1,6 +Product 11,163.3,3.2,1,7 +Product 11,163.5,3.7,5,8 +Product 11,151.5,4.1,0,9 +Product 11,166.8,4.2,6,10 +Product 12,177,0.9,5,1 +Product 12,180.8,1.1,0,2 +Product 12,175.7,1.5,6,3 +Product 12,172.5,1.8,3,4 +Product 12,175.1,2.3,3,5 +Product 12,184.9,2.1,4,6 +Product 12,177,3.3,2,7 +Product 12,171.3,4,2,8 +Product 12,184.9,4.4,6,9 +Product 12,182.6,4.6,0,10 +Product 13,197.6,0.4,7,1 +Product 13,187.9,1.7,6,2 +Product 13,188.4,1.8,5,3 +Product 13,193.2,1.8,1,4 +Product 13,187.8,2.1,7,5 +Product 13,197.6,2.3,7,6 +Product 13,191.1,2.9,6,7 +Product 13,193.7,3.5,0,8 +Product 13,195.4,4.8,3,9 +Product 13,198.9,4.9,2,10 +Product 14,199.8,0.3,3,1 +Product 14,199.8,0.3,2,2 +Product 14,206.8,0.5,3,3 +Product 14,206.9,0.8,2,4 +Product 14,209.6,2.1,4,5 +Product 14,202.5,2.2,2,6 +Product 14,199.1,3.1,1,7 +Product 14,210.7,3,4,8 +Product 14,204.1,3.3,0,9 +Product 14,205,4.5,3,10 +Product 15,218.5,0.5,3,1 +Product 15,213.4,2.5,5,2 +Product 15,215.4,2.4,0,3 +Product 15,214.7,2.4,6,4 +Product 15,218.4,2.8,1,5 +Product 15,217.7,3.4,0,6 +Product 15,213.5,4.3,3,7 +Product 15,216.8,4.4,3,8 +Product 15,216.4,4.2,2,9 +Product 15,210.8,5,2,10 +Product 16,222.4,0.3,5,1 +Product 16,224,0.2,4,2 +Product 16,222.4,0.4,1,3 +Product 16,225.8,0.8,0,4 +Product 16,227.2,1.6,1,5 +Product 16,228.3,1.7,3,6 +Product 16,219.8,3.4,1,7 +Product 16,220.5,3.3,2,8 +Product 16,228,3.8,3,9 +Product 16,220.3,4.9,6,10 +Product 17,234.5,0.3,0,1 +Product 17,239.8,0.4,4,2 +Product 17,237.4,0.5,6,3 +Product 17,232.1,0.9,7,4 +Product 17,239.3,1.6,5,5 +Product 17,237.4,2.8,7,6 +Product 17,229.5,3.2,1,7 +Product 17,238.2,3.4,7,8 +Product 17,230.1,3.8,1,9 +Product 17,239.9,4.2,6,10 +Product 18,240.1,0.7,6,1 +Product 18,240.1,1.7,5,2 +Product 18,253.8,2.1,4,3 +Product 18,248.8,2.7,5,4 +Product 18,255.4,2.7,6,5 +Product 18,248.4,3,5,6 +Product 18,241.7,3.8,5,7 +Product 18,250.9,3.7,0,8 +Product 18,261.3,4.3,2,9 +Product 18,243.2,4.9,3,10 +Product 19,276.7,0.2,4,1 +Product 19,262.9,0.4,4,2 +Product 19,265.2,0.3,2,3 +Product 19,280.2,1,4,4 +Product 19,280.7,1.4,2,5 +Product 19,265.6,2,6,6 +Product 19,262.7,2.9,4,7 +Product 19,273.7,2.9,0,8 +Product 19,266.9,4.4,5,9 +Product 19,276.9,4.9,2,10 +Product 20,290.7,0.4,9,1 +Product 20,284.3,1.1,9,2 +Product 20,286,1.4,10,3 +Product 20,293.6,2.8,10,4 +Product 20,292.9,2.8,6,5 +Product 20,296.4,3.6,0,6 +Product 20,281.4,4,4,7 +Product 20,289.7,4.2,5,8 +Product 20,283.6,4.2,3,9 +Product 20,287.6,4.3,3,10 diff --git a/labs/2022/03-composition/solucoes/README.md b/labs/2022/03-composition/solucoes/README.md new file mode 100644 index 000000000..c7ecf087c --- /dev/null +++ b/labs/2022/03-composition/solucoes/README.md @@ -0,0 +1,52 @@ +# Modelo para Apresentação do Lab03 - Coreografia e Orquestração no Brechó Online + +Estrutura de pastas: + +~~~ +├── README.md <- arquivo apresentando a tarefa +│ +├── images <- arquivos de imagens usadas no documento +│ +└── workflows <- arquivos de workflows +~~~ + +# Aluno +* `` + +## Tarefa 1 - Detalhando a Negociação das Ofertas + +a) Representação do DTO + +> Coloque a imagem PNG do diagrama do DTO, conforme exemplo a seguir: +> +![DTO](images/dto.png) + +b) Diagrama de Componentes e Descrição + +> Coloque a imagem PNG do diagrama de componentes, conforme exemplo a seguir: +> +![Coreografia](images/coreografia.png) +> +> Coloque a imagem PNG dos tópicos associados aos DTOs. Este item é opcional, a associação pode ser feita na descrição. +> +> Escreva uma breve descrição de como a coreografia opera na forma de tópicos, conforme exemplo a seguir: +> +> * passo 1 +> * passo 2 +> * passo 3 + +## Tarefa 2 - Recomendação de Preço + +a) Workflow em Orange para recomendação + +> Coloque a imagem PNG da captura de tela workflow em Orange, conforme exemplo a seguir: +> +![Workflow Orange](images/example-workflow-orange.png) +> +> Coloque um link para o arquivo em Orange – o arquivo deverá estar na pasta workflows (veja estrutura acima). + +b) Workflow em uma representação UML + +> Coloque a imagem PNG da captura de tela workflow em UML, conforme exemplo a seguir: +> +![Workflow UML](images/example-workflow-uml.png) diff --git a/labs/2022/04-mvc/README.md b/labs/2022/04-mvc/README.md new file mode 100644 index 000000000..72baa6af3 --- /dev/null +++ b/labs/2022/04-mvc/README.md @@ -0,0 +1,34 @@ +# MVC e Event-driven App +*Lab de Componentização e Reúso de Software 14/08/2021* + +## Tarefa 1 + +Elabore um protótipo de uma interface gráfica com um usuário no MIT App Inventor que simule uma interface de compra, com as seguintes funcionalidades: +1. apresente uma interface com as seguintes áreas: + * uma lista opções com o nome de três produtos (a sua escolha); + * um quadro de detalhes do produto; + * um campo para o usuário digitar a quantidade que deseja comprar; + * um botão de efetivação da compra; + * um campo de mensagens no rodapé. +2. ao clicar no produto da lista de opções, deve ser apresentado no quadro de detalhamento: + * a imagem do produto; + * seu nome; + * o valor unitário e a unidade (g, kg, l); +3. quando o botão de efetivação da compra for clicado, deve ser mostrado no campo de mensagem (rodapé) os dados da compra sendo efetivada: nome do produto, quantidade e o valor total a ser pago. + +Neste protótipo, não haverá uso de bancos de dados. Tudo será executado + +# Tarefa 2 + +Considere a seguinte abordagem visual para representar os componentes da sua composição e as relações usando uma abordagem dirigida a eventos: + +![MIT App Inventor](images/mit-app-inventor-events.png) + +Apresente um diagrama equivalente para a aplicação que você desenvolveu na Tarefa 1, considerando: +* para cada evento representado pela cláusula do MIT App Inventor [When (...).Click do], deve haver uma interface que gera eventos equivalente, cujo evento é o capturado (no exemplo apresentado, o evento é o Click); +* a geração do evento está sempre associado ao componente que o produz, neste exemplo, é o Button1; +* capture a imagem Box do MIT App Inventor que representa a captura do evento e coloque próximo à interface, como está na ilustração; +* o componente que responde ao evento deve ter uma interface que monitora o respectivo evento; +* capture as instruções executadas quando o evento é capturado e coloque próximo ao evento que responde - conecte essas instruções à interface que recebe o evento e propriedades relacionadas, como ilustra a figura. + +Para construir o diagrama, utilize o [Diagramas de Referência do Lab 04](https://docs.google.com/presentation/d/1QC90mYCfkMdhwZctH1R_JqXZGURLgSJbQNWn4rDR8aU/edit?usp=sharing). diff --git a/labs/2022/04-mvc/images/cartoon-1299393_640.png b/labs/2022/04-mvc/images/cartoon-1299393_640.png new file mode 100644 index 000000000..b076e19a9 Binary files /dev/null and b/labs/2022/04-mvc/images/cartoon-1299393_640.png differ diff --git a/labs/2022/04-mvc/images/mit-app-inventor-events.png b/labs/2022/04-mvc/images/mit-app-inventor-events.png new file mode 100644 index 000000000..4b6a6f2d6 Binary files /dev/null and b/labs/2022/04-mvc/images/mit-app-inventor-events.png differ diff --git a/labs/2022/README.md b/labs/2022/README.md index f969f8d61..0b406e166 100644 --- a/labs/2022/README.md +++ b/labs/2022/README.md @@ -4,6 +4,8 @@ * [Laboratório 1](01-architectures/) * [Laboratório 2](02-design/) +* [Laboratório 3](03-composition/) +* [Laboratório 4](04-mvc/) ## Passos para submissão dos Laboratórios. diff --git a/templates/2022/lab02/README.md b/templates/2022/lab02/README.md index 2da04e818..3d9cbc646 100644 --- a/templates/2022/lab02/README.md +++ b/templates/2022/lab02/README.md @@ -34,7 +34,9 @@ Estrutura de pastas: > Escreva duas breves descrições, conforme exemplos a seguir: > ### Composição Dinâmica -> Aqui vem a breve descrição + +> Aqui vem a breve descrição. + ### Composição Estática > Aqui vem a breve descrição. diff --git a/templates/2022/lab03/README.md b/templates/2022/lab03/README.md new file mode 100644 index 000000000..c21ccb453 --- /dev/null +++ b/templates/2022/lab03/README.md @@ -0,0 +1,60 @@ +# Modelo para Apresentação do Lab03 - Coreografia e Orquestração no Brechó Online + +Estrutura de pastas: + +~~~ +├── README.md <- arquivo apresentando a tarefa +│ +├── images <- arquivos de imagens usadas no documento +│ +└── workflows <- arquivos de workflows +~~~ + +# Aluno +* `` + +## Tarefa 1 - Detalhando a Negociação das Ofertas + +a) Representação do DTO + +> Coloque a imagem PNG do diagrama do DTO, conforme exemplo a seguir: + +![DTO](images/dto.png) + +b) Diagrama de Componentes e Descrição + +> Coloque a imagem PNG do diagrama de componentes, conforme exemplo a seguir: + +![Coreografia](images/coreografia.png) + +> Coloque a imagem PNG dos tópicos associados aos DTOs (veja exemplo a seguir). Este item é opcional, a associação pode ser feita na descrição. + +![Tópicos](images/topicos.png) + +> Escreva uma breve descrição de como a coreografia opera na forma de tópicos, conforme exemplo a seguir: +> +* passo 1 +* passo 2 +* passo 3 + +## Tarefa 2 - Recomendação de Preço + +a) Workflow em Orange para recomendação + +> Coloque a imagem PNG da captura de tela workflow em Orange, conforme exemplo a seguir: + +![Workflow Orange](images/example-workflow-orange.png) + +> Coloque um link para o arquivo em Orange – o arquivo deverá estar na pasta workflows (veja estrutura acima). Coloque os arquivos de dados na mesma pasta. Veja exemplo a seguir: + +[Workflow em Orange](workflows/example-workflow.ows) + +> Ao importar os dados no workflow, é importante que (estando os arquivos na mesma pasta) você escolha a opção [Import relative to workflow file...] como mostra a ilustração a seguir: +> +> ![Import Relative](images/import-relative.png) + +b) Workflow em uma representação UML + +> Coloque a imagem PNG da captura de tela workflow em UML, conforme exemplo a seguir: + +![Workflow UML](images/example-workflow-uml.png) diff --git a/templates/2022/lab03/images/coreografia.png b/templates/2022/lab03/images/coreografia.png new file mode 100644 index 000000000..25dc371d7 Binary files /dev/null and b/templates/2022/lab03/images/coreografia.png differ diff --git a/templates/2022/lab03/images/dto.png b/templates/2022/lab03/images/dto.png new file mode 100644 index 000000000..0f8c2644c Binary files /dev/null and b/templates/2022/lab03/images/dto.png differ diff --git a/templates/2022/lab03/images/example-workflow-orange.png b/templates/2022/lab03/images/example-workflow-orange.png new file mode 100644 index 000000000..90a6d5ed9 Binary files /dev/null and b/templates/2022/lab03/images/example-workflow-orange.png differ diff --git a/templates/2022/lab03/images/example-workflow-uml.png b/templates/2022/lab03/images/example-workflow-uml.png new file mode 100644 index 000000000..213f74c7c Binary files /dev/null and b/templates/2022/lab03/images/example-workflow-uml.png differ diff --git a/templates/2022/lab03/images/import-relative.png b/templates/2022/lab03/images/import-relative.png new file mode 100644 index 000000000..b97cbc66d Binary files /dev/null and b/templates/2022/lab03/images/import-relative.png differ diff --git a/templates/2022/lab03/images/topicos.png b/templates/2022/lab03/images/topicos.png new file mode 100644 index 000000000..34ffcd4dc Binary files /dev/null and b/templates/2022/lab03/images/topicos.png differ diff --git a/templates/2022/lab03/workflows/example-workflow.ows b/templates/2022/lab03/workflows/example-workflow.ows new file mode 100644 index 000000000..1af4b0cd1 --- /dev/null +++ b/templates/2022/lab03/workflows/example-workflow.ows @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + {'_session_items': [], '_session_items_v2': [({'type': 'VarPath', 'name': 'basedir', 'relpath': 'zombie-diet.csv'}, {'encoding': 'utf-8', 'delimiter': ',', 'quotechar': '"', 'doublequote': True, 'skipinitialspace': True, 'quoting': 0, 'columntypes': [{'start': 0, 'stop': 15, 'value': 'Categorical'}, {'start': 15, 'stop': 16, 'value': 'Numeric'}, {'start': 16, 'stop': 17, 'value': 'Categorical'}], 'rowspec': [{'start': 0, 'stop': 1, 'value': 'Header'}], 'decimal_separator': '.', 'group_separator': ''}), ({'type': 'AbsPath', 'path': '/home/santanche/git/ds4h/data/zombie/raw/zombie-diet.csv'}, {'encoding': 'utf-8', 'delimiter': ',', 'quotechar': '"', 'doublequote': True, 'skipinitialspace': True, 'quoting': 0, 'columntypes': [{'start': 0, 'stop': 15, 'value': 'Categorical'}, {'start': 15, 'stop': 16, 'value': 'Numeric'}, {'start': 16, 'stop': 17, 'value': 'Categorical'}], 'rowspec': [{'start': 0, 'stop': 1, 'value': 'Header'}], 'decimal_separator': '.', 'group_separator': ''})], 'compatibility_mode': False, 'controlAreaVisible': True, 'dialog_state': {'directory': '/home/santanche/git/component2learn/templates/2022/lab03/workflows', 'filter': 'Text - comma separated (*.csv, *)'}, 'savedWidgetGeometry': b'\x01\xd9\xd0\xcb\x00\x03\x00\x00\x00\x00\x03x\x00\x00\x01\x8e\x00\x00\x04\xc3\x00\x00\x02\xf6\x00\x00\x03x\x00\x00\x01\xb3\x00\x00\x04\xc3\x00\x00\x02\xf6\x00\x00\x00\x00\x00\x00\x00\x00\x07\x80\x00\x00\x03x\x00\x00\x01\xb3\x00\x00\x04\xc3\x00\x00\x02\xf6', '__version__': 3} + gASV+AIAAAAAAAB9lCiMC2F1dG9fY29tbWl0lIiMEmNvbnRyb2xBcmVhVmlzaWJsZZSIjBNpZ25v +cmVfbmV3X2ZlYXR1cmVzlImME3NhdmVkV2lkZ2V0R2VvbWV0cnmUQ0IB2dDLAAMAAAAAAl4AAAEe +AAAE3QAAAv0AAAJeAAABHgAABN0AAAL9AAAAAAAAAAAHgAAAAl4AAAEeAAAE3QAAAv2UjBJ1c2Vf +aW5wdXRfZmVhdHVyZXOUiYwLX192ZXJzaW9uX1+USwGMEGNvbnRleHRfc2V0dGluZ3OUXZSMFW9y +YW5nZXdpZGdldC5zZXR0aW5nc5SMB0NvbnRleHSUk5QpgZR9lCiMBnZhbHVlc5R9lCiMEWRvbWFp +bl9yb2xlX2hpbnRzlH2UKIwLYml0dGVyIGhlcmKUSwGGlIwJYXR0cmlidXRllEsAhpSMBXNsdWdz +lEsBhpRoFUsBhpSMCmNvb2tlZCB2ZWeUSwGGlGgVSwKGlIwKZ2lhbnQgbWVhdJRLAYaUaBVLA4aU +jAdyYXcgdmVnlEsBhpRoFUsEhpSMB2Rlc3NlcnSUSwGGlGgVSwWGlIwIcG90YXRvZXOUSwGGlGgV +SwaGlIwKZ3JlZW4gbWVhdJRLAYaUaBVLB4aUjARlZ2dzlEsBhpRoFUsIhpSMBWJlYW5zlEsBhpRo +FUsJhpSMBWhvbmV5lEsBhpRoFUsKhpSMBGZpc2iUSwGGlGgVSwuGlIwEbWlsa5RLAYaUaBVLDIaU +jAVjaGlsaZRLAYaUaBVLDYaUjAlmcmllZCB2ZWeUSwGGlGgVSw6GlIwKY3VwcyB3YXRlcpRLAoaU +aBVLD4aUjAZyZWdpb26USwGGlIwFY2xhc3OUSwCGlHVK/v///4aUaAdLAXWMCmF0dHJpYnV0ZXOU +fZQoaBNLAWgXSwFoGksBaB1LAWggSwFoI0sBaCZLAWgpSwFoLEsBaC9LAWgySwFoNUsBaDhLAWg7 +SwFoPksBaEFLAmhESwF1jAVtZXRhc5R9lHViYXUu + + {'auto_apply': True, 'binary_trees': True, 'controlAreaVisible': True, 'learner_name': '', 'limit_depth': True, 'limit_majority': True, 'limit_min_internal': True, 'limit_min_leaf': True, 'max_depth': 100, 'min_internal': 5, 'min_leaf': 2, 'savedWidgetGeometry': b'\x01\xd9\xd0\xcb\x00\x03\x00\x00\x00\x00\x02\x11\x00\x00\x00\xa2\x00\x00\x03\x8d\x00\x00\x02>\x00\x00\x02\x11\x00\x00\x00\xa2\x00\x00\x03\x8d\x00\x00\x02>\x00\x00\x00\x00\x00\x00\x00\x00\x05V\x00\x00\x02\x11\x00\x00\x00\xa2\x00\x00\x03\x8d\x00\x00\x02>', 'sufficient_majority': 95, '__version__': 1} + {'_session_items': [], '_session_items_v2': [({'type': 'VarPath', 'name': 'basedir', 'relpath': 'zombie-diet-predict.csv'}, {'encoding': 'utf-8', 'delimiter': ',', 'quotechar': '"', 'doublequote': True, 'skipinitialspace': True, 'quoting': 0, 'columntypes': [{'start': 0, 'stop': 15, 'value': 'Categorical'}, {'start': 15, 'stop': 16, 'value': 'Numeric'}, {'start': 16, 'stop': 17, 'value': 'Categorical'}], 'rowspec': [{'start': 0, 'stop': 1, 'value': 'Header'}], 'decimal_separator': '.', 'group_separator': ''}), ({'type': 'AbsPath', 'path': '/home/santanche/git/ds4h/data/zombie/raw/zombie-diet-predict.csv'}, {'encoding': 'utf-8', 'delimiter': ',', 'quotechar': '"', 'doublequote': True, 'skipinitialspace': True, 'quoting': 0, 'columntypes': [{'start': 0, 'stop': 15, 'value': 'Categorical'}, {'start': 15, 'stop': 16, 'value': 'Numeric'}, {'start': 16, 'stop': 17, 'value': 'Categorical'}], 'rowspec': [{'start': 0, 'stop': 1, 'value': 'Header'}], 'decimal_separator': '.', 'group_separator': ''})], 'compatibility_mode': False, 'controlAreaVisible': True, 'dialog_state': {'directory': '/home/santanche/git/component2learn/templates/2022/lab03/workflows', 'filter': 'Text - comma separated (*.csv, *)'}, 'savedWidgetGeometry': b'\x01\xd9\xd0\xcb\x00\x03\x00\x00\x00\x00\x02\xf8\x00\x00\x01G\x00\x00\x04C\x00\x00\x02\xaf\x00\x00\x02\xf8\x00\x00\x01l\x00\x00\x04C\x00\x00\x02\xaf\x00\x00\x00\x00\x00\x00\x00\x00\x07\x80\x00\x00\x02\xf8\x00\x00\x01l\x00\x00\x04C\x00\x00\x02\xaf', '__version__': 3} + gASV+AIAAAAAAAB9lCiMC2F1dG9fY29tbWl0lIiMEmNvbnRyb2xBcmVhVmlzaWJsZZSIjBNpZ25v +cmVfbmV3X2ZlYXR1cmVzlImME3NhdmVkV2lkZ2V0R2VvbWV0cnmUQ0IB2dDLAAMAAAAAAl4AAAEe +AAAE3QAAAv0AAAJeAAABHgAABN0AAAL9AAAAAAAAAAAHgAAAAl4AAAEeAAAE3QAAAv2UjBJ1c2Vf +aW5wdXRfZmVhdHVyZXOUiYwLX192ZXJzaW9uX1+USwGMEGNvbnRleHRfc2V0dGluZ3OUXZSMFW9y +YW5nZXdpZGdldC5zZXR0aW5nc5SMB0NvbnRleHSUk5QpgZR9lCiMBnZhbHVlc5R9lCiMEWRvbWFp +bl9yb2xlX2hpbnRzlH2UKIwLYml0dGVyIGhlcmKUSwGGlIwJYXR0cmlidXRllEsAhpSMBXNsdWdz +lEsBhpRoFUsBhpSMCmNvb2tlZCB2ZWeUSwGGlGgVSwKGlIwKZ2lhbnQgbWVhdJRLAYaUaBVLA4aU +jAdyYXcgdmVnlEsBhpRoFUsEhpSMB2Rlc3NlcnSUSwGGlGgVSwWGlIwIcG90YXRvZXOUSwGGlGgV +SwaGlIwKZ3JlZW4gbWVhdJRLAYaUaBVLB4aUjARlZ2dzlEsBhpRoFUsIhpSMBWJlYW5zlEsBhpRo +FUsJhpSMBWhvbmV5lEsBhpRoFUsKhpSMBGZpc2iUSwGGlGgVSwuGlIwEbWlsa5RLAYaUaBVLDIaU +jAVjaGlsaZRLAYaUaBVLDYaUjAlmcmllZCB2ZWeUSwGGlGgVSw6GlIwKY3VwcyB3YXRlcpRLAoaU +aBVLD4aUjAZyZWdpb26USwGGlIwFY2xhc3OUSwCGlHVK/v///4aUaAdLAXWMCmF0dHJpYnV0ZXOU +fZQoaBNLAWgXSwFoGksBaB1LAWggSwFoI0sBaCZLAWgpSwFoLEsBaC9LAWgySwFoNUsBaDhLAWg7 +SwFoPksBaEFLAmhESwF1jAVtZXRhc5R9lHViYXUu + + gASV3gEAAAAAAAB9lCiMEmNvbnRyb2xBcmVhVmlzaWJsZZSIjBNzYXZlZFdpZGdldEdlb21ldHJ5 +lENCAdnQywADAAAAAABEAAAAGwAAB38AAAQ3AAACXgAAAR4AAATdAAAC/QAAAAACAAAAB4AAAABE +AAAAQAAAB38AAAQ3lIwJc2VsZWN0aW9ulF2USwFhjAtzaG93X3Njb3Jlc5SIjAtzY29yZV90YWJs +ZZR9lIwMc2hvd25fc2NvcmVzlI+UKIwJUHJlY2lzaW9ulIwGUmVjYWxslIwCUjKUjAdDLUluZGV4 +lIwEUk1TRZSMA01BRZSMAkYxlIwDTVNFlIwCQ0GUjANBVUOUkHOMC19fdmVyc2lvbl9flEsBjBBj +b250ZXh0X3NldHRpbmdzlF2UjBVvcmFuZ2V3aWRnZXQuc2V0dGluZ3OUjAdDb250ZXh0lJOUKYGU +fZQojAZ2YWx1ZXOUfZQojAtzaG93bl9wcm9ic5RLAYwMdGFyZ2V0X2NsYXNzlIwWKEF2ZXJhZ2Ug +b3ZlciBjbGFzc2VzKZRoB32UaBVLAXWMB2NsYXNzZXOUKIwGZm9yZXN0lIwJaGlnaGxhbmRzlIwJ +bW91bnRhaW5zlIwFbm9ydGiUjAVzb3V0aJR0lHViYXUu + + {'auto_commit': True, 'color_by_class': True, 'controlAreaVisible': True, 'dist_color_RGB': (220, 220, 220, 255), 'savedWidgetGeometry': b'\x01\xd9\xd0\xcb\x00\x03\x00\x00\x00\x00\x00D\x00\x00\x00\x1b\x00\x00\x07@\x00\x00\x03j\x00\x00\x00D\x00\x00\x00@\x00\x00\x07@\x00\x00\x03j\x00\x00\x00\x00\x00\x00\x00\x00\x07\x80\x00\x00\x00D\x00\x00\x00@\x00\x00\x07@\x00\x00\x03j', 'select_rows': True, 'selected_cols': [], 'selected_rows': [], 'show_attribute_labels': True, 'show_distributions': False, '__version__': 2} + + + + + diff --git a/templates/2022/lab03/workflows/zombie-diet-predict.csv b/templates/2022/lab03/workflows/zombie-diet-predict.csv new file mode 100644 index 000000000..2a4e52620 --- /dev/null +++ b/templates/2022/lab03/workflows/zombie-diet-predict.csv @@ -0,0 +1,12 @@ +bitter herb,slugs,cooked veg,giant meat,raw veg,dessert,potatoes,green meat,eggs,beans,honey,fish,milk,chili,fried veg,cups water,region +0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,4,south +1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,3,north +1,0,1,0,1,0,0,0,0,1,0,0,0,0,0,7,mountains +0,0,0,1,0,1,1,1,0,1,0,1,1,0,1,1,north +0,1,1,0,1,1,1,0,1,1,0,0,1,0,0,2,highlands +0,1,1,0,1,1,1,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,0,1,0,1,1,0,0,1,1,0,1,1,forest +1,0,0,1,1,0,0,1,1,1,0,0,1,0,0,3,north +0,0,1,0,1,0,0,0,0,1,1,0,0,0,0,7,mountains +1,0,0,1,0,0,1,1,0,1,0,0,1,0,1,5,north +0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,2,highlands diff --git a/templates/2022/lab03/workflows/zombie-diet.csv b/templates/2022/lab03/workflows/zombie-diet.csv new file mode 100644 index 000000000..d0b72a11a --- /dev/null +++ b/templates/2022/lab03/workflows/zombie-diet.csv @@ -0,0 +1,102 @@ +bitter herb,slugs,cooked veg,giant meat,raw veg,dessert,potatoes,green meat,eggs,beans,honey,fish,milk,chili,fried veg,cups water,region +1,0,0,1,0,0,1,1,1,1,0,0,0,0,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +0,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,forest +1,0,0,1,0,0,1,1,1,1,0,0,0,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,1,1,5,north +0,0,1,0,0,1,0,1,1,0,0,1,1,1,0,1,forest +0,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,forest +1,0,0,1,0,0,0,1,1,1,0,0,0,1,0,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +0,1,1,0,1,0,0,0,1,1,0,0,1,1,0,3,highlands +0,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,forest +0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,south +0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,5,south +0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,7,south +0,1,1,0,1,0,1,0,1,1,0,0,1,0,0,3,highlands +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +0,0,1,0,0,1,1,1,1,0,0,1,1,0,1,1,forest +0,0,0,1,0,1,1,1,1,1,0,1,1,0,1,1,north +0,1,1,0,1,0,0,0,1,1,0,0,1,1,0,3,highlands +0,1,1,0,1,1,0,0,1,1,0,0,1,0,0,3,highlands +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +0,1,1,0,1,0,0,0,1,1,0,0,1,0,1,3,highlands +0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,7,mountains +0,0,1,0,0,1,1,1,1,1,0,0,0,0,0,5,coast +0,0,1,0,0,1,1,1,1,1,1,0,0,0,0,5,coast +1,0,0,1,1,0,0,1,1,1,0,0,1,0,0,3,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,0,1,1,3,north +0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,7,mountains +1,0,0,1,0,0,0,1,1,1,0,0,1,1,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,3,north +0,1,1,0,1,1,1,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,0,1,0,1,1,0,0,1,1,0,0,1,forest +1,0,0,1,0,0,0,1,1,1,0,0,1,1,0,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,0,5,north +0,1,1,0,1,0,1,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,forest +1,0,1,0,1,0,0,0,0,1,1,0,0,1,0,7,mountains +1,0,1,0,1,0,0,0,0,1,0,0,0,0,0,7,mountains +0,1,1,0,0,0,1,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,1,0,1,0,0,1,0,0,0,0,0,7,mountains +0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,3,highlands +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,7,south +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,1,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,0,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,1,0,1,0,0,0,0,1,0,0,0,0,0,7,mountains +0,0,1,0,0,1,1,1,1,1,0,0,1,0,0,5,coast +0,0,1,0,0,1,1,0,0,0,0,0,0,0,1,9,south +1,0,0,1,0,0,1,1,1,1,0,0,1,0,0,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,5,north +0,1,1,0,0,0,0,0,1,1,0,0,1,0,1,3,highlands +0,1,1,0,1,0,0,0,1,1,0,0,1,1,0,3,highlands +0,1,1,0,0,1,1,0,1,1,0,0,1,0,1,3,highlands +0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,0,1,1,1,1,0,0,1,1,0,1,1,forest +0,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,forest +0,0,1,0,0,0,1,1,1,1,1,0,1,0,0,1,savanna +1,0,1,1,0,1,1,0,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,1,1,5,north +0,0,0,1,0,1,1,1,1,1,0,1,1,0,1,1,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,1,1,5,north +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +1,0,0,1,0,0,0,1,1,1,0,0,1,1,1,5,north +0,1,1,0,0,0,1,0,1,1,0,0,1,0,1,3,highlands +0,0,0,0,0,0,1,0,0,1,1,0,1,0,0,9,south +0,0,1,0,0,1,0,1,1,0,0,1,1,0,0,1,forest +1,0,0,1,0,1,1,1,1,1,0,1,0,0,1,1,north +1,0,0,1,0,1,1,1,1,1,0,1,1,0,1,3,north +0,0,0,0,0,1,1,1,1,0,1,0,1,0,0,1,savanna +0,0,1,0,0,1,1,0,0,0,1,0,0,0,0,1,south +0,1,1,0,1,1,1,0,1,1,0,0,1,0,0,3,highlands +0,1,1,0,1,1,1,0,1,1,0,0,1,0,0,3,highlands +0,0,1,0,0,0,1,1,1,1,0,0,1,0,0,1,savanna +0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,1,south +0,0,1,0,0,1,0,1,1,0,0,1,1,0,0,1,forest +0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,3,highlands +1,0,0,1,0,0,0,1,1,1,0,0,1,0,0,3,north +0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,6,south +0,0,1,0,0,1,1,1,1,0,1,1,1,0,1,1,forest +0,1,1,0,1,1,0,0,1,1,0,0,1,0,1,3,highlands +0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,7,mountains +0,0,1,0,0,1,0,1,1,1,0,0,0,0,0,5,coast +0,0,1,0,0,0,0,0,1,1,0,0,1,0,1,5,savanna +0,0,1,0,0,0,1,1,1,1,0,0,1,0,0,5,savanna +0,0,1,0,0,1,1,1,1,0,0,1,1,0,1,1,forest +1,0,0,1,1,0,0,1,1,1,0,0,1,0,0,3,north +1,0,0,1,0,0,0,1,1,1,0,0,1,0,0,5,north +0,1,1,0,1,0,1,0,1,1,0,0,1,0,1,3,highlands +1,0,0,1,0,0,0,1,1,1,0,0,1,0,1,3,north +1,0,1,0,1,0,0,0,0,1,1,0,0,0,0,7,mountains +1,0,0,1,0,0,1,1,1,1,0,0,1,0,1,5,north +0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,1,south +0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,3,highlands diff --git a/templates/2022/lab04/README.md b/templates/2022/lab04/README.md new file mode 100644 index 000000000..f1602b684 --- /dev/null +++ b/templates/2022/lab04/README.md @@ -0,0 +1,32 @@ +# Modelo para Apresentação do Lab04 - MVC + +Estrutura de pastas: + +~~~ +├── README.md <- arquivo apresentando a tarefa +│ +├── images <- arquivos de imagens usadas no documento +│ +└── app <- apps do MIT App Inventor exportados em formato `aia` +~~~ + +# Aluno +* `` + +# Tarefa 1 - App no MIT App Inventor + +> Coloque as imagens PNG da captura de seis telas do seu aplicativo: +> * tela 1 - captura da tela completa de design de interface +> * tela 2 - captura de tela do app com nenhum produto selecionado +> * tela 3 - captura de tela do app com primeiro produto selecionado +> * tela 4 - captura de tela do app com segundo produto selecionado +> * tela 5 - compra de um dos produtos efetivada +> * tela 6 - diagrama de blocos do aplicativo +> +> Coloque um link para o arquivo do aplicativo exportado a partir do MIT App Inventor em formato `aia`. Ele estará dentro da pasta `app`. + +# Tarefa 2 - Diagrama de Componentes dirigida a Eventos + +> Coloque a imagem PNG do diagrama, conforme exemplo a seguir: +> +> ![Diagrama Eventos](images/mit-app-inventor-events.png) diff --git a/templates/2022/lab04/images/aplicativo.png b/templates/2022/lab04/images/aplicativo.png new file mode 100644 index 000000000..a660ed915 Binary files /dev/null and b/templates/2022/lab04/images/aplicativo.png differ diff --git a/templates/2022/lab04/images/blocks.png b/templates/2022/lab04/images/blocks.png new file mode 100644 index 000000000..7ad1fb936 Binary files /dev/null and b/templates/2022/lab04/images/blocks.png differ diff --git a/templates/2022/lab04/images/design.png b/templates/2022/lab04/images/design.png new file mode 100644 index 000000000..c5427bf32 Binary files /dev/null and b/templates/2022/lab04/images/design.png differ diff --git a/templates/2022/lab04/images/mit-app-inventor-events.png b/templates/2022/lab04/images/mit-app-inventor-events.png new file mode 100644 index 000000000..4b6a6f2d6 Binary files /dev/null and b/templates/2022/lab04/images/mit-app-inventor-events.png differ