User Tools

Site Tools


naming_conventions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
naming_conventions [2014/02/19 07:34]
yann
naming_conventions [2014/02/20 00:01]
yann
Line 1: Line 1:
 ====== Naming Conventions ====== ====== Naming Conventions ======
 +
 +Following common, consistent naming conventions is essential to ease program comprehension and usage.
  
 ===== Test Projects ===== ===== Test Projects =====
  
-Each project, which are Eclipse plug-in in nature, should come with a test project, which is a Java project in nature. For example, the ''​SAD''​ project comes with the ''​SAD Tests''​ project. Test projects include everything required to compile and run the tests, that means resources too, so they can be big. They use **relative paths** when accessing resources to run on any platform. They are known to compile and run on Windows and MacOS computers without requiring any changes. ​+Each project, which is Eclipse plug-in in nature((To allow integration of the UI into Eclipse JDT)), should come with a test project, which is a Java project in nature. For example, the ''​SAD''​ project comes with the ''​SAD Tests''​ project. Test projects include everything required to compile and run the tests, that means resources too, so they can be big. They use **relative paths** when accessing resources to run on any platform. They are known to compile and run on Windows and MacOS computers without requiring any changes. ​
  
-Any test project includes a class ''​aaa.bbb.test.TestPPP''​ that is the **main test suite**, where ''​aaa.bbb''​ is the main package of the application project and ''​PPP''​ the name of the application project. For example, in the ''​SAD Tests''​ project, there is the package ''​sad.detection.test''​ that declares the class ''​TestSAD'',​ which is the main test suite for the ''​SAD''​ project.+test project ​always ​includes a class ''​aaa.bbb.test.TestPPP''​ that is the **main test suite**, where ''​aaa.bbb''​ is the "main" ​package of the application project and ''​PPP''​ the name of the application project. For example, in the ''​SAD Tests''​ project, there is the package ''​sad.detection.test''​ that declares the class ''​TestSAD'',​ which is the main test suite for the ''​SAD''​ project.
  
 ===== Packages ===== ===== Packages =====
Line 13: Line 15:
 A test project always includes a ''​aaa.bbb.TestPPP''​ class, where ''​aaa.bbb''​ is the main package in the application project, e.g., "​sad.detection.test"​ in ''​SAD Tests'',​ and ''​PPP''​ is the name of the application project, e.g., ''​SAD''​. A test project always includes a ''​aaa.bbb.TestPPP''​ class, where ''​aaa.bbb''​ is the main package in the application project, e.g., "​sad.detection.test"​ in ''​SAD Tests'',​ and ''​PPP''​ is the name of the application project, e.g., ''​SAD''​.
  
-A project that offer an interface to be implemented by a variety of algorithms always has a package ''​aaa.bbb''​ and a package ''​aaa.bbb.repository''​. In ''​aaa.bbb''​ are the interface(s) and the repository to dynamically access the algorithms at run-time. Repositories implements the interface ''​util.repository.IRepository''​ and are ''​final''​. ​For examples: +A project that offer an interface to be implemented by a variety of algorithms always has a package ''​aaa.bbb''​ and a package ''​aaa.bbb.repository''​. In ''​aaa.bbb''​ are the interface(s) and the repository to dynamically access the algorithms at run-time. Repositories implements the interface ''​util.repository.IRepository''​ and are ''​final''​. ​In the ''​aaa.bbb.repository'' ​are the algorithms implementing the interface(s). See the page dedicated to [[repositories]].
- +
-^ Projects ^ Roles ^ Classes ^ +
-''​PADL''​ | Interfaces | ''​padl.visitor.IGenerator'' ​and ''​padl.visitor.IWalker''​ | +
-| ::: | Repository | ''​padl.visitor.VisitorsRepository''​ | +
-| ::: | Accessors ​ | ''​padl.visitor.VisitorsRepository.getGenerators()''​ and ''​padl.visitor.VisitorsRepository.getWalkers()''​ | +
-| ''​PADL Analyses''​ | Interface ​ | ''​padl.analysis.IAnalysis''​ | +
-| ::: | Repository | ''​padl.analysis.AnalysesRepository''​ | +
-| ::: | Accessor ​  | ''​padl.analysis.AnalysesRepository.getAnalyses()''​ | +
-| ''​PADL Design Motifs''​ | Interface | ''​padl.motif.IDesignMotifModel''​ | +
-| ::: | Repository | ''​padl.motif.DesignMotifsRepository''​ | +
-| ::: | Accessor ​  | ''​padl.motif.DesignMotifsRepository.getDesignMotifs()''​ | +
-| ''​POM''​ | Interfaces | ''​pom.metrics.IMetric'',​ ''​pom.metrics.IUnaryMetric'',​ ''​pom.metrics.IBinaryMetric'',​ ''​pom.metrics.IContextDependentMetric'',​ and ''​pom.metrics.IContextIndependentMetric''​ | +
-| ::: | Repository | ''​pom.metrics.MetricsRepository''​ | +
-| ::: | Accessors ​  | ''​pom.metrics.MetricsRepository.getMetrics()'',​ ''​pom.metrics.MetricsRepository.getMetric(String)'',​ ''​pom.metrics.MetricsRepository.getUnaryMetrics()'',​ ''​pom.metrics.MetricsRepository.getBinaryMetrics()'',​ ''​pom.metrics.MetricsRepository.getContextDependentMetrics()'',​ and ''​pom.metrics.MetricsRepository.getContextIndependentMetrics()''​ | +
-| ''​SAD''​ (Code) | Interface | ''​sad.codesmell.detection.ICodeSmellDetection''​ | +
-| ::: | Repository | ''​sad.codesmell.detection.CodeSmellDetectionsRepository''​ | +
-| ::: | Accessor ​  | ''​sad.codesmell.detection.CodeSmellDetectionsRepository.getCodeSmellDetections()''​ and ''​sad.codesmell.detection.CodeSmellDetectionsRepository.getCodeSmellDetection(String)''​ | +
-| ''​SAD''​ (Design) | Interface | ''​sad.designsmell.detection.IDesignSmellDetection''​ | +
-| ::: | Repository | ''​sad.designsmell.detection.DesignSmellDetectionsRepository''​ | +
-| ::: | Accessor ​  | ''​sad.designsmell.detection.DesignSmellDetectionsRepository.getDesignSmellDetections()''​ and ''​sad.designsmell.detection.DesignSmellDetectionsRepository.getDesignSmellDetection(String)''​ | +
naming_conventions.txt · Last modified: 2019/10/06 20:37 (external edit)