Hi Everyone,
I have recently come across these terms in software development and know nothing related to them...I would like to have a grasp of these concepts....can anyone recommend any resources , books, tutorials, lessons, which I can use to learn these concepts.

Also , if you would like to share some knowledge on this subject.