Repetition is the Key to Success!

01 May 2018

If you want to get good at something, you need to practice and repeat what you practice. The same can be said about software development, just in a slightly different sense. When you code, you probably already follow what is called a Design Pattern. A Design Pattern is a general, reusable solution for a commonly occurring problem in software design. An example of this could be the classes you create, or a template you follow when you create a new file. In web development, you are also most likely using a Model-View-Controller design pattern, or MVC for short. MVC is a means to separate components in your application with the model being your database, the view being the user interface, and the controller being the means of communication between the two.

While having to develop software in my coursework, certain applicable design patterns are noticeable. One example of this is the MVC design pattern. This was used heavily in the Hale Manoa Project that you can view in my project page. The project was the development of an app that needed a database, a user interface, and a means to adjust accordingly based on the two. One example of this might be the use of states in React, where we can conditionally render a page depending on the user’s selections in the interface. This design pattern allowed for work to be done independently of each module, allowing for more efficient development. Another example of design patterns would be that any of the meteor/react applications that were written in my software engineering course utilized a Template design pattern. Rather than starting from nothing, a Template allows for you to have a basis to start from. They consisted of vital components in a web application that would likely be needed in every website. This saved a lot of time as you could use the templates rather than repeating the same lines of code every time you start a project prior to actually working on the project.