Over the past year, I have spent a lot of time and effort in completing my undergraduate degree in Software Engineering. As I have been wor...
Over the past year, I have spent a lot of time and effort in completing my undergraduate degree in Software Engineering. As I have been working with Web systems development for about 10 years, I have logically tended to choose the theme for something that was related to my professional life and added knowledge so that it would help me to align with the market trends and new technologies.
To note the development of software technology has penetrated many industries, including the Swiss watch industry such as Tissot watches and Breitling watches. It was then that I chose a subject that involved the practical development of two identical systems in functionality: one using the most current concepts and technologies (ASP.Net Core 2.0) and the other applying older technologies (WebForms). After and during the development, I carried out a very extensive and detailed bibliographic survey, cataloging good market practices and trends described by reliable sources to analyze the results of the practical work.
The result of the experiment was already expected and obvious in relation to which of the two would present better adherence to the good practices of market, architecture, performance, among other factors. But the secondary objective, which ended up becoming the main one after the completion and completion of the work, was a deep analysis as to what characteristics it would be recommendable for a Web application to have in the current market.
This led me to a deep reflection on several frameworks, proprietary and open technologies that are becoming popular in the market and I came to understand in a more mature way (I hope so) the reason for existing and importance of some of them.
But, now without cursing, we go to the characteristics of modern Web applications with two sections: one speaking of good practices and another speaking in detail of the characteristics themselves.
Good practices and clean code:
It's kind of cliché nowadays a programmer like me writing an article and talking about clean code on a project is important and everything. But, are we (including myself) giving due importance to the subject and treating it with banality? According to the Martin Fowler programming myth, the speed and productivity of a development team eventually dwindle over time if the project is not following good programming practices. We've all been through this and it's always a very big challenge not to let the code deteriorate over time due to time, cost and other factors.
There is a myriad of examples and good practices that could be cited, but below I highlight the ones that I consider the most basic:
To note the development of software technology has penetrated many industries, including the Swiss watch industry such as Tissot watches and Breitling watches. It was then that I chose a subject that involved the practical development of two identical systems in functionality: one using the most current concepts and technologies (ASP.Net Core 2.0) and the other applying older technologies (WebForms). After and during the development, I carried out a very extensive and detailed bibliographic survey, cataloging good market practices and trends described by reliable sources to analyze the results of the practical work.
The result of the experiment was already expected and obvious in relation to which of the two would present better adherence to the good practices of market, architecture, performance, among other factors. But the secondary objective, which ended up becoming the main one after the completion and completion of the work, was a deep analysis as to what characteristics it would be recommendable for a Web application to have in the current market.
This led me to a deep reflection on several frameworks, proprietary and open technologies that are becoming popular in the market and I came to understand in a more mature way (I hope so) the reason for existing and importance of some of them.
But, now without cursing, we go to the characteristics of modern Web applications with two sections: one speaking of good practices and another speaking in detail of the characteristics themselves.
Good practices and clean code:
It's kind of cliché nowadays a programmer like me writing an article and talking about clean code on a project is important and everything. But, are we (including myself) giving due importance to the subject and treating it with banality? According to the Martin Fowler programming myth, the speed and productivity of a development team eventually dwindle over time if the project is not following good programming practices. We've all been through this and it's always a very big challenge not to let the code deteriorate over time due to time, cost and other factors.
There is a myriad of examples and good practices that could be cited, but below I highlight the ones that I consider the most basic:
- Use of meaningful and friendly names in functions, methods, classes, variables, name of folders and etc.
- Use of orientation to objects, following principles S.O.L.I.D and other good practices related to O.O.
- Good planning and implementation of application exception/error handling, which provides an appropriate approach to software programming and security flaws, indicating critical points and opportunities for improvement.
- A good implementation of the application's APIs, because nowadays it is mandatory to think that our system can integrate with other systems at any time. For this reason, the development of APIs that use universal protocols for data traffic is essential.
- Unit testing is something that should definitely be present in our day to day as a programmer (I have to improve a lot in this aspect).
- Always keep in mind that your application may have its scope greatly increased in scope and functionality, and can greatly increase the number of requests it receives. So, however small your Web application may seem, design it with an architecture that allows scalability.
COMMENTS