Começando a programar em nova linguagemUm dos métodos que utilizo ao aprender uma nova linguagem é a criação de um CRUD colocandoem prática algo útil para minha vidaComo aprender uma nova linguagem de programação sozinho(a) sem ter alguém pra te ensinar?Cada pessoa pode ter um método diferente, hoje irei falar do qual utilizo na maioria dasocasiões: através de um CRUD.CRUD é acrônimo do inglês Create, Read, Update and Delete que são as quatro operaçõesbásicas (criação, consulta, atualização e destruição de dados) utilizadas em bases dedados relacionais fornecidas aos utilizadores do sistema. Quando você acessa o Facebook,por exemplo, os posts são exibidos (SELECT), você pode criar uma postagem (INSERT),editar a ação feita anteriormente (UPDATE) ou apagar uma informação (DELETE). De maneiraextremamente simplificada te forneci um simples exemplo de CRUD.É importante saber que nem todo sistema precisa ter esse tipo de arquitetura ou ação,vai depender muito de qual seu objetivo. Uma API, por exemplo pode não se encaixar nestecenário. Entretanto, estarei falando especificamente de uma aplicação simples quealgumas pessoas denominam de “sistema de padaria”, mas considero que é importantecomeçar pelo básico.Comece por uma ideia simples que vai ser útil em sua vida: Torne-se um usuárioComo fã de livros tenho cerca de 450 exemplares em minha estante (isso antes decomprar meu Kindle — Vale a pena comprar um Kindle?). Se você me perguntar se eutenho determinado título eu posso não saber te responder de antemão. Quando oassunto é a localização do livro na estante a mente ajuda menos ainda, é preciso olharlivro por livro, no pior caso a complexidade é percorrer os n livros — O(n). Identificou umproblema? Melhor deixar que o sistema procure pra mim o item em um array e ele que se vire eme dê aresposta em segundos.Estou falando de uma solução extremamente simples e que coloquei em prática paraaprender uma nova linguagem. Escutei muitos comentários como:— Existem vários sistemas que já fazem isso!— Que perda de tempo! Use o Skoob!Ok, talvez você pode estar pensando justamente isso. Mas, primeiro: nenhum sistemafará as coisas do jeito que eu quero (justificativa pessoal) e segundo: Prefirocomeçar por algo simples antes de ir para algo mais complicado. Acredite em mim:não é perda de tempo.Meu sistema nunca ficará tão bom quando um Skoob (que é uma estante virtual e redesocial dos leitores) que está no ar e tendo manutenção há anos. No entanto,aprenderei muito com o desenvolvimento e poderei gerenciar minha “bibliotecaparticular”.Escolha suas tecnologiasRetomemos então o exemplo prático da construção de uma aplicação para controle doslivros. No primeiro momento meu objetivo seria: cadastrar (INSERT), listar (SELECT),editar (UPDATE) e remover (DELETE) um livro. Ou seja, observe que a base da aplicaçãoserá um simples CRUD.De antemão o que importa é um sistema funcional com o mínimo de sofisticação. Seeu fosse construir uma casa não iria começar com uma mansão, iria levantar paredesdos principais cômodos. Pintura, piso ficaria para depois.Para começar eu indico os seguintes conhecimentos:HTML, CSS para construir o front-end para deixar o sistema apresentável, mas lembre-seque a beleza nesse momento não é o fundamental. Um pouco de JavaScript também podeser necessário.Uma linguagem para o back-end. Existem várias, fica a seu critério: qual linguagemvocê quer aprender (C#, JAVA, Node.js, Python, PHP, etc…)? Particularmente eu curtomuito o Java e o NetBeans é foda!Um banco de dados. Neste caso o mais indicado seria um modelo relacional como o SQLServer, por exemplo.Como opcional indico também:Usar algum repositório para gerenciamento de código, o GitHub talvez seja o maisfamoso. Assim você compreenderá um pouco sobre Git e versionamento.Usar algum aplicativo para gerenciamento de tarefas. Aqui você pode começar a aprendera metodologia Ágil usando o Kanban no Trello.Observe que só com esse projeto simples você aprenderia um pouco de CSS3, HTML5,JavaScript, SQL Server, Git (!= GitHub), Agile e a linguagem do back. Sabe aquelasvagas de emprego que pedem várias tecnologias? Às vezes está tudo interligado vai por mim.Se você souber bem pouco ou até mesmo nada da maioria das tecnologias que estou falandoindico o site W3 Schools.Levante requisitos e desenhe sua aplicaçãoPrototipação, a melhor forma de testar e validar um projetoSuponhamos que você já tenha escolhido qual será o sistema que irá desenvolver e aslinguagens relacionadas. Agora é hora de desenhar o sistema, prototipando as telas emodelando o banco, caso necessário. É essencial saber de maneira bem clara o que serádesenvolvido para ter maior foco, determinação e compreender o que você estará fazendo,afinal, o projeto será gerenciado por você mesmo.Particularmente considero essa parte bem legal, mas é necessário começar pelo simples,sem recursos complexos ou eventos mirabolantes. Desafios são ótimos mas têm o momentocorreto. Comece por recursos essenciais, cortando o que no momento pode não ser tão importante.Gosto muito de dividir o projeto por versões, entregando as funcionalidades por etapas.Por exemplo, a primeira versão para o sistema de livros seria o cadastro, exclusão evisualização dos títulos. Para a segunda versão poderia considerar a edição. Sempre quetermino um passo, testo e enxergo como uma versão que poderia ser entregue ao cliente.Sim, algo parecido (de longe) com um scrum.Observe que tudo poderia ser muito mais simples, mas o legal de seguir essas etapas éque você treina desde o início a fazer algo maior, ter organização e ter controle dasatividades, código e sistema.****** Comece a programar ******Agora é hora de colocar a mão na massa e começar a programar. O foco será principalmentena linguagem de back-end escolhida por você uma vez que ela será o “coração” do sistema.Será necessário dedicar um tempo para configurar o ambiente em sua máquina, ou seja,instalar IDE, banco, linguagem, servidor caso necessário.Para todas as atividades registre no seu aplicativo de gerenciamento de tarefas. Por exemplo:Ao começar a programar, sempre que chegar em um checkpoint (bem gammer) faça um commitpara registrar a versão e salvar o código na nuvem. Sempre que precisar reverter oucontinuar o trabalho em outra máquina basta contar com a ferramenta.Piadinha sem graça sobre Git.Onde buscar informações?Eu gosto de começar com o CRUD porque existe uma infinidade de materiais aqui no Mediume na internet em geral para praticamente qualquer tipo de linguagem e tecnologias em geral.Por exemplo:Strings de busca: Como fazer um CRUD usando <Back-end> e <banco de dados>Como fazer um CRUD usando Node.js e MongoDB?Como fazer um CRUD usando JAVA e SQL?…Ao seguir o tutorial tudo que você precisará fazer será ajustar o exemplo para oseu contexto, alterando a modelagem do banco, a interface, variáveis, entre outros.Espero que tenha ajudado a você a ter ao menos uma ideia do ponto de partida paracomeçar a aprender algo novo, ou pelo menos criar uma força de vontade que muitas vezes nos falta.
segunda-feira, 6 de fevereiro de 2023
Começando a programar em nova linguagem
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário