Mostrar mensagens com a etiqueta Javascript. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Javascript. Mostrar todas as mensagens

quarta-feira, 29 de agosto de 2018

Pare de usar palavras grandes e jargões da indústria (e o que fazer em vez disso)

Vamos dizer que você quer ensinar uma pessoa alguma coisa. Por que a pessoa não entende o que você está dizendo?


Uma das principais razões é porque gostamos de usar palavras grandes e girias da indústria. Esses girias podem significar algo para nós, mas não significam nada para as pessoas que estamos tentando ensinar.

A próxima vez que você tentar ensinar programação, atente para as palavras que você usa.

Três tipos de palavras grandes

As girias podem ser divididas em três categorias:

  1. Aquelas que podem ser explicados em poucas palavras
  2. Aquelas que não podem ser explicados com palavras simples
  3. Aquelas que podem significar coisas diferentes em contextos diferentes.

Quando você ensina, você deve sempre observar esses três tipos de palavras.

Girias que podem ser explicados em poucas palavras.

Se a giria puder ser explicado em poucas palavras, você deseja usar essas palavras em vez de giria.

A interoperabilidade é um exemplo de uma palavra desse tipo.

Parece assustador e complicado, mas pode ser explicado em poucas palavras simples.

Se você procurou o significado de interoperabilidade, você encontrará definições como estas:

Da Wikipedia: "A interoperabilidade é uma característica de um produto ou sistema, cujas interfaces são completamente compreendidas, para trabalhar com outros produtos ou sistemas, no presente ou no futuro, em implementação ou acesso, sem quaisquer restrições".

De Dictionary.com: "Interoperabilidade é a capacidade de compartilhar dados entre diferentes sistemas de computadores, especialmente em máquinas diferentes." Se colocarmos isso em termos simples, "interoperabilidade" significa a "capacidade de compartilhar dados".

Veja como isso torna a barreira da língua muito menor?

Se você pode substituir essa giria por palavras simples, por que você se atém à palavra difícil?

Girias que significam coisas diferentes em contextos diferentes

Algumas girias têm significados diferentes quando usados ​​em contextos diferentes.

Um exemplo de uma giria tal é o termo encapsulamento.

Encapsular algo significa incluir essa coisa com outra coisa. Se você enrolar uma batata com um pano, você pode dizer que o pano encapsula a batata.

Desenvolvedores amam a palavra encapsulamento. Eles usam isso o tempo todo.

A primeira maneira é envolver variáveis ​​e outro código dentro de uma função. Nesse caso, a função encapsula o código dentro:


function someFunction () { const variableName = 'I am a variable!' }

A segunda maneira é conter a individualidade de um objeto. Por exemplo, se você tem um objeto humano e cria dois humanos a partir do objeto humano, esses dois seres humanos não devem ser o mesmo.

Nesse caso, cada objeto encapsula seus próprios dados.

function Human (name) { this.name = name } const zell = new Human('Zell') const vincy = new Human('Vincy') zell.name === vincy.name // false

A terceira maneira é para esconder informação. Em JavaScript, podemos criar variáveis privadas. Essas variáveis privadas são incluídas pelo objeto.

Nesse caso, o objeto encapsula a variável privada. Você não pode acessar a variável privada. Nesse caso, o encapsulamento é usado para significar algo ligeiramente diferente do segundo caso.

function Human () { const privateVariable = 'private' this.publicVariable = 'public' }

Então, o que você entende por encapsulamento?

Você não pode ter certeza.

Não deve haver ambiguidade quando você se comunica. Se houver ambiguidade, a comunicação se rompe e os alunos não aprendem.

É melhor abandonar o jargão se o jargão significa coisas diferentes em contextos diferentes.

Girias que não podem ser explicadas com palavras simples

Algumas girias tecnicas não podem ser explicados com palavras simples. Essas girias são freqüentemente usadas ​​para falar sobre conceitos abstratos, e é por isso que palavras simples podem não ser suficientes.

Um exemplo de tal palavra é "mutação".

A mutação vem da palavra mutate. Mutar significa mudar de forma ou natureza. Em JavaScript, a mutação acontece embaixo do capô sem que você perceba.

Neste caso, a mudança não é suficiente para explicar a mutação. Falta profundidade e detalhes. Além disso, a mudança ainda é muito abstrata.

Você sente que um conceito é abstrato porque você não pode imaginá-lo. Você não pode ver, ouvir, sentir, tocar ou prová-lo. Para fazer um concreto abstrato, precisamos apelar para os cinco sentidos do ser humano.

Para explicar um conceito abstrato, você pode usar analogias. Quando você usa analogias, pode descrever um objeto ou um cenário de maneira que as pessoas possam ver, ouvir ou sentir o que você quer dizer.

Por exemplo, eu usei X-men como minha analogia quando expliquei mutação.

Pedi aos alunos que imaginassem um amigo crescendo o pêlo e ficando azul diante de seus olhos. Qualquer um pode imaginar o que significa crescer pêlo e ficar azul, mesmo que eles não saibam quem é a Fera.

Se você quiser expandir a analogia para atender mais pessoas, você pode apelar para mais sentidos. Por exemplo, para fazer as pessoas cegas imaginarem uma mutação, você também pode dizer a elas que imaginem que a amiga grunhiu como uma fera.

A chave aqui é uma mudança que não é detectada. Ninguém sabe se uma pessoa é um mutante até que mostre seus poderes. Na mesma frente, ninguém sabe que um objeto JavaScript mudou até que, bem, mudou.

Eu enfatizei este ponto para desenhar um link de volta para a mutação em JavaScript.

A mutação se torna concreta quando o elo é estabelecido. Quando digo mutação, os alunos que lêem o artigo podem imaginar o amigo ficando azul, crescendo a pele e rosnando como uma fera.

Depois de transformar um jargão abstrato em um conceito concreto, você pode usar o jargão normalmente. Os alunos entenderão o que você quer dizer.

Eu escrevi um artigo sobre como criar boas analogias se você estiver interessado em aprender essa habilidade.

Empacotando
Preste atenção às palavras que você usa quando ensina programação. Se você usar palavras difíceis que não significam nada para seu aluno, elas não conseguirão entender o que você quer dizer.

Substitua palavras difíceis por palavras mais simples e fáceis de entender, se puder.

Evite usar girias que podem significar coisas diferentes em contextos diferentes. Estas girias tornam as coisas ambíguas e confusas.

Finalmente, use analogias para transformar conceitos abstratos em conceitos concretos.

Obrigado pela leitura. Este artigo foi originalmente publicado no meu blog. Inscreva-se no meu boletim informativo se quiser mais artigos para ajudá-lo a se tornar um desenvolvedor de frontend melhor.

segunda-feira, 11 de junho de 2018

Melhores práticas no desenvolvimento do Android - Part 1

Vamos dar uma olhada em algumas práticas padrão que devemos aplicar ao criar aplicativos Android.

As melhores práticas são simplesmente padrões profissionais que são aceitáveis em um campo. Aqui, veremos essas práticas relacionadas ao desenvolvimento do Android.

Introducao.

A plataforma Android administra o mercado de celulares no momento. Durante o Google IO em maio de 2017, o Google anunciou que havia 2 bilhões de dispositivos Android ativos por mês. Isso é cerca de 74% da participação de mercado do sistema operacional móvel de acordo com o StatCounter em fevereiro de 2018. Esta é uma das principais razões para o grande surgimento de desenvolvedores do Android nos últimos tempos. Como resultado do grande patrocínio da plataforma móvel, a maneira como construímos soluções móveis também é muito importante.  

Se você está construindo para bilhões de usuários, nós temos que crescer acima apenas construindo apenas para as funcionalidades temos que considerar outros fatores, como escalabilidade, melhor experiência do usuário, etc.Recentemente, tem havido muitas promessas no desenvolvimento do Android desde a introdução formal do Kotlin. Em maio de 2017, ainda durante o Google IO, o Google anunciou seu apoio ao idioma. Kotlin é uma linguagem de programação estaticamente tipada que é executada na máquina virtual Java. É estaticamente digitado porque o tipo de dados das variáveis ​​é conhecido em tempo de compilação. A linguagem vem com muitos novos recursos:

  • Segurança nula. 
  • Inferência inteligente.
  • Interoperabilidade com Java. 
  • Pode ser compilado para bytecode ou JavaScript da JVM

Kotlin nos ajuda a escrever código duas vezes mais rápido do que com Java. O Android lançou um conjunto de funções de extensão para tornar o código no Android ainda mais conciso. A linguagem está em desenvolvimento desde 2010 e a versão atual no momento de escrever este artigo é v1.2.30.

Neste artigo, veremos algumas práticas recomendadas no desenvolvimento do Android para nos ajudar a criar aplicativos melhores. Nós também faremos uso de Kotlin para os trechos. Vamos pular neles imediatamente!

Padrões de design

Os padrões de projeto são soluções gerais e reutilizáveis ​​para problemas comuns em um determinado contexto no design de software. É mais como um modelo para uma solução. Além de ser apenas uma possível solução para um problema, ajuda a comunicação entre os desenvolvedores, pois fica mais fácil trabalhar em equipes quando todos estão familiarizados com os padrões acordados a seguir. Padrões de design não saíam da bolsa, eles existiam desde então. De acordo com Javamann no StackOverflow: "Nós usamos padrões de design nos anos 80, nós simplesmente não sabíamos que eles eram padrões de design".
Image result for Android patterns design 
Alguns padrões praticados durante o desenvolvimento de aplicativos para Android incluem injeção de dependência, o padrão singleton, o padrão de separação de interesses entre outros. Vamos olhar brevemente para dois deles.Injeção de dependênciaA injeção de dependência (DI) é um conceito em que um objeto não precisa configurar suas próprias dependências (objetos). Em vez disso, as dependências são passadas por outro objeto. DI sugere que objetos sejam inicializados em outro lugar e dados ao objeto solicitante. Existem várias formas de injeções:


  • Injeção de construtor - onde as dependências são passadas através do construtor. 
  • Injeção de campo - onde as dependências são enviadas para os campos de classe diretamente, etc.

O último é muito difícil de implementar por si mesmo e, portanto, o uso de uma biblioteca DI Dagger2 é recomendado. Abaixo está um trecho rápido para mostrar uma instância de injeção de dependência:  


..
Aqui, esta classe MainActivitySample possui uma dependência MainActivityRepo e não é responsável por inicializá-la. Em vez disso, o objeto está sendo inicializado em outro lugar e servido à classe por meio do construtor. Este é um exemplo de injeção de construtor. O DI, a longo prazo, nos ajuda a criar aplicativos levemente acoplados e testáveis. Isso porque, se um objeto mudar, digamos, alterações de MainActivityRepo, é mais fácil reconfigurar o objeto de uma única fonte, em vez de ir para todas as classes que o usam para fazer isso.

Separação de Preocupações (SoC)

Este é um padrão que incentiva a dissociação do seu código em unidades distintas com responsabilidades bem definidas. Em uma plataforma como o Android, onde há componentes como atividades, fragmentos, serviços, provedores de conteúdo e receptores de transmissão sendo controlados pelo sistema operacional Android, negligenciar isso tem repercussões nos aplicativos que criamos. É aqui que entram os padrões de arquitetura. Os padrões arquiteturais podem ajudar a separar nossa apresentação de dados do processamento de dados. Existem vários padrões de arquitetura que existem, como Model View ViewModel (MVVM), Model View Presenter (MVP), etc.

Vamos dar uma breve olhada na arquitetura do MVP. Essa arquitetura é composta de três partes distintas:


  • The View: esta é a parte que exibe o conteúdo para o usuário, como uma barra de progresso, diálogos, etc.
  • The Model: é responsável por fornecer dados ao aplicativo, seja do DB ou de um serviço da web. Esta deve ser sua única fonte de verdade (dados).
  • The Presenter: essa parte lida com a lógica de negócios, como chamar o modelo para obter dados e, em seguida, atualiza a exibição.

Um típico fluxo de MVP funciona assim:

Seu aplicativo começa mostrando um diálogo de progresso. É responsabilidade do View fazer isso. Ao mostrar a caixa de diálogo, ela precisa exibir dados na interface do usuário, informa o presenter. O presenter chama o model e depois que os dados são obtidos, ele é retornado ao presenter que, por sua vez, retorna os dados para a View. Ao usar uma arquitetura, certifique-se de manter essa estrutura em todo o aplicativo. Quando você separa com sucesso seu código dessa forma, fica fácil manter, enviar novos recursos e testar. Os documentos do Android fornecem um tutorial detalhado sobre um guia para a arquitetura apropriada usando os componentes da arquitetura. Aqui está outro guia que oferece uma boa visão geral dos padrões de design no Android.

Experiência de usuário

A experiência do usuário nesse contexto refere-se à satisfação da interação de um usuário com seu aplicativo. Todos concordamos que, recentemente, houve um aumento na demanda por melhores experiências em dispositivos móveis. Aqui estão algumas coisas a serem observadas para melhorar a experiência de nossos aplicativos:

UI excelente

Uma sensação encantadora e experiência de um aplicativo começa com um bom design. Certifique-se de obter um que corresponda aos princípios de design de materiais do Google. Alguns desses princípios incluem:

  • Fornecendo um botão de navegação para cima.
  • Consistência em combinações de cores.
  • Uso de ícones apropriados para retratar a funcionalidade, etc. 



Continua na parte 02

quinta-feira, 11 de abril de 2013

PHP e MySQL Básico & Ajax Tutorial Básico


Dicas básicas para usar o phpMyAdmin e criação de bancos de dados em MySQL Adicionando, criar, editar, apagar, Pesquisa & Exibindo tabelas com HTML e PHP Programação de um formulário web para interagir e gráficos no banco de dados.

Lotes de código PHP que mais suplementos, o que você aprendeu com o curso de PHP Toneladas e toneladas de dicas únicas que só um programador de banco de dados profissional sabe ...


Instalando o Web Developer plug-in para o Firefox para ajudar a depurar o código usando o livre desenvolvimento IDE, Apanta páginas programa da Web que fizeram isso?

É preciso refrescante para carregar em novos conteúdos menus HTML / botões que funções de gatilho, menus com abas para abertura CSS DIV, o Windows cria arrastar e soltar Torneiras para um carrinho de compras um Web Lotes de interface de JavaScript, XML, CSS, DOM, HTML, PHP


Baixe aqui:...

http://www.filesonic.com/file/AQIA7AJ/Php_and_Ajax.part1.rar
http://www.filesonic.com/file/w6t8GmC/Php_and_Ajax.part2.rar
http://www.filesonic.com/file/IDU47r9/Php_and_Ajax.part3.rar
http://www.filesonic.com/file/ZNmSKO2/Php_and_Ajax.part4.rar
or
http://ul.to/ugshzjwd/Php_and_Ajax.part1.rar
http://ul.to/gd2y5sj5/Php_and_Ajax.part2.rar
http://ul.to/m777f413/Php_and_Ajax.part3.rar
http://ul.to/96nfitc8/Php_and_Ajax.part4.rar


domingo, 10 de março de 2013