Prévia do material em texto
<p>SISTEMA DE ENSINO À DISTÂNCIA</p><p>ENGENHARIA DE SOFTWARE - 4º SEMESTRE</p><p>EMANUEL BAZZEI MARTINS - 33807290</p><p>PORTFÓLIO – RELATÓRIO DE AULA PRÁTICA:</p><p>LINGUAGEM ORIENTADA A OBJETOS</p><p>GRAMADO / RS</p><p>2023</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 1/14</p><p>EMANUEL BAZZEI MARTINS - 33807290</p><p>PORTFÓLIO – RELATÓRIO DE AULA PRÁTICA</p><p>LINGUAGEM ORIENTADA A OBJETOS</p><p>Trabalho de portfólio apresentado como requisito parcial</p><p>para a obtenção de pontos para a média semestral.</p><p>Orientadora: Vinicius Camargo Prattes</p><p>GRAMADO / RS</p><p>2023</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 2/14</p><p>Conteúdo desfocado da página 3</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 3/14</p><p>1 INTRODUÇÃO</p><p>A linguagem de programação Java é uma das mais populares linguagens</p><p>orientadas a objetos. A programação orientada a objetos (POO) é um paradigma de</p><p>programação que usa “objetos” e suas interações para projetar aplicações e</p><p>programas de computador.</p><p>Em Java, tudo é um objeto, o que significa que cada programa pode ser</p><p>associado a um objeto real. Os objetos são instâncias de classes, que podem conter</p><p>variáveis de instância, métodos e construtores. As variáveis de instância são os</p><p>dados ou atributos que um objeto possui, enquanto os métodos são as operações</p><p>que ele pode realizar. Os construtores são usados para inicializar o estado de um</p><p>objeto quando ele é criado.</p><p>A POO em Java é centrada em quatro conceitos principais: encapsulamento,</p><p>herança, polimorfismo e abstração.</p><p>Encapsulamento: Este é o processo de esconder os detalhes internos de</p><p>como um objeto funciona e apenas expor os métodos e propriedades que os</p><p>usuários do objeto precisam interagir com.</p><p>Herança: Este é um mecanismo onde uma nova classe é derivada de uma</p><p>classe existente. A classe derivada herda todas as capacidades da classe base,</p><p>permitindo a reutilização de código e a representação de relações do tipo “é um”.</p><p>Polimorfismo: Este é o conceito pelo qual uma interface pode ser usada para</p><p>representar diferentes formas. Em Java, isso permite que uma interface seja</p><p>implementada por várias classes, ou que uma classe tenha vários métodos com o</p><p>mesmo nome mas com diferentes parâmetros (sobrecarga de métodos).</p><p>Abstração: Este é o processo de esconder os detalhes complexos e mostrar</p><p>apenas a funcionalidade ao usuário.</p><p>Java também suporta conceitos avançados como interfaces, classes</p><p>abstratas, coleções e exceções para ajudar na criação de aplicações robustas e</p><p>escaláveis.</p><p>A linguagem Java tem sido a escolha preferida para desenvolvimento</p><p>empresarial devido à sua segurança robusta, simplicidade sintática e portabilidade</p><p>entre plataformas.</p><p>3</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 4/14</p><p>2 DESENVOLVIMENTO</p><p>Para realizar esta atividade foi necessário o uso do VisualStudio Code</p><p>(VSCode), um editor de código-fonte desenvolvido pela Microsoft é altamente e</p><p>personalizável, permitindo que os usuários mudem o tema, atalhos de teclado e</p><p>preferências para se adequar ao seu estilo de trabalho.</p><p>Em resumo, o Visual Studio Code é um ambiente de desenvolvimento versátil</p><p>que pode atender a uma ampla gama de necessidades de programação.</p><p>2.1 MÉTODO</p><p>Utilizando um computador físico com Sistema Operacional Windows 11, foi</p><p>feito o download do Visual Studio Code (VS Code) que é um editor de código-fonte</p><p>leve, mas poderoso, que roda em sua área de trabalho e está disponível para</p><p>Windows, macOS e Linux. Ele vem com suporte embutido para JavaScript,</p><p>TypeScript e Node.js, com uma rica variedade de extensões para outras linguagens,</p><p>incluindo Java.</p><p>A extensão Java para VS Code fornece uma experiência de desenvolvimento</p><p>Java totalmente caracterizada. Ela oferece suporte a projetos Maven e Gradle, e</p><p>fornece recursos como IntelliSense (autocompletar), refatoração, depuração e muito</p><p>mais. Para usar o Java no VS Code, você precisa instalar o JDK (Java Development</p><p>Kit) e a extensão Java para o VS Code. A extensão irá automaticamente detectar o</p><p>JDK em seu computador, mas você também pode especificar a localização do JDK</p><p>nas configurações do VS Code.1</p><p>Também foi feito o download do Java Development Kit (JDK), um conjunto de</p><p>ferramentas de software que permite aos desenvolvedores criar aplicativos Java. Ele</p><p>é fornecido gratuitamente pela Oracle e é essencial para escrever, compilar e</p><p>depurar programas Java.2</p><p>Após baixados, instalados e devidamente configurados, iniciaremos a criação</p><p>de uma pequena aplicação de gerenciamento bancário, utilizando linguagem Java,</p><p>que possibilite ao usuário informar seu nome, sobrenome e CPF. Além disso, a</p><p>aplicação ainda possibilita ao usuário consultar saldo, realizar depositos e saques.</p><p>1 VSCode, 2023. Disp. em: https://code.visualstudio.com/download Acessado</p><p>em: 30/09/23</p><p>2 Java Development Kit (JDK): https://jdk.java.net/archive/ Acessado em: 30/09/23</p><p>4</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 5/14</p><p>Conteúdo desfocado da página 6</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 6/14</p><p>System. . (out println "Depósito de R$" "Realizado com + valor +</p><p>Sucesso.");</p><p>} else {</p><p>System. . (out println "Valor de depósito inválido.");</p><p>}</p><p>}//Fim do método depositar</p><p>public ( void sacar double valor) {</p><p>if ( ) {valor > 0 && valor <= saldo</p><p>saldo -= valor;</p><p>System. . (out println "Saque de R$" "Realizado com + valor +</p><p>Sucesso.");</p><p>} else {</p><p>System. . (out println "Saldo insuficiente ou valor de saque</p><p>inválido.");</p><p>}</p><p>São 4 opções de entrada para o cliente:</p><p> Consultar Saldo;</p><p> Fazer Depósito;</p><p> Fazer Saque;</p><p> Encerrar Aplicação.</p><p>boolean continuar = true;</p><p>while(continuar) {</p><p>System. . (out println "Oque deseja:");</p><p>System. . (out println "1 - Consultar Saldo:");</p><p>System. . (out println "2 - Fazer Depósito:");</p><p>System. . (out println "3 - Fazer Saque:");</p><p>System. . (out println "4 - Encerrar Aplicação:");</p><p>int .escolha = scanner nextInt();</p><p>switch(escolha) {</p><p>case 1:</p><p>cliente.consultarSaldo();</p><p>break;</p><p>case 2:</p><p>System. . (out println "Informe o valor a ser depositado:");</p><p>double valorDeposito scanner = .nextDouble();</p><p>cliente.depositar(valorDeposito);</p><p>break;</p><p>case 3:</p><p>System. . (out println "Informe o valor a ser sacado:");</p><p>double valorSaque = scanner.nextDouble();</p><p>cliente. (sacar valorSaque);</p><p>break;</p><p>case 4:</p><p>6</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 7/14</p><p>continuar = false;</p><p>System. . (out println "Finalizando Atendimento. Até logo!");</p><p>break;</p><p>default:</p><p>System. . (out println "Opção inválida! Tente novamente.");</p><p>}</p><p>}</p><p>scanner.close();</p><p>Por fim, o usuário tem a opção de finalizar a aplicação.</p><p>Abaixo o código completo:</p><p>import java util. .Scanner; //biblioteca para entrada de dados</p><p>class Cliente{</p><p>private String nome;</p><p>private String sobrenome;</p><p>private String cpf;</p><p>private double saldo;</p><p>public ( Cliente String nome, String sobrenome cpf, String ) {</p><p>this. nome= nome;</p><p>this.sobrenome=sobrenome;</p><p>this. cpf= cpf;</p><p>this. saldo= 0.0;</p><p>}</p><p>//Métodos da classe Cliente</p><p>public void consultarSaldo(){</p><p>System. . (out println "Seu saldo atual é R$" + saldo);</p><p>}//Fim do método consultarSaldo</p><p>public ( void depositar double valor) {</p><p>if ( ) {valor > 0</p><p>saldo += valor;</p><p>System. . (out println "Depósito de R$" "Realizado com + valor +</p><p>Sucesso.");</p><p>} else {</p><p>System. . (out println "Valor de depósito inválido.");</p><p>}</p><p>}//Fim do método depositar</p><p>public ( void sacar double valor) {</p><p>if ( ) {valor > 0 && valor <= saldo</p><p>saldo -= valor;</p><p>System. . (out println "Saque de R$" "Realizado com + valor +</p><p>Sucesso.");</p><p>} else {</p><p>7</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 8/14</p><p>Conteúdo desfocado da página 9</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 9/14</p><p>System. . (out println "Opção inválida! Tente novamente.");</p><p>}</p><p>}</p><p>scanner.close();</p><p>}</p><p>}</p><p>RELATÓRIO DE AULA PRÁTICA: JAVA WITH MAVEN.</p><p>9</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 10/14</p><p>Fonte: do Relatório (2023)</p><p>1</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 11/14</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 12/14</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 13/14</p><p>9/5/24, 8:10 PM Relatório de Aula Prática - Linguagem Orientada a Objetos</p><p>about:blank 14/14</p>