-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patheconomizaqui-detalhes.html
212 lines (179 loc) · 10.6 KB
/
economizaqui-detalhes.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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<title>Mateus de Oliveira - Curriculo</title>
<meta content="" name="descriptison">
<meta content="" name="keywords">
<!-- Favicons -->
<link href="assets/img/favicon2.png" rel="icon">
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-icon">
<!-- Google Fonts -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i|Raleway:300,300i,400,400i,500,500i,600,600i,700,700i|Poppins:300,300i,400,400i,500,500i,600,600i,700,700i" rel="stylesheet">
<!-- Vendor CSS Files -->
<link href="assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="assets/vendor/icofont/icofont.min.css" rel="stylesheet">
<link href="assets/vendor/boxicons/css/boxicons.min.css" rel="stylesheet">
<link href="assets/vendor/venobox/venobox.css" rel="stylesheet">
<link href="assets/vendor/owl.carousel/assets/owl.carousel.min.css" rel="stylesheet">
<link href="assets/vendor/aos/aos.css" rel="stylesheet">
<!-- Template Main CSS File -->
<link href="assets/css/style.css" rel="stylesheet">
<!-- =======================================================
* Template Name: iPortfolio - v1.3.0
* Template URL: https://bootstrapmade.com/iportfolio-bootstrap-portfolio-websites-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
======================================================== -->
</head>
<body>
<!-- ======= Mobile nav toggle button ======= -->
<button type="button" class="mobile-nav-toggle d-xl-none"><i class="icofont-navigation-menu"></i></button>
<!-- ======= Header ======= -->
<header id="header">
<div class="d-flex flex-column">
<div class="profile">
<img src="assets/img/perfil.jpeg" alt="" class="img-fluid rounded-circle">
<h1 class="text-light"><a href="index.html">Mateus de Oliveira</a></h1>
<div class="social-links mt-3 text-center">
<a href="https://github.com/MateusO97" class="github"><i class="bx bxl-github"></i></a>
<!-- <a href="https://www.facebook.com/mateus.oliveirabarbosa" class="facebook"><i class="bx bxl-facebook"></i></a> -->
<!-- <a href="https://www.instagram.com/_mat97/" class="instagram"><i class="bx bxl-instagram"></i></a> -->
<a href="mailto:[email protected]" class="google-plus"><i class="bx bxl-google-plus"></i></a>
<a href="https://www.linkedin.com/in/mateus-oliveira-barbosa/" class="linkedin"><i class="bx bxl-linkedin"></i></a>
</div>
</div>
<nav class="nav-menu">
<ul>
<li><a href="#about"><i class="bx bx-user"></i> <span>Sobre</span></a></li>
<li><a href="#resume"><i class="bx bx-file-blank"></i> <span>Curriculo</span></a></li>
<li><a href="#portfolio"><i class="bx bx-book-content"></i> Portfólio</a></li>
<li><a href="#contact"><i class="bx bx-envelope"></i> Contato</a></li>
</ul>
</nav><!-- .nav-menu -->
<button type="button" class="mobile-nav-toggle d-xl-none"><i class="icofont-navigation-menu"></i></button>
</div>
</header><!-- End Header -->
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section id="breadcrumbs" class="breadcrumbs">
<div class="container">
<div class="d-flex justify-content-between align-items-center">
<h2>Detalhes do Portfólio</h2>
<ol>
<li><a href="index.html">Home</a></li>
<li>Detalhes do Portfólio</li>
</ol>
</div>
</div>
</section><!-- End Breadcrumbs -->
<!-- ======= Portfolio Details Section ======= -->
<section id="portfolio-details" class="portfolio-details">
<div class="container">
<div class="portfolio-details-container">
<div class="owl-carousel portfolio-details-carousel">
<img src="assets/img/portfolio/economiza1.jpg" class="img-fluid" alt="">
<img src="assets/img/portfolio/economiza2.jpg" class="img-fluid" alt="">
</div>
</div>
<div class="portfolio-description">
<h2>Detalhes do Projeto</h2>
<p>
Tendo em vista as dificuldades em se comparar os preços dos produtos em diferentes comércios, que não disponibilizam informações por meio da internet, surge a necessidade de uma aplicação para centralizar as informações sobre os produtos desejados, apresentando ao consumidor os estabelecimentos que tem os menores preços.
</p>
<p>
Neste projeto o desenvolvimento da aplicação foi feito em Python Django,
e ele tinha uma caracteristica a mais que era a implementação de padrões de projeto
do GOF. Os padrões implementados na aplicação foram:
<ul>
<li><strong>Observer: </strong>O projeto utiliza um módulo que notifica um usuário por e-mail sempre que um login em sua conta for detectado.
Para que o módulo de envio de e-mail seja notificado de forma eficiente quando um login em uma conta de usuário for realizado, optou-se pela utilização do padrão Observer.</li>
<li><strong>Strategy: </strong>O projeto possui uma lista de mercados cadastrados que podem ser ordenadas de acordo com alguns critérios, sendo eles: por ordem alfabética (de "A a Z" e de "Z a A") e por avaliação (melhores avaliados e piores avaliados).
Para ordenar esta lista de mercados podem ser utilizados vários algoritmos, assim, encontrou-se uma oportunidade para aplicar o padrão Strategy, visto que uma família de algoritmos seria definida.</li>
<li><strong>State: </strong>O projeto possui diversos produtos nos quais usuários podem informar o preço, para garantir que o preço realmente é válido, os usuários tem a opção de confirmar o preço ou declara-lo incorreto, o preço possui um atributo de pontos de confiabilidade, que aumenta ou diminui de acordo com esta opção do usuário.
Para garantir esta confiabilidade, encontrou-se uma oportunidade para aplicar o padrão State, No qual o produto receberia um selo de verificado caso este atributo de pontos estivesse em uma determinada categoria.</li>
<li><strong>Factory: </strong>O projeto é desenvolvido utilizando o Framework Django da linguagem Python, e o mesmo possui um módulo de Forms no qual é responsável por definir os campos necessários para que seja construido um objeto</li>
<li><strong>Facade: </strong>Essa estrutura já é implementada no django com o arquivo urls.py, onde é feito todo o gerenciamento de rotas da aplicação. No django existem vários apps, no qual cada um tem a sua própria url, e o arquivo urls.py nada mais é do que uma fachada que gerencia outras fachadas.</li>
<li><strong>Template Method: </strong>Essa estrutura é utilizada nos forms dos apps da aplicação, onde se define os campos que estarão presentes em determinados formulários.</li>
</ul>
</p>
</div>
</div>
</section><!-- End Portfolio Details Section -->
<section id="ficha" class="ficha section-bg">
<div class="container">
<div class="section-title">
<h2>Ficha Técnica</h2>
</div>
<div class="row" data-aos="fade-in">
<div class="info">
<div class="row">
<div class="col-lg-6">
<div class="address">
<h4>Ferramentas utilizadas:</h4>
<ul>
<li><i class="icofont-rounded-right"></i>Python Django</li>
<li><i class="icofont-rounded-right"></i>Docker</li>
<li><i class="icofont-rounded-right"></i>Heroku</li>
</ul>
</div>
<div class="email">
<h4>Metodologias Utilizadas:</h4>
<ul>
<li><i class="icofont-rounded-right"></i>Scrum adaptado</li>
</ul>
</div>
</div>
<div class="col-lg-6">
<div class="phone">
<h4>Cliente:</h4>
<ul>
<li><i class="icofont-rounded-right"></i>Disciplina de Arquitetura e desenho de software</li>
</ul>
</div>
<div class="github">
<h4>Página do projeto:</h4>
<ul>
<li><i class="icofont-rounded-right"></i><a href="https://economizaqui.github.io/EconomizAqui/">https://economizaqui.github.io/EconomizAqui/</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</main><!-- End #main -->
<!-- ======= Footer ======= -->
<footer id="footer">
<div class="container">
<div class="copyright">
© Copyright <strong><span>iPortfolio</span></strong>
</div>
<div class="credits">
<!-- All the links in the footer should remain intact. -->
<!-- You can delete the links only if you purchased the pro version. -->
<!-- Licensing information: https://bootstrapmade.com/license/ -->
<!-- Purchase the pro version with working PHP/AJAX contact form: https://bootstrapmade.com/iportfolio-bootstrap-portfolio-websites-template/ -->
Designed by <a href="https://bootstrapmade.com/">BootstrapMade</a>
</div>
</div>
</footer><!-- End Footer -->
<a href="#" class="back-to-top"><i class="icofont-simple-up"></i></a>
<!-- Vendor JS Files -->
<script src="assets/vendor/jquery/jquery.min.js"></script>
<script src="assets/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="assets/vendor/jquery.easing/jquery.easing.min.js"></script>
<script src="assets/vendor/php-email-form/validate.js"></script>
<script src="assets/vendor/waypoints/jquery.waypoints.min.js"></script>
<script src="assets/vendor/counterup/counterup.min.js"></script>
<script src="assets/vendor/isotope-layout/isotope.pkgd.min.js"></script>
<script src="assets/vendor/venobox/venobox.min.js"></script>
<script src="assets/vendor/owl.carousel/owl.carousel.min.js"></script>
<script src="assets/vendor/typed.js/typed.min.js"></script>
<script src="assets/vendor/aos/aos.js"></script>
<!-- Template Main JS File -->
<script src="assets/js/main.js"></script>
</body>
</html>