September 26, 2014

C++ and OOPS





basic oops concept in c++

OOPs – Object Oriented Programming System
Object-oriented programming (OOP) is a programming paradigm that uses “Objects “and their interactions to design applications and computer programs.

There are different types of OOPs are used, they are
  1. Object
  2. Class
  3. Data Abstraction & Encapsulation
  4. Inheritance
  5. Polymorphism
  6. Dynamic Binding
  7. Message Passing

1) Object : Object is the basic unit of object-oriented programming. Objects are identified by its unique name. An object represents a particular instance of a class. There can be more than one instance of an object. Each instance of an object can hold its own relevant data.
An Object is a collection of data members and associated member functions also known as methods.
For example whenever a class name is created according to the class an object should be created without creating object can’t able to use class.
The class of Dog defines all possible dogs by listing the characteristics and behaviors they can have; the object Lassie is one particular dog, with particular versions of the characteristics. A Dog has fur; Lassie has brown-and-white fur.
2) Class :
Classes are data types based on which objects are created. Objects with similar properties and methods are grouped together to form a Class. Thus a Class represents a set of individual objects. Characteristics of an object are represented in a class as Properties. The actions that can be performed by objects become functions of the class and is referred to as Methods.

For example consider we have a Class of Cars under which Santro Xing, Alto and WaganR represents individual Objects. In this context each Car Object will have its own, Model, Year of Manufacture, Colour, Top Speed, Engine Power etc., which form Properties of the Car class and the associated actions i.e., object functions like Start, Move, Stop form the Methods of Car Class.No memory is allocated when a class is created. Memory is allocated only when an object is created, i.e., when an instance of a class is created.
3) Data abstraction & Encapsulation : The wrapping up of data and its functions into a single unit is called Encapsulation. 
When using Data Encapsulation, data is not accessed directly, it is only accessible through the functions present inside the class.
Data Abstraction increases the power of programming language by creating user defined data types. Data Abstraction also represents the needed information in the program without presenting the details.
Abstraction refers to the act of representing essential features without including the background details or explanation between them.
For example, a class Car would be made up of an Engine, Gearbox, Steering objects, and many more components. To build the Car class, one does not need to know how the different components work internally, but only how to interface with them, i.e., send messages to them, receive messages from them, and perhaps make the different objects composing the class interact with each other.
4) Inheritance :
Inheritance is the process of forming a new class from an existing class or base class. 

The base class is also known as parent class or super class, the new class that is formed is called derived class. 
Derived class is also known as a child class or sub class. Inheritance helps in reducing the overall code size of the program, which is an important concept in object-oriented programming.
It is classifieds into different types, they are
  • Single level inheritance
  • Multi-level inheritance
  • Hybrid inheritance
  • Hierarchial inheritance
5) Polymorphism :
Polymorphism allows routines to use variables of different types at different times. An operator or function can be given different meanings or functions. Polymorphism refers to a single function or multi-functioning operator performing in different ways.

Poly a Greek term ability to take more than one form. Overloading is one type of Polymorphism. It allows an object to have different meanings, depending on its context. When an exiting operator or function begins to operate on new data type, or class, it is understood to be overloaded.
6) Dynamic binding :
It contains a concept of Inheritance and Polymorphism.

7) Message Passing : It refers to that establishing communication between one place to another.

September 20, 2014

Difference between Resume vs CV.



CV vs Resume

CV:
A CV (Curriculum Vitæ, which means course of life in Latin) is an in-depth document that can be laid out over two or more pages and it contains a high level of detail about your achievements, a great deal more than just a career biography. The CV covers your education as well as any other accomplishments like publications, awards, honors etc.
The document tends to be organized chronologically and should make it easy to get an overview of an individual’s full working career. A CV is static and doesn’t change for different positions, the difference would be in the cover letter.
Resume:
A resume, or résumé, is a concise document typically not longer than one page as the intended the reader will not dwell on your document for very long. The goal of a resume is to make an individual stand out from the competition.
The job seeker should adapt the resume to every position they apply for. It is in the applicant’s interest to change the resume from one job application to another and to tailor it to the needs of the specific post. A resume doesn’t have to be ordered chronologically, doesn’t have to cover your whole career like and is a highly customizable document.


Types Of Resume

Chronological Resume:
A chronological resume starts by listing your work history, with the most recent position listed first. Your jobs are listed in reverse chronological order with your current, or most recent job, first. Employers typically prefer this type of resume because it's easy to see what jobs you have held and when you have worked at them.

Functional Resume:
A functional resume focuses on your skills and experience, rather than on your chronological work history. It is used most often by people who are changing careers or who have gaps in their employment history.

Combination Resume:
A combination resume lists your skills and experience first. Your employment history is listed next. With this type of resume you can highlight the skills you have that are relevant to the job you are applying for, and also provide the chronological work history that employers prefer.


Differences:

As stated, three major differences between CVs and resumes are the length, the purpose and the layout. A resume is a brief summary of your skills and experience over one or two pages, a CV is more detailed and can stretch well beyond two pages. The resume will be tailored to each position whereas the CV will stay put and any changes will be in the cover letter.
A CV has a clear chronological order listing the whole career of the individual whereas a resume’s information can be shuffled around to best suit the applicant. I would say the main difference between a resume and a CV is that a CV is intended to be a full record of your career history and a resume is a brief, targeted list of skills and achievements.




Note
How Long Should a Resume Format Be?
  • No more than two pages for most job seekers.
  • Up to three pages for an executive.
  • A gazillion pages(indefinite quantity) or more for academic and scientific CVs.



Cover Letter
What is a cover letter? A cover letter is a document sent with your resume to provide additional information on your skills and experience.
Employers use cover letters as a way to screen applicants for available jobs and to determine which candidates they would like to interview. If an employer requires a cover letter, it should be listed in the job posting.
What is Included in a Cover Letter
A cover letter typically provides detailed information on why you are qualified for the job you are applying for. Effective cover letters explain the reasons for your interest in the specific organization and identify your most relevant skills or experiences.

September 19, 2014

Network Architectures


Network Architectures


A host refers to any device that is connected to a network. A host can also
be defined as any device assigned a network address.
A host can serve one or more functions:
• A host can request data, often referred to as a client.
• A host can provide data, often referred to as a server.
• A host can both request and provide data, often referred to as a peer.
Because of these varying functions, multiple network architectures have
been developed, including:

• Peer-to-Peer
• Client/Server
• Mainframe/Terminal

In a basic peer-to-peer architecture, all hosts on the network can both
request and provide data and services. For example, two Windows XP
workstations configured to share files would be considered a peer-to-peer
network.
Peer-to-peer networks are very simple to configure, yet this architecture
presents several challenges. Data is difficult to manage and back-up, as it is
spread across multiple devices. Security is equally problematic, as user
accounts and permissions much be configured individually on each host.

In a client/server architecture, hosts are assigned specific roles. Clients
request data and services stored on servers. An example of a client/server
network would be Windows XP workstations accessing files off of a
Windows 2003 server.
There are several advantages to the client/server architecture. Data and
services are now centrally located on one or more servers, consolidating the
management and security of that data. As a result, client/server networks can
scale far larger than peer-to-peer networks.
One key disadvantage of the client/server architecture is that the server can
present a single point of failure. This can be mitigated by adding
redundancy at the server layer.

In a mainframe/terminal architecture, a single device (the mainframe)
stores all data and services for the network. This provides the same
advantages as a client/server architecture – centralized management and
security of data

September 18, 2014

BASIC NETWORK TYPES

Basic Network Types



Network types are often defined by function or size. The two most common 
categories of networks are: 
• LANs (Local Area Networks)
• WANs (Wide Area Networks)

A LAN is generally a high-speed network that covers a small geographic
area, usually contained within a single building or campus. A LAN is 
usually under the administrative control of a single organization. Ethernet is 
the most common LAN technology. 







A WAN can be defined one of two ways. The book definition of a WAN is a 
network that spans large geographical locations, usually to connect multiple 
LANs. This is a general definition, and not always accurate. 
A more practical definition of a WAN is a network that traverses a public or 
commercial carrier, using one of several WAN technologies. A WAN is often 
under the administrative control of several organizations (or providers), and 
does not necessarily need to span large geographical distances. 








A MAN (Metropolitan Area Network) is another category of network, 
though the term is not prevalently used. A MAN is defined as a network that 
connects LAN’s across a city-wide geographic area. 

An internetwork is a general term describing multiple networks connected 
together. The Internet is the largest and most well-known internetwork. 







September 17, 2014

what is protocol ?

Protocols are rules that govern how devices communicate and share 
information across a network. Examples of protocols include: 
• IP – Internet Protocol 
• HTTP - Hyper Text Transfer Protocol 
• SMTP – Simple Mail Transfer Protocol 


Multiple protocols often work together to facilitate end-to-end network 
communication, forming protocol suites or stacks. 

 

September 16, 2014

What Is Network ?

What Is Network ?

A network is simply defined as something that connects things together for
a specific purpose. The term network is used in a variety of contexts,
including telephone, television, computer, or even people networks.
A computer network connects two or more devices together to share a
nearly limitless range of information and services, including:
• Documents
• Email and messaging
• Websites
• Databases
• Music
• Printers and faxes
• Telephony and videoconferencing





September 12, 2014

.NET vs JAVA

Java table



JAVA:

“Java” refers to a set of programs and standards originally created by Sun Microsystems, and now owned by Oracle

.NET

The Microsoft .NET Framework is a software framework for developing and executing applications on Windows client and server operating systems. It provides features and functionality that are designed specifically for creating and running applications on the Windows platform, but also supports connectivity with non-Windows systems.



Which is better for future? 

No one can predict the future in the technology domain; because things change here every single minute. As a software engineer / developer - you should *not* stick to any specific language; yet master one that you are currently working on. Let me make it very clear  - You need to be master of at least one and jack of several!  If you have concept of basic progrmmaing language; you should be able to get comfortable with any programming language, tool or framework within short time.

Start with any - and learn it with all the interest and try to be excellent. If you pick up .NET; don't hate Java and vice-versa. If your current job demands C# and ASP; learn it. If you are just starting out with a big IT company that has not told you which profile they will assign to you; it just doesn't matter.Company seeks engineers who are smart learner and can switch to any technology any time.

September 10, 2014

Need of Website


  1. Websites Are Not Just Local, They Are Global.
  2. Websites Never Sleep.  
  3. Your small business will gain credibility.
  4. It will enable you to keep your customer informed.
  5. Websites Help Establish More Customers. 
  6. Websites Improve Customer Confidence & Corporate Image.
  7. It improves customer service.
  8. A website saves your time.
  9. A website makes it possible to target a wider market.
  10. A website saves your money.

September 9, 2014

Difference between C and C++

1. C follows the procedural programming paradigm while C++ is a multi-paradigm language(procedural as well as object oriented)

2. C is a low-level language while C++ is a middle-level language (Relatively, Please see the discussion at the end of the post)

3. In case of C, the data is not secured while the data is secured(hidden) in C++

4. C++ allows the use of reference variables while C does not

5. The standard input & output functions differ in the two languages

6. We can use functions inside structures in C++ but not in C.

7. The NAMESPACE feature in C++ is absent in case of C

8. C++ supports function overloading while C does not

9. C is function-driven while C++ is object-driven

10. C uses the top-down approach while C++ uses the bottom-up approach