JavaRush /Blog Java /Random-FR /Quels sont les types de tâches Java ?

Quels sont les types de tâches Java ?

Publié dans le groupe Random-FR
Lorsqu'une personne commence à étudier la programmation seule ou dans le cadre de cours en ligne, il est très important de définir le « domaine d'activité » et de tout systématiser. Dans cet article, nous présentons une telle systématisation - tâches Java pour débutants, en indiquant dans quelle mesure un type particulier est présenté dans le cours en ligne pour apprendre la programmation JavaRush et des liens utiles. Quels sont les types de tâches Java - 1

Problèmes de syntaxe du langage

Les bases, les toutes premières tâches de programmation Java pour débutants - de « Hello World » aux boucles et tableaux. Il y en a beaucoup sur JavaRush : ils sont particulièrement densément concentrés dans la quête Java Syntax aux six premiers niveaux. Il est peu probable que vous ayez besoin de rechercher des sources supplémentaires pour les assimiler - il y en a suffisamment ici. De plus, lors de la résolution de problèmes plus complexes, vous répétez automatiquement la syntaxe. Mais si vous en avez soudainement besoin, n'importe quel livre de problèmes Java pour débutants contient des exercices similaires. Seulement, il n'y aura pas de vérification instantanée, comme dans JavaRush, dans ces livres de problèmes.

Tâches de collecte

Les collections sont le premier sujet « sérieux » qu'un programmeur débutant rencontre au cours de ses études. Les problèmes Java pour débutants, dédiés aux collections, sont également largement représentés sur JavaRush - aux septième et huitième niveaux de la quête Java Syntax. Ici, l'étudiant entendra parler pour la première fois du Java Collections Framework, travaillera avec les interfaces Set, List et Map et certaines de leurs implémentations. Cependant, à ce stade, vous ne vous familiariserez qu'avec cet outil utile et avec des tâches Java simples. Une étude plus approfondie des collections aura lieu lors de la quête Collections Java . Vous voyez à quel point cet objet est important, puisqu’une quête entière porte son nom !

Problèmes d'exceptions

Un mécanisme spécial est chargé de travailler avec des situations anormales en Java, ce qui simplifie grandement la « détection » des erreurs dans les programmes. Mais pour l'utiliser pleinement, vous devez comprendre comment fonctionne la gestion des exceptions en Java. Il existe de nombreuses tâches de ce type dans JavaRush, et on les retrouve même dans la première quête Java Syntax.
Quels sont les types de tâches Java - 2

Problèmes de conversion de type

Bien entendu, ce groupe peut être classé comme tâches de syntaxe de base. Cependant, à notre humble avis, ces tâches sont souvent sous-estimées et les débutants s’y débattent. Par conséquent, éloignons-nous des modèles : nous étudions les tâches Java pour débutants sur le thème « Conversion de types primitifs » non pas au tout début, comme cela se fait souvent, mais un peu plus tard - à la fin de la première quête de syntaxe Java. Et puis nous apprendrons comment convertir des types (objets) non primitifs en étudiant la POO dans la quête Java Core . Il existe de nombreuses tâches de ce type dans JavaRush ; vous n’avez rien à chercher de plus.

Tâches pour comprendre la POO

La POO n'est pas le sujet le plus difficile, mais il est extrêmement important. De plus, il contient de nombreuses subtilités que les enquêteurs aiment utiliser pour attraper les futurs « juniors ». Le cours JavaRush contient des problèmes de programmation pratiques pour les débutants qui vous aideront à comprendre l'approche orientée objet. Cependant, pour vraiment comprendre la POO, nous vous recommandons de lire de la littérature sur le sujet (par exemple, Kay Horstmann, Professional's Library de Gary Cornell, Object-Oriented Analysis and Design de McLaughlin ou d'autres livres ).

Tâches sur les threads d'E/S

Nous commençons à utiliser les flux d'E/S bien avant de les comprendre - c'est Java, bébé, et expliquer System.out, et, de plus, System.in à un débutant vert, est difficile et pas nécessaire dans un premier temps. Mais lors de la quête Java Core , les connaissances sont juste suffisantes pour comprendre ce sujet quelque peu déroutant, et nous parlons non seulement des entrées/sorties de la console, mais aussi du travail avec le système de fichiers. L'essentiel est de ne pas sauter ces tâches (il y en a beaucoup dans JavaRush) et de bien comprendre la théorie.

Des énigmes

Par « énigmes », nous entendons des tâches d'une complexité accrue qui nécessitent moins de connaissances que la capacité de les appliquer de manière non standard. Ce sont des tâches typiques pour Java Junior - elles sont très populaires dans les entretiens, mais dans le travail réel, les énigmes dans ce sens ne sont pas très courantes. C'est pourquoi il y en a chez JavaRush, mais pas en grand nombre (généralement dans les cours du capitaine Bobrov).
Quels sont les types de tâches Java - 3
Où trouver des énigmes :

Algorithmes et structures de données

Il y a des débats constants sur les algorithmes et les structures de données sur la mesure dans laquelle un futur programmeur en a besoin. Encore une fois, nous répondrons : pour le développement de la pensée - ils sont nécessaires, directement pour le travail - rarement. Parce que pour Java, et d'autres langages également, des bibliothèques ont déjà été écrites avec des implémentations de tous les algorithmes de tri, de recherche et autres connus. Cependant, créer vos propres implémentations d’algorithmes est très utile, tout comme développer une compréhension de leur complexité. Surtout pour les personnes qui n’ont étudié que les mathématiques à l’école. En principe, ces tâches sont entrecoupées d'énigmes, la seule différence étant qu'elles sont toutes décrites et résolues en ligne plusieurs fois. Vous n'avez même pas besoin d'un validateur pour la vérification. Choisissez n'importe quel cours, par exemple celui de l'Université de Princeton , de leurs collègues de Californie ou de Stepic . À propos, dans le cours CS50 , dont nous avons publié la traduction sur JavaRush, plusieurs algorithmes et structures de données importants sont abordés. Nous vous recommandons fortement de regarder des vidéos des niveaux 2 à 5 et d'implémenter les tâches en Java. Problèmes de graphique : Tâches de structure de données :

Multithreading

N'importe qui peut écrire un programme qui imprime "Hello World"... Que diriez-vous d'utiliser l'API Java Thread pour que la célèbre phrase soit imprimée à partir d'un fil supplémentaire ? Et pour qu'il imprime cinq fois « Hello world » à partir de cinq threads différents, et pour que les lignes n'alternent pas ?.. Le multithreading est un véritable « test de force » lors de l'apprentissage de Java Core. Une quête entière sur JavaRush est consacrée à ce sujet très difficile, appelé Java Multithreading , et elle contient un grand nombre de tâches pour que l'étudiant puisse ressentir la « douleur et la beauté » des processus parallèles. Le plus souvent, les premiers « vrais » projets des étudiants impliquent plus ou moins le multithreading. Par exemple, des jeux simples.
Quels sont les types de tâches Java - 4

Problème de multithread

Cinq philosophes silencieux sont assis autour d'une table ronde. Devant chacun d’eux se trouve une assiette de spaghettis. Des fourchettes sont posées sur la table à gauche et à droite de chaque philosophe (entre eux). Un philosophe peut manger ou penser. De plus, il ne peut manger que s'il tient deux fourchettes : une à droite et une à gauche. « Prendre une fourchette » et « poser une fourchette » sont des actions distinctes qui sont exécutées séquentiellement.

Tâches sur les génériques

La généralisation est l’essence même de l’automatisation, c’est-à-dire en un sens de la programmation. Le sujet des généralisations ou des génériques en Java ne doit donc pas non plus être ignoré. JavaRush a des tâches de programmation générales (principalement dans la quête Java Collections, à partir du niveau 5). Où vous pouvez trouver des exercices et du matériel utiles sur les génériques :

Tâches des modèles de conception

À un moment donné (environ les 2/3 du cours JavaRush), un programmeur débutant doit commencer à examiner de près les règles de bonnes manières en programmation. Nous parlons de formatage correct du code (ce qui est plus facile) et de modèles de conception (ce qui est plus difficile). JavaRush a de telles tâches. D'autres sont nécessaires - ils peuvent être trouvés, par exemple, dans le livre (partie 4) « Java. Méthodes de programmation » Blinov et Romanchik. Ou réfléchissez à la manière dont vous pouvez intégrer des problèmes déjà résolus dans un modèle.

Tests unitaires

Une compétence importante de tout programmeur, qui est souvent attribuée à tort exclusivement aux testeurs, consiste à écrire des tests unitaires (ou unitaires) pour votre propre code. JavaRush propose quelques tâches de tests unitaires, mais vous ne devriez vraiment pas vous donner la peine d'en rechercher de nouvelles. Une fois que vous avez compris comment rédiger des tests, prenez l'habitude de couvrir votre code (dans vos propres projets, dans des tâches éducatives) avec des tests unitaires. C'est beaucoup plus utile que d'effectuer des vérifications à l'aide de la sortie de la console, ce dont les étudiants programmeurs ont tendance à souffrir. De plus, très souvent, la première chose que les entreprises confient aux « juniors » est d’écrire des tests unitaires pour le code de quelqu’un d’autre.

Problèmes d'expression régulière

C'est un sujet simple que presque aucun débutant ne comprend, car il est inhabituel et paresseux. En fait, cela vaut la peine de consacrer quelques jours à étudier le sujet, à comprendre les « habitués » et à prendre l’avantage sur ceux qui ne l’ont pas fait. Ceci est également utile car ils sont presque indépendants du langage de programmation : apprenez-le une fois, vous pourrez l'utiliser partout. Il n'y a aucun problème dans JavaRush qui se concentre sur les expressions régulières, bien que certains puissent être résolus en les utilisant. Voici donc quelques ressources supplémentaires pour comprendre le sujet :
Quels sont les types de tâches Java - 5

Problèmes Java avec une astuce

Cette catégorie comprend des tâches délicates qui, le plus souvent, ne sont pas directement liées au travail réel du programmeur. Ils sont principalement rencontrés lors des entretiens ; ils sont utilisés pour comprendre la profondeur de la compréhension/connaissance d'une technologie particulière par un candidat ou pour tester son attention. Si vous avez besoin de problèmes comme celui-ci, Google "Java Interview Problems" ou quelque chose comme ça. Très probablement, vous trouverez de nombreuses collections, ainsi que des questions et réponses sur divers forums. Il est utile de les comprendre, mais vaut-il la peine d'y consacrer trop de temps ? Kay Horstmann a un jour bien parlé de ces problèmes dans son article pour InformIT, dont nous avons publié la traduction en janvier. Pour résumer brièvement sa pensée, il existe des tâches du monde réel et un univers parallèle : les « problèmes d’entretien ».

Problèmes d'expression lambda

La prise en charge des expressions lambda est apparue dans Java 8, mais tous les programmeurs ne sont toujours pas disposés à les utiliser. Cependant, aujourd'hui, le concept de « tâches pour Java Junior » inclut des manipulations avec des expressions lambda, nous vous recommandons donc de vous familiariser avec elles, par exemple à partir de l'article très accessible « Populaire sur les expressions lambda en Java. Avec des exemples et des tâches ."

Tâches de mise en réseau

Sérialisation en JSON, RMI, HttpUrlConnection, socket... ce ne sont pas exactement des tâches de programmation pour débutants. Ils nécessitent de solides connaissances et constituent en quelque sorte une passerelle vers leurs propres projets, stages et travail. Aux niveaux seniors de JavaRush (quête Java Collections), il existe de nombreux exercices pour maîtriser ces technologies et approches, mais tout deviendra beaucoup plus clair lors du stage en ligne.
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION