C Board  

Go Back   C Board > Community Boards > General Discussions

Reply
 
LinkBack Thread Tools Display Modes
Old 06-30-2006, 11:54 PM   #1
Super Moderator
 
Bubba's Avatar
 
Join Date: Aug 2001
Posts: 7,813
Is Vista object-oriented?

There have been many attempts by Microsoft to save their aging Win32 API.

They've encapsulated the API using MFC/ATL and for the most part it's object oriented. However the non-object oriented portions of Win32 are quite glaring and annoying and don't fit well into certain OOP paradigms.

They've tried to do objects with their version of Visual Basic, with some success, but overall it's a mess.

They've come up with .NET which is another attempt at doing objects in a non-object oriented API.

So, my question is.....

Are we finally going to get a truly object-oriented API and OS with Vista?

From the looks of it, I'd say no. Comments, please. I'd like to hear opinions as to why an OS should be object oriented and why it shouldn't be. Also I'd like to hear opinions as to what object-oriented paradigm you would follow. C++ is not the only object oriented language out there anymore so creating an OS solely on C++ design's might not be advantageous.

C++ for the most part brought OOP to the forefront. Now where do we go from here?

Last edited by Bubba; 07-01-2006 at 12:00 AM.
Bubba is offline   Reply With Quote
Old 07-01-2006, 12:07 AM   #2
unleashed
 
alphaoide's Avatar
 
Join Date: Sep 2003
Posts: 693
Well, what do I know about MS' timeline but I must say that .NET is amazingly good OO. I've worked with MS products as well, e.g. SharePoint, and objects are all over the place and I must say that their OO API/libraries are intuitive (to me, at least). I must say that MS could easily answer 'Yes' to your question.
__________________
source: compsci textbooks, cboard.cprogramming.com, world wide web, common sense
alphaoide is offline   Reply With Quote
Old 07-01-2006, 12:30 AM   #3
Dump Truck Internet
 
valis's Avatar
 
Join Date: Jul 2005
Posts: 357
The entire os may have been written in java judging from the system reqs of vista...
Sarcasm aside, I think they will just provide a good binding for the common OOP languages, it's not often pointed out but C++ is noticeably amount slower than C and to offer no lower level layer to the system seems like suicide--then again, the bastards are trying to force a new driver model on us again.
valis is offline   Reply With Quote
Old 07-01-2006, 04:35 AM   #4
Cat without Hat
 
CornedBee's Avatar
 
Join Date: Apr 2003
Posts: 8,492
*must ... not ... respond ... to ... C++ ... speed ... claims*

I don't think there'll be a binding for C++. It will still use the good ol' Win32 API. WinFX (now .Net 3.0 - sheesh, they're really eating up those version numbers, aren't they?) is only for Managed languages such as C#, VB.Net and C++/CLI. Unless you use COM interop, in which case you can, at great effort, use it in C++, and with even greater effort in C.

Only a good look at WinFX will tell if it's really object-oriented, but so far they've done quite well in .Net. Not excellent, but quite well.
__________________
All the buzzt!
CornedBee

"There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
- Flon's Law
CornedBee is offline   Reply With Quote
Old 07-01-2006, 01:15 PM   #5
Crazy Fool
 
Perspective's Avatar
 
Join Date: Jan 2003
Location: Canada
Posts: 2,596
Quote:
Originally Posted by alphaoide
Well, what do I know about MS' timeline but I must say that .NET is amazingly good OO. I've worked with MS products as well, e.g. SharePoint, and objects are all over the place and I must say that their OO API/libraries are intuitive (to me, at least). I must say that MS could easily answer 'Yes' to your question.

Thats all well and good, but MS dropped the .NET integration with Vista. They also dropped the Monad developmonet tools and WinFS (the 3 main features that they boasted about). For those who haven't heard. They've also decided NOT to ship WinFS as an update because they can't get it to work propery, you'll only see bits of this technology in their SQl DB. Vista is a new GUI for XP.


@Bubba. Its highly unlikely that vista is anymore OO than previous incarnations of windows. I posted a link to an interview with a top MS developer a little while ago, he explained that they, once again, used the "wild wild west" development methodology with Vista (put a bunch of programmers in a room working on separte pieces with little to no communication, then try to stich it all together at the end). This has been a recepe for disaster for many companies, and MS is just starting to learn this.
Perspective is offline   Reply With Quote
Old 07-01-2006, 01:49 PM   #6
(?<!re)tired
 
Mario F.'s Avatar
 
Join Date: May 2006
Location: Portugal
Posts: 5,654
Hmm... without WinFS why will I want to upgrade to Vista? Having to buy a new computer just to be able to handle it's minimum requirements is already a strain that, quite frankly in this world of Linux as an option, makes little sense.

But the only thing that had any real meaning to Vista as a productive platform is not shipping with it? Gosh... There's a lot of skinning software out there incredibly more cheaper than Vista.

I'm shifting towards C++ at the end of my career in software development. Made some decent money to start my lifelong dream, a small cozy bookstore. Software development will soon be something I do for fun and pleasure as opposed for slavery. I think I will also be shifting to a more... erm... stable, productive and consistent platform...

I just can't keep buying a new computer everytime Microsoft decides to throw a "new" operating system to the streets. Especially when I then get dissapointed. Heck! Windows 2000 is by far a superior OS to Windows XP. If there is something that should be making me buy machines, that something is the software I run. Not where I run the software.
__________________
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.


Mario F. is offline   Reply With Quote
Old 07-02-2006, 01:54 AM   #7
the Great
 
ElastoManiac's Avatar
 
Join Date: Nov 2005
Location: Republika Srpska - Balkan
Posts: 377
Well i can also use any software i want, but not because i'm rich. It's 'cause it's all cracked around here...
Despite that i'm going to use Linux!
__________________
lu lu lu I've got some apples lu lu lu You've got some too lu lu lu Let's make some applesauce Take off our clothes and lu lu lu
ElastoManiac is offline   Reply With Quote
Old 07-02-2006, 05:16 PM   #8
Registered User
 
Join Date: Jun 2004
Posts: 268
Quote:
Originally Posted by MDofRockyView
I live in one of the richest areas in the world and have money to burn so I could buy a new system every year, but I'll just stick with Linux until there is some valid reason why I need to buy a new system with Vista on it.
Where do you live? I wanna move there, any good looking sister / cousing or neighbour?
Maragato is offline   Reply With Quote
Old 07-02-2006, 05:44 PM   #9
(?<!re)tired
 
Mario F.'s Avatar
 
Join Date: May 2006
Location: Portugal
Posts: 5,654
I think he lives in Oman
__________________
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.


Mario F. is offline   Reply With Quote
Old 07-02-2006, 06:00 PM   #10
MENTAL DETECTOR
 
whiteflags's Avatar
 
Join Date: Apr 2006
Location: United States
Posts: 3,292
I don't feel so bad asking this question now. Is there any good reason for an OS to be object oriented? I just have to ask this because most of what the OS does seems procedural in nature.
whiteflags is offline   Reply With Quote
Old 07-02-2006, 06:28 PM   #11
(?<!re)tired
 
Mario F.'s Avatar
 
Join Date: May 2006
Location: Portugal
Posts: 5,654
Anyways, replying to Bubba...

I don't think we will Bubba. Well, it's obvious we won't. Not with Vista at least. Maybe the next one. We got perhaps sidetracked by this talk about WinFS, but the truth is that Microsoft seems to be trying to move forward while still chained to a bloated, ugly and heavy API that clearly doesn't answer today's demands. And maybe, just maybe, that is also one of the reasons WinFS seem to have failed.

MFC was a huge effort, but I doubt it was created to start a shift from the Win32 API. It could have been. But a simple wrapper can't really do that, can it. But the .Net Framework can. In fact I believe that Microsoft effort in having everyone program for the framework has little of a business objective. That is not the major reason in my opinion. It seems to me it's more a somewhat long road they set themselves on, in order to ease the transition on that fatidic day when they announce the Win32 API is dead and no longer supported.

The framework can be changed to suit itself to the operating system specifics without the theoretical need for the programmer to change one line of code whatsoever. If you remember back then when it was still in Beta, Microsoft was announcing it as a cross-platform framework. It could at least be used as such. I think this clearly states the nature of the framework. When enough people, enough software houses, and enough customers, are using the framework as a development and productive platform, it won't be hard for Microsoft to slowly start messing with the internals of their aging API without risking a huge uproar.

In fact, as the framework matures and becomes a de facto standard for windows systems, it won't be much hard for Microsoft to mess with their operating system internals whenever they feel like it. Of course... this will have a huge impact on those deciding not to follow the .Net trend. But I don't think Microsoft will keep the .Net contained for much longer. As it matures, I expect MS to start providing and maintaining .Net libraries for those who still wish to develop with the more traditional tools like C++.

The shift from DOS to Windows 2000 was a mild one. It was made easy with windows 95 and 98 versions. However, I don't think Microsoft has that chance now. I believe they are as eager as anyone of us to get rid of the Win32 API. But they locked themselves too much around it and exposed it too much. Consequently, any change means breaking the old code (as we know, exactly the opposite of the OOP paradigm). Microsoft is well aware of this I'm sure. They want to rectify it, I want to believe. Besides backward compatibility increases the size, cost, and demands more maintenance of an operating system by a significant factor.

The .Net framework has all the ingredients to become a true framework and consequently get us finally rid of the Win32 API. It does have to stop being stuckup though, and open itself to the traditional programming languages, or microsoft risks loosing a strong base of active, "pro-bono", developers who have been along the years one of Microsoft's major source of income with their little (read awsome) tools and gizmos being delivered as shareware or freeware.
__________________
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.



Last edited by Mario F.; 07-02-2006 at 06:40 PM.
Mario F. is offline   Reply With Quote
Old 07-02-2006, 06:36 PM   #12
(?<!re)tired
 
Mario F.'s Avatar
 
Join Date: May 2006
Location: Portugal
Posts: 5,654
Quote:
Originally Posted by citizen
I don't feel so bad asking this question now. Is there any good reason for an OS to be object oriented? I just have to ask this because most of what the OS does seems procedural in nature.
I believe from a developer perspective wanting to code for the operating system, there is, citizen. It provides the developer with an already existing OOP base to expand on, instead of having to start the OOP paradigm within his code.

MFC with it's poorly implemented OOP already shows some of the advantages for those of us who cared to actually use it beyond calling a window.

I think the biggest advantage of using MFC doesn't come of it being (for some) quicker to code. I think it comes because code based on MFC becomes easier to maintain and expand. And yet, it's still not even close to perfection. I can only imagine an operating system that exposes itself entirely in an OOP fashion...
__________________
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.


Mario F. is offline   Reply With Quote
Old 07-02-2006, 08:58 PM   #13
Carnivore ('-'v)
 
Hunter2's Avatar
 
Join Date: May 2002
Posts: 2,866
Doesn't Vista share the same API as XP? AFAIK, the SDK is the same, except Vista includes a few extra APIs (most notable to me was the WLAN api, which I discovered on MSDN but couldn't use because Vista isn't out yet...)
__________________
Just Google It. √

(\ /)
( . .)
c(")(") This is bunny. Copy and paste bunny into your signature to help him gain world domination.
Hunter2 is offline   Reply With Quote
Old 07-03-2006, 12:39 PM   #14
Registered User
 
Join Date: Aug 2001
Location: Newport, South Wales, UK
Posts: 1,094
If you're prepared to turn back time a bit (insofar as running an OS that won't work on a modern PC due to lack of driver support), then IBM's OS/2 is as OO as they come, baby.
SMurf is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
What's a good Object Oriented Strategy for OpenGL/Graphics indigo0086 Game Programming 9 04-03-2007 06:27 PM
object oriented C FlatLost C Programming 4 11-08-2005 06:22 AM
Question on l-values. Hulag C++ Programming 6 10-13-2005 04:33 PM
A question about constructors... Wolve C++ Programming 9 05-04-2005 04:24 PM


All times are GMT -6. The time now is 02:06 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22