Home
Softono
poo-java

poo-java

Open source Java
17
Stars
8
Forks
0
Issues
2
Watchers
1 year
Last Commit

About poo-java

Programação Orientada a Objetos em Java: uma abordagem didática ☕️🧩

Platforms

Web Self-hosted

Languages

Java

Links

= Programação Orientada a Objetos em Java: uma abordagem didática :source-highlighter: highlightjs :imagesdir: images :allow-uri-read: :safe: unsafe :numbered: :listing-caption: Listagem :experimental:

ifdef::env-github[] :outfilesuffix: .adoc :caution-caption: :fire: :important-caption: :exclamation: :note-caption: :paperclip: :tip-caption: :bulb: :warning-caption: :warning: endif::[]

http://about.me/manoelcampos[Prof. Dr. Manoel Campos da Silva Filho]

ifdef::env-github[] IMPORTANT: Acesse o curso online https://manoelcampos.gitbooks.io/poo-java/[neste link], onde é possível fazer o download do material em PDF e epub. O acesso ao curso diretamente pelo GitHub não permite a exibição de vídeos nem a navegação facilitada entre capítulos. endif::[]

== Objetivos Apresentar os fundamentos para o desenvolvimento de softwares modernos seguindo o paradigma de programação orientada a objetos (POO). Um paradigma define um modelo ou padrão a ser seguido. O paradigma de programação orientada a objetos, dentre vários existentes, define um modelo para construção de software que é seguido por profissionais mundialmente.

== Pré-requisitos

  • Lógica de programação e programação procedural/estruturada.

== Motivação para uso de POO

Como você já sabe, desenvolver software não é uma tarefa fácil. Desenvolver programas para resolver problemas reais e cada vez mais complexos, que serão utilizados de fato por alguém além de você, pode ser desafiador.

Depois que já se sabe o que precisa ser feito, um dos maiores desafios é por onde começar e então muitas dúvidas surgem. Como transformar suas ideas em código? Como este código deve ser organizado? Quais partes do programa devem ser desenvolvidas primeiro? Como identificar estas partes do programa e desenvovê-las isoladamente? Como unir as partes depois de prontas e fazer o sistema inteiro funcionar?

Durante o processo de aprendizagem, todos nós provavelmente utilizamos intuitivamente o "paradigma" de tentitiva e erro. Consigo até ver a cena: Você vai escrevendo o código, fazendo alterações sem saber exatamente o que está fazendo, na esperança que o programa funcione. 🙏


.http://joyreactor.com/post/1646612[Tentativa e Erro 🙏: "paradigma" de programação mais utilizado quando você não tem a menor ideia do que está fazendo 😭.] image::code-doesnt-work.jpeg[]


A medida que o código vai aumentando e você vai indiscriminadamente fazendo alterações nele, o código começa a virar um emaranhado de linhas que nem você entende mais.

A programação orientada a objetos (POO), juntamente com uma série de conceitos e práticas de engenharia de software defini padrões para o desenvolvimento de software, buscando:

  • minimizar a quantidade de bugs (erros);
  • permitir que o software seja desenvolvido em equipe (local ou remotamente) e facilitar o entendimento de um código feito por outra pessoa;
  • permitir que o software seja desenvolvido em partes independentes, o que contribui para o trabalho em equipe;
  • facilitar a manutenção de código para correção de bugs e inclusão de novos recursos;
  • assim como métodos de construção evoluem para corrigir problemas como custo, tempo, qualidade e segurança, a POO surgiu para corrigir problemas de outros paradigmas de programação e suprir novas necessidades tanto dos desenvolvedores quanto dos clientes;
  • diminuir a distância entre o que o código representa com o que de fato ele faz ao ser executado;
  • etc.