Паттерны - это готовые решения для определенного типа задач. Под концепцией понимается правильный подход к программированию, это очень широкое понятие, начиная от наименования переменных, заканчивая зацеплением и связанностью, т.е. все то, что делает код понятным, легко расширяемым и сопровождаемым. И, разумеется, концепций может быть несколько, т.к. разные люди выберут разные пути, но большинство основополагающих вещей все равно будут совпадать.