7 Swift Coding Utmaningar för att öva dina färdigheter
När Apple meddelade Swift tillbaka i 2014 var folk rättvis skeptiska. Ingen visste om det skulle hända, och många ifrågasatte behovet av ännu annan programmeringsspråk för att lära sig.
Men sedan gick Swift öppen källkod 2015, och trots att den inte exploderade över natten har språket stadigt ökat. Det har aldrig varit en bättre tid att lära! Vi har täckt online Swift tutorials samt mobila Swift tutorials, men vart går du när du har grunderna ner?
När du är bekväm med språket, överväg att testa dina färdigheter med dessa Swift-kodningsutmaningar. Inte bara är de roliga och stimulerande, men de ger dig det förtroende du behöver i dina egna förmågor.
1. Codewars
Codewars är det bästa stället för att utöva kodande utmaningar av något slag, inklusive Swift. Hela systemet är gamifierat, vilket betyder att du får erfarenhet och nivå upp mot varje framgångsrik utmaning. Den använder ett liknande rankningssystem som Go: du börjar vid 8 Kyu och går hela vägen till 1 Kyu.
Utmaningar (kallas “kata”) kategoriseras av deras svårigheter. Lyckligtvis finns det tusentals av tillgängliga utmaningar, så även om du nivåer upp för fort, kan du alltid gå tillbaka och arbeta på de enklare. Utmaningstyper inkluderar algoritmer, datatyper, sträng- och nummermanipulation, kontrollflöde, pussel, logik och mer.
Vad jag älskar om Codewars är dubbelt: för det första kan du, genom att avsluta en kata, se lösningarna som lämnats av andra användare, och för det andra kan användarna skapa egna katas så att insamlingen av utmaningar växer dagligen. Det är verkligen ett av de bästa kodningsspelen för att skärpa dina färdigheter De 10 bästa programmeringsspelen för att testa och bygga dina kodningsförmåga De 10 bästa programmeringsspelen för att testa och bygga dina kodningsförmågor Programmeringsspel hjälper dig att lära dig snabbare med praktisk praktik och erfarenhet - - Plus de är jättekul! Läs mer .
2. CodinGame
Swift kodning utmaningar på CodinGame är mer involverade än de på Codewars, och det beror på att CodinGames utmaningar är utformade som spel. Till exempel, “Towers kraft” utmaning har du flyttat stället för Thor så att han kan nå Power of Light i så få steg som möjligt.
Utmaningar kategoriseras av svårigheter, allt från lätt till medium till svårt till mycket svårt. Det finns också community-made pussel som du kan försöka när du går tom för de officiella. Akta dig för att CodinGames utmaningar är ganska tuffa, men du lär dig mycket i kampen.
Förutom solo-utmaningar erbjuder CodinGame fem minuters multiplayer-kodningsstrider (där du försöker slutföra så många utmaningar som möjligt) och större community-wide tävlingar (som förekommer varje månad eller två).
3. CodeChef
CodeChef erbjuder utmaningar som är som kodande läxproblem. De är uppdelade i kategorierna Nybörjare, Lätt, Medium, Hård och Utmaning (plus en extra kategori som heter Peer för användarvänliga utmaningar).
Hundratals utmaningar är tillgängliga, och de kan bli ganska svåra. Som jämförelse har de flesta Nybörjare 1 000 + framgångsrika inlägg, medelantalet i hundratals, men utmaningen bryter sällan 100 framgångsrika inlägg. Det är bra för både nybörjare och veteraner.
CodeChef har också tävlingar. Inte alla erbjuder priser, men de officiella CodeChef tävlingarna kan ha prispuljer upp till $ 700.
4. / r / DailyProgrammer
DailyProgrammer är ett Reddit-samhälle för programmörer som vill testa deras motstånd mot de hårdare kodningspussel som du hittar på webben. Det brukade vara en daglig sak, men lätt har det varit mer som varje 2-3 dagar eller så.
Vad är trevligt är att utmaningarna är märkta som Easy, Intermediate eller Hard. Den dåliga nyheten är att även de enkla utmaningarna, särskilt de senaste, kan vara ganska tuffa för kodande nybörjare. Du kan dock alltid dyka in i arkiven och se över gamla utmaningar om du vill.
5. Projekt Euler
Projekt Euler är nästan som en självstyrd uppsättning Swift-kodande utmaningar. Arkiverna innehåller 600 totala utmaningar (kallas “problem”), men de kommer inte med några svar eller lösningar eller diskussioner. Vanligtvis är det lätt att veta när du har löst problemet, men ibland är det inte - och det kan vara frustrerande.
Dessutom är Project Eulers utmaningar huvudsakligen matematiska och logiska i naturen. Du kan lösa alla dessa utan någon programmering som behövs. Men som ett sätt att träna din hjärna är de fantastiska. Och eftersom programmering handlar om att lösa verkliga problem med kod, är det i huvudsak samma sak.
6. TopCoder
TopcoderUtmaningarna är lite annorlunda än resten i den här artikeln, helt enkelt för att de är multiplayer tävlingar än solo pussel. Du måste registrera dig för dem före tid, och då måste du slutföra dem innan tiden går ut.
Skillnaden är att TopCoders utmaningar kommer med några stora utbetalningar. Se i skärmbilden ovanför att i skrivandet finns fyra utmaningar med tusentals dollar på spel. Inte dåligt när du har förtunnat dina färdigheter. Det är ett bra sätt att testa din världsberedskap som en Swift-kodare.
Den enda nackdelen är att varje utmaning endast stöder ett visst språk eller en grupp av språk. Medan Swift-kodningsutmaningar existerar kan det bara finnas en varje månad eller så.
7. Coderbyte
Coderbyte kan inte vara lika uttömmande som några av de andra utmaningsplatserna ovan, men det är fortfarande ett utmärkt sätt att träna Swift. Utmaningarna (indelade i Easy, Medium och Hard) kommer med officiella och användarinfordrade steg-för-steg-lösningar, plus ett diskussionsområde för frågor.
Vad som är unikt med Coderbyte är dess algoritmafördelning där du kan lära dig alla typer av algoritmer: trädgränsningar, överlappningar, maximering av aktiekurser, array summerings, sorteringsimplementeringar och mer. Perfekt för nybörjare.
Tyvärr får gratis användare bara tillgång till 10 utmaningar och lösningar. Ett premiumkonto kostar $ 29 / mo (eller en mycket mer rimlig $ 150 / år). Är det värt det? Tja, använd dina 10 gratis utmaningar och se själv!
Några fler sätt att öva Swift
Om Swift är ditt första programmeringsspråk, kom ihåg våra tips för att lära dig att programmera utan stress. Hur lära sig programmering utan all stress Hur man lär sig programmering utan all stress. Kanske har du bestämt dig för att fortsätta programmera, oavsett om det är en karriär eller precis som en hobby. Bra! Men kanske börjar du känna dig överväldigad. Inte så bra. Här är hjälp för att underlätta din resa. Läs mer och våra tips för att behärska ett nytt programmeringsspråk. 7 Användbara tricks för att behärska ett nytt programmeringsspråk. 7 Användbara tricks för att behärska ett nytt programmeringsspråk Det är okej att vara överväldigad när du lär dig att koda. Du kommer noga att glömma saker så fort du lär dig dem. Dessa tips kan hjälpa dig att bättre behålla all den nya informationen. Läs mer . Det kan vara tufft först, men hålla fast vid det!
När du är bekväm med Swift kan du fortsätta med dessa iOS-appprojektsidor Så du vill göra iPhone Apps? 10 Projekt för nybörjare Så du vill göra iPhone Apps? 10 Projekt för nybörjare Vill du skapa iPhone- och iPad-appar? Börja med att lära dig grunderna i Swift. Läs mer och dessa generella programmeringsprojektidéer 5 Projektidéer som hjälper dig att lära dig programmering Snabbare 5 Projektidéer som hjälper dig att lära dig programmering Snabbare Det finns några sätt att underlätta inlärningskurvan för programmering. Få dina händer smutsiga och lär dig snabbare med sidoprojekt som du kan börja när som helst. Spela runt med dessa fem. Läs mer . Ingenting fördriver programmeringsförtroendet mer än att driva ett verkligt projekt och lyckas med det.
Hur tycker du om Swift som språk? Vad är ditt favorit sätt att lära sig och öva programmering? Dela med oss i kommentarerna!
Utforska mer om: Apple, Swift.