Create your outline

31 Aug 2018

Design pattern and definition

The question to start with is what is design pattern? The answer that everyone will jump to is the patterns that you would see in something like a painting. However, programming does not look at it as a visual aesthetic but as an outline of what the classes/file might be. It is tedious to draw boxes with texts that have lines or arrows that indicate connection but it may be just the thing you need to work out what people will do in a project. Does this mean every part of the project will be like this? Not really because there may be complications or changes to the actual program and it may be different from the initial projections everyone thinks of.

What design patterns do I use?

I always like to start with questions that are relevant to what I need in the software and what is my initial idea for what the software will look like. The first thing you do is to have a name. This may seem like something stupid but starting with an easy to call and recall name for your files is something that you would want to have with multiple files, therefore, it needs to be about the project and its name. Next, I think about what that file will be doing, what I need to import for the file, and a general outline of what functions and variables that I think will be in the file. Before I make the file, I look it over and think about anymore connections or double check the design pattern, checking for any mistakes or missing items.

What is the point of design patterns?

Outlines of anything that you write is an amazing tool that can help you to organize and bring some cohesion. When you first start out, it looks like a list that may not be connected but once you start to look over that list and organize it, its like cleaning up a messy room. However, just because its a great tool does not mean you have to use it for every little thing. You don’t bring a paint roller to paint a small object. This analogy fits in with not using a big tool for a small task or even the fact that creating an outline to make the output of the code say “Hello World” should not be a highly sophisticated processes, in modern coding languages, to warrant a full project on how to code it.