Object Oriented Concepts: Polymorphism

When you lookup for the meaning of word “Polymorphism” , you get “many forms” or “ability to take multiple forms”. What does this mean in terms of programming? Here the addition operator is adding two numbers in the first example and in the second it is concatenating strings this is polymorphism. Following is an example…

Design Pattern : Introduction

In our day to day lives as software engineers we encounter recurring conceptual problems, there may be many ways to solve that problem, but How do I go about finding the best  way to tackle it? The answer is Design Patterns. Design patterns are solutions to recurring problems, these are widely accepted solutions by software…

MHz GHz zzzzz…..

Whenever we discuss about any system be it a laptop, a phone, a desktop we are always concerned  about the processor. How many GigaHertz is the processor? Which is the latest in the market? The higher the better?…  But what really is MHz and Ghz? And why is it so important? HERTZ Hz in MHz…

Part I : RESTful API

In this post I will be covering: What is a Restful API Methods / verbs Implementing API calls API’s To explain API, i’ll use the Waiter analogy. Once you go to the restaurant and you are seated, the waiter comes to you with a Menu, Menu is a list of stuff you can order. So…

How efficient is your code – Processor: 32 or 64 bit

In the last post I gave a overview of what processors are, and what are they capable to do. In this post What is 32 bit or 64 bit systems? Which  is better 32 or 64? In the last post  we discussed that the processor does the following tasks: Fetch the  instruction and store it memory…

Part I: How efficient is your code?

Given a problem statement, we tend to find out ways to solve the problem – Our focus is understanding the problem statement and solving it. But are we solving the problem Efficiently is my question. As Software Engineers we don’t just write code, we write an efficient code. When I say “Efficient” I not only…

Object Oriented Concepts: Inheritance

In this post we will be discussing What inheritance is? Why do we need inheritance? Types of Inheritance Inheritance in programming is acquiring attributes or properties from the parent class. With inheritance we can re-use code this helps us to create and maintain applications. Assume you have an application where customer can customize their furniture….

Object Oriented Concepts: Encapsulation

Book definition of Encapsulation is : “Binding of Data as well as Methods to a single unit”, What does it mean? Imagine you are building an online Job Portal and you accept parameters like Name of the User, Age and other demographics. The adds his/her information in your system: Here we are creating a user…

Object Oriented Concepts: Abstraction

To drive a car you need not know the internal architecture of the car or understand How the engine work, Similarly to operate a remote control you need not know the internal circuitry, all you really do it navigate from one channel to another. Our day to day lives have become so simple as we…

Structural Design Pattern: Decorators

As per Wiki structural design patterns are design patterns that ease the design by identifying a simple way to realize relationships among entities. In this post we will discuss Decorators. Decorators, add additional features to object dynamically without using sub-classing Let’s consider an analogy here, our bakery needs some automation, everyday I spend few hours setting up appliances like pre-heating…