Maison >Java >javaDidacticiel >Quelles sont les 20 % de technologies les plus couramment utilisées par les programmeurs Java ?

Quelles sont les 20 % de technologies les plus couramment utilisées par les programmeurs Java ?

大家讲道理
大家讲道理original
2017-01-24 09:57:24989parcourir

J'ai entendu parler des langages de programmation, et 20 % des technologies qu'ils contiennent sont souvent utilisées. Dans le langage Java, que comprennent ces 20% ? Cela fait deux mois que j'ai participé à la formation, et il me reste encore deux mois. Si je veux trouver un emploi de programmeur Java junior en deux mois, quelles sont les choses que je dois maîtriser et que puis-je faire. apprendre et vendre maintenant ? Quels sont les modules spécifiques d'un projet Javaweb complet, et quelles technologies sont utilisées dans chaque module ?

API couramment utilisées (String, StringBuffer/StringBuilder, etc.)

1. Classe Collection, classe thread

2. écriture pure de servlet, mais il faut comprendre, car de nombreux frameworks sont basés sur l'encapsulation de servlet)

3.json, lecture et écriture xml

4. )

5.demande http (HttpClient)

6 Autres, y compris les frameworks communs, les modèles de conception, les


Programmeurs juniors sachez-les Ensuite, vous pouvez écrire le projet. Les problèmes rencontrés ultérieurement seront beaucoup plus complexes et dépendront de l’accumulation d’expériences et de connaissances diverses.

En plus des 20% que vous devez maîtriser, quelles connaissances devez-vous maîtriser pour pouvoir le faire avec aisance ? Permettez-moi de parler des choses avec lesquelles j'ai été en contact (utilisées).


Java est célèbre pour son riche écosystème d'applications distribuées, et il ne peut échapper à la décision CAP dans les systèmes distribués. Apprenez à connaître certains protocoles de cohérence distribués paxos, raft, etc. Apprenez les principes et les scénarios d'utilisation de zookeeper (métadonnées, verrous distribués, leaderEletion... etc)

Le framework RPC joue un rôle important dans l'architecture SOA Il est toujours bénéfique de l'étudier attentivement Je recommande celui d'Alibaba. ici le framework Dubbo, ainsi que les bibliothèques réseau telles que Netty et Mina

Série Hadoop Storm Spark et d'autres frameworks informatiques en temps réel hors ligne

Les éléments liés aux journaux ELK de recherche distribuée ElasticSearchSolrCloud sont plus sensibles à ceux-ci, bien sûr, il y en a plus Il existe de nombreux scénarios dans lesquels ES est utilisé

File d'attente des messages kafkaMetaQ RabbitMQ Eh bien, hier, l'auteur de ZeroMQ (pas complètement compté comme MQ) a choisi l'euthanasie. >

Ensuite, il existe diverses connaissances de base, les langages de programmation, les aspects réseau, les bases de données, les structures de données et les algorithmes. Ne pensez pas que vous maîtrisez l’un d’entre eux. J’ose dire qu’il y a quelques Zhihu qui le maîtrisent.


Le programmeur Xiaobai a rejoint l'entreprise en juillet 2015. Elle est en pleine croissance et n'est peut-être pas exacte. Je ne partagerai que le processus de croissance actuel

Mai 2015 Bai. (avec une formation en C), parce qu'il n'était pas intéressé par sa spécialisation universitaire, il s'est entassé dans l'apprentissage de Java pendant plus d'un mois. Depuis qu'il a rejoint le développement JavaWEB, il a travaillé sur deux grands projets et développé n fonctions de manière indépendante (les grands) Vous. je me moque de moi), je n'ai pas encore entendu la déclaration de 20 % mentionnée par l'intervenant.


Parlez-moi de vos sentiments. Lorsque vous commencez à travailler, vous ne devriez pas être autorisé à démarrer de nouveaux projets de manière indépendante, mais devriez être autorisé à suivre les projets en cours de développement


1. Apprenez à utiliser Eclipse, svn et d'autres IDE et outils (inutile de dire que cela dépend principalement de l'endroit où vous travaillez. Par exemple, si vous utilisez Eclipse, vous pouvez utiliser IntelliJ IDEA, mais vous devez Je ne comprends pas grand-chose lorsque vous commencez à travailler. Ne soyez pas non conventionnel pour l'instant. Si vous avez des questions, n'hésitez pas à les poser. Bien sûr, vous êtes un maître de l'IDE, alors ignorez-le)

.

2. Si vous venez de rejoindre le poste et que vous ne pouvez pas vous lancer dans le travail de base, faites-le-moi savoir. Changez d'abord la page ou quelque chose du genre. En tant que développeur Web, vous n'avez pas besoin d'être compétent. en HTML, CSS et JavaScript. Vous devez au moins comprendre l'utilisation et la syntaxe. Bien qu'il existe des ingénieurs front-end, vous devez comprendre cela (la petite équipe de projet de mon entreprise, tout le monde est obligé de le faire). JavaScript est en fait très puissant, mais vous n'avez pas besoin de l'écrire très profondément au début. Il existe de nombreuses roues qui peuvent être utilisées, comme easyui. Comme l'a dit @王大 Fat, il vérifiera les documents officiels et connaîtra les. utilisation, intégrez-le dans la page Web, puis formatez les données en arrière-plan. Transmettez-les simplement à la réception.


3. Ensuite, j'ai commencé à écrire progressivement en arrière-plan et je me suis familiarisé avec les modèles de conception. S'ils sont trop nombreux et difficiles à comprendre, vous pouvez d'abord comprendre les modèles de conception. modèle d'usine, écrivez une interface, puis utilisez-en une ou plusieurs. Chaque classe d'implémentation implémente cette interface. Si nécessaire, déterminez quelle classe d'implémentation utiliser en fonction des besoins. (Je n'ai pas compris l'utilité de faire cela d'une manière aussi compliquée au début, mais depuis que la base de données du dernier projet est passée d'Oracle à MySQL, je sais que c'est en fait très utile.) Les modèles de conception sont généralement utilisés dans développement du projet. Si vous ne le comprenez pas, vous ne pourrez peut-être pas le comprendre. Il n'y a aucun moyen de commencer par la structure de l'ensemble du projet.


4. Différentes entreprises utilisent des cadres différents, mais les entretoises et les ressorts sont encore utilisés plus souvent, il est donc préférable de se familiariser avec ces deux choses, sinon vous pourriez ne pas le faire. Je ne connais même pas la structure de l'ensemble du projet. Sans parler de l'écrire moi-même, il est même difficile de le modifier. Par exemple, comment configurer les sauts de projet et quel fichier de configuration représente quoi. (Après avoir commencé à exécuter le projet localement, je ne savais même pas où se trouvait la page d'accueil et quel fichier était saisi. J'ai continué à chercher index.jsp puis j'ai réalisé que le projet avait été réalisé avec freemarker et qu'il s'agissait d'un fichier ftl)


5. Les projets Web doivent exploiter des bases de données. Le projet sur lequel je travaille n'utilise pas hibernate. Il utilise principalement StringBuffer pour épisser SQL. SQL doit encore être comparé. Le petit frère qui m'a guidé a dit que SQL est si puissant qu'il n'y a rien que SQL ne puisse accomplir.



6. J'ai l'impression que ceux qui font sont avancés les algorithmes de conception de projets Web ne peuvent les rencontrer que s'ils sont plus avancés, il s'agit davantage d'opérations sur des chaînes et des formats numériques, comme comment extraire des données de la base de données vers la réception en arrière-plan et les afficher, et comment les faire. enregistrez les données saisies par l'utilisateur dans la base de données, il est donc préférable de se familiariser avec les opérations de chaînes, de fractionnement et de fusion, de chaîne en flottant, d'int, etc., de format de date, etc.


Si l'entreprise dispose d'une exploitation et d'une maintenance professionnelles, laissez-lui simplement le déploiement du serveur. Sinon, il est préférable de se renseigner sur les connexions à distance et quelques choses simples sur Linux. Commandes, tomcat, etc.


Tout d'abord, je ne sais pas comment comprendre les 20% évoqués par l'intervenant. Ensuite, j'énumérerai les techniques que j'ai souvent utilisées dans mon travail au fil des ans.


1.html, css

2.principe de fonctionnement de Java (jvm)

3.syntaxe, structure de données et algorithme de Java

4.fonctionnalités du langage Java (encapsulation, héritage, polymorphisme, abstraction)

5.modèle de conception Java (souvent utilisé en développement)

6.mécanisme de réflexion Java (mécanisme de réflexion est utilisé dans les frameworks courants)

http://7.io (lecture et écriture de fichiers)

8 Multi-threading

Programmation réseau

10.javascript

11.jquery

12.Base de données (oracle, mysql, etc.)

13.servlet

14.JDBC

15.javabean

16. Architecture en couches du projet WEB

17 Interaction front et backend

18.ajax

19. et principes de filtrage

20. Frameworks couramment utilisés (Struts, hibernate, spring, springMVC, i/mybatis)

21. Intégration du framework

22. mécanisme)

23.xml, propriétés, json

24 Pages communes et plug-ins d'arrière-plan (arbre, heure, poi, etc.)

25.base de données nosql. Et scénarios d'application (mongoDB)

26. Base de données et mécanisme de cache (redis, memcached)

27. Appel d'interface tierce

28. > 29. Serveur d'applications Web (tomcat, weblogic)

30.linux

31. Journal

32. Pool de connexions à la base de données

33.maven

34.svn

35. Utilisation d'outils de modélisation (powerdesiner, axure)

36.TCP/IP

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn