JavaRush /Blogue Java /Random-PT /Quais são os tipos de tarefas Java?

Quais são os tipos de tarefas Java?

Publicado no grupo Random-PT
Quando uma pessoa começa a estudar programação por conta própria ou em cursos online, é muito importante definir o “campo de atuação” e sistematizar tudo. Neste artigo apresentamos essa sistematização - tarefas Java para iniciantes, indicando o quão completo um determinado tipo é apresentado no curso online para aprender programação JavaRush e links úteis. Quais são os tipos de tarefas Java - 1

Problemas de sintaxe de linguagem

O básico, as primeiras tarefas de programação Java para iniciantes - de “Hello World” a loops e arrays. Existem muitos deles no JavaRush: eles estão especialmente concentrados na missão Java Syntax nos primeiros seis níveis. É improvável que você precise procurar fontes adicionais para assimilá-las - há muitas delas aqui. Além disso, ao resolver problemas mais complexos, você repete automaticamente a sintaxe. Mas se você precisar deles de repente, qualquer livro de problemas de Java para iniciantes contém exercícios semelhantes. Só que não haverá verificação instantânea, como no JavaRush, nesses livros de problemas.

Tarefas de coleta

As coleções são o primeiro tópico “sério” que um programador novato encontra durante seus estudos. Problemas Java para iniciantes, dedicados a coleções, também são amplamente representados no JavaRush - no sétimo e oitavo níveis da missão Java Syntax. Aqui o aluno ouvirá pela primeira vez sobre o Java Collections Framework, trabalhará com as interfaces Set, List e Map e algumas de suas implementações. No entanto, nesta fase você só se familiarizará com esta ferramenta útil e com tarefas Java simples. Um estudo mais aprofundado das coleções ocorrerá durante a missão Coleções Java . Você vê como esse objeto é importante, já que uma missão inteira recebeu seu nome!

Problemas de exceção

Um mecanismo especial é responsável por trabalhar com situações anormais em Java, o que simplifica muito a “captura” de erros nos programas. Mas para usá-lo totalmente, você precisa entender como funciona o tratamento de exceções em Java. Existem muitas dessas tarefas no JavaRush, e elas são encontradas até na primeira missão Java Syntax.
Quais são os tipos de tarefas Java - 2

Problemas de conversão de tipo

Claro, este grupo pode ser classificado como tarefas básicas de sintaxe. No entanto, em nossa humilde opinião, tais tarefas são frequentemente subestimadas e os iniciantes se atrapalham com elas. Portanto, vamos nos afastar dos modelos: estudamos tarefas Java para iniciantes no tópico “Conversão de tipos primitivos” não no início, como costuma ser feito, mas um pouco mais tarde - no final da primeira missão Java Syntax. E então aprenderemos como converter tipos (objetos) não primitivos estudando OOP na missão Java Core . Existem muitas dessas tarefas no JavaRush; você não precisa procurar nada adicional.

Tarefas para entender OOP

OOP não é o tópico mais difícil, mas é extremamente importante. Além disso, contém muitas sutilezas que os entrevistadores gostam de usar para capturar futuros “juniores”. O curso JavaRush contém problemas práticos de programação para iniciantes que ajudarão você a entender a abordagem orientada a objetos. No entanto, para realmente entender OOP, recomendamos a leitura de literatura sobre o assunto (por exemplo, Kay Horstmann, Professional's Library de Gary Cornell, Object-Oriented Analysis and Design de McLaughlin ou outros livros ).

Tarefas em threads de E/S

Começamos a usar fluxos de E/S muito antes de entendê-los - isso é Java, baby, e explicar System.out e, além disso, System.in para um iniciante verde, é difícil e não é necessário no primeiro estágio. Mas durante a missão Java Core , o conhecimento é suficiente para entender esse tópico um tanto confuso, e não estamos falando apenas sobre entrada/saída do console, mas também sobre como trabalhar com o sistema de arquivos. O principal é não pular essas tarefas (há muitas delas no JavaRush) e entender a teoria de forma consistente.

Quebra-cabeças

Por “quebra-cabeças” entendemos tarefas de maior complexidade que requerem não tanto conhecimento, mas a capacidade de aplicá-lo de forma não padronizada. Essas são tarefas típicas do Java Junior - são muito populares em entrevistas, mas no trabalho real, quebra-cabeças nesse sentido não são muito comuns. É por isso que existem no JavaRush, mas não muitos (geralmente nas aulas do Capitão Bobrov).
Quais são os tipos de tarefas Java - 3
Onde você pode encontrar quebra-cabeças:

Algoritmos e estruturas de dados

Existem debates constantes sobre algoritmos e estruturas de dados sobre o quanto um futuro programador precisa deles. Mais uma vez responderemos: para o desenvolvimento do pensamento - eles são necessários, diretamente para o trabalho - raramente. Porque para Java, e também para outras linguagens, bibliotecas já foram escritas com implementações de todos os algoritmos conhecidos de classificação, pesquisa e outros algoritmos. No entanto, criar suas próprias implementações de algoritmos é muito útil, assim como desenvolver uma compreensão de sua complexidade. Principalmente para pessoas que só estudaram matemática na escola. Em princípio, essas tarefas são intercaladas com quebra-cabeças, a única diferença é que todas são descritas e resolvidas muitas vezes online. Você nem precisa de um validador para verificação. Escolha qualquer curso, por exemplo, da Universidade de Princeton , seus colegas da Califórnia ou Stepic . A propósito, no curso CS50 , cuja tradução colocamos no JavaRush, são discutidos vários algoritmos e estruturas de dados importantes. Recomendamos fortemente assistir vídeos dos níveis 2 a 5 e implementar as tarefas em Java. Problemas gráficos: Tarefas de estrutura de dados:

Multithreading

Qualquer um pode escrever um programa que imprima "Hello World"... Que tal usar a API Java Thread para que a famosa frase seja impressa a partir de um thread adicional? E para que imprima “Olá mundo” cinco vezes de cinco threads diferentes, e para que as linhas não se alternem?.. Multithreading é um verdadeiro “teste de força” ao aprender Java Core. Toda uma missão no JavaRush é dedicada a esse tema tão difícil, que se chama Java Multithreading , e contém um grande número de tarefas para que o aluno sinta a “dor e a beleza” dos processos paralelos. Na maioria das vezes, os primeiros projetos “reais” dos alunos envolvem multithreading em maior ou menor grau. Por exemplo, jogos simples.
Quais são os tipos de tarefas Java – 4

Problema de multithread

Cinco filósofos silenciosos sentam-se numa mesa redonda. Na frente de cada um deles está um prato de espaguete. Os garfos ficam na mesa à esquerda e à direita de cada filósofo (entre eles). Um filósofo pode comer ou pensar. Além disso, ele só pode comer se segurar dois garfos – um à direita e outro à esquerda dele. “Pegar um garfo” e “largar o garfo” são ações separadas que são executadas sequencialmente.

Tarefas em Genéricos

A generalização é a própria essência da automação, ou seja, em certo sentido, da programação. Portanto, o tópico de generalizações ou genéricos em Java também não deve ser ignorado. JavaRush tem tarefas gerais de programação (principalmente na missão Java Collections, começando no nível 5). Onde você pode encontrar exercícios e materiais úteis sobre genéricos:

Tarefas de padrões de projeto

Em algum estágio (cerca de 2/3 do curso JavaRush), um programador novato precisa começar a observar atentamente as regras de boas maneiras na programação. Estamos falando de formatação correta de código (que é mais fácil) e padrões de design (que é mais difícil). JavaRush tem essas tarefas. São necessários outros adicionais - eles podem ser encontrados, por exemplo, no livro (parte 4) “ Java. Métodos de programação » Blinov e Romanchik. Ou pense em como você pode encaixar problemas já resolvidos em um modelo.

Teste de unidade

Uma habilidade importante de qualquer programador, que muitas vezes é erroneamente atribuída exclusivamente aos testadores, é escrever testes unitários (ou unitários) para seu próprio código. JavaRush tem algumas tarefas de teste de unidade, mas você realmente não deveria se preocupar em procurar novas. Depois de descobrir como escrever testes, crie o hábito de cobrir seu código (em seus próprios projetos, em tarefas educacionais) com testes unitários. Isso é muito mais útil do que fazer verificações usando a saída do console, que é o que os estudantes programadores tendem a sofrer. Além disso, muitas vezes a primeira coisa que as empresas confiam aos “juniores” é escrever testes de unidade para o código de outra pessoa.

Problemas de expressão regular

Este é um tópico simples que quase nenhum iniciante entende, porque é incomum e preguiçoso. Na verdade, vale a pena passar alguns dias estudando o tema, entendendo os “frequentadores” e ganhando vantagem sobre quem ainda não o fez. Isso também é útil porque eles são quase independentes da linguagem de programação: aprenda uma vez, você pode usar em qualquer lugar. Não há problemas no JavaRush que se concentrem em expressões regulares, embora alguns possam ser resolvidos usando-as. Então, aqui estão alguns recursos adicionais para entender o tópico:
Quais são os tipos de tarefas Java – 5

Problemas de Java com um truque

Esta categoria inclui tarefas complicadas que na maioria das vezes não estão diretamente relacionadas ao trabalho real do programador. Eles são encontrados principalmente durante entrevistas; são usados ​​para compreender a profundidade da compreensão/conhecimento de uma determinada tecnologia por um candidato ou para testar sua atenção. Se você precisar de problemas como este, procure no Google "Java Interview Problems" ou algo parecido. Muito provavelmente você encontrará muitas coleções, bem como perguntas e respostas em vários fóruns. Eles são úteis para entender, mas vale a pena gastar muito tempo com eles? Kay Horstmann certa vez falou bem sobre esses problemas em seu artigo para o InformIT, cuja tradução publicamos em janeiro. Para resumir brevemente seu pensamento, existem tarefas do mundo real e existe um universo paralelo - “Problemas de Entrevista”.

Problemas de expressão lambda

O suporte para expressões lambda apareceu no Java 8, mas ainda nem todos os programadores estão dispostos a usá-las. Porém, hoje o conceito de “tarefas para Java Junior” inclui manipulações com expressões lambda, por isso recomendamos que você se familiarize com elas, por exemplo, no artigo muito acessível “ Popular sobre expressões lambda em Java. Com exemplos e tarefas ."

Tarefas de rede

Serialização em JSON, RMI, HttpUrlConnection, socket... essas não são exatamente tarefas de programação para iniciantes. Exigem conhecimentos sólidos e são uma espécie de ponte para os próprios projetos, estágios e trabalhos. Nos níveis seniores do JavaRush (Java Collections Quest), existem muitos exercícios para dominar essas tecnologias e abordagens, mas tudo ficará muito mais claro durante o estágio online.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION