Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE PAULISTA CIÊNCIAS DA COMPUTAÇÃO ANDRÉ BITTENCOURT D424EG-8 KEVEN GOMES N206CH-7 LUCAS MESQUITA N190FE-0 ATIVIDADES PRÁTICAS SUPERVISIONADA DESENVOLVIMENTO DE SOFTWARE UTILIZANDO CONCEITO DE PROGRAMAÇÃO ORIENTADA A OBJETO SÃO PAULO 2018 2 ÍNDICE: 1. OBJETIVO DO TRABALHO...........................................................................03 2. INTRODUÇÃO...............................................................................................04 3. ELEMENTOS DE PROGRAMAÇÃO ORIENTAÇÃO A OBJETO..................06 3.1 1º Pilar – Abstração..................................................................................07 3.2 2º Pilar – Encapsulamento.......................................................................07 3.3 3º Pilar – Herança.....................................................................................08 3.4 4º Pilar – Polimorfismo.............................................................................08 3.5 Classe......................................................................................................08 3.6 Objeto......................................................................................................09 3.7 Atributos...................................................................................................09 3.8 Métodos...................................................................................................09 3.9 Vantagens................................................................................................10 3.10 Desvantagens........................................................................................10 4. DISSERTAÇÃO.............................................................................................12 4.1 Introdução..............................................................................................12 4.2 Teoria....................................................................................................12 4.3 Considerações Finais............................................................................15 5. PROJETO DO PROGRAMA..........................................................................17 6. RELATÓRIO COM AS LINHAS DE CÓDIGO DO PROGRAMA.....................20 7. APRESENTAÇÃO DO PROGRAMA EM FUNCIONAMENTO.......................24 8. BIBLIOGRAFIA..............................................................................................26 3 1. OBJETIVO DO TRABALHO: No decorrer dos anos, o lixo se tornou assunto de interesse global. Muitas vezes concluímos que esta incógnita é entre países subdesenvolvidos, que carecem de incentivo e meios financeiros ou tecnológicos, mas é problema em todo globo no destino e acomodação irregular que têm gerado graves problemas nas demais nações. Por volta de 250 mil toneladas de lixo é produzido diariamente no Brasil. São estes os principais resíduos descartados: lixo orgânico, papel e papelão, plástico, metais (ferro, alumínio, aço, etc.), vidro entre outros. Tudo isso é descartado das seguintes formas: aterros sanitários, aterros controlados, lixões e compostagem. Felizmente, estamos caminhando ao descarte correto do lixo, já que 76% dos detritos estão sendo lançados em aterros sanitários e controlados. Contudo não podemos esquecer do restante, onde este por cento é que destrói nossas reservas hídricas, solos, matas e também causa a poluição visual ao andar pelas metrópoles ao ver grandes entulhos em lugares inapropriados. Assim, este trabalha buscará apresentar a decorrência do descarte e destino incorreto do lixo, junto, mostrando e propor métodos de conscientização ambiental ao reduzir os resíduos, para oferecer um bem-estar de qualquer cidadão em sua saúde e segurança. Logo, com toda instrução adquirida no decorrer deste semestre, manusearemos uma base de programação orientada a objeto com finalidade de auxiliar-nos a localizar ECOPONTOS espalhados pela cidade de São Paulo, por meio de incentivar o descarte correto do lixo e entulhos em locais oferecidos pela prefeitura para o descarte e o manuseio, para que haja mínimos impactos ambientais. 4 2. INTRODUÇÃO: Como foi dito na parte de “objetivo do trabalho” o foco da pesquisa realizada para esse trabalho corresponde aos Ecopontos criados pela prefeitura de São Paulo, que seriam locais de entrega voluntária de pequenos volumes de entulho (até 1 m³), grandes objetos (móveis, poda de árvores etc.) e resíduos recicláveis. Nos Ecopontos, o munícipe poderá dispor o material gratuitamente em caçambas distintas para cada tipo de resíduo. No momento existe pelo menos 100 Ecopontos espalhados por todo o Brasil, e a Prefeitura de São Paulo pretende fazer mais Ecopontos no futuro. Apesar dos Ecopontos serem um ponto essencial para a diminuição de lixo e o aprimoramento do ecossistema por todo o Brasil, não é todo o tipo de lixo que pode ir para um Ecoponto, por exemplo: O que pode ser levado ao Ecoponto: Resíduos da construção civil (cimento, entulho e tijolo, restos de azulejos e madeiras); Móveis velhos; Sobras de poda de árvore; Recicláveis Secos (papel, papelão, vidro e alumínio). O que não pode ser levado ao Ecoponto: Lixo domiciliar; Lixo eletrônico; Pilhas e baterias; Óleo; Gesso; Telhas de Amianto; Medicamentos; Espelhos; Lâmpadas. Desse jeito todo tipo de lixo que não seja muito convencional será resolvido pelos Ecopontos e assim deixando nosso país cada vez mais limpo. Com certeza os Ecopontos são um grande passo para o nosso país, mas ainda temos muito a percorrer. Como foi dito na parte de objetivo ainda há vestígios que podem causar problemas para o nosso ecossistema como, por 5 exemplo, acabar com o despejo dos mesmos em vias públicas, terrenos baldios ou rios, o que ajuda a diminuir diversos problemas de saúde e enchentes, além de reduzir os gastos com a limpeza pública. Os Ecopontos funcionam de segunda a sábado, das 6h às 22h, e aos domingos e feriados, das 6h às 18h e com a finalidade do nosso programa de localizar os Ecopontos para que assim as pessoas possam achar Ecopontos mais próximos com mais facilidade dentro desses horários, esperamos poder ajudar a melhorar o ecossistema cada vez mais. Utilizamos o máximo de conceitos que aprendemos nas aulas, não só, para fazer o trabalho bem feito, como também para fazer um programa para que possa ajudar as pessoas a ajudar o nosso país um passo de cada vez. Agora, com a introdução já dita, as próximas etapas do trabalho explicaram com mais detalhes como o nosso programa funciona, conceitos de programação orientada a objeto e uma dissertação sobre sustentabilidade ambiental, tem ainda muito mais informação a ser mostrada. 6 3. ELEMENTOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS: “A cada dia, cada vez mais a linguagem de programação orientada a objetos é utilizada no desenvolvimento e criação de sistemas, mas engana -se quem acha que ela é uma linguagem recente, pois já no início da década de 70 ela já estava sendo utilizada, ela é originária da linguagem Simula (Simula Language), criada na Noruega no início da década de 60, e como o próprio nome diz, ela foi criada para fazer e operar simulações. Mas o seu uso alavancou um conceito que mais tarde seria de grande valor para programadores, a sua similaridade com o mundo real, desenvolvedores utilizam está linguagem pelo simples fato de poderem minimizar os custos dos sistemas, principalmente com relação a manutenções de correções como alterar ou remendar códigos de sistemas já implementados já em operação. Sua criação foi feita exatamente para tentar aproximar o mundo real ao mundo virtual: a principal ideia foi de tentar simular o mundo realdentro do computador. Para isso, nada mais natural do que utilizar objetos como exemplo”. Na Programação Orientada a Objetos, o programador é responsável por moldar o mundo e seus objetos, e definir como os objetos devem interagir entre si. Os objetos conversam ou interagem uns com os outros através do envio de mensagens, e o papel principal do programador é definir quais serão as mensagens que cada objeto pode e com isso irá receber, e qual será a ação que o objeto deve realizar ao receber cada mensagem digitada. Isso resulta na possibilidade de fazer a criação de códigos com baixo acoplamento e que podem ser facilmente reutilizados (códigos reutilizáveis), o que são alguns dos principais motivos para se programar orientado a objetos. A Programação orientada a objetos (POO) carrega consigo alguns conceitos básicos que são chamados de os 4 pilares. Que são conhecidos como: Abstração, Encapsulamento, Herança e por fim polimorfismo. 7 3.1 1º Pilar - Abstração É utilizada para a definição de entidades do mundo real. Sendo onde são criadas as classes. Essas entidades são consideradas tudo que é real, tendo como consideração as suas características e ações, Utiliza-se a abstração para modelar as características do mundo real, os problemas que ele está tentando resolver, um bom exemplo é, caso ele queira controlar, manipular os dados de uma empresa, e com uma linguagem como a orientação orientada a objeto fica mais fácil devidos aos recursos que ela poderá te oferecer. 3.2 2º Pilar – Encapsulamento É a técnica utilizada para esconder uma ideia, ou seja, não expor os detalhes internos de seu código para seu usuário, tornando partes do sistema mais invisíveis possíveis. Exemplo, quando um controle remoto estraga apenas é trocado ou consertado o controle e não a televisão inteira. Nesse exemplo do controle remoto, acontece a forma clássica de encapsulamento, pois quando o usuário muda de canal não se sabe que programação acontece entre a televisão e o controle para efetuar tal ação. O encapsulamento no geral tem como principal função ocultar certas informações que não são acessadas aos usuários, é no encapsulamento que estão os detalhes de implementação, um bom exemplo que podemos dar é: Podemos pensar em um Motorista (usuário) utilizando um Carro (sistema). O usuário não necessita conhecer detalhes do funcionamento interno do sistema para poder utilizá-lo, precisa apenas conhecer a interface, no caso, como dirigir o automóvel, na pratica: Ele não precisa saber como o motor é movido, ele só precisará saber pilotar o automóvel. Uma grande vantagem do encapsulamento é que toda parte encapsulada pode ser modificada sem que os usuários da classe em questão sejam afetados. No exemplo do carro, um mecânico poderia substituir o motor do equipamento por um outro totalmente diferente, sem que o motorista seja afetado, afinal, ele continuará somente tendo a necessidade de dirigir o auto. 8 3.3 3º Pilar – Herança Na Programação Orientada a Objetos o significado de herança tem o mesmo significado para o mundo real. Assim como um filho pode herdar alguma. Herança representa a especialização das entidades e a entidade mãe seria a superclasse, no caso generalização. Na prática um filho pode herdar características de pai e mãe, mas nunca de um irmão. 3.4 4º Pilar – Polimorfismo O polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, é possível tratar vários tipos de maneira homogênea (através da interface do tipo mais abstrato). É caracterizado quando duas ou mais classes distintas têm métodos de mesmo nome, de forma que uma função possa utilizar um objeto de qualquer uma das classes polimórficas, sem necessidade de tratar de forma diferenciada conforme a classe do objeto. O polimorfismo permite que classes abstratas consigam receber comportamentos através de classes concretas. Por exemplo, um dispositivo USB, podemos considerar que o USB seria uma classe abstrata enquanto os dispositivos (Pen Drive, Ipad, Câmeras, etc) seriam as classes concretas. Ou seja, o USB é uma especificação que pode ter várias implementações com características diferentes”. 3.5 Classe Uma classe é o agrupamento de objetos com a mesma estrutura de dados (definida pelos atributos ou propriedades) e comportamento (operações), ou seja, classe são as descrições dos objetos! Características das classes Toda classe possui nome; 9 Possuem sua visibilidade, exemplo: public, private, protected (publico,pri- vado e protegido); Possuem membros como: Características e Ações; Para criar uma classe basta declarar a visibilidade + digitar a palavra reservada class. 3.6 Objeto De maneira geral, Objeto é uma classe sendo estanciada. De maneira mais conceitual, um objeto é algo distinguível que contém atributos (ou propriedades) e possui um comportamento. Cada objeto tem uma identidade e é distinguível de outro mesmo que seus atributos sejam idênticos, ele sempre será diferente do outro 3.7 Atributos O conjunto de propriedades da classe, alguns autores preferem distinguir o mesmo como variável. Os atributos são as propriedades de um objeto, também são conhecidos como variáveis ou campos. Essas propriedades definem o estado de um objeto, fazendo com que esses valores possam sofrer alterações. 3.8 Métodos Os métodos são ações ou procedimentos, onde podem interagir e se comunicarem com outros objetos. A execução dessas ações se dá através de mensagens, tendo como função o envio de uma solicitação ao objeto para que seja efetuada a rotina desejada. O conjunto de funcionalidades da classe. Para cada método, especifica-se sua assinatura, composta por: Nome: um identificador para o método. Tipo: quando o método tem um valor de retorno, o tipo desse valor. Lista de argumentos: quando o método recebe parâmetros para sua execução, o tipo e um identificador para cada parâmetro. Visibilidade: como para atributos, define o quão visível é um método a partir de objetos de outras classes. Construtores: O construtor de um objeto é um método especial, pois inicializa seus atributos toda vez que é instanciado (inicializado). 10 Toda vez que é digitada a palavra reservada new, o objeto solicita para a memória do sistema armazená-lo, onde chama o construtor da classe para inicializar o objeto. A identificação de um construtor em uma classe é sempre o mesmo nome da classe. 3.9 Vantagens Maior facilidade para reutilização de código e por consequência do projeto; Possibilidade de o desenvolvedor trabalhar em um nível mais elevado de abstração; Utilização de um único padrão conceitual durante todo o processo de criação de software; Maior adequação à arquitetura cliente/servidor; Maior facilidade de comunicação com os usuários e com outros profissionais de informática; Ciclo de vida mais longo para seus sistemas; Desenvolvimento acelerado dos sistemas; Possibilidade de se construir sistemas muito mais complexos, pela incorporação de funções prontas; Menor custo para desenvolvimento e manutenção de sistemas. 3.10 Desvantagens Complexidade no aprendizado para desenvolvedores de linguagens estruturadas; Maior uso de memória (heap), por exemplo para aplicações móveis em JavaME; Funcionalidades limitadas por interface, quando estas estão incompletas (problemas em modelagem); Dependência de funcionalidades já implementadas em superclasses no caso da herança, implementações espalhadas em classes diferentes. Contudo, Programação Orientada a Objetos, é uma ótima linguagem a ser usada por sua disponibilidade de se criar sistemas mais completos, entretanto, complexidade para usuários de Programação Estruturada. A cada ano que 11passa ela está sendo mais utilizada por novos programadores, com sua possibilidade de reaproveitamento de códigos e sua manutenção. Seus objetos são autônomos. Têm seu comportamento encapsulado isolando as regras dentro da classe. Com isso melhora a manutenibilidade, a originalidade e a qualidade de seu software a ser criado. A programação orientada a objetos é muitas vezes a abordagem mais natural e pragmática, para solucionar um problema computacionalmente. 12 4. DISSERTAÇÃO: 4.1 Introdução Presentemente, o lixo retrata uma dificuldade elevada do que podemos lidar e provavelmente ainda não tenhamos admitido isso. O grande questionamento do acumulo de resíduos está em livrar dos problemas de poluição, em especial das grandes metrópoles. Boa parte das pessoas pode contribuir para tentar diminuir o impacto do lixo na vida em sociedade. Um dos principais problemas que ele pode gerar serão expostos, viabilizando uma maior conscientização e evitar que o lixo seja o grande problema das gerações futuras. O lixo abandonado em locais públicos urbanos é uma das maneiras de degradação do meio ambiente. Por ser resíduos difíceis de serem apanhados pela zeladoria pública, com efeitos significativos em relação a estética das cidades, meio ambiente, saúde pública e cofres do Estado. Ao jogar lixo no chão pode ser entendido como um hábito antissocial, criminoso e anti-ambiental, caracterizando-se como um problema social. Na psicologia (ambiental e social) pode ajudar a compreender em bases psicológicas dos comportamentos pró-ambientais, cito, a destinação certa de resíduos sólidos. Por causa da grande importância e falta, pesquisas sobre descarte irregular e lixo está ocorrendo internacionalmente por volta de quatro décadas, sob o enfoque da ciência do comportamento e normas sociais. O trabalho tem como mostrar a importância na contribuição conservação ambiental e na luta à poluição metropolitana. Ao mostrar meios de descarte, na cidade de São Paulo, busca-se divulgar e apresentar locais de entrega voluntária de pequenos volumes de entulho, grandes objetos e resíduos recicláveis entre outros métodos. Possibilitando que a sociedade fique ciente, através de uma educação ambiental, para que a mesma capaz de selecionar o melhor destino para sanar o problema. 4.2 Teoria A crescente ampliação de zonas urbanas e criação de cidades vêm influenciando para o aumento de impactos ambientais negativos. No meio urbano, determinadas vertentes culturais como o consumo de produtos 13 industrializados e a precisão da água como recurso natural, incentiva como se apresenta o ambiente. Os costumes e práticas na utilização da água e a produção de lixo pelo alto consumo de bens materiais são autor por parte das alterações e impactos ambientais. No Brasil, Mucelin e Bellini presumem em uma “reforma ecológica” e apontam como urgente, tal decisão, especialmente, no ambiente urbano pelos entendidos impactos ambientais negativos. O lixo metropolitano, muitas vezes, é responsável pelas consequências ambientais. A utilização de produtos industrializados é responsável pela ininterrupta produção de lixo. A produção de lixo nas cidades tem sua intensidade que não é possível ceder uma cidade sem conceituar a problemática criado pelos resíduos sólidos, a começar da geração até a disposição final. Nas cidades brasileiras, normalmente esses resíduos são direcionados a céu aberto. Os Problemas ambientais gerados pelo lixo é de complexa solução e a maior parte dos municípios brasileiros apresenta um serviço de coleta que não estimula a separação dos fragmentos na fonte. Nessas cidades normalmente observamos manias de disposição final inadequado de lixo. Materiais sem utilização se amontoa discriminadamente e desordenadamente, por vezes em locais inapropriados como terrenos baldios, fundos de vale, margens de estradas e margens de lagos e rios. Conforme Lima, a elevada intromissão humana na natureza, os desequilíbrios ecológicos e a degradação a qualidade de vida são temas em destaque. As dificuldades ecológicas e de pobreza são resultados da forma de desenvolvimento praticado, sendo necessário a busca de um estilo de desenvolvimento desejado à preservação da vida na Terra. Logo após a Revolução Industrial, os resíduos começaram a ter importância principalmente em relação a saúde pública, contudo é no início de 1970 que estes realmente tiveram um ressalto ambiental, principalmente em nível nacional quanto internacional, pois o tema foi exposto em grandes encontros mundiais, tal como nas conferências de Estocolmo, em 1972, em seguida na ECO 92, no Rio de Janeiro e, em 1997, na de Tibilisi. 14 Contudo, a começar na segunda metade do século XX iniciou-se uma guinada. As nações passaram a se preocupar-se com o planeta onde vivem. Entretanto não foi casualidade: acontecimentos como a camada de ozônio e o aquecimento global do planeta despertaram a população mundial em relação do que estava acontecendo com o meio ambiente. Nesse “acordar”, o ponto da geração e destinação final do lixo foi avistado, todavia, até os dias atuais não vem sendo encarada com a preocupação precisa. O lado triste dessa história é que o lixo é um parâmetro interessante de desenvolvimento de um país. Porque quanto maior é a economia, mais sujeira o país irá produzir. É o sinal de que a nação está crescendo, de que as pessoas estão consumindo mais. A questão é que está ganhando uma dimensão de incerteza por causa da mudança no perfil do lixo. Na metade do século, a composição do lixo era composta predominantemente de matéria orgânica, ou seja, de restos de comida. No avanço da tecnologia, materiais como plásticos, isopores, pilhas, baterias de celulares e lâmpadas estão constantes na coleta. Antigamente, os bebês usavam fraldas de pano, que não eram descartadas, suas comidas eram feitas em casa e bebiam leite guardado em garrafas reutilizadas. Atualmente, os bebês usam fraldas descartáveis, tomam sopa em potinhos que são lançados fora e leites embalado em tetrapak. No termino de uma semana de utilidades, o lixo que eles produziram equivale, em volume, a quatro vezes o seu tamanho. As sociedades, atuais desenvolvidas, tiveram seu alto avanço para a urbanização a partir da Revolução Industrial. Contudo antes disso, o ser humano passou por uma etapa em que se organizava em grupos que se firmava num determinado espaço, que pode compreender por um período pré-urbano denominado “sociedade da gente”. Esta foi caracterizada, por sua vez, organização em pequenos grupos semelhantes e autossustentáveis, voltados para a procura de alimentação. Sem dúvida o lixo se tornou-se um grande problema e é necessário compreender de como lidar com ele, de forma em evitar que venha a ter consequências, como poluição intra-urbano, a má qualidade de vida aliada a doenças. Há relação em que o lixo pode se tornar um problema ainda mais desafiador de se resolver para a humanidade se não souber como descarta-lo. 15 O depósito de lixo é um método que os municípios encontraram para armazenar o seu lixo. Basicamente o depósito de lixo e aterros sanitários basicamente consiste em grandes terrenos em que os resíduos é enterrado no solo. Essa forma de armazenar o lixo resolve a questão das dificuldades em que os lixões tradicionais podem causar. Em compensação, há a necessidade de que seja realizada uma seleção minuciosa do que será jogado no solo. As chances de existir uma contaminação no solo são extremamente altas e isso gera com certeza um problema na terra e consequentemente para o lençol freático. Imagine tal situação, apenas metade do lixo é coletado no país, deste anto, uma pequena parcela vai para locais adequados, como incineradoras, usinas de reciclagem, aterros sanitários e compostagem.Outra parcela é lançada em rios e represas que fornecem água em regiões inteiras, ou deixados a céu aberto em lixões clandestinos. Nessas contas, entra também o lixo jogado nas ruas, aquele que obstruem a fluidez de bueiros e galerias de águas pluviais, causando enchentes desastrosas na época de chuvas. Nas regiões mais distantes da administração pública, ou seja, nas comunidades carentes, onde a situação é precária, por não ter serviços básicos de coleta, muitas vezes o lixo é jogado nas beiras dos cursos d´águas e, quando vem a chuva, a força d´água e o volume do lixo provocam fortes desabamentos, o que vemos quase sempre no verão aqui na cidade de São Paulo. Nos grandes centros urbanos essa situação é cada vez mais crítica. 4.3 Considerações Finais Diariamente, os meios de comunicação notificam deslizamentos de encostas, enchestes, estragos na paisagem, assoreamento de mananciais, também outros problemas que têm em semelhança, nos maiores casos, o lixo. Quando um indivíduo joga o menor papel de bala na rua pode não imaginar todas as causas que pode gerar. É normal ouvir comentários de pessoas que na cidade a coleta de lixo não é eficaz porque a mesma realiza apenas em alguns dias na semana. Contudo, é preciso que se diga que a coleta realizada de forma correta é um método de tentar evitar o caos causados pelo lixo. 16 Todavia, só basta passear pelas ruas para observar como é difícil de encontrar um quarteirão de calçadas sem nenhuma sujeira, livres do lixo. Quem passa nas principais praças onde o vai-e-vem de pessoas é maior, certamente irá ver um número alto de copinhos, papeis e jornais jogados pelos transeuntes, mesmo havendo lixeiras a poucos metros. O destino irregular do lixo e entulhos é exageradamente perigoso às pessoas em relação a saúde pública, ao meio ambiente se tratando da poluição do solo e até no campo visual, logo que a sujeira passa se tornar cotidiana na paisagem local. O lixo parado em grande quantidade causa mau odor nas proximidades, além de atrair e proliferar animais e criadouros do mosquito transmissor da Dengue e outras doenças, por conta da água parada em objetos ali jogados. A necessidade de conscientização nas pessoas é um dos principais fatores dos problemas com os resíduos descartados irregularmente. Virou cultural, observou-se quando as pessoas estão caminhando, por uma ação inconsciente, jogam os lixos nas vias, mesmo havendo lixeiras próximas ao indivíduo. Evitando o descarte ilegal do lixo nas estradas e ruas, haverá colaboração para diminuir os problemas sociais (enchentes, poluição urbana, ambiental, doenças infectuosas, parasitarias, entupimento de esgotos e etc.). Portanto, o programa criado em orientação a objetos busca auxiliar os usuários na busca de locais próprios para o descarte correto do lixo, através de centrais recolhedoras próprias do poder público, sem nenhum gasto para o cidadão. 17 5. PROJETO DO PROGRAMA Antes da inicialização do processo de desenvolvimento do programa, foi feito uma pesquisa de cada integrante do grupo, na busca de apresentar ideias para tal projeto. Após tal prazo estipulado, ideais foram postas a mesa e foi definido como tema o “Descarte Irregular do Lixo” e abordar suas consequências sociais e ecologias. Nisso pensamos em um software que auxilie os usuários nessa conscientização, e reparamos que mesmo existindo locais próprios para descarte correto do lixo, a sociedade não era notificada ou de estar informada sobre tal funcionalidade. Resolvemos usar uma desses meios, que é os ECOPONTOS e auxiliar que os indivíduos possam saber onde ir descartar tais resíduos. Assim, o programa final deverá apresentar uma mensagem informando Ecopontos espalhados pela cidade de São Paulo no raio do distrito digito pelo usuário. Onde foi criado por assim dizer um banco de dados com um Ecoponto por cada distrito, antes, o anseio do grupo era por todos, mas pelo receio de ultrapassar o limite de linhas, resolvemos por desta forma, dito anteriormente. Existem algumas restrições quanto ao seu uso. A primeira é que o usuário deverá respeitar a forma de digitação do distrito, onde cada palavra por sua vez ser digitada com a primeira letra de cada palavra em maiúscula, por exemplo: Penha, Vila Mariana, Butantã, Freguesia do Ó, Sé; e o conhecimento de organização regional da cidade ao conhecer o distrito onde reside. Outra restrição é que se por acaso for digitado algo diferente do permitido, o programa não irá avisar que o problema é falta de coesão da leitura de dados, mas irá retornar ao menu de opções de nova consulta ou encerramento. Portanto fica ao usuário a atenção na digitação, para que não haja tais desavenças. Logo no início do programa, as primeiras informações apresentadas ao usuário será o menu de apresentação, que mostrará a observação referente a restrição descrita nos parágrafos anteriores. De forma clara e direta, para que o indivíduo não digite informações que depois não cause a outra falha citada, e pense, que o programa está com erros. Em seguida, mais em baixo solicita que seja digitado o distrito (ou subprefeitura). Que ficará a par do usuário o distrito o manuseio dessa situação. Após ter digitado, mostrará o ECOPONTO, com seguintes dados: nome do 18 Ecoponto e endereço); muitas vezes tal endereço será composto com outras ruas, por ser travessas, ou sem número por falta de dados não contidos no site oficial da prefeitura de São Paulo. O programa irá pedir em sequência em um menu com as opções de tarefa que o executável poderá realizar: 1 – Nova consulta; 2 – Encerrar. São tarefas simples, mas que são essenciais para a dinâmica do programa. Além disso, um programa pequeno e com simples opções, é mais intuitivo para usuários com pouco conhecimento em tecnologia. Será pedido, então, para que seja digitado o número correspondente a opção escolhida. Logo que o número é lido, o programa verifica se foi digitado um número e se for igual à alguma das opções. Bom destacar que ao Encerrar será exibida uma mensagem que passará informações no tratar de horários de funcionamento do estabelecimento, em dias comerciais e feriados, e se houver dúvidas, terá junto o número telefônico se desejar contatar com os responsais dessa organização. Caso contrário, o programa irá finalizar de vez, impossibilitando de utilizar as funções oferecidas. Portanto mais um ponto a ser explorado. Para a criação de todo algoritmo, utilizamos o diagrama de classes da UML para termos uma base como iriamos programar ao darmos nome a Classe principal, que estará uma boa parte dos dados e conterá os atributos ou características e por fim os métodos que seriam necessários. Seguindo, veríamos o tipo de visibilidade que indicará o nível de acesso aos componentes da classe. Nessa classe principal que nomeamos de Ecoponto encontra-se as funções que o programa executa com objetivo de mostrar as interatividades do menu principal, menu de opções e o nomeado banco de dados, por assim dizer, feito em uma swtich...case com proposito de se caso o usuário digitar X, mostrarmos resulto de X. Com auxílio do site oficial da prefeitura de São Paulo, utilizamos esse veículo para a criação dos dados adquiridos, ao inserimos Ecopontos por distritos junto com seus nomes e endereços respectivamente. Nos baseamos em um mapa de distritos da capital paulista para termos uma base se saber quais distritos possui esses locais, e foi confirmado que pelo menos três destes não 19 possuem Ecopontos, portanto irá apresentar mensagem de tentar novamente, em outro distrito mais próximo da preferência do usuário. Em seguida, criamos uma classe interface que implementa a classe Ecoponto, com conhecimentos obtidos em aula sobre encapsulamento. Nela encapsulamos os métodos essenciais que ao chama-lo irá abrir o menu,mostrar os lugares e as opções dual escolha. Por fim, a classe Teste terá a função como o propriamente dito de testar os comandos solicitados. Ao criar um objeto chama usuário, nele encontra em uma ordem sequencial os comandos que gerenciará a o objetivo do programa. Portanto foi usado aprendizados absorvidos no decorrer do semestre afim de atingirmos o objetivo que a Atividade Pratica Supervisionada propusera, fora para nosso crescimento acadêmico. 20 6. RELATÓRIO COM AS LINHAS DE CÓDIGO DO PROGRAMA: import java.util.Scanner; public class Ecoponto implements Controlador { //ATRIBUTOS private String bairro; private String opcao; private boolean abrirMenu; Scanner ler = new Scanner(System.in); Scanner lernov = new Scanner(System.in); //METODOS ESPECIAIS public Ecoponto() { this.setAbrirMenu(true); } //METODOS ABSTRATOS @Override public void abrirMenu() { System.out.println("_______ECOPONTOS - SÃO PAULO______________"); System.out.println("Observações, ao digitar o distrito: |"); System.out.println("1 - Colocar Cada Palavra Em Maiúscula |"); System.out.println("__________________________________________|"); } @Override public void perguntar() { System.out.printf("Digite seu distrito(sub prefeitura): "); bairro = ler.nextLine(); } @Override public void listaDeEcos() { switch (bairro) { case "Aricanduva": System.out.println(">Viaduto Eng.Alberto Badra(Av.Aricanduva, Nº 200)"); break; case "Campo Limpo": System.out.println(">Parque Fernanda(Av.Dr.Salvador Rocco, Nº400)"); break; case "Casa Verde": System.out.println(">Cidade Sudável(Rua Pitolomeu)"); break; case "Cidade Ademar": System.out.println(">Avarenga(Estrada do Alvarenga, Nº 2475)"); break; case "Cidade Tiradentes": System.out.println(">Nascer do Sol(Rua Nascer do Sol, Nº 352)"); break; case "Ermelino Matarazzo": System.out.println(">Jardim São Nicolau(Rua Agreste de Itabaiana, Nº 590)"); break; case "Guaianases": System.out.println(">Jardim São Paulo(Rua Utaro Kanai)"); 21 break; case "Ipiranga": System.out.println(">Tereza Cristina(Rua Tereza Cristina, Nº10)"); break; case "Itaquera": System.out.println(">Corinthians(Rua Ana Pereira, Nº155)"); break; case "Itaim Paulista": System.out.println(">Moreira(Rua João Batista de Godói, Nº1164)"); break; case "Jabaquara": System.out.println(">Imigrantes(Rua Opixe x Rua Frederico Hoeme)"); break; case "Santo Amaro": System.out.println(">Alceu Maynard de Araújo(Av. Prof. Alceu Maynard de Araújo, Nº330)"); break; case "São Matheus": System.out.println(">Cipoaba(Rua Padre Luis de Siqueira x Av. Rodolfo Pirani)"); break; case "São Miguel Paulista": System.out.println(">Imperador(Av. Ribeirão Jacu, Nº 201)"); break; case "Vila Mariana": System.out.println(">Vila Mariana(Rua Maurício Francisco Klabin, Nº37)"); break; case "Vila Prudente": System.out.println(">Anhaia Mello(Rua da Prece, Nº 296)"); break; case "M´Boi Mirim": System.out.println(">Piraporinha(Rua João de Abreu, Nº326)"); break; case "Butantã": System.out.println(">Politécnica(Praça Nilton Vieira de Almeida)"); break; case "Freguesia do Ó": System.out.println(">Bandeirantes(Rua Itaquara, Nº237)"); break; case "Lapa": System.out.println(">Viaduto Antártica(Av.Antártica x Rua Gustavo Willi Borghoff"); break; case "Moóca": System.out.println(">Tatuapé(Avenida Salim Farah Maluf, Nº179)"); break; case "Penha": System.out.println(">Cangaíba(Rua Dr.Luciano Nogueira x Frei Ricardo Pilar)"); break; 22 case "Perus": System.out.println(">Recanto dos Humildes(Rua Sales Gomes, Nº415) "); break; case "Pinheiros": System.out.println(">Vila Madalena(Rua Girassol, Nº15)"); break; case "Pirituba": System.out.println(">Cônego José Salomon(Rua Cônego José Salomon, Nº861)"); break; case "Sé": System.out.println(">Liberdade(Rua Jaceguia, Nº76)"); break; case "Vila Maria": System.out.println(">Vila Maria(Rua Curuçá, Nº1700)"); break; case "Santana": System.out.println(">Tucuruvi(Rua Eduardo Vicente Nasser, Nº519)"); break; case "Socorro": System.out.println("NÃO POSSUE ECOPONTO, Tente distritos ao derredor!"); break; case "Tremembé": System.out.println("NÃO POSSUE ECOPONTO, Tente distritos ao derredor!"); break; case "Parelheiros": System.out.println("NÃO POSSUE ECOPONTO, Tente distritos ao derredor!"); break; } } @Override public void novaConsulta() { System.out.println("_____________________________________|"); System.out.println("1 - Nova consulta."); System.out.println("2 - Encerrar."); System.out.printf("DIGITE: "); opcao = lernov.nextLine(); switch (opcao) { case "1": System.out.println("_____________________________________|"); this.perguntar(); this.listaDeEcos(); this.novaConsulta(); break; case "2": for (int i = 0; i<50; ++i) System.out.println(); System.out.println("FUNCIONAMENTO Seg - Sáb: 6h às 22h|Dom - Feriados: 6h às 18h \nCENTRAL DE ATENDIMENTO 156."); break; } } public boolean isAbrirMenu() { 23 return abrirMenu; } public void setAbrirMenu(boolean abrirMenu) { this.abrirMenu = abrirMenu; } public String getOpcao() { return opcao; } public void setOpcao(String opcao) { this.opcao = getOpcao(); } } public interface Controlador { public abstract void abrirMenu(); public abstract void perguntar(); public abstract void listaDeEcos(); public abstract void novaConsulta(); } public class Teste { public static void main(String[] args) { Ecoponto usuario = new Ecoponto(); usuario.abrirMenu(); usuario.perguntar(); usuario.listaDeEcos(); usuario.novaConsulta(); } } 24 7. APRESENTAÇÃO DO PROGRAMA EM FUNCIONAMENTO 25 26 8. BIBLIOGRAFIA: PREFEITURA DE SÃO PAULO ECOPONTO. Estação de Entrega Voluntária de Inservíveis. Disponível em: http://www.prefeitura.sp.gov.br/cidade/secretarias/regionais/amlurb/ecopontos/i ndex.php?p=4626. Inova. ECOPONTOS. Disponível em: http://www.inovagsu.com.br/o-que- fazemos/ecoponto/. MOVIMENTO LIXO CIDADÃO. Descubra as regras dos Ecopontos. Disponível em: http://movimentolixocidadao.com.br/descubra-as-regras-dos- ecopontos/. CENTRO NACIONAL DE EDUCAÇÃO A DISTÂNCIA. Lixo: conseqüências, desafios e soluções. Disponível em:http://www.cenedcursos.com.br/meio- ambiente/lixo-consequencias-desafios-e-solucoes/. SUA PESQUISA.COM. Lixo Brasileiro. Disponível em: https://www.suapesquisa.com/ecologiasaude/lixo.htm. MUCELIN, C. A.; BELLINI, M. Lixo e impactos ambientais perceptíveis no ecossistema urbano. Disponível em: http://www.scielo.br/scielo.php?script=sci_arttext&pid=S1982451320080001000 08&lng=en&nrm=iso. BLOG FL. Conscientização sobre o LIXO jogado por aí!!!. Disponível em: https://www.fl.com.br/index.php/1600/conscientizao-sobre-o-lixo-jogadopor/. INSTITUTO BRASILEIRO DE GEOGRAFIA E ESTATÍSTICA – IBGE / Pesquisa nacional de saneamento básico- 2000. Disponível em: http://www.ibge.gov.br/ibgeteen. UFMG. Programa de Administração e Gerenciamento de Resíduos Sólidos. Disponível em: https://www.ufmg.br/proex/geresol/lixohistoria.htm. DEVMEDIA. Vantagens e Desvantagens da POO. Disponível em: https://www.devmedia.com.br/vantagens-e-desvantagens-da-poo/32655 DEVMEDIA. Os 4 pilares da Programação Orientada a Objetos. Disponível em: https://www.devmedia.com.br/os-4-pilares-da-programacao-orientada-a- objetos/9264 BRASIL ESCOLA. PROGRAMAÇÃO ORIENTADA A OBJETOS. Disponível em: https://meuartigo.brasilescola.uol.com.br/informatica/programacao-orientada-objetos.htm DEVMEDIA. Abstração, Encapsulamento e Herança: Pilares da POO em Java. Disponível em: https://www.devmedia.com.br/abstracao-encapsulamento- e-heranca-pilares-da-poo-em-java/26366 27 LINHADECÓDIGO. Programação Orientada a Objetos. Disponível em: http://www.linhadecodigo.com.br/artigo/506/programacao-orientada-a- objetos.aspx WIKIPÉDIA. Orientação a objetos. Disponível em: https://pt.wikipedia.org/wiki/Orienta%C3%A7%C3%A3o_a_objetos
Compartilhar