Difference between revisions of "Linguagens para Aplicação Comercial (UFBA 2009.1)"

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(Aula do dia 10/03/2009)
(Resultado da Prova Final)
 
(142 intermediate revisions by the same user not shown)
Line 8: Line 8:
 
**[http://standards.iso.org/ittf/PubliclyAvailableStandards/c042926_ISO_IEC_23270_2006(E).zip ISO/IEC 23270:2006].
 
**[http://standards.iso.org/ittf/PubliclyAvailableStandards/c042926_ISO_IEC_23270_2006(E).zip ISO/IEC 23270:2006].
 
**[http://msdn.microsoft.com/en-us/vcsharp/aa336809.aspx The C# language]
 
**[http://msdn.microsoft.com/en-us/vcsharp/aa336809.aspx The C# language]
 +
*Padrões do Framework .NET
 +
**[http://msdn.microsoft.com/en-us/aa569283.aspx ECMA C# and Common Language Infrastructure Standards].
 
*Acesso a Banco de dados em .NET
 
*Acesso a Banco de dados em .NET
 
**[http://msdn.microsoft.com/en-us/library/e80y5yhx(VS.80).aspx ADO.NET]
 
**[http://msdn.microsoft.com/en-us/library/e80y5yhx(VS.80).aspx ADO.NET]
Line 13: Line 15:
 
*Projeto Mono e Documentação
 
*Projeto Mono e Documentação
 
**[http://www.go-mono.com/ Projeto Mono (.NET para Linux)]
 
**[http://www.go-mono.com/ Projeto Mono (.NET para Linux)]
**[http://www.go-mono.com/docs/ Mono documentation library]
+
**[http://www.go-mono.com/docs/ Mono documentation library].
 +
*Java & C#
 +
**[http://www.ikvm.net/ IKVM].
 +
*IDEs
 +
**Windows
 +
***[http://www.icsharpcode.net/OpenSource/SD/ SharpDevelop (#develop)].
 +
***[http://www.microsoft.com/express/vcsharp/ Visual C# Express].
 +
**Linux
 +
***[http://monodevelop.com/ MonoDevelop].
 +
*Compiladores
 +
**Windows: [http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6 Microsoft .NET Framework 3.5].
 +
**Linux, Mac, Windows: [http://www.mono-project.com/ Mono].
  
 
== Avaliações ==
 
== Avaliações ==
Line 27: Line 40:
 
== Especificação de trabalho ==
 
== Especificação de trabalho ==
 
*[[Mini-seminário:  Linguagens para Aplicação Comercial (UFBA 2009.1)|Mini-seminário]].
 
*[[Mini-seminário:  Linguagens para Aplicação Comercial (UFBA 2009.1)|Mini-seminário]].
 +
**11/03/2009 - JPA: Ramon Pereira Lopes.
 +
**18/03/2009 - Reflection em Java: Marcus Vinicius Lacerda Fagundes.
 +
**24/03/2009 - Shell Script: Bruno Guimarães Souza.
 +
**31/03/2009 - Beans Binding: Gustavo Ramos.
 +
**07/04/2009 - PHP+AJAX+MySql: Adson Vinícius.
 +
**07/04/2009 - Monodevelop: Tiago Trocoli.
 +
**05/05/2009 - Maker: Timoteo Araujo Oliveira de Sales.
 +
**12/05/2009 - NHibernate: Anderson Martins.
 +
**12/05/2009 - System.Security, System.Security.Cryptography: Fábio Novais
 +
**19/05/2009 - Nunit: Anderson Martiniano.
 +
**(Não apresentado) 26/05/2009 - SharpDevelop: Alexandre Silva.
 +
**26/05/2009 - Visual Basic 6: Silas Queiroz Silva.
 +
**26/05/2009 - PHP: Acássio Queiroz.
 +
**02/06/2009 - Cobol: Luis Bernardo.
 +
**02/06/2009 - Delphi: Arleson Nunes.
 +
**02/06/2009 - System.Drawing: Victor Lopes.
 +
**02/06/2009 - Mono.Unix: Cleber Pinelli.
 
*[[Trabalho semestral: Linguagens para Aplicação Comercial (UFBA 2009.1)|Trabalho semestral]].
 
*[[Trabalho semestral: Linguagens para Aplicação Comercial (UFBA 2009.1)|Trabalho semestral]].
  
Line 43: Line 73:
 
;Atividade
 
;Atividade
 
:Mini-seminário
 
:Mini-seminário
::Ramon Pereira Lopes: Java Persistence API (JPA) [http://en.wikipedia.org/wiki/Java_Persistence_API] [http://java.sun.com/javaee/technologies/persistence.jsp].
+
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/RAMON_JPA.pdf Ramon Pereira Lopes: Java Persistence API (JPA)] [http://en.wikipedia.org/wiki/Java_Persistence_API] [http://java.sun.com/javaee/technologies/persistence.jsp] [http://java.sun.com/developer/technicalArticles/J2EE/jpa/].
 +
:::Faltou código.
 
;Assuntos
 
;Assuntos
 
:Questões de legibilidade e qualidade de código em aplicações comerciais.
 
:Questões de legibilidade e qualidade de código em aplicações comerciais.
Line 51: Line 82:
 
::Refatoração.
 
::Refatoração.
 
:Conceitos de teste de unidade e importância em aplicações comerciais.
 
:Conceitos de teste de unidade e importância em aplicações comerciais.
 +
;Link sugerido
 +
:[http://java.sun.com/products/ejb/ Enterprise JavaBeans Technology].
 +
;Problemas propostos
 +
:[[C: Problema da média|Problema da média]].
 +
 +
=== Aula do dia 17/03/2009 ===
 +
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/MARCUS_JAVA_REFLECTION.pdf Marcus Lacerda: Java Reflection].
 +
:::''Applet'' se escreve assim.
 +
:::Faltou código.
 +
;Assuntos
 
:A plataforma .NET.
 
:A plataforma .NET.
 
::Framework Microsoft .NET.
 
::Framework Microsoft .NET.
Line 59: Line 102:
 
::Contexto de criação.
 
::Contexto de criação.
 
::Tipos de dados básicos.
 
::Tipos de dados básicos.
::Vetores e matrizes.
 
 
::Classes.
 
::Classes.
 
:::Campos.
 
:::Campos.
Line 71: Line 113:
 
::Instruções de controle.
 
::Instruções de controle.
 
:::Seleção (if e switch).
 
:::Seleção (if e switch).
:::Repetição (for, foreach, while e do).
+
:::Repetição (for, while e do).
 
;Link sugerido
 
;Link sugerido
:[http://java.sun.com/developer/technicalArticles/J2EE/jpa/ The Java Persistence API - A Simpler Programming Model for Entity Persistence].
 
 
:[http://en.csharp-online.net/CSharp_Overview C# Overview].
 
:[http://en.csharp-online.net/CSharp_Overview C# Overview].
 +
:[http://msdn.microsoft.com/en-us/library/26etazsy.aspx Formatting Overview].
 
;Problemas propostos
 
;Problemas propostos
:[[C: Problema da média|Problema da média]].
 
 
:[[C: Problema do número espelho|Problema do número espelho]].
 
:[[C: Problema do número espelho|Problema do número espelho]].
 
:[[C: Problema da seqüência de Fibonacci|Problema da seqüência de Fibonacci]].
 
:[[C: Problema da seqüência de Fibonacci|Problema da seqüência de Fibonacci]].
  
=== Aula do dia 17/03/2009 ===
+
=== Aula do dia 24/03/2009 ===
;Atividade  
+
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/BRUNO_SHELL_SCRIPT.pdf Bruno Guimarães Sousa: Shell script].
 +
:::Faltou código.
 
;Assuntos
 
;Assuntos
:A linguagem de programação C#  
+
:A linguagem de programação C#
 +
::Vetores e matrizes.
 +
::Instruções de controle.
 +
:::Repetição (foreach).
 
::Exceções
 
::Exceções
 
:::Lançamento.
 
:::Lançamento.
Line 89: Line 136:
 
:::Criação.
 
:::Criação.
 
;Problemas propostos
 
;Problemas propostos
 +
:[[Problema do giro da palavra]].
 +
:[[Problema da fragmentação de memória]].
  
=== Aula do dia 24/03/2009 ===
+
=== Aula do dia 31/03/2009 ===
 
;Atividade
 
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/GUSTAVO_JBB.pdf Gustavo Ramos: Java Beans Binding].
 +
:::Faltou a paginação.
 +
:::O máximo eram 2 páginas (e não 4).
 
;Assuntos
 
;Assuntos
 
:A linguagem de programação C#  
 
:A linguagem de programação C#  
::Coleções (System.Collections).
+
::Classes.
;Problemas propostos
+
:::Classes abstratas.
 
+
::Herança.
=== Aula do dia 31/03/2009 ===
+
::Interface.
;Atividade
+
;Assuntos
+
:A linguagem de programação C#
+
::Coleções genéricas (System.Collections.Generics)
+
 
;Problemas propostos
 
;Problemas propostos
 +
:[[CSharp: Exercício herança (Pessoa)]].
 +
:[[Problema da escrita no celular]].
  
 
=== Aula do dia 07/04/2009 ===
 
=== Aula do dia 07/04/2009 ===
 
;Atividade
 
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/AJAX_ADSON.pdf Adson Vinícius: Ajax com PHP e MySql].
 +
:::Faltou a paginação.
 +
:::Faltou o código.
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/TIAGO_MONODEVELOP.pdf Monodevelop: Tiago Trocoli].
 +
:::Introdução com vários erros e inclusive acho que está faltando o restante do texto.
 +
:::Erro de concordância em "...permitir às pessoas que venha a adquirir...".
 +
:::Várias palavras estão "quebradas" por espaço no meio.
 +
:::"...mais pra essa linguagem". Pra?
 +
:::O último parágrafo dos Pontos Negativos está confuso e tem um erro de concordância em "Ser mais especializadas".
 +
:::Novamente erro de concordância "Muito dos ambientes".
 +
:::Série tem acento.
 +
:Compartilhamento de soluções:
 +
::Anderson Martins: [[Solução: CSharp: Exercício herança (Pessoa) (Anderson Martins)]].
 +
::Acássio Queiroz: [[Solução: Problema do giro da palavra (Acássio Queiroz)]].
 +
::Adson Vinícius: [[Solução: Problema do giro da palavra (Adson Vinícius)]].
 +
::Cleber Pinelli: [[Solução: Problema do giro da palavra (Cleber Pinelli)]].
 +
::Gustavo Ramos: [[Solução: Problema da escrita no celular (Gustavo Ramos)]].
 +
::Arleson Nunes: [[Solução: Problema da fragmentação de memória (Arleson Nunes)]].
 +
::Marcus Vinícius: [[Solução: Problema da fragmentação de memória (Marcus Vinícius)]].
 +
::Fábio Novais: [[Solução: Problema da seqüência de Fibonacci (Fábio Novais)]].
 +
::Timoteo Sales: [[Solução: Problema do número espelho (Timoteo Sales)]].
 
;Assuntos
 
;Assuntos
:Tópicos de programação comercial na plataforma .NET utilizando C#
+
:Revisão para a prova.
::Acesso a banco de dados
+
:::Language Integrated Query (Linq).
+
;Problemas propostos
+
 
+
=== Aula do dia 11/04/2009 (sábado) ===
+
;Atividade
+
:Revisão dos conceitos.
+
;Problemas propostos
+
  
 
=== Aula do dia 14/04/2009 ===
 
=== Aula do dia 14/04/2009 ===
 
;Atividade  
 
;Atividade  
:Prova I.
+
:Prova I
 +
::[[Problema do jogo do milhão]].
 +
::[[Problema do número de telefone]].
 +
::[[Problema das moléculas da vida]].
  
 
=== Aula do dia 28/04/2009 ===
 
=== Aula do dia 28/04/2009 ===
 
;Atividade  
 
;Atividade  
:Prova I (segunda chamada).
 
 
:Apresentação dos trabalhos semestrais (primeira parte).
 
:Apresentação dos trabalhos semestrais (primeira parte).
 +
::'''Equipe 1''' - Tema foco da apresentação: Velocity.
 +
:::Componentes
 +
::::Cleber Pinelli
 +
::::Marcus Vinícius
 +
::::Ramon Lopes
 +
:::Assuntos
 +
::::Java.
 +
::::Beans Binding.
 +
::::Swing.
 +
::::[http://velocity.apache.org/ Velocity] [http://en.wikipedia.org/wiki/Apache_Velocity].
 +
:::Produção
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_1_DOCUMENTO.pdf Documento].
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_1_SLIDES.pdf Slides].
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_1_DEMO.tar.gz Demo].
 +
::'''Equipe 2''' - Tema foco da apresentação: Java Server Faces (JSF).
 +
:::Componentes
 +
::::Anderson Martiniano
 +
::::Alexandre Silva
 +
::::Tiago Trocoli
 +
:::Assuntos
 +
::::Java.
 +
::::[http://java.sun.com/javaee/javaserverfaces/ Java Server Faces (JSF)].
 +
::::Hibernate.
 +
::::JBoss.
 +
:::Produção
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_2_DOCUMENTO.pdf Documento].
 +
::'''Equipe 3''' - Tema foco da apresentação: Windows.Forms.
 +
:::Componentes
 +
::::Andeson Martins
 +
::::Fábio Novais
 +
::::Arleson Nunes
 +
::::Silas Queiroz
 +
:::Assuntos
 +
::::C#.
 +
::::[http://windowsclient.net/ Windows.Forms]. [http://en.wikipedia.org/wiki/Windows_Formshttp://en.wikipedia.org/wiki/Windows_Forms].
 +
::::SQL Server 2005.
 +
:::Produção
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_3_DOCUMENTO.pdf Documento].
 +
::'''Equipe 4''' - Tema foco da apresentação: Ruby on Rails.
 +
:::Componentes
 +
::::Bruno Sousa
 +
::::Luis Braga
 +
::::Timoteo Sales
 +
:::Assuntos
 +
::::[http://rubyonrails.org/ Ruby on Rails].
 +
:::Produção
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_4_DOCUMENTO.pdf Documento].
 +
::'''Equipe 5''' - Tema foco da apresentação: Richfaces.
 +
:::Componentes
 +
::::Acássio Queiroz.
 +
::::Adson Vinícius.
 +
::::Gustavo Ramos.
 +
:::Assuntos
 +
::::Java.
 +
::::[http://www.jboss.org/jbossrichfaces/ Richfaces].
 +
::::Facelets.
 +
::::JPA.
 +
::::Hibernate.
 +
::::EJB 3.0.
 +
:::Produção
 +
::::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_5_DOCUMENTO.pdf Documento].
 +
::'''Equipe 6''' - Tema foco da apresentação: PHP & CakePHP - '''não apresentado'''.
 +
:::Componentes
 +
::::Bruno Blumetti
 +
::::Victor Rafael
 +
:::Assuntos
 +
::::PHP.
 +
::::[http://cakephp.org/ CakePHP].
  
 
=== Aula do dia 05/05/2009 ===
 
=== Aula do dia 05/05/2009 ===
;Atividade  
+
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/TIMOTEO_MAKER.pdf Timóteo Oliveira: Maker].
 +
:::''Abstract'' sem sentido do meio para o final (foi traduzido automaticamente?).
 +
:::Faltou paginação.
 +
:::Erro de concordância "...as intermináveis linhas de código, que possui uma complexa documentação".
 +
:::Falta crase: "A POE está ligada as ações do usuário...".
 +
:::Falta a nota de rodapé 1 para: "...funcionam no Windows, Linux ou Mac".
 +
:::O máximo era de 2 laudas.
 +
:Resultado e comentário da Prova I
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVI.pdf Resultados dos testes e notas].
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVI_TESTES.zip Testes executados].
 
;Assuntos
 
;Assuntos
 
:A linguagem de programação C#  
 
:A linguagem de programação C#  
 +
::Coleções (System.Collections).
 +
::Coleções genéricas (System.Collections.Generics)
 
::Classes.
 
::Classes.
 +
:::Médotos, propriedades e campos estáticos.
 
:::Indexadores.
 
:::Indexadores.
 
:::Palavra chave partial.
 
:::Palavra chave partial.
::Herança.
 
::Interface.
 
 
::Delegates.
 
::Delegates.
 
::Métodos anônimos.
 
::Métodos anônimos.
 
:::Expressões lambda.
 
:::Expressões lambda.
 
;Problemas propostos
 
;Problemas propostos
 +
:[[Problema do mercadinho do Zéstoque]].
 +
:[[Problema do dicionário de sinônimos]].
 +
 +
=== Aula do dia 09/05/2009 (sábado, 13 horas, sala 151) ===
 +
;Assuntos
 +
:Tópicos de programação comercial na plataforma .NET utilizando C#
 +
::Acesso a banco de dados.
 +
:::ActiveX Data Objects (ADO.NET).
 +
;Links sugeridos
 +
:[http://dev.mysql.com/downloads/connector/net/6.0.html Connector/Net 6.0].
 +
;Problemas propostos
 +
:Criar um comunicador para o MySql.
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/professor/dbcmdnet.zip Código exemplo].
  
 
=== Aula do dia 12/05/2009 ===
 
=== Aula do dia 12/05/2009 ===
;Atividade  
+
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ANDERSON_MARTINS_NHIBERNATE.pdf Anderson Martins: NHibernate].
 +
:::Faltou o til no título da seção conclusão.
 +
:::Faltou código.
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/FABIO_NOVAIS_SYS_SEC.pdf Fábio Novais: System.Security, System.Security.Cryptography].
 +
:::No lugar de "...confiança, mas ainda sim..." não seria "...confiança, mas ainda assim..."?
 +
:::Não faça citação ao link e sim ao autor do mesmo, coloque o documento nas referências.
 
;Assuntos
 
;Assuntos
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
 
::Acesso a arquivos.
 
::Acesso a arquivos.
 +
;Código exemplo
 +
:[[headtail.cs]] - versão 1.
 
;Problemas propostos
 
;Problemas propostos
 +
:[[Problema do conteúdo do arquivo]].
 +
 +
=== Aula do dia 19/05/2009 ===
 +
;Atividade
 +
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/MARTINIANO_NUNIT_DOC.pdf Anderson Martiniano: Nunit] ([http://www.adonaimedrado.pro.br/wiki/documentos/alunos/MARTINIANO_NUNIT_SLIDE.pdf Slides] e [http://www.adonaimedrado.pro.br/wiki/documentos/alunos/MARTINIANO_NUNIT_EXEMPLO.zip Exemplo]).
 +
:::Erro de concordância em "O NUnit aparece como um excelente ferramenta".
 +
;Assuntos
 +
:Tópicos de programação comercial na plataforma .NET utilizando C#
 +
::Escrita em arquivos.
 +
:Introdução a Linq.
 +
;Código exemplo
 +
:[[headtail.cs]] - versão 2.
 +
:[[wgetheader.cs]].
 +
;Link sugerido
 +
:[http://www.devx.com/dotnet/Article/33167 When and How to Use Dispose and Finalize in C#].
 +
;Problemas propostos
 +
:[[Problema do concatenador de arquivos]].
 +
:[[Problema do professor de terceiro ano]].
  
 
=== Aula do dia 26/05/2009 ===
 
=== Aula do dia 26/05/2009 ===
*Atentar para aula do dia 23/06/2009.
+
;Atividade
;Atividade
+
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/SILAS_VISUAL_BASIC_DOC.pdf Silas Queiroz Silva: Visual Basic 6].([http://www.adonaimedrado.pro.br/wiki/documentos/alunos/SILAS_VISUAL_BASIC_SLIDE.pdf Slides]).
 +
:::Trabalho parcialmente plagiado de http://www.cotianet.com.br/BIT/hist/basic.htm que nem está nas referências.
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ACASSIO_PHP_DOC.pdf Acássio Queiroz: PHP] ([http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ACASSIO_PHP_SLIDE.pdf Slides] e [http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ACASSIO_PHP_CODIGO.zip Código]).
 +
:::Erro de concordância em "...existem algumas extensões que é depende...".
 
;Assuntos
 
;Assuntos
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
::Acesso a arquivos XML (Dataset).
+
::Linq.
 +
;Código exemplo
 +
:[[CSharp: Seleção com ordenação de linhas]].
 +
:[[CSharp: Sucessores ordenados]].
 +
:[[CSharp: Minimo, máximo e média]].
 +
:[[CSharp: Quantidade mínima, máxima e média de caracteres]].
 +
:[[microgrep.cs]].
 
;Problemas propostos
 
;Problemas propostos
 +
:[[Problema da ordenação das linhas de um arquivo texto]].
 +
:[[Problema das operações com conjuntos]].
 +
:[[Problema do professor de terceiro ano]].
  
 
=== Aula do dia 02/06/2009 ===
 
=== Aula do dia 02/06/2009 ===
*Atentar para aula do dia 23/06/2009.
+
;Atividade
;Atividade
+
:Mini-seminário
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LUIS_COBOL.pdf Luis Bernardo: Cobol].
 +
:::Falta crase em "...quanto a portabilidade de um programa COBOL...".
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ARLESON_DELPHI_DOC.pdf Arleson Nunes: Delphi] ([http://www.adonaimedrado.pro.br/wiki/documentos/alunos/ARLESON_DELPHI_SLIDE.pdf Slides]).
 +
:::Erro de concordância em "os programadores tem que..." (seria "têm").
 +
:::Shareware não é uma licença e sim uma forma de distribuir o software.
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/CLEBER_MONO_UNIX_DOC.pdf Cleber Pinelli: Mono.Unix] ([http://www.adonaimedrado.pro.br/wiki/documentos/alunos/CLEBER_MONO_UNIX_SLIDE.pdf Slides] e [http://www.adonaimedrado.pro.br/wiki/documentos/alunos/CLEBER_MONO_UNIX_EXEMPLO.tar.gz Exemplo]).
 +
:::A frase "O Mono.Unix por ser uma das bibliotecas de classes está sob a licensa MIT..." leva a um engano. Nem toda biblioteca de classes está sob a licença do MIT. E licença se escreve assim (com ç).
 +
:Pré-apresentação dos trabalhos (dúvidas).
 
;Assuntos
 
;Assuntos
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
 
:Tópicos de programação comercial na plataforma .NET utilizando C#
::Acesso a banco de dados
+
::Acesso a arquivos XML (Dataset).
:::ActiveX Data Objects (ADO.NET).
+
;Código exemplo
 +
:[[rssread.cs]].
 
;Problemas propostos
 
;Problemas propostos
 +
:[[Problema do banco de dados de salário]].
  
 
=== Aula do dia 09/06/2009 ===
 
=== Aula do dia 09/06/2009 ===
;Atividade  
+
;Atividade
:Pré-apresentação dos trabalhos (dúvidas).
+
:Prova II.
 +
::[[Linguagens para Aplicação Comercial: Qual a ferramenta e linguagem que você escolheria? | Qual a ferramenta e linguagem que você escolheria?]].
 +
:::Envie texto construido para o e-mail fornecido pelo professor.
 +
::[[Problema do TMA]].
 +
::[[Problema da prefeitura em crise]].
  
 
=== Aula do dia 16/06/2009 ===
 
=== Aula do dia 16/06/2009 ===
 
;Atividade  
 
;Atividade  
:Prova II.
+
:Apresentação dos trabalhos semestrais.
  
=== Aula do dia 23/06/2009 ===
+
=== Aula do dia 23/06/2009 (não haverá aula) ===
*Esta aula pode ser substituida por uma no dia 06/06/2009 (sábado).
+
;Atividade
+
:Prova AVII (segunda chamada).
+
:Apresentação dos trabalhos semestrais (segunda parte).
+
  
 
=== Aula do dia 30/06/2009 ===
 
=== Aula do dia 30/06/2009 ===
;Atividade  
+
;Atividade
 +
:Apresentação Equipe 3.
 +
:[http://www.adonaimedrado.pro.br/wiki/documentos/professor/LAC_COMPILACAO_CONCURSO_2009_1.pdf Debate: questões de concurso].
 
:Feedback da disciplina.
 
:Feedback da disciplina.
:Entrega dos resultados parciais.
+
:Prova AVII (segunda chamada).
 +
::Escolha 4 dentre as questões abaixo:
 +
:::[[Problema do banco de dados de salário]].
 +
:::[[Problema do TMA]].
 +
:::[[Problema da prefeitura em crise]].
 +
:::[[Problema das operações com conjuntos]].
 +
:::[[Problema do professor de terceiro ano]].
 +
:::[[Problema do dicionário de sinônimos]].
 +
=== Resultados parciais ===
 +
*[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_RESULTADO_PARCIAL.pdf Resumo].
 +
*Resultado e comentário da Prova II
 +
**[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVII.pdf Resultados dos testes e notas].
 +
**[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVII_TESTES.zip Testes executados].
 +
*Resultado e comentário da Prova II - Segunda Chamada
 +
**[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVII_SC.pdf Resultados dos testes e notas].
 +
**[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_AVII_TESTES_SC.zip Testes executados].
 +
*[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_MINI_SEMINARIOS.pdf Resultado dos mini-seminários].
 +
*[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PARTICIPACAO.pdf Resultado da participação].
 +
*[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_TRABALHO_SEMESTRAL_PARCIAL.pdf Trabalhos semestrais]
 +
**Equipe 1
 +
***Primeira etapa
 +
****Falta paginação.
 +
****Erro de digitação "Distibuir", "Java que já '''forma''' explicitados neste trabalho em outra seção" (grifo meu), mudamças
 +
****Erro de concordância em "as intruções são executadas ao menos uma vez, e '''continua''' a ser executadas".
 +
****Falta acento: "trata-la", "negocio" (no sentido da frase), "ultima", "...banco de dados '''e''' utilizando" (grifo meu).
 +
****"Eh possível...", "Eh interessant...e"?
 +
****"Contornando o problema o problema..."?
 +
****Faltou comando switch e finally.
 +
***Segunda etapa
 +
****Usuário:
 +
*****Para que mostrar o MD5 da senha na tabela?
 +
*****Não faz busca por usuário.
 +
*****Ao criar um novo usuário o botão "Atualizar" apaga todo o trabalho feito.
 +
*****Quando clico na tabela para carregar o usuário o md5 da senha é carregado no campo senha.
 +
*****A foto fica bem estranha quando selecionada.
 +
*****Qual a finalidade do botão "Atualizar"?
 +
*****O botão salvar não deveria ficar desabilitado quando não houvesse nada a ser salvo?
 +
*****O botão apagar é mentiroso. Apaga e tira da tabela só no momento, voltando a mesma tela o usuário está lá ainda (indo para produto e voltando para usuário por exemplo).
 +
****Produto
 +
*****Não faz busca por produto.
 +
*****Botão salvar não dá nenhuma mensagem quando clicado indevidamente (e também não salva).
 +
*****Salva dois produtos com o mesmo código de barras e/ou nome.
 +
*****Tabela não exibe coluna preço com duas casas decimais.
 +
****Cartão
 +
*****Não consigo cadastrar um cartão com 12,01% (ou nenhuma outra com casas decimais). Inclusive se eu clicar em uma bandeira para carregar e clicar em "Salvar" não é salvo, vem a mensagem: "O campo Porc. da Administradora deve ser porcentagem".
 +
******Provavelmente o problema está em que na hora de salvar só aceita-se o separador de decimal como ponto.
 +
****Venda
 +
*****Colocar um valor inválido em desconto na tela "Produto Carrinho" não gera mensagem de erro. Inclusive esta tela na minha opinião deveria fechar-se automatimente.
 +
*****Não consigo colocar o desconto para 10,1%.
 +
*****Falta o til de cartão.
 +
*****Não consegui fechar minha primeira compra por ser incapaz de colocar os centavos.
 +
*****Botão cancelar da tela de seleção da bandeira do "Cartão de Crédito" não funciona.
 +
*****A tela de venda deveria ser fechada automaticamente. O que mais eu poderia fazer depois da venda realizada?
 +
****Relatório
 +
*****Salvou onde? Faltou informar e podia ter aberto para o usuário.
 +
*****Não consegui encontrar. Fui no diretório da aplicação e nada. Fiz um File System Watcher para encontrar e ele não registrou a criação de nenhum arquivo em todo o meu C:\.
 +
****Outros:
 +
*****Várias telas só aceitam o separador de decimal como ponto.
 +
*****Onde estão os títulos das janelas, se não estou enganado só aparece título em "Cartão de Crédito"
 +
*****Ao clicar no botão "Apagar" não deveria ser solicitada uma confirmação?
 +
*****Se eu clicar em novo várias vezes, aparecem várias linhas na tabela.
 +
*****Não consigo ver a primeira tela corretamente com o Windows Aero ativado logo quando inicia, tenho que maximizar e a tela ou desabilitar o Windows Aero (demorei um pouco para descobrir isto).
 +
*****Bem estranho mostrar a mensagem "Logado" e continuar com o campo senha e nome do usuário na tela.
 +
*****Faltou colocar o crédito do programa (quem fez?).
 +
**Equipe 2
 +
***Primeira etapa
 +
****Quem foi o autor da figura 1? E da 2? Vocês?
 +
****Sobre a GPL, isto "Ele pode desenvolver um novo aplicativo e liberá-lo sobre[sic] outra licença." não é verdade. Como está na seção 5 item c da GPLv3: "You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it."
 +
****Letra incorreta na questão 4 do concurso (apesar de explicação OK).
 +
****Falta palavra "...enquanto ela for verdadeira os são repetidos" (duas vezes).
 +
****"...java também permite a gravação de objetos em arquivos através do processo de serialização": é somente através do processo de serialização?
 +
****Em vários pontos Java aparece com letra minúscula.
 +
****O valor do JBuilder é em U$ e não em R$ (vai até U$ 1,499).
 +
***Segunta etapa
 +
****Usuário:
 +
*****Busca em usuário só funciona por e-mail o que está em desacordo com a especificação: "Para efetuar a edição ou a exclusão deverá ser primeiramente efetuada uma busca. Quando não for explicitado por qual campo deseja-se a busca, deve-se permitir a pesquisa por '''todos''' os campos texto."
 +
*****"formUser:usuario: Validation Error: Value is required." Em inglês?
 +
*****Não faz verificação do nome do usuário: "deve ter no mínimo duas palavras contendo somente letras".
 +
*****se tentar cadastrar um usuário que já existe o campo senha é alterado para (provavelmente) o MD5 da senha que digitei (ou será o MD5 da senha do usuário já cadastrado?) e aparece a mensagem: "•Erro ao inserir usuário. Por favor, tente novamente." (nada específica a mensagem).
 +
*****"Permissao de logar" não funciona.
 +
*****Quando se erra a senha deveria aparecer alguma mensagem de aviso.
 +
*****Problema de segurança: mesmo sem permissão, se eu tiver a URL eu consigo entrar nas páginas "não permitidas" e fazer o que eu desejar.
 +
*****Consigo cadastrar dois usuários com o mesmo nome.
 +
*****As permissões não estão conforme especificação.
 +
****Produto:
 +
*****Mensagem em inglês: "formProduto:estoque: '10-' must be a number between -9223372036854775808 to 9223372036854775807 Example: 98765432".
 +
*****Quando se clica em "Buscar" sem selecionar um item no dropdown deveria ser exibida uma mensagem.
 +
*****Lista não é atualizada após o botão excluir ser clicado. Se clicar no botão excluir novamente (do item que já foi excluído, mas continua sendo exibido) gera-se um erro HTTP 500 (Internal Error).
 +
*****Mesmo problema acima acontece se tentar excluir um produto que tenha uma venda.
 +
*****Busca quando não encontra resultados exibe tudo?
 +
*****Busca por estoque não funciona.
 +
****Cartão:
 +
*****A porcentagem não atende a especificação: "Os campos de porcentagem devem ser inseridos e exibidos com até '''duas''' casas decimais e sempre...", nem também à "a vírgula é o separador dos decimais".
 +
*****Não consigo inserir uma porcentagem como 5,40% mesmo se digitar com ponto.
 +
*****Consigo inserir cartões com a mesma bandeira se eu alterar o case (VIsa, Visa, visa, etc.).
 +
****Relatório:
 +
*****Lista de Produtos por preço: não aparece os minutos, embora mostre os dois pontos.
 +
*****Lista de Produtos por Estoque: após clicar no botão "Relatório", botão "Voltar" abre outra janela; não aparece os minutos, embora mostre os dois pontos.
 +
*****Lista de Produtos Vendidos por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
 +
*****Lista de Descontos por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
 +
*****Lista de Valores Pagos em Cartão por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
 +
*****Lista de Valores Pagos por Data: falta til de cartão; após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
 +
****Outros:
 +
*****O ícone de produtos se parece muito mais com um ícone de relatório.
 +
*****Faltou colocar o crédito do programa (quem fez?).
 +
*****A busca e o cadastro não deveriam diferenciar maiúsculas de minúsculas.
 +
*****Podia pedir confirmação para excluir.
 +
**Equipe 3
 +
***Primeira etapa
 +
****Erro de concordância "...licença dar direitos...".
 +
****A tabela não é de vocês e tem o nome das colunas em inglês, deveria ter citado a fonte.
 +
****Várias partes copiadas da internet sem aspas e sem citar a fonte, como o início da seção 5.1 que boa parte está em http://pt.wikipedia.org/wiki/C_Sharp que nem se encontra nas referências, assim como a seção de 5.3 traz trechos de http://www.linhadecodigo.com.br/ArtigoImpressao.aspx?id=204 que também não está nas referências.
 +
****Erro na explicação do while.
 +
****As questões de concurso deveriam ser selecionadas e analisadas.
 +
****Texto muito mal formatado.
 +
***Segunda etapa
 +
****Instalador:
 +
*****Não funcionou corretamente, tive que executar os scritps na mão, além disto tentou instalar o Cristal Report Basic Runtime junto com o programa.
 +
****Usuário:
 +
*****Tooltip para adicionar novo em inglês (Add New).
 +
*****Ao clicar no botão deletar o usuário deveria pelo menos sumir da lista, caso contrário não foi dada a impressão de exclusão e sim de inativo (e o botão se chama Delete (e não desativar).
 +
*****Usuário consegue logar mesmo sem permissão para tanto.
 +
*****Muito chato dar permissões desta forma. Se eu for dar todas as permissões para um usuário eu preciso de no mínimo 4*14=56 cliques.
 +
****Cartão:
 +
*****Por que eu não posso editar o nome do cartão?
 +
****Produto:
 +
*****Preço na tabela em desacordo com a especificação.
 +
*****Não é possível apagar produto.
 +
*****Na edição botão limpar não funciona. Deveria não existir.
 +
****Tipo de pagamento:
 +
*****Não foi solicitado.
 +
*****Mesmo cadastrando o "Tipo de Pagamento" cartão não pede para selecionar a bandeira na hora da venda.
 +
****Relatório:
 +
*****Quantidade de produtos vendidos informada com duas casas decimais?
 +
*****Relatório de descontos. Faltou botão? Não exibe resultado.
 +
*****"Relatório de Pgamentos[sic] com Cartão": título errado e janela não funciona. Até porque não me foi solicitado a bandeira na hora do pagamento para o tipo de pagamento cartão.
 +
*****Problemas ao enviar senha por e-mail: "The SMTP host was not specified".
 +
****Outros:
 +
*****As telas deveriam ser travadas contra redimensionamento e maximização.
 +
*****Alguns Tooltips continuam com o nome padrão.
 +
*****Não atende a especificação: "A autenticação deverá ser solicitada na abertura do sistema e só deixará de ser válida caso ocorra um período de inatividade de mais de 5 minutos.".
 +
*****Faltou colocar o crédito do programa (quem fez?).
 +
**Equipe 4
 +
***Primeira etapa
 +
****Vários pontos com linguagem inadequada a um trabalho acadêmico, como no parágrafo que começa na confusa frase "Na última versão estável mas vamos ficar programando mesmo 1.9...".
 +
****Erro de digitação: "feits".
 +
****Falta acento em "escreve-la" (no sentido do texto).
 +
****Falta palavra em "Infelizmente não recursos especiais...".
 +
****Em vários pontos Ruby aparece com letra minúscula.
 +
***Segunda etapa
 +
****Login:
 +
*****Deveria ter mensagem de erro ao tentar logar no sistema com senha inválida.
 +
****Usuário:
 +
*****Telefone não deveria ser obrigatório.
 +
*****No Browser mais utilizado no mundo (Internet Explorer): Ao clicar no botão "Enviar" de "Esqueceu a senha?" pede-se senha do HTTP.
 +
*****Não tem busca por usuário.
 +
*****Mensagem do e-mail "Você Solicitou a recuperação de sua senha, caso não tenha sido sua a solicitação, ignore essa mensagem." não tem sentido. Eu não posso ignorar esta mensagem, pois minha senha foi alterada.
 +
*****Como é que se altera senha?
 +
****Cartão:
 +
*****A tabela de cartão de crédito usa como separador de decimal o ponto (em desacordo com a especificação).
 +
*****Para inserir a porcentagem 5,5 tenho que digitar 05,5 (pouco amigavel).
 +
****Venda:
 +
*****Achei a venda muito pouco amigavel (se eu deixar o código de barras para o código do produto X e escolher o nome do produto Y deve acontecer o quê?).
 +
*****Qual o total? Eu que tenho que fazer a conta?
 +
*****Remover não funciona.
 +
*****Tenho que escrever o nome da forma de pagamento???!!!
 +
*****Se o campo desconto ficar em branco, na minha venda apareceu a seguinte mensagem: "Total => A soma dos pagamentos (700.0) é diferente do valor total da venda (0.0)". O valor total da venda não era zero e a mensagem usa o separador de decimais errado.
 +
*****No Browser mais utilizado no mundo (Internet Explorer): Erro de JavaScript no campo valor de pagamento. Em vários momentos ele me impediu de digitar o valor. (No Firefox OK).
 +
*****Desconto: novamente preciso digitar 00,1 para obter 10%.
 +
****Relatório:
 +
*****Poderia mostrar um botão imprimir.
 +
*****Valores pagos em cartão em data específica: mostra uma valor pago em visa que não existiu como comprovado pelo relatório "Valores pagos em data específica".
 +
****Outros:
 +
*****No Browser mais utilizado no mundo (Internet Explorer): Ao clicar no botão "Sair" pede-se senha do HTTP.
 +
*****Algumas validações em inglês.
 +
*****Em desacordo com a especificação "Para efetuar a edição ou a exclusão deverá ser primeiramente efetuada uma busca. Quando não for explicitado por qual campo deseja-se a busca, deve-se permitir a pesquisa por todos os campos texto."
 +
*****Faltou colocar o crédito do programa (quem fez?).
 +
*****Vários locais utilizam o separador de decimal errado.
 +
*****Mês da data do relatório em inglês.
 +
**Equipe 5
 +
***Primeira etapa
 +
****Esta afirmação "Por ser uma linguagem totalmente orientada a objetos não é possível criar estruturas..." tem sentido?
 +
****Erro no exemplo: "File f = new File("c:\f1.txt");" não deveria ser c:\\f1.txt?
 +
****Faltou switch.
 +
***Segunda etapa
 +
****Usuário:
 +
*****Não foi solicitado que a senha tivesse no mínimo 6 dígitos.
 +
*****Foto errada? Fiz o seguinte: tentei cadastrar um usuário, deu erro porque já havia um usuário com o mesmo e-mail que o meu (no caso o admin), fui no cadastro do admin, editei o e-mail, cliquei em Salvar e ele colocou em admin a foto que tinha escolhido para o usuário que estava tentando cadastrar.
 +
*****Bom, depois ele fica mostrando sempre a mesma foto para qualquer usuário novo que eu cadastre e não defina uma nova foto até que eu saia e entre novamente (cache?).
 +
*****O botão da tela de permissões deveria ser ok e não salvar já que de fato as permissões não são salvas naquele momento.
 +
****Produto:
 +
*****Consigo cadastrar dois produtos com mesmo nome.
 +
****Cartão:
 +
*****Consigo cadastrar dois cartões com o mesmo nome.
 +
****Relatório:
 +
*****Produto por data da venda: eu fiz duas vendas do mesmo produto ele mostrou somente uma linha com a quantidade errada (não somou as duas vendas).
 +
****Outros:
 +
*****Se eu clicar direto em Ver Relatorio (sem acento) sem informar a data dá erro HTTP 500 (Internal Error).
 +
*****Em produto a foto podia seguir o mesmo padrão de usuário.
 +
*****Deveria ter um botão "Cancelar" quando se tenta criar um novo cadastro.
 +
*****Faltou colocar o crédito do programa (quem fez?).
 +
 
 +
=== Aula do dia 14/07/2009 ===
 +
Observação: mesma sala e horário da aula.
 +
 
 +
;Atividade
 +
:Prova final.
 +
::Escolha 1 das questões abaixo:
 +
:::[[Problema da competição de ciclismo]].
 +
:::[[Problema do baile de casais]].
 +
::Escolha 1 das questões abaixo:
 +
:::[[Problema do número de telefone]].
 +
:::[[Problema das moléculas da vida]].
 +
::Escolha 3 das questões abaixo:
 +
:::[[Problema do TMA]].
 +
:::[[Problema da prefeitura em crise]].
 +
:::[[Problema do professor de terceiro ano]].
 +
:::[[Problema do banco de dados de salário]].
 +
:::[[Problema das operações com conjuntos]].
 +
:::[[Problema do dicionário de sinônimos]].
 +
 
 +
=== Resultado da Prova Final ===
 +
:Resultado da Prova Final
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_FINAL.pdf Resultados dos testes e notas].
 +
::[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_PROVA_FINAL_TESTES.zip Testes executados].
 +
 
 +
=== Resultado Final ===
 +
:[http://www.adonaimedrado.pro.br/wiki/documentos/professor/UFBA_LAC_2009_1_RESULTADO_SIAC.pdf Resultado final como digitado no SIAC].

Latest revision as of 05:04, 22 July 2009

Programa

O programa oficial está em construção, a última versão está disponível em PDF.

Links sugeridos

Avaliações

As avaliações da disciplina serão especificadas por escrito neste endereço. Mudanças podem ocorrer ao longo do semestre, porém a versões finais das especificações estarão disponíveis no mínimo 30 dias antes da data de entrega de cada atividade.

Segue abaixo as avaliações previstas e seus respectivos valores máximos:

  • Prova I - 2,0 pontos.
  • Prova II - 2,0 pontos.
  • Trabalho semestral - 4,0 pontos.
  • Mini-seminário - 1,0 ponto.
  • Resolução dos problemas propostos e participação nas atividades de laboratório - 1,0 ponto.

Especificação de trabalho

  • Mini-seminário.
    • 11/03/2009 - JPA: Ramon Pereira Lopes.
    • 18/03/2009 - Reflection em Java: Marcus Vinicius Lacerda Fagundes.
    • 24/03/2009 - Shell Script: Bruno Guimarães Souza.
    • 31/03/2009 - Beans Binding: Gustavo Ramos.
    • 07/04/2009 - PHP+AJAX+MySql: Adson Vinícius.
    • 07/04/2009 - Monodevelop: Tiago Trocoli.
    • 05/05/2009 - Maker: Timoteo Araujo Oliveira de Sales.
    • 12/05/2009 - NHibernate: Anderson Martins.
    • 12/05/2009 - System.Security, System.Security.Cryptography: Fábio Novais
    • 19/05/2009 - Nunit: Anderson Martiniano.
    • (Não apresentado) 26/05/2009 - SharpDevelop: Alexandre Silva.
    • 26/05/2009 - Visual Basic 6: Silas Queiroz Silva.
    • 26/05/2009 - PHP: Acássio Queiroz.
    • 02/06/2009 - Cobol: Luis Bernardo.
    • 02/06/2009 - Delphi: Arleson Nunes.
    • 02/06/2009 - System.Drawing: Victor Lopes.
    • 02/06/2009 - Mono.Unix: Cleber Pinelli.
  • Trabalho semestral.

Cronograma

Aula do dia 03/03/2009

Atividade
Apresentação da disciplina, da turma e do professor.
Apresentação da dinâmica das aulas.
Apresentação da página.
Explicação dos trabalhos.
Assuntos
Revisão de orientação a objeto.

Aula do dia 10/03/2009

Atividade
Mini-seminário
Ramon Pereira Lopes: Java Persistence API (JPA) [1] [2] [3].
Faltou código.
Assuntos
Questões de legibilidade e qualidade de código em aplicações comerciais.
Importância da legibilidade do código em aplicações comerciais.
Legibilidade e estilos de programação.
Comentários.
Refatoração.
Conceitos de teste de unidade e importância em aplicações comerciais.
Link sugerido
Enterprise JavaBeans Technology.
Problemas propostos
Problema da média.

Aula do dia 17/03/2009

Atividade
Mini-seminário
Marcus Lacerda: Java Reflection.
Applet se escreve assim.
Faltou código.
Assuntos
A plataforma .NET.
Framework Microsoft .NET.
Projeto Mono.
A linguagem de programação C#
Histórico.
Padronização.
Contexto de criação.
Tipos de dados básicos.
Classes.
Campos.
Propriedades.
Construtores.
Métodos.
Parâmetros.
Modificadores de acesso.
Sobrecarga.
Modificadores de acesso.
Instruções de controle.
Seleção (if e switch).
Repetição (for, while e do).
Link sugerido
C# Overview.
Formatting Overview.
Problemas propostos
Problema do número espelho.
Problema da seqüência de Fibonacci.

Aula do dia 24/03/2009

Atividade
Mini-seminário
Bruno Guimarães Sousa: Shell script.
Faltou código.
Assuntos
A linguagem de programação C#
Vetores e matrizes.
Instruções de controle.
Repetição (foreach).
Exceções
Lançamento.
Tratamento.
Criação.
Problemas propostos
Problema do giro da palavra.
Problema da fragmentação de memória.

Aula do dia 31/03/2009

Atividade
Mini-seminário
Gustavo Ramos: Java Beans Binding.
Faltou a paginação.
O máximo eram 2 páginas (e não 4).
Assuntos
A linguagem de programação C#
Classes.
Classes abstratas.
Herança.
Interface.
Problemas propostos
CSharp: Exercício herança (Pessoa).
Problema da escrita no celular.

Aula do dia 07/04/2009

Atividade
Mini-seminário
Adson Vinícius: Ajax com PHP e MySql.
Faltou a paginação.
Faltou o código.
Monodevelop: Tiago Trocoli.
Introdução com vários erros e inclusive acho que está faltando o restante do texto.
Erro de concordância em "...permitir às pessoas que venha a adquirir...".
Várias palavras estão "quebradas" por espaço no meio.
"...mais pra essa linguagem". Pra?
O último parágrafo dos Pontos Negativos está confuso e tem um erro de concordância em "Ser mais especializadas".
Novamente erro de concordância "Muito dos ambientes".
Série tem acento.
Compartilhamento de soluções:
Anderson Martins: Solução: CSharp: Exercício herança (Pessoa) (Anderson Martins).
Acássio Queiroz: Solução: Problema do giro da palavra (Acássio Queiroz).
Adson Vinícius: Solução: Problema do giro da palavra (Adson Vinícius).
Cleber Pinelli: Solução: Problema do giro da palavra (Cleber Pinelli).
Gustavo Ramos: Solução: Problema da escrita no celular (Gustavo Ramos).
Arleson Nunes: Solução: Problema da fragmentação de memória (Arleson Nunes).
Marcus Vinícius: Solução: Problema da fragmentação de memória (Marcus Vinícius).
Fábio Novais: Solução: Problema da seqüência de Fibonacci (Fábio Novais).
Timoteo Sales: Solução: Problema do número espelho (Timoteo Sales).
Assuntos
Revisão para a prova.

Aula do dia 14/04/2009

Atividade
Prova I
Problema do jogo do milhão.
Problema do número de telefone.
Problema das moléculas da vida.

Aula do dia 28/04/2009

Atividade
Apresentação dos trabalhos semestrais (primeira parte).
Equipe 1 - Tema foco da apresentação: Velocity.
Componentes
Cleber Pinelli
Marcus Vinícius
Ramon Lopes
Assuntos
Java.
Beans Binding.
Swing.
Velocity [4].
Produção
Documento.
Slides.
Demo.
Equipe 2 - Tema foco da apresentação: Java Server Faces (JSF).
Componentes
Anderson Martiniano
Alexandre Silva
Tiago Trocoli
Assuntos
Java.
Java Server Faces (JSF).
Hibernate.
JBoss.
Produção
Documento.
Equipe 3 - Tema foco da apresentação: Windows.Forms.
Componentes
Andeson Martins
Fábio Novais
Arleson Nunes
Silas Queiroz
Assuntos
C#.
Windows.Forms. [5].
SQL Server 2005.
Produção
Documento.
Equipe 4 - Tema foco da apresentação: Ruby on Rails.
Componentes
Bruno Sousa
Luis Braga
Timoteo Sales
Assuntos
Ruby on Rails.
Produção
Documento.
Equipe 5 - Tema foco da apresentação: Richfaces.
Componentes
Acássio Queiroz.
Adson Vinícius.
Gustavo Ramos.
Assuntos
Java.
Richfaces.
Facelets.
JPA.
Hibernate.
EJB 3.0.
Produção
Documento.
Equipe 6 - Tema foco da apresentação: PHP & CakePHP - não apresentado.
Componentes
Bruno Blumetti
Victor Rafael
Assuntos
PHP.
CakePHP.

Aula do dia 05/05/2009

Atividade
Mini-seminário
Timóteo Oliveira: Maker.
Abstract sem sentido do meio para o final (foi traduzido automaticamente?).
Faltou paginação.
Erro de concordância "...as intermináveis linhas de código, que possui uma complexa documentação".
Falta crase: "A POE está ligada as ações do usuário...".
Falta a nota de rodapé 1 para: "...funcionam no Windows, Linux ou Mac".
O máximo era de 2 laudas.
Resultado e comentário da Prova I
Resultados dos testes e notas.
Testes executados.
Assuntos
A linguagem de programação C#
Coleções (System.Collections).
Coleções genéricas (System.Collections.Generics)
Classes.
Médotos, propriedades e campos estáticos.
Indexadores.
Palavra chave partial.
Delegates.
Métodos anônimos.
Expressões lambda.
Problemas propostos
Problema do mercadinho do Zéstoque.
Problema do dicionário de sinônimos.

Aula do dia 09/05/2009 (sábado, 13 horas, sala 151)

Assuntos
Tópicos de programação comercial na plataforma .NET utilizando C#
Acesso a banco de dados.
ActiveX Data Objects (ADO.NET).
Links sugeridos
Connector/Net 6.0.
Problemas propostos
Criar um comunicador para o MySql.
Código exemplo.

Aula do dia 12/05/2009

Atividade
Mini-seminário
Anderson Martins: NHibernate.
Faltou o til no título da seção conclusão.
Faltou código.
Fábio Novais: System.Security, System.Security.Cryptography.
No lugar de "...confiança, mas ainda sim..." não seria "...confiança, mas ainda assim..."?
Não faça citação ao link e sim ao autor do mesmo, coloque o documento nas referências.
Assuntos
Tópicos de programação comercial na plataforma .NET utilizando C#
Acesso a arquivos.
Código exemplo
headtail.cs - versão 1.
Problemas propostos
Problema do conteúdo do arquivo.

Aula do dia 19/05/2009

Atividade
Mini-seminário
Anderson Martiniano: Nunit (Slides e Exemplo).
Erro de concordância em "O NUnit aparece como um excelente ferramenta".
Assuntos
Tópicos de programação comercial na plataforma .NET utilizando C#
Escrita em arquivos.
Introdução a Linq.
Código exemplo
headtail.cs - versão 2.
wgetheader.cs.
Link sugerido
When and How to Use Dispose and Finalize in C#.
Problemas propostos
Problema do concatenador de arquivos.
Problema do professor de terceiro ano.

Aula do dia 26/05/2009

Atividade
Mini-seminário
Silas Queiroz Silva: Visual Basic 6.(Slides).
Trabalho parcialmente plagiado de http://www.cotianet.com.br/BIT/hist/basic.htm que nem está nas referências.
Acássio Queiroz: PHP (Slides e Código).
Erro de concordância em "...existem algumas extensões que é depende...".
Assuntos
Tópicos de programação comercial na plataforma .NET utilizando C#
Linq.
Código exemplo
CSharp: Seleção com ordenação de linhas.
CSharp: Sucessores ordenados.
CSharp: Minimo, máximo e média.
CSharp: Quantidade mínima, máxima e média de caracteres.
microgrep.cs.
Problemas propostos
Problema da ordenação das linhas de um arquivo texto.
Problema das operações com conjuntos.
Problema do professor de terceiro ano.

Aula do dia 02/06/2009

Atividade
Mini-seminário
Luis Bernardo: Cobol.
Falta crase em "...quanto a portabilidade de um programa COBOL...".
Arleson Nunes: Delphi (Slides).
Erro de concordância em "os programadores tem que..." (seria "têm").
Shareware não é uma licença e sim uma forma de distribuir o software.
Cleber Pinelli: Mono.Unix (Slides e Exemplo).
A frase "O Mono.Unix por ser uma das bibliotecas de classes está sob a licensa MIT..." leva a um engano. Nem toda biblioteca de classes está sob a licença do MIT. E licença se escreve assim (com ç).
Pré-apresentação dos trabalhos (dúvidas).
Assuntos
Tópicos de programação comercial na plataforma .NET utilizando C#
Acesso a arquivos XML (Dataset).
Código exemplo
rssread.cs.
Problemas propostos
Problema do banco de dados de salário.

Aula do dia 09/06/2009

Atividade
Prova II.
Qual a ferramenta e linguagem que você escolheria?.
Envie texto construido para o e-mail fornecido pelo professor.
Problema do TMA.
Problema da prefeitura em crise.

Aula do dia 16/06/2009

Atividade
Apresentação dos trabalhos semestrais.

Aula do dia 23/06/2009 (não haverá aula)

Aula do dia 30/06/2009

Atividade
Apresentação Equipe 3.
Debate: questões de concurso.
Feedback da disciplina.
Prova AVII (segunda chamada).
Escolha 4 dentre as questões abaixo:
Problema do banco de dados de salário.
Problema do TMA.
Problema da prefeitura em crise.
Problema das operações com conjuntos.
Problema do professor de terceiro ano.
Problema do dicionário de sinônimos.

Resultados parciais

  • Resumo.
  • Resultado e comentário da Prova II
  • Resultado e comentário da Prova II - Segunda Chamada
  • Resultado dos mini-seminários.
  • Resultado da participação.
  • Trabalhos semestrais
    • Equipe 1
      • Primeira etapa
        • Falta paginação.
        • Erro de digitação "Distibuir", "Java que já forma explicitados neste trabalho em outra seção" (grifo meu), mudamças
        • Erro de concordância em "as intruções são executadas ao menos uma vez, e continua a ser executadas".
        • Falta acento: "trata-la", "negocio" (no sentido da frase), "ultima", "...banco de dados e utilizando" (grifo meu).
        • "Eh possível...", "Eh interessant...e"?
        • "Contornando o problema o problema..."?
        • Faltou comando switch e finally.
      • Segunda etapa
        • Usuário:
          • Para que mostrar o MD5 da senha na tabela?
          • Não faz busca por usuário.
          • Ao criar um novo usuário o botão "Atualizar" apaga todo o trabalho feito.
          • Quando clico na tabela para carregar o usuário o md5 da senha é carregado no campo senha.
          • A foto fica bem estranha quando selecionada.
          • Qual a finalidade do botão "Atualizar"?
          • O botão salvar não deveria ficar desabilitado quando não houvesse nada a ser salvo?
          • O botão apagar é mentiroso. Apaga e tira da tabela só no momento, voltando a mesma tela o usuário está lá ainda (indo para produto e voltando para usuário por exemplo).
        • Produto
          • Não faz busca por produto.
          • Botão salvar não dá nenhuma mensagem quando clicado indevidamente (e também não salva).
          • Salva dois produtos com o mesmo código de barras e/ou nome.
          • Tabela não exibe coluna preço com duas casas decimais.
        • Cartão
          • Não consigo cadastrar um cartão com 12,01% (ou nenhuma outra com casas decimais). Inclusive se eu clicar em uma bandeira para carregar e clicar em "Salvar" não é salvo, vem a mensagem: "O campo Porc. da Administradora deve ser porcentagem".
            • Provavelmente o problema está em que na hora de salvar só aceita-se o separador de decimal como ponto.
        • Venda
          • Colocar um valor inválido em desconto na tela "Produto Carrinho" não gera mensagem de erro. Inclusive esta tela na minha opinião deveria fechar-se automatimente.
          • Não consigo colocar o desconto para 10,1%.
          • Falta o til de cartão.
          • Não consegui fechar minha primeira compra por ser incapaz de colocar os centavos.
          • Botão cancelar da tela de seleção da bandeira do "Cartão de Crédito" não funciona.
          • A tela de venda deveria ser fechada automaticamente. O que mais eu poderia fazer depois da venda realizada?
        • Relatório
          • Salvou onde? Faltou informar e podia ter aberto para o usuário.
          • Não consegui encontrar. Fui no diretório da aplicação e nada. Fiz um File System Watcher para encontrar e ele não registrou a criação de nenhum arquivo em todo o meu C:\.
        • Outros:
          • Várias telas só aceitam o separador de decimal como ponto.
          • Onde estão os títulos das janelas, se não estou enganado só aparece título em "Cartão de Crédito"
          • Ao clicar no botão "Apagar" não deveria ser solicitada uma confirmação?
          • Se eu clicar em novo várias vezes, aparecem várias linhas na tabela.
          • Não consigo ver a primeira tela corretamente com o Windows Aero ativado logo quando inicia, tenho que maximizar e a tela ou desabilitar o Windows Aero (demorei um pouco para descobrir isto).
          • Bem estranho mostrar a mensagem "Logado" e continuar com o campo senha e nome do usuário na tela.
          • Faltou colocar o crédito do programa (quem fez?).
    • Equipe 2
      • Primeira etapa
        • Quem foi o autor da figura 1? E da 2? Vocês?
        • Sobre a GPL, isto "Ele pode desenvolver um novo aplicativo e liberá-lo sobre[sic] outra licença." não é verdade. Como está na seção 5 item c da GPLv3: "You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it."
        • Letra incorreta na questão 4 do concurso (apesar de explicação OK).
        • Falta palavra "...enquanto ela for verdadeira os são repetidos" (duas vezes).
        • "...java também permite a gravação de objetos em arquivos através do processo de serialização": é somente através do processo de serialização?
        • Em vários pontos Java aparece com letra minúscula.
        • O valor do JBuilder é em U$ e não em R$ (vai até U$ 1,499).
      • Segunta etapa
        • Usuário:
          • Busca em usuário só funciona por e-mail o que está em desacordo com a especificação: "Para efetuar a edição ou a exclusão deverá ser primeiramente efetuada uma busca. Quando não for explicitado por qual campo deseja-se a busca, deve-se permitir a pesquisa por todos os campos texto."
          • "formUser:usuario: Validation Error: Value is required." Em inglês?
          • Não faz verificação do nome do usuário: "deve ter no mínimo duas palavras contendo somente letras".
          • se tentar cadastrar um usuário que já existe o campo senha é alterado para (provavelmente) o MD5 da senha que digitei (ou será o MD5 da senha do usuário já cadastrado?) e aparece a mensagem: "•Erro ao inserir usuário. Por favor, tente novamente." (nada específica a mensagem).
          • "Permissao de logar" não funciona.
          • Quando se erra a senha deveria aparecer alguma mensagem de aviso.
          • Problema de segurança: mesmo sem permissão, se eu tiver a URL eu consigo entrar nas páginas "não permitidas" e fazer o que eu desejar.
          • Consigo cadastrar dois usuários com o mesmo nome.
          • As permissões não estão conforme especificação.
        • Produto:
          • Mensagem em inglês: "formProduto:estoque: '10-' must be a number between -9223372036854775808 to 9223372036854775807 Example: 98765432".
          • Quando se clica em "Buscar" sem selecionar um item no dropdown deveria ser exibida uma mensagem.
          • Lista não é atualizada após o botão excluir ser clicado. Se clicar no botão excluir novamente (do item que já foi excluído, mas continua sendo exibido) gera-se um erro HTTP 500 (Internal Error).
          • Mesmo problema acima acontece se tentar excluir um produto que tenha uma venda.
          • Busca quando não encontra resultados exibe tudo?
          • Busca por estoque não funciona.
        • Cartão:
          • A porcentagem não atende a especificação: "Os campos de porcentagem devem ser inseridos e exibidos com até duas casas decimais e sempre...", nem também à "a vírgula é o separador dos decimais".
          • Não consigo inserir uma porcentagem como 5,40% mesmo se digitar com ponto.
          • Consigo inserir cartões com a mesma bandeira se eu alterar o case (VIsa, Visa, visa, etc.).
        • Relatório:
          • Lista de Produtos por preço: não aparece os minutos, embora mostre os dois pontos.
          • Lista de Produtos por Estoque: após clicar no botão "Relatório", botão "Voltar" abre outra janela; não aparece os minutos, embora mostre os dois pontos.
          • Lista de Produtos Vendidos por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
          • Lista de Descontos por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
          • Lista de Valores Pagos em Cartão por Data: após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
          • Lista de Valores Pagos por Data: falta til de cartão; após clicar no botão "Relatório", o botão "Voltar" abre outra janela.
        • Outros:
          • O ícone de produtos se parece muito mais com um ícone de relatório.
          • Faltou colocar o crédito do programa (quem fez?).
          • A busca e o cadastro não deveriam diferenciar maiúsculas de minúsculas.
          • Podia pedir confirmação para excluir.
    • Equipe 3
      • Primeira etapa
        • Erro de concordância "...licença dar direitos...".
        • A tabela não é de vocês e tem o nome das colunas em inglês, deveria ter citado a fonte.
        • Várias partes copiadas da internet sem aspas e sem citar a fonte, como o início da seção 5.1 que boa parte está em http://pt.wikipedia.org/wiki/C_Sharp que nem se encontra nas referências, assim como a seção de 5.3 traz trechos de http://www.linhadecodigo.com.br/ArtigoImpressao.aspx?id=204 que também não está nas referências.
        • Erro na explicação do while.
        • As questões de concurso deveriam ser selecionadas e analisadas.
        • Texto muito mal formatado.
      • Segunda etapa
        • Instalador:
          • Não funcionou corretamente, tive que executar os scritps na mão, além disto tentou instalar o Cristal Report Basic Runtime junto com o programa.
        • Usuário:
          • Tooltip para adicionar novo em inglês (Add New).
          • Ao clicar no botão deletar o usuário deveria pelo menos sumir da lista, caso contrário não foi dada a impressão de exclusão e sim de inativo (e o botão se chama Delete (e não desativar).
          • Usuário consegue logar mesmo sem permissão para tanto.
          • Muito chato dar permissões desta forma. Se eu for dar todas as permissões para um usuário eu preciso de no mínimo 4*14=56 cliques.
        • Cartão:
          • Por que eu não posso editar o nome do cartão?
        • Produto:
          • Preço na tabela em desacordo com a especificação.
          • Não é possível apagar produto.
          • Na edição botão limpar não funciona. Deveria não existir.
        • Tipo de pagamento:
          • Não foi solicitado.
          • Mesmo cadastrando o "Tipo de Pagamento" cartão não pede para selecionar a bandeira na hora da venda.
        • Relatório:
          • Quantidade de produtos vendidos informada com duas casas decimais?
          • Relatório de descontos. Faltou botão? Não exibe resultado.
          • "Relatório de Pgamentos[sic] com Cartão": título errado e janela não funciona. Até porque não me foi solicitado a bandeira na hora do pagamento para o tipo de pagamento cartão.
          • Problemas ao enviar senha por e-mail: "The SMTP host was not specified".
        • Outros:
          • As telas deveriam ser travadas contra redimensionamento e maximização.
          • Alguns Tooltips continuam com o nome padrão.
          • Não atende a especificação: "A autenticação deverá ser solicitada na abertura do sistema e só deixará de ser válida caso ocorra um período de inatividade de mais de 5 minutos.".
          • Faltou colocar o crédito do programa (quem fez?).
    • Equipe 4
      • Primeira etapa
        • Vários pontos com linguagem inadequada a um trabalho acadêmico, como no parágrafo que começa na confusa frase "Na última versão estável mas vamos ficar programando mesmo 1.9...".
        • Erro de digitação: "feits".
        • Falta acento em "escreve-la" (no sentido do texto).
        • Falta palavra em "Infelizmente não recursos especiais...".
        • Em vários pontos Ruby aparece com letra minúscula.
      • Segunda etapa
        • Login:
          • Deveria ter mensagem de erro ao tentar logar no sistema com senha inválida.
        • Usuário:
          • Telefone não deveria ser obrigatório.
          • No Browser mais utilizado no mundo (Internet Explorer): Ao clicar no botão "Enviar" de "Esqueceu a senha?" pede-se senha do HTTP.
          • Não tem busca por usuário.
          • Mensagem do e-mail "Você Solicitou a recuperação de sua senha, caso não tenha sido sua a solicitação, ignore essa mensagem." não tem sentido. Eu não posso ignorar esta mensagem, pois minha senha foi alterada.
          • Como é que se altera senha?
        • Cartão:
          • A tabela de cartão de crédito usa como separador de decimal o ponto (em desacordo com a especificação).
          • Para inserir a porcentagem 5,5 tenho que digitar 05,5 (pouco amigavel).
        • Venda:
          • Achei a venda muito pouco amigavel (se eu deixar o código de barras para o código do produto X e escolher o nome do produto Y deve acontecer o quê?).
          • Qual o total? Eu que tenho que fazer a conta?
          • Remover não funciona.
          • Tenho que escrever o nome da forma de pagamento???!!!
          • Se o campo desconto ficar em branco, na minha venda apareceu a seguinte mensagem: "Total => A soma dos pagamentos (700.0) é diferente do valor total da venda (0.0)". O valor total da venda não era zero e a mensagem usa o separador de decimais errado.
          • No Browser mais utilizado no mundo (Internet Explorer): Erro de JavaScript no campo valor de pagamento. Em vários momentos ele me impediu de digitar o valor. (No Firefox OK).
          • Desconto: novamente preciso digitar 00,1 para obter 10%.
        • Relatório:
          • Poderia mostrar um botão imprimir.
          • Valores pagos em cartão em data específica: mostra uma valor pago em visa que não existiu como comprovado pelo relatório "Valores pagos em data específica".
        • Outros:
          • No Browser mais utilizado no mundo (Internet Explorer): Ao clicar no botão "Sair" pede-se senha do HTTP.
          • Algumas validações em inglês.
          • Em desacordo com a especificação "Para efetuar a edição ou a exclusão deverá ser primeiramente efetuada uma busca. Quando não for explicitado por qual campo deseja-se a busca, deve-se permitir a pesquisa por todos os campos texto."
          • Faltou colocar o crédito do programa (quem fez?).
          • Vários locais utilizam o separador de decimal errado.
          • Mês da data do relatório em inglês.
    • Equipe 5
      • Primeira etapa
        • Esta afirmação "Por ser uma linguagem totalmente orientada a objetos não é possível criar estruturas..." tem sentido?
        • Erro no exemplo: "File f = new File("c:\f1.txt");" não deveria ser c:\\f1.txt?
        • Faltou switch.
      • Segunda etapa
        • Usuário:
          • Não foi solicitado que a senha tivesse no mínimo 6 dígitos.
          • Foto errada? Fiz o seguinte: tentei cadastrar um usuário, deu erro porque já havia um usuário com o mesmo e-mail que o meu (no caso o admin), fui no cadastro do admin, editei o e-mail, cliquei em Salvar e ele colocou em admin a foto que tinha escolhido para o usuário que estava tentando cadastrar.
          • Bom, depois ele fica mostrando sempre a mesma foto para qualquer usuário novo que eu cadastre e não defina uma nova foto até que eu saia e entre novamente (cache?).
          • O botão da tela de permissões deveria ser ok e não salvar já que de fato as permissões não são salvas naquele momento.
        • Produto:
          • Consigo cadastrar dois produtos com mesmo nome.
        • Cartão:
          • Consigo cadastrar dois cartões com o mesmo nome.
        • Relatório:
          • Produto por data da venda: eu fiz duas vendas do mesmo produto ele mostrou somente uma linha com a quantidade errada (não somou as duas vendas).
        • Outros:
          • Se eu clicar direto em Ver Relatorio (sem acento) sem informar a data dá erro HTTP 500 (Internal Error).
          • Em produto a foto podia seguir o mesmo padrão de usuário.
          • Deveria ter um botão "Cancelar" quando se tenta criar um novo cadastro.
          • Faltou colocar o crédito do programa (quem fez?).

Aula do dia 14/07/2009

Observação: mesma sala e horário da aula.
Atividade
Prova final.
Escolha 1 das questões abaixo:
Problema da competição de ciclismo.
Problema do baile de casais.
Escolha 1 das questões abaixo:
Problema do número de telefone.
Problema das moléculas da vida.
Escolha 3 das questões abaixo:
Problema do TMA.
Problema da prefeitura em crise.
Problema do professor de terceiro ano.
Problema do banco de dados de salário.
Problema das operações com conjuntos.
Problema do dicionário de sinônimos.

Resultado da Prova Final

Resultado da Prova Final
Resultados dos testes e notas.
Testes executados.

Resultado Final

Resultado final como digitado no SIAC.