... | ... | @@ -3,12 +3,21 @@ |
|
|
## Coding
|
|
|
### IDE
|
|
|
We are using Spring Tool Suite as an IDE for Java development: https://spring.io/tools
|
|
|
See [Development Environment Setup](development-environment-setup) for further information.
|
|
|
|
|
|
### Project naming
|
|
|
The project name should be a complete identifier for the project. For example, the EnOcean Sample Client is developed in the workspace project `at.entrust.enosar.showcase.io.enocean.sample.client`. For more details see: [Eclipse Workspace Naming Convetions](https://wiki.eclipse.org/Naming_Conventions#Eclipse_Workspace_Projects)
|
|
|
The project name should be a complete identifier for the project. For example, the EnOcean Sample Client is developed in the workspace project `org.enosar.showcase.io.enocean.sample.client`. For more details see: [Eclipse Workspace Naming Convetions](https://wiki.eclipse.org/Naming_Conventions#Eclipse_Workspace_Projects)
|
|
|
|
|
|
### Namespace
|
|
|
The default namespace for projects within the core is located under ```at.entrust.enosar```. If you create a new project, just use the namespace within core. For example the project is called *communication* then the code will be located within the namespace ```at.entrust.enosar.communication```
|
|
|
The default namespace for projects within the core is located under ```org.enosar```. If you create a new project, just use the namespace within core. For example the project is called *communication* then the code will be located within the namespace ```org.enosar.communication```
|
|
|
The default namespace for all ENOSAR projects is ```org.enosar```. Depending on what is being developed, a sub package is selected. For core functionality use the package ```org.enosar.core``` or ```org.enosar.mgmt```, for services use ```org.enosar.service```. All internally developed applications from the ENOSAR team will be set to the ```org.enosar.application``` package.
|
|
|
|
|
|
Examples for different packages:
|
|
|
- org.enosar.core.communication
|
|
|
- org.enosar.mgmt.ui
|
|
|
- org.enosar.application.rassa.smartmeter
|
|
|
- org.enosar.service.io.xmpp
|
|
|
- org.enosar.service.messaging.rabbitmq
|
|
|
|
|
|
### Coding conventions - style guide
|
|
|
Every major project has its own style guide: a set of conventions (sometimes arbitrary) about how to write code for that project. It is much easier to understand a large codebase when all the code in it is in a consistent style.
|
... | ... | |