OOP Simulation

 

DoubleS is a new programming paradigm, so it's full replacement for OOP (Object Oriented Programming), but OOP is a result of a good though and OOP is suitable for a lot of applications with different complexity levels so when inviting new programming paradigm like "DoubleS" it's expected to take OOP ideas in mind, so here we find OOP with new skin (Embedded OOP) suitable with the new paradigm which is based on simulation.

 

If you familiar with OOP, you know what is (Classes, Objects, Polymorphism, Inheritance, Encapsulation, Composition & Design Patterns).

 

All of these concepts are presented with Pure OOP languages and we used to use its power in our projects from long years.

 

Embedded OOP presents all the concepts of Pure OOP where you can create Classes & Objects which mean Encapsulation and Polymorphism; also you have support for Inheritance & Composition and the using of OOP design patterns is possible.

 

Embedded OOP is not only representation for OOP, its new though based on that

"Classes are treated as Objects, Can be Created, Manipulated and deleted during Runtime"

I think its shock for you, and you may ask

 

Classes are the factory of Object, if Classes are treated like objects, what is the factory of class?

 

Simply the Server is the Factory of Class

 

Also there are another change, this change lies in the way that how classes defined?

 

Classes are a group of Attributes and Methods packed together, in Embedded OOP through DoubleS Paradigm the attributes are determined using Sub Shell and the Methods are determined using a Branch.

 

 

Encapsulation

 

Object Oriented Programming (OOP) uses the concept of encapsulation where data (Attributes) and Methods are encapsulated together inside the Class

 

Now DoubleS Paradigm presents more of encapsulation, it's "FREE ENCAPSULATION" where data (Attributes) and Methods are encapsulated together inside class but the definition of data still free and isolated inside sub shell, the same with methods which are free as resistances inside branches.

 

Also there is more encapsulation, where classes are encapsulated together inside the Server.

 

Polymorphism

 

Polymorphism in Embedded OOP is the same as in Pure OOP, but in general DoubleS Paradigm presents the concept of Polymorphism at different places (Electrons, Sub Shell, Shell, Resistance and Branch).

 

The concept of Dynamic Classes

 

Classes in Embedded OOP is so different from classes that we know in Pure OOP, Classes in Embedded OOP has new advantage, it's Dynamic Classes where it's Structure (Attributes) can be changed after creating the class and after generating Objects from the class.

 

Domain (OOP Simulation)