Lessons in Maintainable Code and Backend Systems
This week, we were introduced to the differences between programming and software engineering. There was emphasis on the importance of time, scale, and trade-offs. Programming focuses on writing code, while software engineering is about maintaining and evolving code over time in a sustainable way. I learned that software systems with a long lifespan require practices that account for changing dependencies and collaboration across large teams. Hyrum’s Law seems to have stood out to me. This law shows how users depend on even unintended behaviors of software. The chapter also showed how clean, maintainable code is more important than clever shortcuts, especially for code that’s expected to last for years.
This week we looked at the Spring framework and developed a
REST API that allows customers to register, log in, create orders, and view
their order history. In the first Lab, we focused on setting up the basic
project structure and used Spring Boot. We created entity classes,
repositories, and controller methods. We also learned how to map relationships
between entities like Customer and Order using JPA annotations. Lab 2
introduced us to additional features. We learned how to handle POST and GET
requests properly. We practiced running the application server and using tools
like Postman to test endpoints in real time. We also brushed up on JUnit tests
to verify functionality and ensure the API behaves as we expect it to.
Troubleshooting errors during testing helped me better understand how Spring
handles data flow and error responses. These two labs helped solidify my
understanding of backend development and gave me more confidence working with
Spring Boot.
Comments
Post a Comment