Goodbye, Object Oriented Programming
I find many of the objects in .NET very useful and use them in my code.<p>Also in my code I define and use some classes.<p>I like the idea of classes.  E.g., in my Web pages, I have a class for the user&#x27;s <i>state</i>.  When a new user
connects, I allocate an instance of that class.  Then I send that instance to my session state store server.  To do that, I <i>serialize</i> the class to a byte array and then send the byte array via TCP&#x2F;IP.  The session state store server receives the byte array and <i>deserializes</i> it back to an instance of the class and stores it in an instance of a collection class.  Works great.  It&#x27;s really convenient
to have all the user&#x27;s <i>state</i> in just one instance of one class.  Terrific.<p><i>Encapsulation</i>?  I don&#x27;t know what the OO principles say about encapsulation, but it looks useful to me as a source of scope of names and keeping separate any members  in two different classes that are spelled the same.  So, terrific:  When I define a new class, I don&#x27;t have to worry if the names of its members are also used elsewhere -- saved again by some scope of names rules.<p>Actually, I much prefer the scope of names rules in PL&#x2F;I, but now something as good as PL&#x2F;I is asking for too much!<p>But inheritance?  Didn&#x27;t think it made much sense and never tried to use it.<p>Polymorphism?  Sure, just pass an entry variable much like I did in Fortran -- now we call that an <i>interface</i>.  Okay.  I do that occasionally, and it is good to have.<p>Otherwise I write <i>procedural</i> code, and the <i>structure</i> in my software is particular to the work of the software and not from OO.<p>I couldn&#x27;t imagine doing anything else.<p>I&#x27;ve seen rule-based programming, logic programming, OO programming, frame-based programming, etc., but what continues to make sense to me is <i>procedural</i> programming with structure appropriate to the work being done.  E.g., the <i>structure</i> in a piece of woodworking is different from that in metal working, residential construction, office construction, etc.