Informações da Disciplina

 Preparar para impressão 

Júpiter - Sistema de Gestão Acadêmica da Pró-Reitoria de Graduação


Instituto de Ciências Matemáticas e de Computação
 
Ciências de Computação
 
Disciplina: SCC0204 - Programação Orientada a Objetos
Object-Oriented Programming

Créditos Aula: 4
Créditos Trabalho: 2
Carga Horária Total: 120 h
Tipo: Semestral
Ativação: 01/01/2011 Desativação:

Objetivos
Introduzir os conceitos de programação orientada a objetos e metodologia de desenvolvimento de software segundo esse paradigma.
 
Introduce the object oriented programming and object oriented software development concepts.
 
 
Programa Resumido
Projeto orientado a objetos. Encapsulamento e ocultação de informação (information hiding). Separação de comportamento e implementação.  Classes e subclasses.  Herança. Polimorfismo.  Hierarquias de classes. Classes de coleções e métodos de iteração 
 
Object oriented design. Encapsulation and information hiding. Implementation and behavior separation. Classes and subclasses. Inheritance. Polymorphism. Class hierarchy. Class collections and iteration methods.
 
 
Programa
Projeto orientado a objetos.  Encapsulamento e ocultação de informação (information hiding). Separação de comportamento e implementação.  Classes e subclasses.  Herança – Overriding, Dynamic dispatch. Polimorfismo – Relação entre Polimorfismo (de subtipo) e Herança. Hierarquias de classes.  Classes de coleções e métodos de interação – Conjuntos, Listas e Mapas.Objetivos de aprendizado:1.     Justificar a filosofia do projeto orientado a objetos e os conceitos de encapsulamento, abstração, herança e polimorfismo.2.     Projetar, implementar, testar e depurar programas simples em uma linguagem de programação orientada a objetos.3.     Descrever como o mecanismo de classes suporta encapsulamento e ocultação  de informação (information hiding).4.     Projetar, implementar e testar a implementação de relações “é-um” (is-a) entre objetos usando uma hierarquia de classes e herança.5.     Comparar e contrastar as noções de overloading e overriding métodos numa linguagem orientada a objetos.6.     Descrever como iteradores (iterators) acessam os elementos de coleções. 
 
Object oriented design. Encapsulation and information hiding. Implementation and behavior separation. Classes and subclasses. Inheritance – overriding, dynamic dispatch. Polymorphism – relation between subtype polymorphism and inheritance. Class hierarchy. Class collections and iteration methods – sets, lists and maps. Learning goals: 1) Justify the philosophy of object-oriented design and the concepts of encapsulation, abstraction, inheritance, and polymorphism; 2) Design, implement, test, and debug simple programs in an object-oriented programming language; 3) Describe how the class mechanism supports encapsulation and information hiding; 4) Design, implement, and test the implementation of “is-a” relationships among objects using a class hierarchy and inheritance; 5) Compare and contrast the notions of overloading and overriding methods in an object-oriented language; 6) Describe how iterators access the elements of a container.
 
 
Avaliação
     
Método
Exposição seguida de exercícios. Aulas de demonstração de aplicativos. Estudo dirigido com atividades utilizando microcomputadores em laboratório.
Critério
Notas serão atribuídas aos trabalhos práticos, exercícios, e provas. A nota final será calculada pela média ponderaa dessas notas.
Norma de Recuperação
-Critério de Aprovação: NP+(Mrec/2,5), se Mrec > ou =7,5; ou Max {NP,Mrec}, se Mrec < ou = 5,0; ou 5,0, se 5,0 < ou = Mrec < 7,5.( NP=1ª avaliação, Mrec=prova)
 
Bibliografia
     
Livro Texto:
- DEITEL, H. M.; DEITEL, P.J.: C++ - Como Programar, Prentice-Hall, 8ª Edição, 2010, ISBN 9788576055631.
- DEITEL, H. M.; DEITEL, P.J.: C++ - Como Programar, Prentice-Hall, 5ª Edição, 2006, ISBN 9788576050568.

Bibliografia Complementar:
- FILHO, A. M. S. - Introdução à Programação Orientada a Objetos com C++, Editora Campus, 2010, ISBN 9788535237023.
- ECKEL, B.: Thinking in Java, Prentice Hall, 4ª Edição, 2006, ISBN 9780131872486
- ECKEL, B.: Thinking in C++, vol 1, Prentice Hall, 2ª Edição, 2000, ISBN 9780139798092.
- BORATTI, I. C. - Programação Orientada a Objetos em Java, Visual Books, 2007, ISBN 9788575021996.
- THOMAS, D.; HANSSON, D.; BREEDT, L.; CLARK, M. Agile Web Development with Rails. 2nd Edition. (Paperback, Dec 14, 2006).
 

Clique para consultar os requisitos para SCC0204

Clique para consultar o oferecimento para SCC0204

Créditos | Fale conosco
© 1999 - 2024 - Superintendência de Tecnologia da Informação/USP