Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Laboratório de Programação Orientada a Objetos - Parte 1

Universidade de São Paulo via Coursera

Overview

Este curso apresenta os conceitos mais importantes em torno do paradigma de desenvolvimento mais comum da indústria de software hoje: a Programação Orientação a Objetos (POO).

Oferecido pelo Departamento de Ciência da Computação do Instituto de Matemática e Estatística da USP, o curso é voltado para quem já conhece os conceitos básicos de POO e quer se aprofundar no assunto, tornando-se um excelente programador. Ele funciona bem como uma sequência natural aos 2 cursos anteriores do Prof. Fabio Kon do IME-USP no coursera: Introdução à Ciência da Computação com Python. Se você ainda não sabe programar, deve começar por este outro curso: https://www.coursera.org/learn/ciencia-computacao-python-conceitos

Mas, se você já sabe programar em outra linguagem confortavelmente, pode vir direto para este curso sem grandes dificuldades. A maior parte dos exemplos de código serão em Java e Python e apresentamos uma pequena visão geral dessas linguagens no início do curso.

O curso é dividido em duas partes de aproximadamente 6 semanas cada. Nesta Parte 1, os tópicos cobertos são:

(1) Recapitulação dos conceitos básicos de POO

(2) UML (Linguagem Unificada de Modelagem OO)

(3) Linguagens interpretadas vs. compiladas

(4) Orientação a Objetos em Java e em Python

(5) Qualidade de Código e Boas Práticas de Programação OO

(6) Bugs, depuração e testes

(7) Linguagens dinâmicas vs. estáticas

(8) Classes abstratas e interfaces

(9) Coleções de Objetos

(10) Polimorfismo

(11) Tratamento de Exceções

(12) Streams (Fluxos de dados)

(13) Padrões de Projeto (Design Patterns) - Estratégia, Adaptador, Singleton, Método Fábrica, Fábrica Abstrata, Protótipo, Estado

(14) Model-View-Controller (MVC)

Matricule-se!

Estamos esperando por você!

Fabio Kon e Guilherme Feulo
IME-USP

Syllabus

  • Semana 1 - Recapitulação de Orientação a Objetos
    • Seja bem-vindo ao curso! Nesta primeira semana, vamos apresentar a ideia geral do curso, recapitular os conceitos básicos de Orientação a Objetos (OO), apresentar a linguagem UML de modelagem de sistemas OO e discutir a diferença entre linguagens compiladas, interpretadas e híbridas.


      Caso você tenha alguma dúvida ou queira discutir algum assunto de OO, não deixe de postar sua mensagem no Fórum de discussão!
  • Semana 2
    • Nesta semana, vamos iniciar aprendendo a sintaxe das linguagens Java e Python para orientação a objetos. A maioria dos exemplos de código deste curso serão em Java e Python, portanto, você deve ser capaz de compreender código escrito em ambas as linguagens. Caso você já tenha feito o nosso curso anterior do Coursera "Introdução à Ciência da Computação com Python", você já conhece bem a sintaxe de Python e pode pular, sem problema, os dois vídeos de OO em Python. Caso você já conheça bem Java, pode pular o vídeo de introdução à Java e ir diretamente para o Quiz correspondente. Se tiver alguma dúvida, pode postá-la no fórum de discussão.
  • Semana 3
    • Nesta semana, vamos falar de conceitos importantes de Orientação a Objetos como Polimorfismo, Classes Abstratas, Interfaces e Coleções de objetos. Além disso, vamos também pontuar as principais diferenças entre linguagens dinâmicas e estáticas e suas principais características. Se tiver alguma dúvida, pode postá-la no fórum de discussão.
  • Semana 4
    • Nesta semana, aprenderemos dois mecanismos úteis em linguagens orientadas a objetos: Tratamento de Exceções e Streams (Fluxos de Dados). Se tiver alguma dúvida, não se esqueça de postá-la no fórum de discussão.
  • Semana 5
    • Os Padrões de Projeto de Software Orientado a Objetos (Design Patterns) são uma ferramenta poderosa para a transmissão de conhecimento em desenvolvimento de software. Nesta semana, aprenderemos o que são esses padrões e começaremos a ver alguns exemplos deles.
  • Semana 6
    • Nesta semana aprenderemos os padrões de projeto Protótipo e Estado. Além disso, veremos um outro tipo de padrão: os Padrões Arquiteturais; neste caso o padrão arquitetural que estudaremos é o Model-View-Controller (MVC) que é muito usado na indústria de software.

Taught by

Fabio Kon

Related Courses

Reviews

Start your review of Laboratório de Programação Orientada a Objetos - Parte 1

Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free