JavaRush /Blog Java /Random-FR /Prendre une vague
Марат
Niveau 1

Prendre une vague

Publié dans le groupe Random-FR
Attraper une vague - 1

Commencer

Il a obtenu un diplôme en droit, mais a toujours été attiré par le monde des zéros et des uns, par le royaume de la ligne de commande et par le quotidien incompréhensible d'un administrateur système. Tout en travaillant comme avocat, j'ai parallèlement appris une nouvelle spécialité (informatique. Programmation et administration des systèmes d'information) et acquis des connaissances théoriques en programmation, algorithmes et structures de données. Un beau jour, l'administrateur système de l'organisation où je travaillais a démissionné et lorsqu'il est parti, il m'a recommandé pour son poste. À ce moment-là, ma vie professionnelle officielle en tant qu'informaticien a commencé - j'ai continué à travailler à temps plein comme avocat et à temps partiel comme administrateur d'un parc d'équipements. Brisant les schémas de certains utilisateurs, il a combiné des profils de travail humanitaire et d'ingénierie. En fait, il n'est pas facile de les combiner non pas à cause de directions différentes, mais à cause de la nature différente de la charge - les utilisateurs ont fait appel à diverses questions, tant juridiques que techniques, et de manière absolument chaotique. De plus, j'ai hérité d'un réseau majoritairement Linux. Par conséquent, des capacités prononcées d’auto-apprentissage et d’élargissement de ses horizons sont importantes dans toute activité. Pour commencer, j'ai esquissé la topologie du réseau, le nombre de postes de travail, de serveurs et les rôles qu'ils remplissent. Par la suite, j'ai dû me plonger dans les systèmes d'exploitation, le shell bash, la délimitation des droits d'accès et bien plus encore. De telles tâches d'« immersion » rapide dans une spécialité établissent un bon rythme de travail, obligeant à résoudre des problèmes inhabituels et jamais rencontrés auparavant.

Réflexions

Après cela, j'ai travaillé dans d'autres grandes organisations au sein d'un département et dans des petites organisations seules, vainquant les « délinquants » invisibles de mes utilisateurs. L'administration système elle-même est très multiforme et intéressante, et il existe de nombreuses opportunités de développement. Vous pouvez vous reconvertir en spécialiste dans l'apprivoisement des systèmes Linux ou Windows, conquérir des bases de données, devenir un maître du routage ou créer tranquillement des sites Web. Cependant, mon cerveau n'était pas rassuré par de telles perspectives et il continuait à chercher quelque chose d'inconnu, mais de très nécessaire. Lors d'une journée de travail peu ensoleillée, on m'a posé une question sur une macro : elle ne fonctionnait plus. J’ai d’abord compris et corrigé le bug qui l’empêchait de fonctionner, mais quelque chose me faisait toujours mal aux yeux. J'ai enveloppé une partie du code dans des boucles, renommé les variables et après avoir lu les manuels VBA (la macro a été écrite dans ce langage), j'ai ajouté un formulaire utilisateur simple avec des boutons d'action. Ayant pris goût, j'ai écrit quelques macros supplémentaires pour les tableaux Excel à la demande des utilisateurs.

Point de bascule ou point de non-retour

Le point critique était de comprendre qu'il est possible non seulement de maintenir des systèmes d'information, mais également de créer des logiciels pour ceux-ci, d'écrire des petites architectures peu automatisées et d'étudier des architectures de systèmes. De plus, en essayant de m'éloigner du style procédural de programmation, j'ai commencé à étudier plus en détail la POO en utilisant Java comme exemple. Pourquoi Java ? Au moment où j’ai commencé à apprendre cette langue, je n’avais pas de préférences particulières dans le choix. J'ai supposé que le langage était répandu, qu'il disposait d'une bonne documentation et d'une bonne communauté, et qu'Android Studio avait été choisi comme environnement de développement. Comprenant déjà maintenant le nombre de fonctionnalités de Java, nous pouvons le considérer comme l'un des langages permettant de comprendre le cycle de développement, les constructions algorithmiques de base, les structures de données et le concept même de POO. Bien sûr, c'est difficile pour les débutants, mais l'étudier en parallèle avec la pratique vous aidera à commencer à utiliser des outils logiciels, à examiner le cycle de développement, à répartir utilement les connexions neuronales et à améliorer votre réflexion.

Quantum de créativité

Attraper une vague - 2
Java en développement pour les systèmes Android est le lien de connexion pour divers composants et modèles, comme une colle logicielle. Je pense qu'il y a aussi de la créativité dans la programmation. Certaines personnes écrivent du code spaghetti, tandis que d’autres recherchent des designs élégants et efficaces. Ayant une école d’art derrière moi, je ne m’attendais pas à ce que cela puisse être utile au développement. En général, le développement nécessite non seulement une cohérence totale et le respect des règles, mais aussi des idées de vie créatives et une pensée non standard. En plongeant dans la jungle de la programmation Android, un seul développeur devient à la fois un écrivain et un architecte de code, un concepteur de vues et de composants personnalisés, un testeur de code et un testeur d'interface utilisateur, un rêveur et un créateur !

Ignorer les difficultés

Si vous avez choisi la programmation, vous n’avez pas choisi la voie la plus simple. Cependant, vous avez choisi une façon intéressante de penser, de vous rapporter au monde, une manière intéressante de vous développer en tant que spécialiste. Que cela vous plaise ou non, la programmation vous développe et vous rapproche un peu plus de vos objectifs. Je poursuis le chemin d'un administrateur système, mais j'acquiers des compétences de développeur et j'écris également une petite application. Je vous recommande de vous essayer à la programmation, cela changera peut-être votre vie. Bonne chance à tous!

Utilitaires

Lors de l’apprentissage d’un langage de programmation, nous ne pouvons pas nous passer de documentation. J'utilise le JLS (Java Language Spécification) , les descriptions des bibliothèques de classes Java et Android et le manuel Material Design. Parmi les volumes, des auteurs célèbres incluent Eckel, Horstmann et Schildt . Les cours ressources Intuit sur le langage Java se sont avérés utiles - Programmation en Java (un cours ancien, mais bien présenté). Javarush donne des conférences sur CS 50, Android. Si, en raison d'une erreur, il n'y a personne à consulter, alors le débordement de ressources et autres.
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION