Wiki da Disciplina CES-22 - Instituto Tecnológico de Aeronáutica

Este é o wiki da disciplina CES-22, Programação Orientada a Objetos, do curso de Engenharia de Computação do ITA. O objetivo é reunir aqui todo material de suporte à disciplina e estabelecer um canal de comunicação aberto entre alunos e professores da disciplina.

Filosofia da Disciplina

A idéia do curso de Programação Orientada a Objetos é dar ao aluno embasamento necessário para compreender e aplicar os conceitos de orientação a objetos no desenvolvimento de software. Estes conceitos podem ser aplicados às diversas linguagens orientadas a objetos existentes.

CES-22 não será focado em uma linguagem somente. Sempre que possível, explicaremos os conceitos de forma universal, e exemplificaremos em algumas das linguagens orientadas a objeto atuais. Neste semestre, grande parte dos nossos exemplos e laboratórios será dada nas linguagens Java e Ruby, por serem os representantes mais eminentes de dois paradigmas de orientação a objetos (tipagem estática X tipagem dinâmica). C++, por sua importância no desenvolvimento de sistemas de "baixo nível" (mais próximos da máquina, como sistemas operacionais e software embarcado), também será abordado, de forma mais superficial, principalmente no que diz respeito a algumas de suas diferenças filosóficas em relação ao Java.

Desta forma, o curso não será um tutorial de programação em determinada linguagem nem explorará exaustivamente todas as construções, sintaxe e bibliotecas da linguagem. O aluno, no entanto, deverá se tornar proficiente em pelo menos uma linguagem orientada a objetos para desenvolver o software referente ao projeto final de curso. Deverá buscar esta proficiência por conta própria, utilizando-se dos inúmeros recursos disponíveis na internet, e dos diversos livros especializados. O aluno está livre para utilizar qualquer linguagem no projeto final, desde que compatível com o paradigma orientado a objetos.

Como esperado de um aluno do ITA, nosso curso visará formar "Engenheiros de Concepção", não meros "Técnicos de Programação". Engenheiros que compreendam o funcionamento das ferramentas que utiliza, não simplesmente as memoriza ou as toma como verdadeiras ou definitivas. As linguagens de programação evoluem e se tornam obsoletas rapidamente, mas os conceitos aprendidos são úteis por toda carreira do engenheiro.

Para reforçar o caráter conceitual do nosso curso, ensinaremos alguns dos padrões de projetos mais utilizados no desenvolvimento OO. O conhecimento de padrões de projeto é essencial ao engenheiro de computação moderno, e nos ajuda a compreender como as técnicas de orientação a objetos podem ser utilizadas para contribuir para o desenvolvimento de software de maior qualidade.

Mecânica do curso

Avisos (ex.: alterações de datas/horários, labs, etc) serão fornecidos no aqui. Usem um leitor de RSS para não perderem um aviso importante. Utilizem o forum integrado a este wiki para discutirem assuntos relacionados a esta disciplina, fazerem sugestões, etc.

Aulas Expositivas

Sala 2017

  • Segundas, 10:10am - 11:00am
  • Segundas, 11:10am - 12:00am
  • Quartas de Semanas Ímpares, 10:10am - 12:00am

Labs

Sala 190

  • Quartas de Semanas Pares, 10:10am - 12:00am

Provas

  • 1a. Prova - 7a. Semana, Segunda - 08/09/2008
  • 2a. Prova - 15a Semana, Segunda - 10/11/2008

Projeto Final (Exame)

Instruções

  • Definição do Tema e Grupos - 01/09/2008
  • Relatório Parcial - 28/09/2008
  • Entrega e Apresentação Final - 01/12/2008 a 05/12/2008

Avaliação

  • 1o. Bimestre
    • Prova - 70 %
    • Labs - 30%
  • 2o. Bimestre
    • Prova - 30%
    • Labs - 70%
  • Exame
    • Projeto (Inclui todas etapas) - 100%

Final = (1o. Bim. + 2o. Bim + Exame) / 3

Cronograma

Cronograma de Aulas

Referências e Links

Estudo

Livros
Links Recomendados
Links Úteis (Compartilhados por vocês)

Metodologia de Ensino

Outras Referências

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License