JavaRush /Blog Java /Random-FR /Étudier sur JavaRush. Premiers projets, ce qui vous atten...
dwajot
Niveau 41
Киев

Étudier sur JavaRush. Premiers projets, ce qui vous attend et ce qu'il vaut mieux ne pas faire. Partie 1.

Publié dans le groupe Random-FR
Bon après-midi J’ai enfin atteint le moment où je suis prêt à partager ma réussite. Je veux vous en dire beaucoup, je vais donc le diviser en deux parties – pour ainsi dire, « les premiers projets et ce qu’il est préférable de ne pas faire » et en fait « la recherche d’un emploi et la réussite des entretiens ». Je ne vous parlerai pas beaucoup de moi, je dirai juste que comme presque tout le monde ici, j'ai obtenu mon diplôme et travaillé dans une autre spécialité, mais j'ai ensuite décidé de devenir programmeur :) Parlons tout de suite de formation. J'ai commencé à étudier JavaRush début 2016. J’ai passé beaucoup de temps à choisir où étudier la programmation et, bien sûr, comme tous nos collaborateurs, je ne voulais pas payer pour une formation. Je voulais étudier Java, car mon rêve est de programmer sur Android. Le cours JavaRush a attiré mon attention à plusieurs reprises lors de ma recherche, mais je l'ai abandonné car il s'agissait d'un shareware. J'ai commencé à prendre des cours vidéo sur YouTube. Ensuite, néanmoins, une certaine force m'a forcé à essayer de résoudre des problèmes gratuits sur JavaRush, et j'ai été tellement surpris qu'après avoir terminé 50 leçons vidéo (je les considérais comme tout à fait normales) et écrit du code sous la direction du conférencier, j'ai eu de grandes difficultés et pas du premier coup. essayez de résoudre les problèmes initiaux du cours. J'ai apprécié la qualité du cours et ce qu'il m'apporterait si je le complétais complètement, puis j'ai regardé sur le forum qu'il y avait de temps en temps de bonnes réductions sur les abonnements et j'ai décidé de prendre la version complète. Oui, de nombreux étudiants sont en colère et indignés à propos du cours - les problèmes sont posés sur la base de sujets qui n'ont pas encore été abordés, le validateur ne les comprend pas, et il y a beaucoup, beaucoup de choses qui peuvent être lues sur le forum et dans les commentaires. Et devine quoi? J'étais comme ça aussi :) J'ai encore une grosse tâche en suspens au niveau 34 et j'ai essayé toutes les solutions, mais le validateur ne l'accepte pas. C’est bien que le soutien m’ait apporté de la matière noire et que j’ai pu terminer le cours. En général, en tant que diplômé du cours JavaRush, je vais vous faire part de mon opinion subjective sur ce que j'ai aimé et ce que je n'ai pas aimé dans le cours (que les administrateurs me pardonnent). J'ai aimé : le nombre de tâches, la vérification instantanée des tâches, l'apprentissage à distance, la formation n'est pas liée à votre horaire de travail, la structure du cours, le forum étudiant, ainsi que le prix. N'a pas aimé:Pendant le cours, on commence à s'adapter au validateur et puis il est difficile de s'en débarrasser, de réfléchir et de trouver d'autres approches (mais c'est quand même une telle idée et elle est assez bien mise en œuvre ici), des erreurs dans certaines tâches, une forte complexité dans certaines conditions de tâche (c'est bien qu'il existe un forum pour de tels cas), j'ai également essayé la nouvelle interface - je ne l'ai pas vraiment aimé, heureusement, il y a la possibilité de passer à l'ancienne. Pour résumer, je suis content du cours et de ce qu'il m'a apporté. Je me souviens, il y a un an, comment un ami a essayé de m'expliquer ce que sont les booléens et les vides, ce que sont les méthodes et comment elles renvoient des valeurs. Je me souviens combien de temps je n'ai pas compris pourquoi ces valeurs devaient être renvoyées :) Maintenant, je me souviens souvent d'une scène du film The Matrix : Neo : Vas-tu m'apprendre à esquiver les balles ? Morpheus : Le moment venu, vous n'en aurez plus besoin. Et en effet, le moment venu, il possédait déjà a priori ces compétences. Au niveau 30 du cours, je souhaitais obtenir un stage proposé par JavaRush. J'ai regardé la tâche de test et j'ai été un peu horrifié. J'espérais vraiment que mon ami m'aiderait à y parvenir, mais une semaine avant la date limite, il a dit que voici Google, entrez toutes les technologies ici et il y aura un tas d'exemples. Je lui suis très reconnaissant que cela se soit produit, car c'est alors que j'ai d'abord ressenti ce que signifie être programmeur. J'ai terminé la mission en 4 jours complets et j'étais incroyablement heureux d'avoir décroché le stage. Stage. Je n’ai pas fait le stage, car en même temps j’ai commencé à faire mon premier projet et pourtant cela s’est avéré être une priorité et plus intéressant pour moi + je ne voulais pas travailler en entreprise. Que puis-je dire du stage en lui-même, il a ses avantages et ses inconvénients, mais dans l’ensemble il est plutôt bien. Si vous envisagez de continuer à vous lancer en entreprise, je pense que cela vaut la peine de le faire. Premier projet. Comme je l'ai mentionné ci-dessus, vers le niveau 30, j'ai obtenu un stage et j'ai commencé à réaliser mon projet. C'était et c'est toujours un robot de télégramme. J'avais envie de créer un bot même à 20-30 niveaux du cours, mais je n'ai pas trouvé de tutoriel approprié ni d'instructions pour commencer. Et pourtant, par hasard, je suis tombé sur un tel article et j'ai immédiatement commencé à essayer. Si quelqu'un est intéressé, voici un lien vers l'article - Comment écrire un bot dans un télégramme Java Franchement, l'auteur de cet article m'a beaucoup aidé plus tard, ce qui sera discuté ci-dessous. L’idée du bot était la suivante : en tant que programmeur, je dois apprendre l’anglais. Je connaissais relativement bien la grammaire, mais je voulais améliorer mon vocabulaire. J'ai pensé que ce serait bien d'avoir un robot pour apprendre des mots. J'ai déjà écrit des informations détaillées sur le bot dans un article plus tôt, je ne les répéterai donc pas - voici le lien Mots du bot Telegram Je vais vous raconter les difficultés auxquelles j'ai dû faire face lors de sa création. Tout d’abord, c’est la première fois que nous travaillons avec l’API Telegram. Bien que beaucoup de gens disent qu’il s’agit de l’une des API les plus simples et les mieux documentées, cela a été très difficile pour moi en tant que débutant. J'ai tout fait par sélection :) Parfois, je devais passer une journée entière pour créer une fonctionnalité, par exemple supprimer un bouton après avoir appuyé sur celui-ci. En environ un demi-mois, j'ai réussi à écrire la toute première version bêta, dont tout le code était dans une seule classe Java, et je voulais essayer de la télécharger sur le serveur. Mon projet n'est pas commercial, j'ai donc immédiatement abandonné les serveurs payants. Je me suis souvenu du serveur Heroku, qui sert d'ailleurs à héberger le site pour le stage. J'ai essayé ce serveur pendant deux jours complets et j'étais déjà complètement désespéré, car rien ne fonctionnait du tout - toutes les instructions liées aux sites, mais j'ai un bot et là je dois agir un peu différemment. En conséquence, j'ai décidé d'écrire à l'auteur de l'article sur le bot et de lui demander quel serveur il utilise pour héberger le bot. Et puis la chance m'a souri - l'auteur s'est avéré être un programmeur très sympa (je reste toujours en contact avec lui), et il m'a proposé d'héberger le bot sur son serveur Linux (et si je connais Linus, il m'attribuera un compte). L'apprentissage initial de Linux a duré une journée et, bien sûr, non sans erreurs et difficultés, le bot a commencé à tourner sur le serveur. De plus, entre tout cela, j'ai suivi le cours JavaRush et j'ai été très satisfait :) J'ai choisi MySql comme base de données pour le bot, j'ai révisé de nombreuses leçons sur l'optimisation des tables, le choix d'un moteur et tout le reste. Je donnerais un conseil à tous ceux qui réaliseront leur premier projet : essayez de réfléchir immédiatement à toute sa structure et de construire au moins une architecture relativement extensible. J'ai réécrit le mien probablement 3 fois à cause de telles erreurs. Oui, c’est difficile, car très souvent on ne sait pas ce que l’on veut ajouter à côté de son projet, mais on peut quand même le faire à un niveau minimum. N'écrivez pas tout votre code dans une seule classe !!! Essayez d'utiliser MVC, n'oubliez pas la POO, etc. Le plus drôle, c'est que j'ai commencé à utiliser certains principes de base de la POO dans le projet alors qu'il était presque prêt. Avant cela, je n'y avais même pas pensé. Bien sûr, l'utilisateur ne se soucie généralement pas de la langue dans laquelle le produit est écrit, des modèles et des technologies utilisés, mais lorsque vous l'ouvrirez après quelques mois et que vous voudrez y ajouter quelque chose, vous penserez à beaucoup de bons mots. à propos de vous :) N'oubliez pas non plus de faire la journalisation - cela vous permet à la fois de suivre les erreurs et de voir quelles fonctions les utilisateurs utilisent le plus et ce qui doit être développé davantage. Dans un télégramme, en passant, vous pouvez le faire d'une manière très cool - envoyez tous les journaux en temps réel sur votre chaîne privée, pour ainsi dire, vous pouvez créer une sorte de big data :) Pour résumer le premier projet , il a fallu environ 3 mois pour le créer, il y a maintenant plus de 14 000 utilisateurs enregistrés, dont beaucoup sont devenus des habitués et étudient des mots étrangers chaque jour. Deuxième projet. Mon objectif était de devenir programmeur Android, alors quand j'en ai eu plus ou moins fini avec le bot, j'ai décidé de l'adapter à la plateforme Android. J'ai commencé à m'entraîner avec le cours startandroid, et mon meilleur ami développeur Android m'a donné beaucoup de tâches intéressantes, les a vérifiées et m'a dit ce qui devait être refait et terminé. Une fois les compétences de base acquises, j’ai commencé à créer ma propre candidature. Comme pour le premier projet, il y a eu de nombreuses difficultés différentes, mais si on le prend dans son ensemble, alors un peu moins. En environ un mois et demi, la première version bêta était prête (j'ai dû réécrire entièrement la conception de l'application à plusieurs reprises, car je n'avais aucune idée de ce à quoi elle ressemblerait). Ensuite, je me suis inscrit en tant que développeur sur Google Play et je l'ai téléchargé sur le marché. Dernièrement, j'ai optimisé et synchronisé mes deux projets. Pour la base de données générale j'ai choisi Firebase - très bonne documentation, beaucoup de cours et pour les petits projets la version gratuite de 1Go de volume est largement suffisante. Si nous parlons brièvement des plus grandes difficultés du deuxième projet (je pense que certaines de ces difficultés surviennent également pour les développeurs expérimentés), alors il s'agit de la création du multi-threading sous Android, de nombreux problèmes avec les tailles d'écran et les extensions, pour créer le design, j'ai dû me lier d'amitié avec Photoshop, prendre en charge les anciennes versions d'Android et ne jamais utiliser Recycler View si vous avez une animation dans votre liste :) Après le blocage de Yandex en Ukraine, et c'est là que j'obtiens la plupart des traductions et des voix- overs de mots, j'ai dû ajouter des vérifications supplémentaires au code et simplement informer les utilisateurs d'utiliser VPN. Des difficultés sont même survenues lors de l'inscription sur Google Play : pour devenir développeur, vous devez payer des frais uniques de 25 $ (contrairement à l'Apple Store). Lorsque j'ai payé, ma carte avait une limite et mon paiement est resté bloqué. J'ai dû parler au support Google et, en général, ils m'ont envoyé d'un opérateur à un autre, jusqu'à ce que je réalise qu'ils m'envoyaient juste poliment :) J'ai dû tout supprimer et me réinscrire (j'y aurais pensé tout de suite ). Encore quelques mots sur la promotion de vos projets.Avec le bot, les choses étaient un peu plus simples - l'idée des bots elle-même est relativement nouvelle (je ne suis pas entré dans le courant dominant, mais ça va quand même). Il existe un répertoire de robots, VK, groupes FB et autres ressources. Désormais, mon bot prend la 5ème place dans la section pédagogique et pour moi c'est un très bon résultat. Pour avancer dans le catalogue de bots, vous devez être évalué. J'ai proposé à l'utilisateur de voter, ce qui n'arrive qu'une seule fois (je n'aime pas moi-même l'intrusion), lorsque l'utilisateur joue à un certain nombre de jeux (comme s'il passait du temps dans le bot). Avec l’application Android, les choses sont bien pires. Je dirai une chose : sans publicité, personne ne remarquera votre application sur le marché, même par mots-clés, puisqu'il y en a des millions. Après avoir synchronisé entre les projets, j'ai annoncé mon application dans le bot. Après cela, j'ai reçu les 14 premiers téléchargements :) Si quelqu'un a lu jusqu'à présent, voici un lien vers l'application, si vous êtes intéressé - l' application Words Android . Le lien vers le bot se trouve dans l'article à ce sujet un peu plus haut dans le texte. Merci à tous pour votre attention. Je vous raconterai mon expérience d'entretien, les questions posées et la recherche d'emploi en général dans la deuxième partie.
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION