Propaganda
Quando a Apple anunciou o Swift em 2014, as pessoas estavam legitimamente céticas. Ninguém sabia se isso iria acontecer, e muitos questionaram a necessidade de ainda outro linguagem de programação para aprender.
Mas, em seguida, o Swift tornou-se open source em 2015 e, embora não tenha explodido da noite para o dia, o idioma cresceu constantemente. Nunca houve um momento melhor para aprender! Abordamos os tutoriais online do Swift, bem como os tutoriais móveis do Swift, mas para onde você vai depois de ter o básico?
Quando estiver familiarizado com o idioma, considere testar suas habilidades com esses desafios de codificação Swift. Eles não são apenas divertidos e estimulantes, mas também proporcionam a confiança necessária em suas próprias habilidades.
Codewars é o melhor lugar para praticar desafios de codificação de qualquer tipo, incluindo Swift. Todo o sistema é gamificado, o que significa que você ganha experiência e sobe de nível a cada desafio bem-sucedido. Ele usa um sistema de classificação semelhante ao Go: você começa em 8 Kyu e avança até 1 Kyu.
Os desafios (chamados de "kata") são classificados por sua dificuldade. Felizmente, existem milhares dos desafios disponíveis, por isso, mesmo que você suba de nível muito rapidamente, sempre poderá voltar e trabalhar nos mais fáceis. Os tipos de desafio incluem algoritmos, tipos de dados, manipulação de cadeias e números, fluxo de controle, quebra-cabeças, lógica e muito mais.
O que eu amo no Codewars é duplo: primeiro, terminar um kata permite que você veja as soluções enviadas por outros usuários, e segundo, os usuários podem criar seus próprios katas para que a coleção de desafios cresça diariamente. É realmente um dos melhores jogos de codificação para aprimorar suas habilidades Os 9 melhores jogos de codificação para desenvolver suas habilidades de programaçãoOs jogos de codificação ajudam você a aprender mais rápido com a prática e a experiência prática. Além disso, são uma maneira divertida de testar suas habilidades de programação! consulte Mais informação .
Os desafios da codificação Swift em CodinGame estão mais envolvidos do que os do Codewars, e isso ocorre porque os desafios do CodinGame são projetados como jogos. Por exemplo, o desafio "Poder de Thor" faz com que você mova a posição de Thor para que ele possa alcançar a Luz do Poder no menor número de etapas possível.
Os desafios são classificados por dificuldade, variando de Fácil a Médio a Difícil a Muito Difícil. Existem também quebra-cabeças criados pela comunidade que você pode experimentar quando ficar sem os oficiais. Cuidado que os desafios do CodinGame são bastante difíceis, mas você aprenderá muito na luta.
Além de desafios individuais, o CodinGame também oferece batalhas de codificação multiplayer de cinco minutos (onde você tenta para completar o maior número de desafios possível) e concursos maiores em toda a comunidade (que ocorrem todos os meses ou dois).
CodeChef oferece desafios que são como codificar problemas de tarefas de casa. Eles são divididos nas categorias Iniciante, Fácil, Médio, Difícil e Desafio (além de uma categoria extra chamada Par para desafios criados pelo usuário).
Centenas de desafios estão disponíveis e podem ser bastante difíceis. Em comparação, a maioria dos iniciantes tem mais de 1.000 envios bem-sucedidos, os médios, na média, às centenas, mas os Desafios raramente quebram 100 envios bem-sucedidos. É uma boa prática para iniciantes e veteranos.
CodeChef também tem concursos. Nem todos oferecem prêmios, mas os concursos oficiais do CodeChef podem ter prêmios de até US $ 700.
DailyProgrammer é uma comunidade do Reddit para programadores que desejam testar seu valor com os quebra-cabeças de codificação mais difíceis que você encontrará na web. Costumava ser uma coisa diária, mas ultimamente tem sido mais a cada 2-3 dias.
O legal é que os desafios são marcados como Fácil, Intermediário ou Difícil. A má notícia é que mesmo os desafios Easy, especialmente os mais recentes, podem ser bastante difíceis para iniciantes em codificação. No entanto, você sempre pode mergulhar nos arquivos e revisar velhos desafios, se quiser.
Projeto Euler é quase como um conjunto auto-direcionado de desafios de codificação Swift. Os arquivos contêm 600 desafios no total (chamados "Problemas"), mas eles não vêm com respostas, soluções ou discussões. Geralmente, é fácil saber quando você resolveu o problema, mas às vezes não é - e isso pode ser frustrante.
Além disso, os desafios do Projeto Euler são principalmente de natureza matemática e lógica. Você pode resolver tudo isso sem nenhuma programação necessária. No entanto, como uma maneira de exercitar seu cérebro, eles são fantásticos. E como a programação tem tudo a ver com resolver problemas do mundo real com código, isso é essencialmente a mesma coisa.
TopCoderOs desafios deste artigo são um pouco diferentes dos demais, simplesmente porque são concursos para vários jogadores e não são quebra-cabeças individuais. Você precisa se registrar para eles com antecedência e depois concluí-los antes que o tempo acabe.
A diferença é que os desafios do TopCoder vêm com alguns pagamentos de prêmios pesados. Veja na captura de tela acima que, até o momento em que escrevo, existem quatro desafios em andamento com milhares de dólares em jogo. Nada mal depois de aprimorar suas habilidades. É uma boa maneira de testar sua prontidão mundial como codificador Swift.
A única desvantagem é que cada desafio suporta apenas um idioma ou grupo de idiomas específico. Embora existam desafios de codificação Swift, pode haver apenas um a cada mês, aproximadamente.
Coderbyte pode não ser tão exaustivo quanto alguns dos outros sites de desafio acima, mas ainda é uma excelente maneira de praticar o Swift. Os desafios (divididos em Fácil, Médio e Difícil) vêm com soluções passo a passo oficiais e enviadas pelo usuário, além de uma área de discussão para perguntas.
O que é único no Coderbyte é a seção Algoritmos, na qual você pode aprender todos os tipos de algoritmos: percursos em árvore, sobreposições de faixa, maximização do preço das ações, somatórios de matriz, implementações de classificação e Mais. Perfeito para iniciantes.
Infelizmente, usuários gratuitos só têm acesso a 10 desafios e soluções. Uma conta premium custa US $ 29 / mês (ou US $ 150 / ano muito mais razoável). Vale a pena? Bem, use seus 10 desafios gratuitos e veja por si mesmo!
Mais algumas maneiras de praticar o Swift
Se o Swift é sua primeira linguagem de programação, lembre-se de nossas dicas para aprendendo a programar sem o estresse Como aprender a programar sem todo o estresseTalvez você tenha decidido seguir a programação, seja para uma carreira ou apenas como um hobby. Ótimo! Mas talvez você esteja começando a se sentir sobrecarregado. Não é tão bom. Aqui está uma ajuda para facilitar sua jornada. consulte Mais informação e nossas dicas para dominando uma nova linguagem de programação 7 truques úteis para dominar uma nova linguagem de programaçãoNão há problema em ficar impressionado quando você está aprendendo a codificar. Você provavelmente esquecerá as coisas tão rapidamente quanto as aprende. Essas dicas podem ajudar você a reter melhor todas as novas informações. consulte Mais informação . Pode ser difícil no começo, mas fique com ela!
Depois de se sentir confortável com o Swift, você pode seguir em frente essas idéias de projetos de aplicativos para iOS Então você quer criar aplicativos para iPhone? 10 projetos para iniciantesDeseja criar aplicativos para iPhone e iPad? Comece aprendendo o básico do Swift. consulte Mais informação e esses idéias gerais de projetos de programação 5 idéias de projetos para ajudá-lo a aprender a programar mais rapidamenteExistem algumas maneiras de facilitar a curva de aprendizado da programação. Deixe suas mãos sujas e aprenda mais rápido com projetos paralelos que você pode iniciar a qualquer momento. Brinque com esses cinco. consulte Mais informação . Nada instila mais confiança na programação do que perseguir um projeto real e ter sucesso nele.
Como você está gostando do Swift como idioma? Qual é a sua maneira favorita de aprender e praticar programação? Compartilhe conosco nos comentários!
Joel Lee tem um BS. em Ciência da Computação e mais de seis anos de experiência profissional em redação. Ele é o editor chefe do MakeUseOf.