Créer un environnement de développement d'équipe Java, JavaScript (résolution de problèmes)

Guide des séries

Cet article fera partie d'une série. (inachevé) Je pense à la configuration suivante.

・ Problème soulevant cet article J'expliquerai le contexte et le thème de cet article, ainsi que le dessin terminé.    ・ Construction de l'environnement Gradle-(Publié) Décrit la gestion des versions par gradle et l'intégration de l'environnement de construction java / js.

・ Construction de l'environnement IDE - (non publié) Explique la procédure de construction de l'environnement lorsque le développeur effectue la programmation, le test unitaire et le débogage manuel.

Contexte

Quel type d'environnement utilisez-vous pour programmer?   Parlant d'il y a longtemps, ce langage (ou cet OS) est décidé par cet environnement! J'avais un sentiment comme ça, mais quand j'essayais de savoir comment le faire si je voulais normaliser l'environnement de développement sur le net, je pensais que ce n'était pas le cas ces jours-ci, il est donc difficile d'enquêter à chaque fois. Je vais donc résumer les résultats et les idées dans un article.

Sauf s'il s'agit d'un projet très spécial, j'espère qu'il servira de référence lors de la construction d'un environnement pour de futurs projets de développement. Le contenu de l'écriture est essentiellement pour moi, mais j'espère que cela aide s'il y a des gens qui ont des sentiments similaires.

Domaines problématiques de cette série

Cependant, comme je ne sais que ce que je peux comprendre, je vais prédéfinir le domaine à couvrir par cet article.

Untitled (1).png

Je pense que l'environnement de développement de nos jours a de nombreuses configurations comme le montre la figure ci-dessus. Dans cet article, quel type d'environnement sera construit sur le terminal de développement (propre terminal) montré ci-dessus et dans la zone centrée sur le langage Java / Javascript? Je suivrai la procédure avec le thème.

Approche du problème

Voici une façon de penser que j'ai obtenue à la suite de mes recherches. Bien sûr, je ne pense pas que ce soit la seule réponse, et je ne suis pas sûr que ce soit la plus standard.

Dessin d'achèvement

À la suite de mes recherches pendant ces vacances consécutives, je n'ai pas pu trouver un environnement facile à construire, doté de diverses fonctions et pouvant tout intégrer. Cependant, je ne peux pas conclure cela, alors j'ai pensé à la configuration suivante autant que je pouvais penser.

Untitled (3).png

La première chose à regarder est le fonctionnement de Gradle. D'autres semblent fonctionner comme des alternatives, mais je pense que la facilité d'utilisation et l'espace de gradle sont inégalés par les autres outils de construction, et comme il peut coexister avec fourmi et maven, il est facile de prendre en charge l'héritage. On peut dire que c'est presque la norme de facto.

Vient ensuite éclipse et VS Code. Après tout, le nombre d'utilisateurs d'éclipse est extrêmement important, donc il ne peut pas être coupé, et j'ai l'impression qu'il est étonnamment compatible avec gradle. Quant à VSCode, je voulais réaliser un débogage manuel de javascript avec eclipse si possible, mais j'ai abandonné car je ne trouvais pas de procédure plus facile à installer et plus facile à déboguer à des fins multiples que VSCode. Il existe également un problème de compatibilité avec npm.

disposition de l'espace de travail

Sur le terrain jusqu'à présent, il y a eu de nombreux cas où les projets java et js étaient gérés par svn en tant qu'unité, mais à partir de maintenant, je pense que l'espace de travail doit être considéré comme une unité. Dans cet essai, comme le montre la figure ci-dessous, le concept d'espace de travail est conçu pour unifier tous les environnements d'exploitation. En fonction du travail à ce moment-là, il peut s'agir d'un espace de travail gradle, d'un espace de travail éclipse ou d'un espace de travail VSCode, mais accédez toujours à partir de cet emplacement comme point de départ. Cette structure semble être la plus pratique pour les humains et les systèmes.

Projet de structure de fichier pour l'espace de travail(En supposant un environnement Windows)


/workspace        : gradle, eclipse,Espace de travail commun VS Code
  /.metadata      :paramètres de partage d'éclipse(Partiellement partagé)
    /.plugins     :paramètres de partage d'éclipse(Partiellement partagé)
  /.vscode        :Paramètres de partage de code VS(Partiellement partagé)
    /launch.json  :js définition de la configuration de débogage
  /node_module    :racine du module npm(jasmine-node, karma)
  /gradle         :gradle à la maison
  /libs           :Bibliothèques
    /java         :Bibliothèque référencée par le programme java à développer
    /js           :Bibliothèque référencée par le programme js à développer
    /test         :Bibliothèque référencée par test unitaire
  /site           :Spécifications de l'API, site des résultats des tests unitaires
    /docs         :Spécifications de l'API
      /javadoc    :racine javadoc
      /jsdoc      :racine jsdoc
    /reports      :Résultats des tests unitaires
      /java       : spock,rapport Jacoco
      /js         : jasmine-node,rapport de karma
  /project1       :Accueil du projet(Projet Java temporaire)
    /.settings    :compilateur java,Formateur,Action d'enregistrement de fichier
    /bin          :dossier de classe
    /src          :Code de production(java)
    /spec         :Code de test unitaire(spock)
    /gradle       : gradle-environnement d'exécution du wrapper
    /.project     :Paramètres du projet(projet groovy)
    /.classpath   :Dossier d'origine,dossier de classe,Paramètres de la bibliothèque
    /gradlew.bat  :Construire,Lot pour une exécution de test automatisée
  /project2       :Accueil du projet(Projet Js temporairement)
    /.settings    :Java.paramètres et.Équivalent à une combinaison de chemins de classe
    /bin          :Si vous avez besoin de transpile
    /src          :Code de production(js)
    /spec         :Code de test unitaire(jasmine)
    /gradle       : gradle-environnement d'exécution du wrapper
    /.project     :Paramètres du projet(projet javascript)
    /gradlew.bat  :Construire,Lot pour une exécution de test automatisée
  /build.gradle   :Créez des définitions qui peuvent être appliquées à tous les projets
  /gradle.properties:Si vous avez besoin de propriétés
  /settings.gradle:Énumérer les dossiers de projet
  /gradlew.bat    :Gradle parent-wrapper

J'ai omis des dossiers et des fichiers qui ne sont pas nécessaires pour le partage en équipe, mais juste en développant un projet java et un projet js, la gamme est vraiment bien. J'avais l'intention de réduire le nombre, mais c'est un montant énorme. Il semble inutile de construire et de gérer cela par un travail personnalisé, donc le travail de normalisation semble inévitable. Même s'il parle de normalisation, si c'est cette complexité, le manuel de procédure n'est pas adapté, il convient donc de le systématiser dans une certaine mesure.

Une procédure détaillée sera effectuée la prochaine fois. .. ..

Je suis désolé pour ceux qui attendaient une méthode plus profonde ou concrète. Ça va être long et je suis fatigué, donc je posterai la procédure détaillée de la prochaine fois. Puisqu'il s'agit d'une histoire conceptuelle, elle a peut-être été difficile à transmettre car il ne s'agissait que de phrases, mais si vous le souhaitez, veuillez la lire lorsque le prochain article sera terminé.

2018/07/22 Construction de l'environnement Gradle publié

Recommended Posts

Créer un environnement de développement d'équipe Java, JavaScript (résolution de problèmes)
Créer un environnement de développement d'équipe Java et JavaScript (construction d'environnement gradle)
Créons un environnement de développement Java (mise à jour)
Créez un environnement de développement Java à l'aide de jenv sur votre Mac
J'ai essayé de créer un environnement de développement java8 avec Chocolatey
Environnement de développement Java
Créer un environnement de développement Java sur Mac
Créer un environnement de développement d'applications Web Java avec Docker pour Mac Part2
Créer un environnement de développement pour Docker, Java, vs code
Créer un environnement de développement Spring Boot avec docker
Créer un environnement de développement Java avec VS Code
Mémo de l'environnement de développement Java
[Java] Créer un filtre
Comment créer un environnement Java en seulement 3 secondes
Créer un environnement de développement gcloud sur un conteneur centos8
[Note] Créez un environnement Java à partir de zéro avec docker
Essayez de créer un environnement de développement Java à l'aide de Docker
Créer une méthode java [Memo] [java11]
[Java] Créer un fichier temporaire
Docker x Java Construire un environnement de développement trop simple
J'ai essayé de créer un environnement de développement padrino avec Docker
[Oracle Cloud] Créer un environnement de développement pour OCI Java SDK (Visual Studio Code, Maven, CentOS)
[Eclipse Java] Mémo des paramètres de l'environnement de développement
[Java] [Spring] [JavaScript] [gulp] [webpack] [uglify] Environnement de développement d'applications Private Angular JS
Préparer l'environnement de développement Java avec Atom
Création de l'environnement de développement Play Framework 2.6 (Java)
Créer une base de données dans un environnement de production
J'ai essayé de créer un environnement de développement Spring MVC sur Mac
À propos de l'environnement de développement actuel (Java 8)
Créer un projet Java à l'aide d'Eclipse
Création d'un environnement de développement Java (pour Mac)
À propos de l'environnement Eclipse (Java, Liberty, JavaScript)
Environnement de développement Java (Mac, VS Code)
Installer l'environnement de développement Java sur Mac
Un enregistrement de la configuration d'un environnement de développement Java avec Visual Studio Code
Création d'un environnement de développement pour les applications Web Java avec Docker pour Mac Part1
[Java] Créer et appliquer un masque des diapositives
Créez rapidement un environnement Web à l'aide de Docker
Préparer l'environnement de développement Java avec VS Code
Création d'un environnement de développement Spring Boot dans Vagrant
[Traitement x Java] Création d'un environnement de développement
Créer un environnement de développement PureScript avec Docker
Mémo de construction de l'environnement de développement Java sur Mac
Création d'un environnement de développement Kotlin à l'aide de SDKMAN
Créer un environnement de développement Spring Boot-gradle-mysql avec Docker
[Ruby] Création d'un environnement de développement Ruby sur Ubuntu
Créer une application TODO dans Java 7 Créer un en-tête
Créer un environnement de développement Java 8 avec AWS Cloud 9
Construction de l'environnement de développement Java Spring Boot + Docker
Créer un environnement de développement Wordpress avec Docker
[Note personnelle] L'environnement de développement Java est prêt
Environnement de développement d'applications Java créé dans un environnement VM
Installez Docker et créez un environnement d'exécution Java
Construction d'un environnement de développement simple Docker + Django
Créez un environnement de développement pour créer des applications Ruby on Jets + React avec Docker
Créer un environnement de développement pour Docker + Rails6 + Postgresql
Commençons par Java - Créez un environnement de développement ②