Parmi eux, il y a de bons articles qui sont organisés de manière concise.
Directives de dénomination du langage Java https://qiita.com/rkonno/items/1b30daf83854fecbb814
Je suis d'accord avec ce qui est écrit ici et je pense que cela devrait l'être. Mais que faire si vous ne pouvez pas penser à un bon nom?
En supposant que vous suivez les conventions de codage de votre projet, nous vous recommandons ce qui suit:
FileOutputStream
Par exemple, considérez le nom d'une variable qui stocke un FileOutputStream
qui est utilisé pour sortir des résultats de traitement.
fos
--- Fos …… ?? Je ne comprends pas. (Je l'ai utilisé il y a longtemps quand je le regrette)fileOutputStream
--- Je connais le type. Je pense que la quantité d'informations est petite pour la longueur.Et jusqu'à présent. Comme le lecteur avisé l'a peut-être remarqué, ** mettre le type dans le nom de la variable n'a pas beaucoup de sens **. De nos jours, il est facile de voir quel est le type de variable dans l'EDI, et même si vous n'utilisez pas l'IDE comme moi, ce n'est pas grave si vous rendez la classe ou la méthode ** assez simple pour voir facilement l'emplacement de la déclaration. .. Les arguments de la méthode sont bien sûr expliqués dans la ** documentation de l'API **, il n'est donc pas nécessaire d'inclure le nom du type dans le nom de l'argument.
Alors, quel est un meilleur nom? Comme mentionné dans l'article ci-dessus, ** je pense que le nom est bon car vous pouvez imaginer le contenu des données en regardant le nom **. Dans mes propres mots, ** donnez-lui un nom qui décrit qui c'est **.
Par exemple
resultCsv
--- Oh, c'est un fichier CSV avec les résultats enregistrés.saleInThisYear
--- Oh, les ventes de cette annéecommandOutput
--- Oh, quel est le résultat de l'exécution de la commande?C'est comme ressentir.
XxxxService
XxxxService
avec une correspondance un-à-un avec XxxxController
pourrait être simplement un service
.Exemple
public class XxxxController {
/**
*Un service qui gère les affaires de Xxxx.
*Puisqu'il s'agit d'une politique d'implémentation à attribuer par injection de constructeur, ici{@code @Autowired}N'attachez pas.
*/
private final XxxxService service;
Je vous serais reconnaissant si vous pouviez introduire dans les commentaires quel type de classe, quel type de champ, quel type de méthode, quel type de variable locale, avec un si bon nom (ou j'ai pensé que c'était incroyable).
Recommended Posts