Click here to Skip to main content
15,891,033 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
AnswerRe: Why do we still see so much non-OO code written in C#? Pin
PIEBALDconsult13-Oct-18 5:55
mvePIEBALDconsult13-Oct-18 5:55 
AnswerRe: Why do we still see so much non-OO code written in C#? PinPopular
OriginalGriff13-Oct-18 6:25
mveOriginalGriff13-Oct-18 6:25 
GeneralRe: Why do we still see so much non-OO code written in C#? Pin
Roger Wright13-Oct-18 6:43
professionalRoger Wright13-Oct-18 6:43 
GeneralRe: Why do we still see so much non-OO code written in C#? Pin
theoldfool13-Oct-18 10:44
professionaltheoldfool13-Oct-18 10:44 
GeneralRe: Why do we still see so much non-OO code written in C#? Pin
Nelek13-Oct-18 9:19
protectorNelek13-Oct-18 9:19 
AnswerRe: Why do we still see so much non-OO code written in C#? Pin
RandyBuchholz13-Oct-18 10:56
RandyBuchholz13-Oct-18 10:56 
AnswerRe: Why do we still see so much non-OO code written in C#? Pin
Roger Wright13-Oct-18 22:00
professionalRoger Wright13-Oct-18 22:00 
AnswerRe: Why do we still see so much non-OO code written in C#? Pin
kalberts14-Oct-18 23:55
kalberts14-Oct-18 23:55 
Because it was oversold. Or rather: Overdone.

I see (and write) a lot of C# code that is OO in the sense the term was used when OO was first introduced - I know, I was there! I also was there when "structured programming" was introduced. After ten years, everybody had abandoned GOTO and RETURN k (if you don't knwo RETURN k, dig up a Fortran IV manual). You indented loops, you broke the solution down into well defined functions. Today, that is simply how we do it; we do not think of it as "applying structured coding principles".

The academic OO guys developed the concept: Multiple inheritance, virtual functions, interface contracts, iterators, properties, delegates and a whole bunch of addons to the basic OO ideas. If your program doesn't illustrate that you master a minimum of 70% of all the facilities offered by the language, then you are a noob who do not utilize the power of OO Smile | :) .

Plain, original OO, with the addition of a little bit of properties and delegates, maybe even virtual functions, is as everyday totay as while loops and switch constructs, without screaming out loudly: This is advanced OO, don't you see?? People "reject" OO, or rather: do not care to satisfy the requirements for being allowed to call it true OO, because the OO academics make too high demands to let the software pass the OO test.

(We had a similar situation in database theory around the same time as OO was introduced: To make developers design DB tables in an orderly way, the concept of normalizing were pushed: First 1NF, 2NF and 3NF. If it had stopped there, most databases would have been in 3NF today. But then the acacemics pushed on: You must make your DB to be in the fourth Normal Form! And then 5NF, 6NF and even 7NF. By that time, most developers had turned their back to NFs, "Heck, I don't understand the use of this at all!" - and if the DB is 2NF or 3NF today, it is not for the theory, but becase it comes naturally!)

I did OO before OO: In my first university programming course, the professor taught us to define Pascal RECORD types with a set of functions to operate on the fiels of the record. Every one of these functions shold take a record pointer as the first argumnent. So when OO arrived a couple of years later, we had to rewrite "Func(object, ...)" into "object.Func(...)", but otherwise, the code structure was unchanged. (Pascal variant records allowed for polymorphism, and one type declaration could specialize an earlier one.)
GeneralRe: Why do we still see so much non-OO code written in C#? Pin
summiya115-Oct-18 2:43
professionalsummiya115-Oct-18 2:43 
AnswerRe: Why do we still see so much non-OO code written in C#? Pin
Nathan Minier15-Oct-18 1:22
professionalNathan Minier15-Oct-18 1:22 
GeneralUseless IoT item of the weekend Pin
OriginalGriff12-Oct-18 22:09
mveOriginalGriff12-Oct-18 22:09 
GeneralRe: Useless IoT item of the weekend Pin
Sander Rossel12-Oct-18 23:33
professionalSander Rossel12-Oct-18 23:33 
GeneralRe: Useless IoT item of the weekend Pin
OriginalGriff12-Oct-18 23:50
mveOriginalGriff12-Oct-18 23:50 
GeneralRe: Useless IoT item of the weekend Pin
Eddy Vluggen13-Oct-18 0:33
professionalEddy Vluggen13-Oct-18 0:33 
GeneralRe: Useless IoT item of the weekend Pin
Sander Rossel13-Oct-18 0:53
professionalSander Rossel13-Oct-18 0:53 
GeneralRe: Useless IoT item of the weekend Pin
Eddy Vluggen13-Oct-18 1:03
professionalEddy Vluggen13-Oct-18 1:03 
GeneralRe: Useless IoT item of the weekend Pin
Sander Rossel13-Oct-18 22:42
professionalSander Rossel13-Oct-18 22:42 
GeneralRe: Useless IoT item of the weekend Pin
Eddy Vluggen14-Oct-18 0:31
professionalEddy Vluggen14-Oct-18 0:31 
GeneralRe: Useless IoT item of the weekend Pin
Sander Rossel14-Oct-18 1:29
professionalSander Rossel14-Oct-18 1:29 
GeneralRe: Useless IoT item of the weekend Pin
Mycroft Holmes13-Oct-18 12:09
professionalMycroft Holmes13-Oct-18 12:09 
GeneralRe: Useless IoT item of the weekend Pin
Sander Rossel13-Oct-18 22:45
professionalSander Rossel13-Oct-18 22:45 
GeneralRe: Useless IoT item of the weekend Pin
OriginalGriff13-Oct-18 1:27
mveOriginalGriff13-Oct-18 1:27 
GeneralRe: Useless IoT item of the weekend Pin
lopatir13-Oct-18 1:36
lopatir13-Oct-18 1:36 
GeneralRe: Useless IoT item of the weekend Pin
OriginalGriff13-Oct-18 1:49
mveOriginalGriff13-Oct-18 1:49 
GeneralRe: Useless IoT item of the weekend Pin
Richard MacCutchan13-Oct-18 2:21
mveRichard MacCutchan13-Oct-18 2:21 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.