[JAVA] J'ai essayé l'analyse du code source

Déclencheur

Faisons un calendrier de l'Avent cette année au Département universitaire auquel j'appartiens! On m'a demandé de participer, alors j'ai également participé. (Voir ici pour les articles d'autres membres) ... J'ai donc réfléchi à ce qu'il fallait faire, mais je voulais juste présenter ce que je fais maintenant, alors j'ai décidé d'écrire sur l'analyse du code source Java. Veuillez noter que le but de cet article est d'analyser le code source lui-même plutôt que le langage Java.

Aperçu

Cette fois, comme le titre l'indique, nous analyserons le code source, mais comme mentionné ci-dessus, la cible de l'analyse est le langage appelé Java. Nous analyserons le code en utilisant Eclipse, qui est un célèbre IDE, et un plug-in pour créer AST (Abstract Syntax Tree), qui est un arbre de syntaxe (la procédure détaillée est ici. Il est également décrit sur le site osaka-u.ac.jp/~s-kimura/jdtdoc/jdt.html).

Diagramme de classe

Voici un diagramme des relations de classe. クラス図.png

Ce sera un diagramme assez simple, je voudrais donc l'élargir davantage à l'avenir.

Courir

Pour le moment, comme résultat de sortie, nous avons pu sortir les informations de chaque décorateur.

Perspectives d'avenir

En utilisant ce résultat, j'ai finalement analysé le code source et découvert «Il existe des méthodes privées et des méthodes publiques, mais dans quel ordre les développeurs développent et définissent ces méthodes. Je voudrais l'analyser.

finalement

J'ai écrit ceci parce que j'ai un calendrier de l'Avent, mais c'est très simple parce que je n'ai pas le temps. Veuillez consulter Ma Page sur "GitHub" pour l'avancement des projets futurs.

Puis (・ ω ・) Noshi

Recommended Posts

J'ai essayé l'analyse du code source
J'ai essayé l'analyse morphologique avec MeCab
J'ai essayé de migrer le traitement vers VS Code
J'ai essayé Spring.
J'ai essayé youtubeDataApi.
J'ai essayé de refactoriser ①
J'ai essayé FizzBuzz.
J'ai essayé JHipster 5.1
J'ai essayé d'exécuter Autoware
J'ai essayé d'utiliser Gson
J'ai essayé QUARKUS immédiatement
J'ai essayé d'utiliser TestNG
J'ai essayé d'utiliser Galasa
J'ai essayé node-jt400 (Programmes)
J'ai essayé node-jt400 (exécuter)
J'ai essayé node-jt400 (Transactions)
05. J'ai essayé de supprimer la source de Spring Boot
J'ai essayé d'appeler du code natif Java / Objective-C depuis Flutter
J'ai essayé node-jt400 (Construction de l'environnement)
J'ai essayé DI avec Ruby
J'ai essayé node-jt400 (écriture IFS)
J'ai essayé node-jt400 (mise à jour SQL)
J'ai essayé d'utiliser azure cloud-init
J'ai essayé la machine Spring State
J'ai essayé Drools (Java, InputStream)
J'ai essayé Rails débutant [Chapitre 1]
J'ai essayé d'utiliser Apache Wicket
J'ai essayé node-jt400 (requête SQL)
J'ai essayé le problème FizzBuzz
J'ai essayé node-jt400 (flux SQL)
J'ai essayé node-jt400 (lecture IFS)
J'ai essayé Rails débutant [Chapitre 2]
J'ai essayé UPSERT avec PostgreSQL.
J'ai essayé de toucher JavaScript Part.1 Système de code de traitement de base
J'ai essayé BIND avec Docker
J'ai essayé de vérifier yum-cron
J'ai essayé l'outil d'analyse de bogue de parallélisme Java de Facebook "Racer D"
J'ai essayé d'utiliser le gestionnaire de téléchargement de fichiers open source d'Android Fetch
J'ai essayé la métaprogrammation avec Java
Lors de la lecture du code source
J'étais curieux de savoir comment fonctionne gRPC-Java, alors j'ai essayé la lecture de code
J'ai essayé de générer une source de programme en langage C à partir de cURL
J'ai essayé l'IoT low code avec OKI AE2100 et Node-RED. Partie 2 Construction
J'ai essayé d'utiliser anakia + Jing maintenant
J'ai essayé le didacticiel Angular + SpringBoot + PostgreSQL
J'ai essayé de mâcher C # (indexeur)
J'ai essayé quelque chose qui s'appelle la recherche récursive
J'ai essayé d'utiliser Spring + Mybatis + DbUnit
J'ai essayé d'utiliser JOOQ avec Gradle
[K8s] J'ai essayé la communication entre les pods!
J'ai lu la source de ArrayList que j'ai lu
J'ai lu la source d'Integer
J'ai essayé d'interagir avec Java
J'ai essayé la communication UDP avec Java
J'ai essayé d'expliquer la méthode
J'ai essayé de mettre Domino11 dans CentOS7