CodeGym/Java Blog/Willekeurig/Wat voor soort Java-taken heb je?
John Squirrels
Niveau 41
San Francisco

Wat voor soort Java-taken heb je?

Gepubliceerd in de groep Willekeurig
Wanneer iemand begint te leren programmeren , alleen of via online cursussen, is het erg belangrijk om een ​​domein te benadrukken en alles te structureren. In dit artikel presenteren we onze structuur — Java-taken voor beginners, met een indicatie hoeveel een bepaald type taak wordt vertegenwoordigd in de CodeGym online programmeercursus, samen met nuttige links. Wat voor soort Java-taken heb je?  - 1

Oefen met taalsyntaxis

Dit zijn de allereerste Java-programmeertaken voor beginners — de basis — van "Hello, World" tot loops en arrays. CodeGym heeft er veel: ze zijn vooral geconcentreerd in de eerste zes niveaus van de Java Syntax- zoektocht. Het is onwaarschijnlijk dat u elders meer van hen hoeft te zoeken. We hebben zeker genoeg om ze onder de knie te krijgen. Wat meer is, wanneer u een moeilijkere taak uitvoert, bekijkt u automatisch de syntaxis. Maar als je plotseling merkt dat je het nodig hebt, bevat elk Java-leerboek voor beginners vergelijkbare problemen. Maar in tegenstelling tot CodeGym hebben deze oefenboeken geen directe taakverificatie.

Oefen met verzamelingen

Verzamelingen zijn het eerste "serieuze" onderwerp dat beginnende programmeurs tijdens hun studie tegenkomen. Beginnerstaken gewijd aan Java-collecties zijn ook goed vertegenwoordigd op CodeGym - op het zevende en achtste niveau van de Java Syntax-zoektocht. Hier hoort de student voor het eerst over het Java Collections Framework en werkt hij een beetje met de Set-, List- en Map-interfaces, samen met enkele van hun implementaties. In dit stadium krijgt u echter alleen een inleiding tot deze handige tool en eenvoudige Java-taken. Je zult collecties grondiger bestuderen tijdens de Java Collections- zoektocht. Je kunt zien hoe belangrijk dit onderwerp is - er is een hele zoektocht naar vernoemd!

Oefen met uitzonderingen

Java biedt een speciaal mechanisme voor het afhandelen van uitzonderlijke situaties, waardoor het proces van het "vangen" van toepassingsfouten aanzienlijk wordt vereenvoudigd. Maar om er het beste van te maken, moet u erachter komen hoe exception handling werkt in Java. CodeGym heeft enorm veel van dergelijke taken. Je zult ze zelfs tegenkomen in de eerste zoektocht — Java Syntax. Wat voor soort Java-taken heb je?  - 2

Oefen met typecasting

Deze groep taken kan natuurlijk worden geclassificeerd als basistaken op het gebied van syntaxis. Naar onze bescheiden mening waarderen mensen dergelijke taken echter vaak te weinig, en nieuwkomers botsen erin. Daarom doorbreken we de standaard: we bestuderen de conversietaken van het primitieve type niet helemaal aan het begin, zoals anderen vaak doen. In plaats daarvan pakken we ze wat later aan - aan het einde van de Java Syntax-zoektocht. En dan zullen we leren om niet-primitieve typen (objecten) te casten wanneer we OOP bestuderen in de Java Core- zoektocht. CodeGym heeft genoeg van deze taken. U hoeft niet verder te zoeken.

Oefen met OOP

OOP is niet het moeilijkste onderwerp, maar het is buitengewoon belangrijk. En het verbergt veel subtiliteiten die interviewers graag gebruiken om potentiële junior ontwikkelaars te vangen. De CodeGym-cursus bevat praktische programmeertaken voor beginners om u te helpen de objectgeoriënteerde filosofie te begrijpen. Maar om OOP echt te begrijpen, raden we u aan verwante literatuur te lezen (bijvoorbeeld "Core Java" van Cay Horstmann en Gary Cornell, "Object-Oriented Analysis and Design" van McLaughlin, of andere boeken ) .

Oefen met invoer-/uitvoerstromen

We beginnen I/O-streams te gebruiken lang voordat we ze begrijpen. Dit is Java, mijn jonge sprinkhaan! Het uitleggen van System.out, laat staan ​​System.in, is moeilijk en onnodig als je net begint. Maar terwijl je de Java Core- zoektocht doorloopt , weet je net genoeg om dit enigszins verwarrende onderwerp te begrijpen, en we praten niet alleen over console-I/O, maar ook over het werken met het bestandssysteem. Het belangrijkste is om deze taken niet over te slaan (CodeGym heeft er best veel) en je consequent in de theorie te verdiepen.

Breinbrekers

Met "hersenkrakers" bedoelen we taken met een grotere complexiteit die niet zozeer over kennis gaan als wel over het vermogen om wat je weet op onconventionele manieren toe te passen. Dit zijn veelvoorkomende taken voor een junior Java-ontwikkelaar. Bedrijven vragen ze graag tijdens interviews, maar in het echte werk kom je dergelijke hersenkrakers niet vaak tegen. Dus CodeGym heeft er een paar, maar niet heel veel (je zult deze meestal zien in lessen van Captain Squirrels). Wat voor soort Java-taken heb je?  - 3Waar vind ik hersenkrakers?

Algoritmen en datastructuren

Wat algoritmen en datastructuren betreft, er is voortdurend discussie over hoeveel een toekomstige programmeur ze nodig heeft. We zullen nogmaals antwoorden: ze zijn essentieel voor het creëren van de juiste mindset, maar ze zijn zelden direct nodig voor werk. Dit komt omdat Java, evenals andere programmeertalen, bibliotheken hebben met implementaties van elk denkbaar algoritme voor sorteren, zoeken en meer. Toch kan het schrijven van je eigen implementatie van een algoritme erg nuttig zijn en je een idee geven van de complexiteit ervan. Vooral voor mensen die alleen op de middelbare school wiskunde hebben gestudeerd. In principe kunnen deze taken worden uitgewisseld met hersenkrakers met het enige verschil dat ze allemaal herhaaldelijk online zijn beschreven en opgelost. Je hebt zelfs geen validatietool nodig. Kies een cursus van bijvoorbeeld Princeton Universityof een universiteit in Californië . Oefenen met datastructuren:

Multithreading

Iedereen kan een "Hello, World!" programma. Maar hoe zit het met het gebruik van de Java Thread API om de beroemde zin uit een aparte thread weer te geven? Of wat dacht je van "Hello, World!" vijf keer uit vijf verschillende threads zonder de snaren door elkaar te halen? Multithreading zal de beste "test van uw kracht" zijn terwijl u Java Core bestudeert. Een hele CodeGym-zoektocht, genaamd Java Multithreading , is gewijd aan dit onderwerp, wat verre van eenvoudig is. Het bevat een groot aantal taken om studenten de "pijn en schoonheid" van parallelle verwerking te laten voelen. De eerste "echte" projecten van studenten bevatten meestal een bepaald niveau van multithreading. Bijvoorbeeld eenvoudige spellen. Wat voor soort Java-taken heb je?  - 4

Oefen met multithreading

Vijf stille filosofen zitten aan een ronde tafel. Voor elk van hen staat een bord spaghetti. Tussen elke filosoof staan ​​vorken op tafel (één links en één rechts). Elke filosoof kan eten of diep nadenken. Maar hij of zij kan alleen eten als hij twee vorken vasthoudt, dwz door de linker en de rechter op te pakken. "Vork oppakken" en "vork neerleggen" zijn verschillende acties die opeenvolgend worden uitgevoerd.

Oefen met generieke geneesmiddelen

Generalisatie is de essentie van automatisering, dus in zekere zin is het de essentie van programmeren. Daarom kunnen we het onderwerp generieke geneesmiddelen in Java niet negeren. CodeGym heeft programmeertaken met betrekking tot generieke geneesmiddelen (voornamelijk in de Java Collections-zoektocht, beginnend bij niveau 5). Waar vind ik nuttige oefeningen en materialen over generieke geneesmiddelen?

Oefen met ontwerppatronen

Op een gegeven moment (tweederde van de CodeGym-cursus) moeten beginnende programmeurs gaan kijken naar de regels voor het bereiken van een goede vorm in programmeren. We hebben het over de juiste codeopmaak (eenvoudiger) en ontwerppatronen (moeilijker). CodeGym heeft hier taken voor. Je hebt er meer nodig en je kunt ze vinden in " Head First Design Patterns " van Elisabeth Freeman en Kathy Sierra. Of u kunt nadenken over hoe u ontwerppatronen kunt toepassen op eerder opgeloste taken.

Testen van een eenheid

Een belangrijke vaardigheid voor elke programmeur, die vaak ten onrechte alleen aan testers wordt toegeschreven, is het vermogen om unit-tests te schrijven voor zijn of haar eigen code. CodeGym heeft een paar taken met betrekking tot unit-tests, maar u hoeft niet echt de moeite te nemen om naar meer te zoeken. Als u begrijpt hoe u unit-tests moet schrijven, maak er dan een gewoonte van om uw code (in uw eigen projecten, in uw studies) met hen te bespreken. Dit is veel nuttiger dan het uitvoeren van controles met console-uitvoer, een praktijk waar studentprogrammeurs meestal last van hebben. Bovendien is het eerste waar nieuwe junior-ontwikkelaars bij bedrijven vaak mee te maken krijgen, het schrijven van unit-tests voor de code van iemand anders.

Oefen met reguliere expressies

Dit is een eenvoudig onderwerp dat bijna geen enkele beginner begrijpt, omdat het onbekend is en ze lui zijn. Het is echt de moeite waard om een ​​paar dagen het onderwerp te bestuderen, "regex" tot op de bodem uit te zoeken en een voordeel te behalen ten opzichte van degenen die dat nog niet hebben gedaan. Dit is ook handig omdat reguliere expressies bijna taalonafhankelijk zijn: als je ze eenmaal leert, kun je ze overal gebruiken. CodeGym heeft geen taken die zijn gewijd aan reguliere expressies, hoewel sommige met hun hulp kunnen worden opgelost. Hier zijn aanvullende bronnen om dit onderwerp te begrijpen:
  • regex101.com — een website waar u reguliere expressies online kunt controleren
  • Mike Fitzgerald's "Introductie van reguliere expressies" - een beknopte en eenvoudige inleiding.
Wat voor soort Java-taken heb je?  - 5

Oefen met strikvragen over Java

Deze categorie bevat lastige taken die meestal niet direct verband houden met echt programmeerwerk. Ze komen vooral voor tijdens sollicitatiegesprekken, waar ze worden gebruikt om inzicht te krijgen in de mate van begrip/kennis van een kandidaat van een bepaalde technologie of om zijn of haar aandacht voor detail te testen. Als je dergelijke taken nodig hebt, zoek dan naar "Java-interviewvragen" of iets dergelijks op Google. Je zult waarschijnlijk een heleboel probleemsets vinden, evenals vragen en antwoorden op allerlei forums. Het is goed om ze te begrijpen, maar is het de moeite waard om er te veel tijd aan te besteden? In een artikel voor InformIT maakte Cay Horstmann ooit een goed punt over dergelijke taken. Om zijn gedachten kort te parafraseren: er zijn taken uit de echte wereld en er is het parallelle universum van 'interviewvragen'.

Oefen met lambda-uitdrukkingen

Ondersteuning voor lambda-expressies verscheen in Java 8, maar wordt nog niet door alle programmeurs met enthousiasme gebruikt. Toch omvat het concept van "taken voor junior Java-ontwikkelaars" tegenwoordig operaties met lambda-expressies, dus we raden aan om er kennis mee te maken .

Oefen het werken met netwerken

Serialisatie naar JSON, RMI, HttpUrlConnection, sockets... dit zijn niet bepaald programmeeronderwerpen voor beginners. Ze vereisen solide vaardigheden en zijn zoiets als een brug naar je eigen projecten, stages en werk. De geavanceerde niveaus van CodeGym (de Java Collections-zoektocht) hebben veel oefeningen om je te helpen deze strategieën en technologieën onder de knie te krijgen, maar alles zal veel duidelijker worden als je een online stage voltooit.
Opmerkingen
  • Populair
  • Nieuw
  • Oud
Je moet ingelogd zijn om opmerkingen te kunnen maken
Deze pagina heeft nog geen opmerkingen