quarta-feira, 23 de novembro de 2016

[JAVA] Encapsulamento | Modificadores de acesso


Fala galera!

Em uma das noites de desenvolvimento, me peguei pensando: "Por que não fazer um post falando um pouco sobre encapsulamento?". Para quem está iniciando na área de programação ou até mesmo quem já está um tempinho na área, pode acontecer de ter uma dúvida de como funciona ou quando utilizar. Então nesse post, vou tentar passar o que tenho de conhecimento e mais uma boa parte de pesquisas. Vamos lá!



Afinal, o que é encapsulamento? 


É um dos principais conceitos da orientação a objetos. Seu objetivo é organizar os dados relacionados, formando grupos em objetos(classes). Assim, mantém a legibilidade de um programa com milhares de linhas e também o torna fácil de trabalhar e fazer manutenções. Entende-se também por encapsulamento, a proteção da integridade da classe escondendo informações e disponibilizando somente o preciso para usar a classe. Mas lembre-se, para manter a qualidade do projeto, é necessário ter o baixo acoplamento entre as classes e o encapsulamento ajuda a manter esta característica.

Modificadores de acesso


Como o nome diz, os modificadores de acesso são utilizados para os componentes da aplicação acessíveis ou não por outras partes. Além disso, são divididos em dois níveis no encapsulamento:
  • Nível de classe: public ou package-private (default);
  • Nível de membro: public, private, protected ou package-private (default).

public

Talvez ao ler a palavra public, claramente você pensou em público. E esse é, vamos dizer assim, a ideia desse modificador. Permite que qualquer componente da classe seja acessada por outra.

protected

Esse modificador já é um pouco mais restritivo. Os componentes da classe que são protected, podem ser acessados por classes/interfaces que estão no mesmo pacote. Em caso de classes derivadas, pode ser acessado mesmo estando em pacotes diferentes.

package-private (default)

Quando não definimos um modificador de acesso a um componente, ele assume o modificador package-private (default/padrão). Neste caso, os componentes da classe só podem ser acessadas por outras que estão no mesmo pacote independente se a classe é derivada ou não.

private

O modificador private só permite que o componente seja visível somente pela própria classe. Dessa forma, podem existir classes no mesmo pacote ou em outros, podendo ser classes derivadas ou não, tudo que estiver com o modificador private não estará acessível.


Bom galera, espero que tenham curtido mais esse post. Encapsulamento é algo importante para se aprender, pois é fundamental para linguagens baseadas no paradigma da orientação a objetos.

Até mais!

;)

Fonte: 
            TI Expert
             Equipe.nce.ufrj.br
            High5Devs
Renan Rodrigues Ramos Desenvolvedor

Sou desenvolvedor, amo desenvolvimento de software, músico e apaixonado por filmes e seriados.

quinta-feira, 17 de novembro de 2016

[MucilaCast - 003] Internet sua linda


Fala galera que acompanha o blog...

Mais um episódio do MucilaCast, com o tema "Internet sua linda". Nesse episódio falamos sobre os primeiros sites que acessávamos na internet, várias coisas curiosas que existem pela internet, principalmente uns sites, podemos dizer, bizarros que existem nessa internet maravilhosa rs


[MucilaCast - 003] Internet sua linda


Falamos também sobre algumas redes sociais e principalmente dos programas de chats utilizados antigamente, como o grande ICQ, famoso pelos seus jogos fodas, também falamos do maravilhoso MSN Messenger, muito utilizado para indiretas utilizando o campo de status e é claro que não podia faltar o famoso chat da UOL (quer TC? kkk) e diversos outros assuntos que com certeza você deve ter utilizado ou vivenciado.
Não se esqueça de deixar nos comentários, algum outro site que você acessava antigamente e do que você sente mais saudade... 



Participação:
  • Felipe Pereira de Souza;
  • Luiz Fagner Zordan;
  • Renan Rodrigues Ramos.
Música e efeitos:

As músicas utilizadas nesse podcast foram obtidas através do YouTube:
    Capa: Fagner Zordan
    Edição: Renan Rodrigues Ramos

    É isso pessoal, até a próxima!
    Luiz Fagner Zordan Analista de Sistemas

    Graduado em Sistemas de Informação, atualmente trabalhando na Embraer pela FocusNetworks como FullStack. Sou apaixonado por tecnologia, fascinado por jogos e adoro passar o tempo assistindo séries.

    quarta-feira, 16 de novembro de 2016

    Uowww 10000 visualizações


    Fala galera que acompanha o blog...

    E mais uma vez: "Vocês são demais rs"!
    Depois de exatos 9 meses e aproximadamente 270 dias chegamos a marca das 10 mil visualizações!!!


    Uowww 10000 visualizações

    Atualmente o blog possui quase 150 posts, sobre diversos assuntos, clique aqui para entender como nossos posts são organizados, o que gera aproximadamente 1200 visualizações por mês *-*

    Começamos um canal de podcast, MucilaCast, que foi fundamental para a quantidade de visualizações que o blog possui. Se você não conhece nosso canal pode acessar esse link aqui e acompanhar todos os nosso episódios. Estamos com uma lista de novos episódios para serem gravados e vários deles com convidados, continue nos acompanhando para não perder nenhum episódio rs

    Muito obrigado por acompanhar o nosso blog, obrigado pelos feedbacks, pelas mensagens com sugestões de novos posts.

    É isso ai pessoal, até a próxima!


    AEWWWWW

    Luiz Fagner Zordan Analista de Sistemas

    Graduado em Sistemas de Informação, atualmente trabalhando na Embraer pela FocusNetworks como FullStack. Sou apaixonado por tecnologia, fascinado por jogos e adoro passar o tempo assistindo séries.

    sábado, 12 de novembro de 2016

    Sobre AngularJS #001


    Fala galera que acompanha o blog...

    Se você trabalha com desenvolvimento de aplicações web, principalmente com a parte front-end de um sistema, já deve ter pelo menos ouvido falar do "queridinho" AngularJS, ou para os íntimos Angular.

    AngularJS é um framework JavaScript open-source que Segue o padrão MVW (model, view e whatever rs), posteriormente foi considerado MVC, MVP, MVVM da engenharia de software, foi contribuído sobre a crença de que a programação declarativa é melhor do que a programação imperativa quando se trata da construção de interfaces com o usuário, enquanto a programação imperativa é excelente para escrita de regras de negócio.


    Sobre AngularJS #001

    A sua principal característica é com certeza a "Ligação bidirecional de dados" (Two-way data binding). Essa característica reduz a quantidade de códigos escritos para mostrar os dados processados pelo servidor. A variável $scope do Angular detecta mudanças no modelo e modifica o HTML na view por meio de um controller. Da mesma forma, qualquer alteração da view é refletida no model. Vamos perceber essa característica quando começarmos a implementar alguns exemplos.

    Ahhh! E é claro, não poderia de deixar de dizer, que o framework é mantido pelo Google rs



    Para compreender um pouco sobre a popularidade do framework, basta pesquisar pela palavra "Angular" no YouTube e verificar os mais de 424.000 resultados (aproximadamente) que são apresentados. E não é só isso!


    Ao acessar o repositório do Angular no GitHub você se depara com mais de 53 mil estrelas, aproximadamente mil contribuintes e mais de 200 mil repositórios com scripts que utilizam o framework.

    Nos próximos posts vou mostrar alguns exemplos básicos de Angular, explicando as diretivas, expressões, filtros, modulos, formulário, validações e várias outras coisas bem legais.

    É isso pessoal, até a próxima!
    Luiz Fagner Zordan Analista de Sistemas

    Graduado em Sistemas de Informação, atualmente trabalhando na Embraer pela FocusNetworks como FullStack. Sou apaixonado por tecnologia, fascinado por jogos e adoro passar o tempo assistindo séries.