CodeGym/Blogue Java/Random-PT/Lista de verificação de um desenvolvedor Java. O que um d...
John Squirrels
Nível 41
San Francisco

Lista de verificação de um desenvolvedor Java. O que um desenvolvedor deve saber

Publicado no grupo Random-PT
Oi! Hoje falaremos sobre o caminho de crescimento de um desenvolvedor Java e o que ele deve saber para ser procurado. Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 1Em uma entrevista, qualquer desenvolvedor pode questionar o candidato ao emprego. Por exemplo, eles podem começar a fazer perguntas sobre tópicos específicos que encontraram em seu projeto atual. Mas não saber tudo é normal. O fato de você não conseguir responder algumas perguntas também é normal. Como regra geral, todo programador Java deve ter uma compreensão básica do desenvolvimento de software. Então, vamos dar uma olhada no que é considerado "básico".

1. Algoritmos básicos

A primeira coisa a fazer ao começar a aprender programação (não apenas Java) é entender o básico. Por exemplo, algoritmos. Há um número infinito deles, e você não deve matar anos inteiros de sua vida tentando aprender o máximo possível de algoritmos: a maioria deles não será útil para você. Você pode obter o mínimo de conhecimento necessário no livro "Grokking Algorithms". Isso é o suficiente para você começar, mas se quiser, pode aprender com o livro "Estruturas e Algoritmos" ou "Algoritmos em Java" de Robert Sedgewick e Kevin Wayne. Também recomendo que você aprimore seus conhecimentos sobre os fundamentos da ciência da computação. Isso pode ser feito com o curso Harvard CS50.

2. Sintaxe Java

Depois de aprender o básico dos algoritmos, precisamos aprender a sintaxe Java. Afinal, estamos todos estudando para nos tornarmos programadores Java aqui, certo? O curso CodeGym é perfeito para isso. Ao executar inúmeras tarefas, você colocará as mãos na sintaxe Java e, sem muita hesitação, escreverá/lerá o código Java como se fosse seu idioma nativo. CodeGym é prática, mas além disso, você também precisa olhar a teoria para entender o que está fazendo. Para fazer isso, você pode ler livros. Por exemplo, um dos seguintes:
  • "Head First Java",
  • "Java for Dummies" de Barry Bird;
  • "Java: um guia para iniciantes" por Herbert Schildt.
Depois de ler esses livros, você pode começar a ler livros mais difíceis:
  • "Pensando em Java", Bruce Eckel;
  • "Effective Java" por Joshua Bloch;
  • "Java: a referência completa" por Herbert Schildt.
Os últimos três livros não são de leitura fácil para iniciantes, mas fornecem uma base sólida na teoria de Java. Além disso, não se esqueça dos artigos do CodeGym, pois eles fornecem explicações para a maioria dos tópicos que podem lhe interessar. Você pode encontrar um artigo relevante digitando o tópico de seu interesse na barra de pesquisa: Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 2Também recomendo procurar perguntas em entrevistas em Java. Isso ajudará você a entender exatamente o que precisa aprender e para quais perguntas se preparar.

3. Padrões de projeto

Padrões de projeto são certos padrões repetíveis que resolvem problemas em contextos frequentemente encontrados. Eles incluem padrões básicos e simples que todo programador que se preze deve conhecer. Para entender este tópico, pegue o livro "Head First Design Patterns". Ele explica os padrões básicos de design de forma acessível. Mas o livro fala muito sobre Java, portanto, ao consumir este livro, você também precisará ter fluência nessa linguagem de programação. Para um mergulho mais profundo nos padrões, você também pode ler "Design Patterns: Elements of Reusable Object-Oriented Software" do Gang of Four ( Nota do editor: o Gang of Four é uma equipe de autores que inclui Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.). Depois de estudar este tópico, você começará a ver padrões praticamente em todos os lugares do seu código. Preste atenção a isso, especialmente aos padrões usados ​​no Spring, já que essa é uma pergunta popular em entrevistas.

4. Paradigmas de programação. Limpeza do código

Além dos padrões de design padrão, existem vários princípios e paradigmas a serem observados ( SOLID , GRASP ). Você também precisa manter seu código limpo e legível. Para saber tudo sobre esse tópico, consulte Clean Code de Robert Martin ou confira "Code Complete" de Steve McConnell.

5. SQL

Nosso próximo passo é estudar uma linguagem para bancos de dados relacionais — SQL . Os bancos de dados são onde as informações (dados) usadas por um aplicativo da web são armazenadas. Um banco de dados consiste em várias tabelas (o catálogo de endereços do seu telefone é um exemplo simples). Os desenvolvedores Java são responsáveis ​​não apenas pelo aplicativo Java, mas também pelo banco de dados com o qual ele interage e onde armazena seus dados. Nos bancos de dados relacionais (que são o tipo mais comum), toda interação ocorre por meio de uma linguagem especial chamada Structured Query Language, ou SQL. Para entender este tópico, tudo que você precisa fazer é ler um destes livros:
  • "Aprendendo SQL" por Alan Beaulieu;
  • "SQL" por Chris Fehily;
  • "Head First SQL" por Lynn Beighley.
Mas prática sem teoria não resolve, não é? E nas entrevistas você pode esperar um teste de seu conhecimento de SQL. Frequentemente (quase sempre) os entrevistadores dão uma ou duas tarefas que envolvem escrever uma consulta SQL. Como resultado, é muito importante aprimorar suas habilidades práticas de SQL para se mostrar bem.

6. MySQL/PostgreSQL

Depois de aprender a linguagem SQL, você precisa se familiarizar com uma implementação de banco de dados específica. Dependendo do banco de dados, alguns comandos podem variar drasticamente. E há diferenças bastante perceptíveis nos recursos do banco de dados. Os bancos de dados relacionais mais comuns são MySQL e PostgreSQL . Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 3O MySQL é muito mais simples, mas o PostgreSQL tem recursos muito mais amplos. Estar familiarizado com pelo menos um deles é o suficiente para começar. Você pode estudar implementações de banco de dados se usar suas habilidades de pesquisa no Google - encontre artigos e tutoriais relevantes no YouTube. Você precisará cultivar sua capacidade de criar consultas de pesquisa adequadas para as perguntas que precisa responder. Afinal, um programador é alguém com faixa preta em googling.

7. Maven/Gradle

Você precisa aprender o framework Gradle ou Maven . Eles são para construir projetos e, para você, o Java agora não é apenas para tarefas que envolvem algumas classes, mas também uma linguagem para escrever aplicativos completos. Você precisa entender como construir um projeto, quais são os estágios de construção, como carregar as bibliotecas externas necessárias com código de terceiros e muito mais. Apesar do Gradle ser mais novo e mais conciso, o Maven é usado na maioria dos casos. Portanto, preste atenção especial ao ciclo de vida de construção do Maven.

8. Git

Git é um sistema de controle de versão distribuído. Essa tecnologia permite que os desenvolvedores colaborem em um único aplicativo sem interferir uns nos outros. Claro, existem outros sistemas de controle de versão. Por exemplo, Subversion . Mas o Git é usado mais amplamente e você precisa ser capaz de trabalhar com ele.Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 4Além dos muitos artigos sobre Git que você pode encontrar online, o YouTube tem vídeos mais do que suficientes para ajudá-lo a dominar esta tecnologia, passo a passo. A princípio, é melhor usar o Git na linha de comando do que algum tipo de implementação de GUI, porque você será forçado a fazer tudo usando comandos. Em entrevistas, as pessoas geralmente gostam de perguntar sobre alguns comandos do Git, então eu recomendo que você os escreva e guarde em algum lugar por perto. Recomendo também que você faça anotações, anotando os pontos mais importantes para repassá-los antes da entrevista e refrescar a memória.

9. JDBC

Essa tecnologia conecta seu aplicativo Java e um banco de dados relacional. Para o básico, recomendo a leitura de qualquer tutorial de JDBC. Há uma abundância de artigos que explicam o JDBC e fornecem exemplos rudimentares, embora ninguém mais esteja usando o JDBC puro diretamente.

10. JPA. hibernar

JPA é uma forma de estabelecer uma conexão entre um aplicativo Java e um banco de dados, assim como o JDBC. Mas, ao mesmo tempo, JPA é uma tecnologia de alto nível e, portanto, mais fácil de usar. Mas o JPA é apenas uma especificação, não uma implementação. Precisa de uma implementação concreta. Muitos deles existem, mas o mais próximo dos ideais do JPA, o mais popular e o mais desenvolvido é o Hibernate. Você encontrará essa tecnologia mais de uma vez em sua carreira de desenvolvimento de software. Então, além de se familiarizar com essa tecnologia lendo artigos, pode valer a pena ler um livro, por exemplo, "Java Persistence API".

11. Primavera

Quando você se torna um desenvolvedor Java, Spring não é mais apenas uma palavra para você. Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 5Conhecer esse framework agora é tão importante quanto conhecer a Sintaxe Java. Você poderia dizer que o Spring tem um irmão, ou seja, Java EE. Mas o Java EE está desatualizado e não é mais usado em novos projetos. A esmagadora maioria dos desenvolvedores Java são agora desenvolvedores Java-Spring, portanto, conhecer algumas tecnologias básicas do Spring é obrigatório. O Spring não é apenas um framework, mas todo um framework de frameworks: Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 6E este é apenas um subconjunto dos frameworks que o Spring fornece. Para um iniciante, conhecer apenas alguns deles é bom o suficiente:

  • Núcleo de Mola

Você deve colocar isso em primeiro lugar, para entender o que é Spring — tudo sobre contêineres Spring, beans, DI, IoC e assim por diante. Para entender a própria filosofia de usar o Spring, por assim dizer. Seu estudo mais aprofundado dos frameworks Spring será construído sobre esta base. Talvez você deva criar seu próprio pequeno aplicativo no qual possa incorporar gradualmente todas as tecnologias recém-aprendidas.

  • Primavera JDBC

Anteriormente, mencionamos o JDBC como uma tecnologia para criar uma conexão de banco de dados. Em geral, o uso "nu" da tecnologia não pode mais ser encontrado em projetos, então você pode concluir que aprender JDBC não é necessário. Essa não é a atitude certa. Ao explorar o uso nu (direto) do JDBC, você pode ver a tecnologia em um nível inferior e entender seus problemas e deficiências. Então, quando você começar a aprender o Spring JDBC, perceberá exatamente o que essa estrutura melhora, otimiza e oculta.

  • Hibernação de primavera

De forma análoga à situação do JDBC nu, esse framework utiliza uma tecnologia existente, neste caso, o Hibernate. Se você considerar usar o Hibernate sem o Spring, com certeza perceberá os benefícios que o Spring Hibernate oferece.

  • Primavera JPA

Anteriormente, falamos sobre JPA e mencionamos que é apenas uma especificação, embora tenha várias implementações. Entre essas implementações, o Hibernate é o que mais se aproxima do ideal. O Spring tem sua própria implementação JPA ideal que usa o Hibernate sob o capô. É o mais próximo possível do ideal da especificação JPA. É chamado Spring JPA. Em uma palavra, simplifica muito o acesso ao banco de dados. Você só pode aprender JPA sem aprender JDBC, Hibernate, Spring JDBC ou Spring Hibernate. Mas se você adotar essa abordagem, seu conhecimento de como se conectar a um banco de dados será muito superficial.

  • Primavera MVC

Essa tecnologia permite exibir a interface web do nosso aplicativo para os usuários e facilitar a comunicação entre a interface e o restante do aplicativo. A tecnologia também pode ser usada sem exibição quando você tem um aplicativo responsável por manipular a exibição e está interagindo com o aplicativo usando a tecnologia RESTful . Para melhor absorver informações sobre a Primavera, além de artigos e palestras no YouTube, você pode ler diversos livros. Gostei muito do livro "Spring in Action" de Craig Walls. Aconselho-te a ler a 6ª versão, se souberes bem o inglês. Outro grande livro sobre o Spring é "Spring 5 for the Professionals". É mais denso. Mais como uma referência que é mais valiosa manter à mão do que ler de capa a capa.Lista de verificação de um desenvolvedor Java.  O que um desenvolvedor deve saber - 7

  • bota de mola

Essa tecnologia simplifica muito o uso do Spring. Não coloquei no final da lista por capricho. De fato, ele se esconde muito sob o capô e, para quem não está familiarizado com o vanilla Spring, muitos pontos podem não ser claros ou incompreensíveis. Primeiro, para uma melhor compreensão de como as estruturas do Spring funcionam, você deve usar o Spring regular e, em seguida, obter todos os benefícios superiores do uso do Spring Boot. Também recomendo que você se familiarize com Spring Security e Spring AOP. Mas, ao contrário das tecnologias acima, um conhecimento profundo dessas duas ainda não é necessário. Esta tecnologia não é para iniciantes. Nas entrevistas, os desenvolvedores juniores não serão questionados sobre eles (exceto uma pergunta superficial, talvez). Leia uma visão geral do que são essas tecnologias e os princípios por trás de seu trabalho. Neste artigo, Mencionei repetidamente a leitura de livros. Por um lado, isso não é obrigatório. Você pode se tornar um programador sem ler um único livro, obtendo todo o conhecimento necessário em artigos online e vídeos de treinamento. Por outro lado, no mercado de trabalho, a competição entre desenvolvedores novatos é alta atualmente, o que eleva o nível do que um iniciante precisa saber. Assim, quanto mais você souber, mais rápido encontrará seu primeiro emprego, impressionando o entrevistador com seu nível de conhecimento. Obrigado a todos e que o Java esteja com vocês. o que eleva o nível do que um iniciante precisa saber. Assim, quanto mais você souber, mais rápido encontrará seu primeiro emprego, impressionando o entrevistador com seu nível de conhecimento. Obrigado a todos e que o Java esteja com vocês. o que eleva o nível do que um iniciante precisa saber. Assim, quanto mais você souber, mais rápido encontrará seu primeiro emprego, impressionando o entrevistador com seu nível de conhecimento. Obrigado a todos e que o Java esteja com vocês.
Comentários
  • Populares
  • Novas
  • Antigas
Você precisa acessar para deixar um comentário
Esta página ainda não tem nenhum comentário