CodeGym /Blogue Java /Random-PT /Que tipos de tarefas Java você tem?
John Squirrels
Nível 41
San Francisco

Que tipos de tarefas Java você tem?

Publicado no grupo Random-PT
Quando alguém começa a aprender a programar , seja sozinho ou através de cursos online, é muito importante enfatizar algum domínio e estruturar tudo. Neste artigo, apresentamos nossa estrutura — Tarefas Java para iniciantes, com uma indicação de quanto cada tipo específico de tarefa é representado no curso de programação online CodeGym , juntamente com links úteis. Que tipos de tarefas Java você tem?  - 1

Pratique com a sintaxe da linguagem

Estas são as primeiras tarefas de programação Java para iniciantes — a base — de "Hello, World" a loops e arrays. CodeGym tem muitos deles: eles estão especialmente concentrados nos seis primeiros níveis da missão Java Syntax . É improvável que você precise procurar mais deles em outro lugar. Certamente temos o suficiente para dominá-los. Além do mais, quando você faz qualquer tarefa mais difícil, você automaticamente revisa a sintaxe. Mas se de repente você se sentir em necessidade, qualquer livro de Java para iniciantes contém problemas semelhantes. Mas, ao contrário do CodeGym, esses livros de exercícios não terão verificação instantânea de tarefas.

Pratique com coleções

As coleções são o primeiro tópico "sério" que os programadores novatos encontram em seus estudos. Tarefas iniciantes dedicadas a coleções Java também são bem representadas no CodeGym — no sétimo e oitavo níveis da missão Java Syntax. É aqui que o aluno ouvirá pela primeira vez sobre o Java Collections Framework e trabalhará um pouco com as interfaces Set, List e Map junto com algumas de suas implementações. No entanto, neste estágio, você obterá apenas uma introdução a esta ferramenta útil e a tarefas Java simples. Você estudará as coleções mais detalhadamente durante a missão Java Collections . Você pode ver como esse assunto é importante - uma missão inteira foi batizada com o nome dele!

Pratique com exceções

Java fornece um mecanismo especial para lidar com situações excepcionais, simplificando significativamente o processo de "capturar" erros de aplicativos. Mas para aproveitar ao máximo, você precisa descobrir como o tratamento de exceções funciona em Java. CodeGym tem muitas dessas tarefas. Você até os encontrará na primeira missão — Java Syntax. Que tipos de tarefas Java você tem?  - 2

Pratique com conversão de tipos

Este grupo de tarefas poderia, é claro, ser classificado como tarefas básicas de sintaxe. No entanto, em nossa humilde opinião, as pessoas costumam subestimar essas tarefas e os novatos se atrapalham nelas. É por isso que quebramos o molde: não estudamos as tarefas de conversão de tipo primitivo logo no início, como outras pessoas costumam fazer. Em vez disso, vamos abordá-los um pouco mais tarde — no final da missão Java Syntax. E então aprenderemos a lançar tipos não primitivos (objetos) quando estudarmos OOP na missão Java Core . CodeGym tem o suficiente dessas tarefas. Você não precisa procurar mais.

Pratique com POO

OOP não é o tópico mais difícil, mas é extremamente importante. E esconde muitas sutilezas que os entrevistadores gostam de usar para capturar aspirantes a desenvolvedores juniores. O curso CodeGym contém tarefas práticas de programação para iniciantes para ajudá-lo a entender a filosofia orientada a objetos. Mas, para realmente entender OOP, recomendamos que você leia a literatura relacionada (por exemplo, "Core Java" de Cay Horstmann e Gary Cornell, "Análise e design orientado a objetos" de McLaughlin ou outros livros ) .

Pratique com fluxos de entrada/saída

Começamos a usar fluxos de E/S muito antes de entendê-los. Este é Java, meu jovem gafanhoto! Explicar System.out, muito menos System.in, é difícil e desnecessário quando você começa. Mas conforme você trabalha na missão Java Core , você sabe apenas o suficiente para entender esse tópico um tanto confuso, e falamos não apenas sobre E/S do console, mas também sobre como trabalhar com o sistema de arquivos. O principal é não pular essas tarefas (o CodeGym tem bastante) e mergulhar consistentemente na teoria.

Quebra-cabeças

Por "brainteasers", queremos dizer tarefas de maior complexidade que não são tanto sobre conhecimento, mas sobre a capacidade de aplicar o que você sabe de maneiras não convencionais. Essas são tarefas comuns para um desenvolvedor Java júnior. As empresas gostam muito de perguntar a eles durante as entrevistas, mas no trabalho real, esses quebra-cabeças não são encontrados com muita frequência. Portanto, o CodeGym tem alguns, mas não muitos (geralmente você os verá nas aulas do Capitão Esquilos). Que tipos de tarefas Java você tem?  - 3Onde posso encontrar quebra-cabeças?

Algoritmos e estruturas de dados

Quanto a algoritmos e estruturas de dados, há um debate constante sobre o quanto um futuro programador precisa deles. Responderemos mais uma vez: eles são essenciais para estabelecer a mentalidade correta, mas raramente são necessários diretamente para o trabalho. Isso ocorre porque Java, assim como outras linguagens de programação, possui bibliotecas com implementações de todos os algoritmos imagináveis ​​para classificação, pesquisa e muito mais. Ainda assim, escrever sua própria implementação de um algoritmo pode ser muito útil e dar uma ideia de sua complexidade. Especialmente para pessoas que estudaram matemática apenas no ensino médio. Basicamente, essas tarefas podem ser trocadas por quebra-cabeças com a única diferença de que todas foram descritas e resolvidas repetidamente online. Você nem precisa de uma ferramenta validadora. Escolha qualquer curso, digamos, da Universidade de Princetonou uma faculdade na Califórnia . Pratique com estruturas de dados:

Multithreading

Qualquer um pode escrever um "Olá, Mundo!" programa. Mas que tal usar a Java Thread API para exibir a famosa frase de um thread separado? Ou que tal exibir "Hello, World!" cinco vezes de cinco fios diferentes sem misturar as cordas? Multithreading será o melhor "teste de sua força" enquanto você estuda Java Core. Uma missão inteira do CodeGym, chamada Java Multithreading , é dedicada a esse tópico, que está longe de ser fácil. Ele contém um grande número de tarefas para permitir que os alunos sintam a "dor e a beleza" do processamento paralelo. Os primeiros projetos "reais" dos alunos geralmente contêm algum nível de multithreading. Por exemplo, jogos simples. Que tipos de tarefas Java você tem?  - 4

Pratique com multithreading

Cinco filósofos silenciosos sentam-se a uma mesa redonda. Um prato de espaguete está na frente de cada um deles. Há garfos na mesa entre cada filósofo (um à esquerda e outro à direita). Cada filósofo pode comer ou ter pensamentos profundos. Mas ele só pode comer segurando dois garfos, ou seja, pegando o da esquerda e o da direita. "Pegar o garfo" e "colocar o garfo" são ações distintas que são executadas sequencialmente.

Pratique com genéricos

A generalização é a própria essência da automação, portanto, em certo sentido, é a essência da programação. Assim, não podemos ignorar o tópico de genéricos em Java. CodeGym tem tarefas de programação envolvendo genéricos (principalmente na quest Java Collections, a partir do nível 5). Onde posso encontrar exercícios e materiais úteis sobre genéricos?

Pratique com padrões de design

Em algum ponto (dois terços do curso CodeGym), os programadores iniciantes devem começar a observar as regras para alcançar uma boa forma na programação. Estamos falando de formatação de código adequada (mais simples) e padrões de design (mais difíceis). CodeGym tem tarefas para isso. Você precisará de mais e poderá encontrá-los em " Head First Design Patterns " de Elisabeth Freeman e Kathy Sierra. Ou você pode pensar em como aplicar padrões de design a tarefas resolvidas anteriormente.

Teste de unidade

Uma habilidade importante para qualquer programador, muitas vezes erroneamente atribuída apenas aos testadores, é a capacidade de escrever testes de unidade para seu próprio código. O CodeGym tem algumas tarefas relacionadas a testes de unidade, mas você realmente não precisa se preocupar em procurar mais. Quando você entender como escrever testes de unidade, crie o hábito de cobrir seu código (em seus próprios projetos, em seus estudos) com eles. Isso é muito mais útil do que realizar verificações com a saída do console, uma prática que geralmente aflige estudantes de programação. Além disso, muitas vezes a primeira tarefa que os novos desenvolvedores juniores recebem nas empresas é escrever testes de unidade para o código de outra pessoa.

Pratique com expressões regulares

Este é um tópico simples que quase nenhum iniciante entende, porque é desconhecido e eles são preguiçosos. Realmente vale a pena passar alguns dias estudando o assunto, chegar ao fundo do "regex" e ganhar vantagem sobre quem não o fez. Isso também é útil porque as expressões regulares são quase independentes do idioma: se você as aprender uma vez, poderá usá-las em qualquer lugar. CodeGym não possui tarefas dedicadas a expressões regulares, embora algumas possam ser resolvidas com a ajuda delas. Aqui estão recursos adicionais para entender este tópico:
  • regex101.com — um site onde você pode verificar expressões regulares online
  • Mike Fitzgerald's "Introducing Regular Expressions" — uma cartilha concisa e simples.
Que tipos de tarefas Java você tem?  - 5

Pratique com perguntas capciosas sobre Java

Esta categoria inclui tarefas complicadas geralmente não relacionadas diretamente ao trabalho de programação real. Eles são encontrados principalmente durante as entrevistas, onde são usados ​​para entender a profundidade de compreensão/conhecimento de um candidato sobre uma determinada tecnologia ou para testar sua atenção aos detalhes. Se você precisar de tarefas como essa, procure por "Perguntas de entrevista sobre Java" ou algo semelhante no Google. Você provavelmente encontrará vários conjuntos de problemas, bem como perguntas e respostas em todos os tipos de fóruns. É bom entendê-los, mas vale a pena gastar muito tempo com eles? Em um artigo para o InformIT, Cay Horstmann uma vez fez uma boa observação sobre essas tarefas. Parafraseando brevemente seus pensamentos, existem tarefas do mundo real e existe o universo paralelo de "perguntas de entrevista".

Pratique com expressões lambda

O suporte para expressões lambda apareceu no Java 8, mas ainda não é usado com entusiasmo por todos os programadores. Ainda assim, hoje o conceito de "tarefas para desenvolvedores Java juniores" inclui operações com expressões lambda, por isso recomendamos conhecê-las .

Pratique o trabalho com redes

Serialização em JSON, RMI, HttpUrlConnection, sockets... esses não são exatamente tópicos de programação para iniciantes. Eles exigem habilidades sólidas e são como uma ponte para seus próprios projetos, estágios e empregos. Os níveis avançados do CodeGym (a missão Java Collections) têm muitos exercícios para ajudá-lo a dominar essas estratégias e tecnologias, mas tudo ficará muito mais claro à medida que você concluir um estágio online.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION