PRG/211
April 13, 2013
Introduction
Some of the differences between procedural programming modules and objects are subtle but significant. In a procedural program, modules interact by reading and writing state that is stored in shared data structures.
Yet in an OOP, modules in the form of objects interact by sending messages to other objects. The power of OOP comes from the ability to inherit, encapsulate, and abstract that procedural logic. The importance of OOP is not as much in the language mechanism as it is in the thinking and designing process.
You need to think of state and operations together as an entity, and then design your program as interactions between entities that exchange state and activate operations. OOP then is more of a design philosophy, and if I may say an art, then something with a rigorous definition or hard and fast rules.
Security In Terms Of Hiding Code
There are many ways and methods by which a programmer can hide his code that is developed for commercial or personal use. .NET applications have a high cost and are susceptible to attacks by on unethical traders integrate market as stakes run high in hacking these codes. Thus, .NET Obfuscators play a vital role in protecting these programs. The Merriam-Webster dictionary defines Obfuscation as: to make obscure <obfuscate the issue>: confuse <obfuscate the reader>: To be evasive, unclear, or confusing. It also means to confuse or bewilder.
While making a program in .NET for commercial usages, there are many methods which are used to prevent reverse engineering and unauthorized usage of that particular program. While keeping the code 's functionality intact, the obfuscation methodology changes the coding in such a way that it becomes quite difficult even with tools to reverse engineer. Remember it becomes difficult not impossible to reverse engineer an obfuscated code. There are numerous ways and means to
References: http://stackoverflow.com/questions/530741/whats-the-difference-between-a-procedural-program-and-an-object-oriented-progra ; http://www.merriam-webster.com/dictionary/obfuscate http://stackoverflow.com/questions/5167853/how-to-hide-or-secure-javascript-code-from-client-side; http://www.differencebetween.net/technology/software-technology/difference-between-data-hiding-and-data-encapsulation/ http://uk.answers.yahoo.com/question/index?qid=20100107145333AA9vN0T ; https://en.wikipedia.org/wiki/Procedural_programming#Comparison_with_object-oriented_programming ; http://encyclopedia2.thefreedictionary.com/Code+reuse http://www.answers.com/topic/reusability