Fuel for you OOP non-believers...

For everything that's not in any way related to PureBasic. General chat etc...
USCode
Addict
Addict
Posts: 923
Joined: Wed Mar 24, 2004 11:04 pm
Location: Seattle

Fuel for you OOP non-believers...

Post by USCode »

Straker
Enthusiast
Enthusiast
Posts: 701
Joined: Wed Apr 13, 2005 10:45 pm
Location: Idaho, USA

Post by Straker »

Interesting. Now where is a link for busting the ".NET" myth? That's what I'd like to see!
USCode
Addict
Addict
Posts: 923
Joined: Wed Mar 24, 2004 11:04 pm
Location: Seattle

Post by USCode »

Straker wrote:Interesting. Now where is a link for busting the ".NET" myth? That's what I'd like to see!
As it's posted on MSDN I don't think it "busts" the .NET myth ... but it is an article on the .NET myth! ;-)
http://msdn.microsoft.com/library/defau ... 012004.asp
Straker
Enthusiast
Enthusiast
Posts: 701
Joined: Wed Apr 13, 2005 10:45 pm
Location: Idaho, USA

Post by Straker »

Thanks! I like it! Almost sounds like a plug for Mono, because if you follow his logic, why stay bound to even a specific platform/OS? Mono takes .NET to other platforms.

He was right on the money with regard to CTOs.
I've heard it said by many a CTO in many a technical briefing that, "We're planning to port our whole system to .NET." Why spend 18 months converting your application, so you can arrive at the endpoint you're already at?
Classic. and sadly, so true.
User avatar
GedB
Addict
Addict
Posts: 1313
Joined: Fri May 16, 2003 3:47 pm
Location: England
Contact:

Post by GedB »

Here's a 7 minute view showing off dabble db:

http://dabbledb.com/utr/

Written in Smalltalk, it shows what OO can do.
Dare2
Moderator
Moderator
Posts: 3321
Joined: Sat Dec 27, 2003 3:55 am
Location: Great Southern Land

Post by Dare2 »

Very nice (and useful) links, USCode. Thanks.
@}--`--,-- A rose by any other name ..
naw
Enthusiast
Enthusiast
Posts: 573
Joined: Fri Apr 25, 2003 4:57 pm

Post by naw »

Too true. I learnt BASIC at about 8 or 10 yrs old. OOP still leaves me cold at 37. C++ code is also particularly *fragile* when porting to different systems due to the horrendously comlex dependencies. C code is more self-contained than C++ and tends to port with little trouble.
Ta - N
User avatar
GedB
Addict
Addict
Posts: 1313
Joined: Fri May 16, 2003 3:47 pm
Location: England
Contact:

Post by GedB »

Its horses for courses.

If you are writing a big application with multiple developers you really, really want to have good OO.

If your working on your own, OO can be more trouble than its worth.
User avatar
fsw
Addict
Addict
Posts: 1603
Joined: Tue Apr 29, 2003 9:18 pm
Location: North by Northwest

Post by fsw »

This list is pretty old even if he updates it from time to time.

This guy generalizes too much for my taste.

His whole goal seems to be to promote HIS idea of the holy grail.

:roll:
User avatar
GedB
Addict
Addict
Posts: 1313
Joined: Fri May 16, 2003 3:47 pm
Location: England
Contact:

Post by GedB »

I find he has good criticisms, but his alternative approach is awful.

Take his SQL example.
http://www.geocities.com/tablizer/sqlcrit.htm

He is right to criticise this:

Code: Select all

  select name, lodging, age from worker w where age = 
    (select max(age) from worker where w.lodging = lodging)
    order by lodging
But his 'superior' alternative is this!

Code: Select all

  prev = "[init]"
  open "worker" as w
  addTempColumn(w, "mark", "")        // add a temp, empty column called 'mark'
  scan w order by lodging, age desc   // traverse each record with a loop
     if w.lodging != prev then w.mark = 'X'   // Mark 1st in new group
     prev = w.lodging
  endScan
  select * from w where mark = 'X'
Personally I find the first solution much better. The awkward sub query in the where clause wouldn't be needed if the table was properly normalised.
josku_x
Addict
Addict
Posts: 997
Joined: Sat Sep 24, 2005 2:08 pm

Post by josku_x »

Thanks for the link USCode. Now I am really thinking that PureBasic should not have OOP. Before I read this, I always thought that it would be better to code OOP-ish in PureBasic, but now I just stay back, eat some pizza and enjoy life! :roll:
USCode
Addict
Addict
Posts: 923
Joined: Wed Mar 24, 2004 11:04 pm
Location: Seattle

undecided

Post by USCode »

Yeah, my original post was more of an FYI for those folks here who don't buy into the whole notion of OOP.

Personally I think both have their place depending on the application, team size, project size, etc. In my "real" day job I develop applications with an OOP language on a team with 10+ developers and OOP has it's place there but unfortunately, without a lot of discipline on proper OOP usage, I'm not convinced we're reaping all of the OOP benefits ... I wonder how many large projects actually do...?

Most folks here just try to get their stuff done ASAP and at that point OOP becomes just so much more overhead...
Straker
Enthusiast
Enthusiast
Posts: 701
Joined: Wed Apr 13, 2005 10:45 pm
Location: Idaho, USA

Post by Straker »

As stated many times before OOP can already be implemented in PureBasic. Its primarily a technique anyway. You are already dealing with objects in PB anyway. Isn't a window an object? Aren't width and height object attributes? Aren't HideWindow() and CloseWindow() methods to be acted upon a given object instance?
:?:

// starts flame war and runs for cover...
USCode
Addict
Addict
Posts: 923
Joined: Wed Mar 24, 2004 11:04 pm
Location: Seattle

Post by USCode »

Straker wrote:As stated many times before OOP can already be implemented in PureBasic. Its primarily a technique anyway. You are already dealing with objects in PB anyway. Isn't a window an object? Aren't width and height object attributes? Aren't HideWindow() and CloseWindow() methods to be acted upon a given object instance?
:?:
Well, sorta, kinda, maybe ... actually, not really ...
Straker wrote:// starts flame war and runs for cover...
Ha, you got that right! ;-)
Dare2
Moderator
Moderator
Posts: 3321
Joined: Sat Dec 27, 2003 3:55 am
Location: Great Southern Land

Post by Dare2 »

:D



He objects (as in "I object!") and in this.instance attributes his classy stance to the methodical obsfucation - and increasing complexity - of that which should be kept simple and easy to follow!

Oops. Sorry. Brainfart.
@}--`--,-- A rose by any other name ..
Post Reply