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

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(Aula do dia 30/06/2009)
(Aula do dia 30/06/2009)
Line 409: Line 409:
 
::::Letra incorreta na questão 4 do concurso (apesar de explicação OK).
 
::::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).
 
::::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?
+
::::"...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.
 
::Equipe 3
 
::Equipe 3
 
:::Primeira etapa
 
:::Primeira etapa
Line 424: Line 425:
 
::::Falta acento em "escreve-la" (no sentido do texto).
 
::::Falta acento em "escreve-la" (no sentido do texto).
 
::::Falta palavra em "Infelizmente não recursos especiais...".
 
::::Falta palavra em "Infelizmente não recursos especiais...".
 +
::::Em vários pontos Ruby aparece com letra minúscula.
 
::Equipe 5
 
::Equipe 5
 
:::Primeira etapa
 
:::Primeira etapa

Revision as of 18:16, 30 June 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
Resultado e comentário da Prova II
Resultados dos testes e notas.
Testes executados.
Resultado dos mini-seminários.
Trabalhos finais
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.
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.
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.
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.
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.
Prova AVII (segunda chamada).
Feedback da disciplina.
Entrega dos resultados parciais.

Aula do dia 14/07/2009

Observação: mesma sala e horário da aula.
Atividade
Prova final.