-
Notifications
You must be signed in to change notification settings - Fork 0
/
Aula.html
83 lines (83 loc) · 8.1 KB
/
Aula.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="styles.css">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="">
<meta name="author" content="">
<title>Class </title>
<!-- Bootstrap core CSS -->
<link href="bootstrap/css/bootstrap.css" rel="stylesheet">
<!-- Custom styles for this template -->
<link href="jumbotron-narrow.css" rel="stylesheet">
</head>
<body>
<div class="container align-middle">
<div class="header clearfix">
<nav>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.html">Página Inicial</a>
<br>
</div>
<!--/.navbar-collapse -->
</div>
</nav>
</nav>
<h3 class="text-muted">Project name</h3>
</div>
<div class="jumbotron">
<div class="embed-responsive embed-responsive-16by9">
<iframe class="embed-responsive-item" src="https://www.youtube.com/embed/yhEqroz32Nk"></iframe>
</div>
</div>
<div class="row marketing">
<h3><center><strong>PARADIGMAS DE ORIENTAÇÃO A OBJETOS</strong></center></h3>
<p><center>Neste paradigma, tudo é considerado objeto, que por sua vez é agrupados em classes.</center></p>
<h4><strong>Os conceitos muito utilizados em orientação a objetos são:</strong></h4>
<p><b>Objetos:</b> entidades que são instâncias de uma classe, e que possuem atributos e métodos. As classes agrupam objetos que são entidades com características semelhantes entre si. Pode ser entendido como um conceito do mundo real que possa ser aplicado a um sistema</p> <br>
<p><b>Abstração:</b> Representação de uma entidade do mundo real, com seus comportamentos e características.</p>
<p><b>Classe:</b> módulo ou estrutura de dados abstrata<br></p>
<p><b>Métodos:</b> comportamentos desses objetos. Semelhante a uma função. Implementa uma ação da entidade representada pela classe à qual pertencem. <br></p>
<p><b>Construtores</b> são métodos especiais para criação e inicialização de uma nova instância da classe. Inicializa objetos e suas variáveis, cria novos objetos, garantindo sua configuração correta em sua criação. Exemplo em Java de chamada de construtor:
Carro meuCarro = new Carro();</p>
<p><b>Destrutores</b> são métodos que geralmente são chamados quando termina o tempo de vida do objeto, permitindo assim a desalocação de memória. Em Java, isso é feito automaticamente, através do mecanismo Garbage Collector.<br></p>
<p><b>Atributos:</b> são as características desses objetos, agrupados em uma classe. Pode ser um valor simples, como um inteiro; ou estruturas complexas, como um outro objeto.</p>
<p><b>Conceito de encapsulamento:</b> trata-se do fato de evitar que atributos de uma classe sejam diretamente acessíveis de fora da classe. Para acessar esses atributos, métodos (como get e set, em Java por exemplo) são definidos, permitindo assum maior controle dos valores. <br></p>
<p>O conceito de <b>VISIBILIDADE</b> é utilizado para indicar o nível de acesso de atributos e métodos. Pode ser visível por todos (público), pode ser visto apenas pela classe (privado) ou pode ser protegido (visto apenas por suas classes e subclasses). Em Java, são definidos pelas palavras public, private e protected, respectivamente. <br></p>
<p>O conceito de <b>HERANÇA</b> é um mecanismo que permite que características comuns a diversas classes sejam organizadas em uma classe base, e que a partir desta, novas classes (subclasses) podem ser criadas. Estas, por sua vez, além das características da classe pai, englobam também suas características específicas (tais como atributos e métodos por exemplo). Herança múltipla (uma subclasse herdar de mais de uma classe) não é suportado por todas as linguagens - como Java, por exemplo.<br></p>
<p><b>Classes abstratas</b> são classes que não possuem implementação em si, mas apenas a declaração dos atributos e métodos - que por sua vez são implementadas nas suas classes filhas. Em java, são representadas por ''interface'' ou ''abstract class''. Na interface, entretanto, não tem nenhum método implementado. </p>
<p><b>POLIMORFISMO</b>, por sua vez, é apresentação da mesma interface para formas diferentes. Podemos abordar as definições de sobrescrita (método com mesmo nome e quantidade de parâmetros), sobrecarga (mesmo nome, mas quantidades e tipos de parâmetros diferentes) e substituição (quando uma subclasse reescreve um método definido na superclasse). <br></p>
<p><b>Padrões de projeto de software:</b> Descrevem soluções gerais para resolver problemas que ocorrem frequentemente no desenvolvimento de software. Nos padrões Gangue of Four, por exemplo, são 24 tipos agrupados em 3 famílias: Criacional, estrutural e comportamental. <br></p>
<p><b>UML - UNIFIED MODELING LANGUAGE</b>- Não é vinculada a nenhuma linguagem de programação em específico, mas sim uma representação gráfica (diagrama). Essa linguagem de notação pode representar diagramas estruturais (representando a arquitetura do sistema) e comportamentais (como funcionalidades, processo do negócio, trocas de mensagens). <br></p> <br>
<h4><b>RELACIONAMENTOS ENTRE CLASSES </b></h4>
<p><b>AGREGAÇÃO</b> - Vínculo no qual ocorre o conceito de parte-todo entre classes, porém quando uma classe deixa de existir, a outra não necessariamente deixa também. </p>
<p><b>ASSOCIAÇÃO</b> - Vínculo binário (ou unário) entre classes, no qual não ocorre o conceito de parte-todo entre uma e outra. COMPOSIÇÃO - Vínculo entre classes no qual quando a classe Todo deixa de existir, as classes Parte também são destruídas.</p>
<p><b>COMPOSIÇÃO</b> - Vínculo entre classes no qual quando a classe Todo deixa de existir, as classes Parte também são destruídas. </p>
<p><b>ACOPLAMENTO</b> - é a relação de interdependência entre as classes. Deve ser a mais baixa possível, para facilitar a manutenção do código, entre outras vantagens. <br></p> <br>
<center><p>Preparamos um teste para você! Teste seu conhecimento de orientação a objetos</p>
<p><a class="btn btn-primary btn-lg" href="prova.html" role="button">Fazer o teste »</a></p></center>
</div>
<div class="col-lg-6">
<p></p>
</div>
<footer class="footer"> </footer>
</div>
<!-- /container -->
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/popper.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</body>
</html>