 In computer science, a software design pattern is a known solution to a class of problems in programming.In fashion, the pattern is a template used to create any number of similar garments.Nature provides examples of many kinds of pattern, including symmetries, trees and other structures with a fractal dimension, spirals, meanders, waves, foams, tilings, cracks and stripes.