Software Engineering Concepts

Here are a few definitions that every computer scientist and software engineer should know as a strong foundation for programming. 
Encapsulation:  all of an object’s data is contained within the object and access to it is restricted to members of that class.  Variables or fields are usually private and methods or functions are usually public in most object-oriented languages.
Information Hiding:  [...]