Object Oriented Programming
What is OOP?
Object-oriented programming (OOP) is a programming language model organized around objects rather than "actions" and data rather than logic. Historically, a program has been viewed as a logical procedure that takes input data, processes it, and produces output data.
Basic Concepts of OOP?
Abstraction, Encapsulation, Inheritance, Polymorphism
What is a class?
A set or category of things having some property or attribute in common and differentiated from others by kind, type, or quality.
What is an object?
Objects are created from classes. Objects have states and behaviors.
What is polymorphism?
The ability to process objects differently depending on their data type or class. More specifically, it is the ability to redefine methods for derived classes. A polymorphic type is a type whose operations can also be applied to values of some other type.
What is inheritance?
When an object or class is based on another object or class, using the same implementation to maintain the same behavior. Helps the coder: mechanism for code reuse and to allow independent extensions of the original software via public classes and interfaces.
What is encapsulation?
The packing of data and functions into a single component. (Using classes). Allows selective hiding of properties and methods in an object by building an impenetrable wall to protect the code from accidental corruption.
What is constructor?
Used to initialize private fields of the class while creating an instance for the class. A default constructor will be created by the compiler if you don't create one.
A method which is automatically invoked when the object is destroyed. Main purpose is to free the resources (memory allocations, open files or sockets, etc.)
It may or may not include abstract methods. Cannot be instantiated, but they can be subclassed.
Print all the array elements one by one.
Adds an element at the given index
Deletes an element at the given index
Searches an element using the given index or by the value
Updates an element at the given index
Each link of a linked list can store a data called an element
Each link of a linked list contains a link to the next link called Next
A linked list contains the connection link to the first link called First
What is a binary search tree?
A binary tree with a special provision where a node's left child must have a value less than its parent's value and node's right child must have value greater than it's parent value.
What is tree traversal?
A process to visit all the nodes of a tree. 3 ways: In-order traversal, pre-order traversal, post-order traversal.
What is a recursive function?
one which calls itself, directly or calls a function that in turn calls it. Every recursive function follows the recursive properties- base case where functions stop calling itself and progressive approach where the functions tries to meet the base case in each iteration.
What is selection sort?
Divides the data set into two sub-lists: sorted and unsorted. Then it selects the minimum element from unsorted sub-list and places it into the sorted list.
What happens in insertion sort?
Divides the list into two sub-lists, sorted and unsorted. It takes one element at time and finds it an appropriate location in the sorted sub-list and inserts there.
How is insertion sort and selection sort different?
Insertion: works on the current element in hand and places it in the sorted array at the appropriate location maintaining the properties of insertion sort. Whereas, selection sort searches the minimum from the unsorted sub-list and replaces it with the current element in hand.
What is recursive backtracking?
Backtracking reduces the # of possible value assignments that we consider, because it never considers invalid assignments.
Cyber Security + Balbix
Which companies are in cyber security?
root9B, Herjavec Group, IBM, Checkpoint Software
What is cyber security?
Protecting information and systems from major cyber threats.
Exigence? News? Why?
Computer and computer networks are involved in almost every aspect of our lives. Anything connected to the internet is at risk of getting hacked. Internet of Things is an innovation that is really common and useful nowadays. However, it is another area for hackers to penetrate. Internet of Things brings about another vulnerability. This is why cyber security today is so important. We have so much technology that is connected to the internet.