Skip to main content

Company guides lines for developing the project in real time

 ðŸ‘‰ Real-time project guides lines in my company

Code review comments.

1. Branch name should be aligned to the feature you are developing. Name the branch something like - "Agastya-service"


2. This repository will have just one microservice. You don't need a directory named "SpringBootCurdOperationWithMongoDB".


3. Similarly, the repo name should be Agastya-service

--> your repository name should not have tech stack mentioned, it has to be Agastya-service.


4. DB Url, you have hardcoded in the application.yml. It should be in your local profile. Have profiles created for the application, define it locally, dev, prod. And along with that, create the application-local.YAML, application-dev.yml, application-prod.yml accordingly.


5. In the application.yml define the profile and enable to pick up the profile during the run time. Your run config should have the variable defined for the profile


6. Modal class, instead of student class - create a class "TelemetryEvent" with the following variables.

a. deviceId - PK,String

b. timestamp - timestamp

c. telemetryKey - String

d. telemetryValue - String


7. Never commit any code with commented code. Unless the comment has anything to say to the readers, you shouldn't commit the code with comments.


8. @RequestController - define all the parameters, including the name, value. The base path should be "Agastya" .


9. For each RequestMapping, define the method type and the path. You should be returning a list of telemetry messages, request mapping path should be "telemetry", method = HTTP.GET return type of the method should be <List<TelemetryEvents>> even for a single object. In the parameters, have a parameter to fetch by ID.


10. Don't use setters and getters. Use Lombok library and import them for setters, getters, constructors, parameterized constructors, etc. No boilerplate code at all.


11. Test cases don't do anything. It just starts the application. Have a test class in this case,

a. Create a student, capture the student id. Assert for the student details.

b. find all the students. and filter the student id created. Assert for the ID created and the id in list.

. c. Update the student ID, Assert for the Student ID, and the updates made.


12. Naming conventions have to correct. Do not prefer to start with "_", although it is a convention. Keep close to the objects that you are working on.


13. Graddle config :

. -> group should be "com.technoidentity.agastya"

. -> artifactory = "agastya-service"


14. rootProject.name = 'agastya-service' in settings.gradle


15. README should be in the same folder as that of the project. And the project resources should be the repository.


Comments

Popular posts from this blog

Generate Documentation for Spring Boot API with swagger and Open API 3

 ðŸ˜‚ How to Generate Documentation for Spring Boot API project Make sure your Project having a swagger or open API 3 Dependency then only you get proper Documentation for your Service. ---------------------------------------------------------------------------- Every method or API above you have to Write Like that then only you get proper Documentation If you do everything in your Application and Run your Application and go to browse and search. . http://localhost:8080/v3/api-docs/ if you want to learn more go with this one.  Open API-3   1. For Return List of Object then you have to use this API operation  @Operation(summary = "This will fetch List of Patient Detailas base on Hospital Name") @ApiResponses(value = { @ApiResponse(responseCode = "200", description = "Successfully fetch All Patient Details from Database ", content = {  @Content(mediaType = "application/json" ,array = @ArraySchema(schema =@Schema(implementation =PatientDe...

How can we create Auto generated field or ID for mongodb using spring boot

😂 How can we create an Auto-generated field or ID for MongoDB using spring boot? First Create One Application Like Mongodb_sequence-id-generator Pom.XML org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-data-mongodb de.flapdoodle.embed de.flapdoodle.embed.mongo User.java package com.app; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.Transient; import org.springframework.data.mongodb.core.mapping.Document; @Document(collection = "users_db") public class User { @Transient public static final String SEQUENCE_NAME = "users_sequence"; @Id private long id; private String firstName; private String lastName; private String email; public User() { } public User(String firstName, String lastName, String email) { this.firstName = firstName; this.lastName = la...

What is python | How to understand python easily | What is the use of Python | with example

                                                      😀  What is Python..? 😂