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

Laboratório de Programação Orientada a Objetos - Parte 1 (Coursera)
Course Auditing
Categories
Effort
Certification
Languages
Conhecimentos básicos de programação em uma linguagem como C, Java, C#, Python ou similar.
Misc

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

Laboratório de Programação Orientada a Objetos - Parte 1 (Coursera)
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.

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

Se você ainda não sabe programar, deve começar por este outro curso: Introdução à Ciência da Computação com Python Parte 1


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ê!


Syllabus


WEEK 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!


WEEK 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.


WEEK 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.


WEEK 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.


WEEK 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.


WEEK 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.



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

Course Auditing
41.00 EUR
Conhecimentos básicos de programação em uma linguagem como C, Java, C#, Python ou similar.

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