the description of java_design_pattern