Implementation
In Archway, we choose a range of tools and development environments designed to writing code for the many technologies and application types.
# Development technologies, tools, and languages
| Tech | |
|---|---|
| Tools | Visual Studio, VS Code, SQL Management, Azure data studio |
| Languages | C#, Java, Sql, Javascript, Css, Html,... |
| Cloud | Azure, GCP, AWS |
| Infra | Docker, Kubernetes |
| Technology | Vuejs, Nuxt, JAMstack sites |
Figure 6. Some of the technologies, tools, and languages used during development
# Process
Implement processing:
Code: Break down the tasks, and code.
Testing: Testing have many process such as: Unit test, Integration test, Smoke test.
Review: Check functions and confirm with design.
Deploy: Deployment is an important step that leader can review and feedback. We can also analysis code quality by integration tools like
SonarQubewith CI/CD tools such as Gitlab, Azure DevOps, Jenkin CI/CD.Refactor code: make the code clean and easy to understand to other members.
For example, code before and after refactor:
👉 Before refactor:
public async Task<IActionResult> Delete(string id)
{
await service.DeleteAsync(id);
return NoContent();
}
- A function name is Delete but it is an async method.
- await method not call ConfigureAwait(false).
👉 After refactor:
public async Task<IActionResult> DeleteAsync(string id)
{
await service.DeleteAsync(id).ConfigureAwait(false);
return NoContent();
}
- A function has changed to DeleteAsync
- Added ConfigureAwait(false) in the method.