Future of Windows software development
-
Just been browsing ZDNet news, and I came across this quote in one of the articles: Other industry pundits are sitting up and taking notice. "Microsoft is, in some ways, throwing everything away—their C++ compiler, COM [component object model], the Win32 API. Those are dead. They are not being enhanced," says Don Box, a co-founder of DevelopMentor, a software think tank that specializes in COM, Java and XML. "The .Net Common Language Runtime is the new operating system for Microsoft. Windows NT has been relegated to the Hardware Abstraction Layer." http://www.zdnet.com/sp/stories/news/0,4538,2711122,00.html I know a few people have been saying that MFC and ATL, etc, are being enhanced, but myself, I can't see this happening. I'd say MS have their sights set on .NET and C# and are ignoring other technologies they've got at the moment. What do other people think? Cheers, Peter
-
Just been browsing ZDNet news, and I came across this quote in one of the articles: Other industry pundits are sitting up and taking notice. "Microsoft is, in some ways, throwing everything away—their C++ compiler, COM [component object model], the Win32 API. Those are dead. They are not being enhanced," says Don Box, a co-founder of DevelopMentor, a software think tank that specializes in COM, Java and XML. "The .Net Common Language Runtime is the new operating system for Microsoft. Windows NT has been relegated to the Hardware Abstraction Layer." http://www.zdnet.com/sp/stories/news/0,4538,2711122,00.html I know a few people have been saying that MFC and ATL, etc, are being enhanced, but myself, I can't see this happening. I'd say MS have their sights set on .NET and C# and are ignoring other technologies they've got at the moment. What do other people think? Cheers, Peter
I have a great deal of respect for Don Box and he usually tells it as it is. Technology moves on. DOS was replaced by Windows, now Windows may be replaced by DOTNET. As a developer of software I'll move with the times just as I have done in the past. However it won't be Microsoft who make me move, it'll be the needs of my customers. If they want DOS apps then I'll pull my Turbo C out of the cupboard, if they want DOTNET.... well I guess I've got some learning to do :-) Michael :-)
-
I have a great deal of respect for Don Box and he usually tells it as it is. Technology moves on. DOS was replaced by Windows, now Windows may be replaced by DOTNET. As a developer of software I'll move with the times just as I have done in the past. However it won't be Microsoft who make me move, it'll be the needs of my customers. If they want DOS apps then I'll pull my Turbo C out of the cupboard, if they want DOTNET.... well I guess I've got some learning to do :-) Michael :-)
Good points. It's just I can't really see .NET being the answer to every solution - certainly I can't see C# being the best language to use (interpreted) for every solution. But as you said, it's up to us to move with the times and what is required. Cheers, Peter
-
I have a great deal of respect for Don Box and he usually tells it as it is. Technology moves on. DOS was replaced by Windows, now Windows may be replaced by DOTNET. As a developer of software I'll move with the times just as I have done in the past. However it won't be Microsoft who make me move, it'll be the needs of my customers. If they want DOS apps then I'll pull my Turbo C out of the cupboard, if they want DOTNET.... well I guess I've got some learning to do :-) Michael :-)
-
Good points. It's just I can't really see .NET being the answer to every solution - certainly I can't see C# being the best language to use (interpreted) for every solution. But as you said, it's up to us to move with the times and what is required. Cheers, Peter
What follows is just my view based on what I've seen so far. .NET isn't the answer to every solution. You won't find device drivers, games and the like being written in it. There will always be a need for C++/C (well at least for the forseeable future) .NET as it's name suggests is for writing internet apps, for connecting people and data across a wider range of devices. Or at least thats probably how it started out but then people started to see other uses. My guess is that .NET will be the building block for the next generation of operating systems. A starting point for building better applications by reusing objects and components rather than making API level calls. Making the hardware invisible, so it doesn't matter if your app is running on a PC, a mobile phone or a set-top box. .NET is just another layer to make our jobs easier, so we can concentrate on our own functionality rather than worrying about keeping track of threads and memory allocation etc. .NET is to Windows what C was to assembler. Just a tool to make writing software easier and quicker. It could turn out to be another silver bullet or possible become the best thing since we got rid of punch cards :-) All I know is that whatever happens it's going to be a fun ride, with lots of cool stuff to play with and learn about and hopefully better applications at the end of it. I don't know about you but that's why I'm in this game. Michael :-)
-
But surely no everthing can be written in .NET, would about applications should as word and SQL server. MS are pushing .NET big time, there're not sure developers will take it on board. I say wait until the dust settles before head for the bunkers.
You have to think about people that develop driver too. I don't think many people are going to be using .NET to develop them. At WinHEC this was asked to the printer driver expert and he said that he could see it happening, but not all drivers will use it. Of course what kind of performance do you think that a .NET based video driver will have in a DirectX game. That would be a big performace hit given the existing .NET performance. Steve Maier, MCSD
-
But surely no everthing can be written in .NET, would about applications should as word and SQL server. MS are pushing .NET big time, there're not sure developers will take it on board. I say wait until the dust settles before head for the bunkers.
I've heard that Word will become .Net, and you will have to subcribe. Office XP will be integrated with .Net. As for SQL Server, and industrial strength app, I can see them having to speak to the system. I've seen some great articles about IOCP recently on the Code Project, but fail to see how .NET will deliver this kind of performance, as it acts as a wrapper for the system below.
-
Just been browsing ZDNet news, and I came across this quote in one of the articles: Other industry pundits are sitting up and taking notice. "Microsoft is, in some ways, throwing everything away—their C++ compiler, COM [component object model], the Win32 API. Those are dead. They are not being enhanced," says Don Box, a co-founder of DevelopMentor, a software think tank that specializes in COM, Java and XML. "The .Net Common Language Runtime is the new operating system for Microsoft. Windows NT has been relegated to the Hardware Abstraction Layer." http://www.zdnet.com/sp/stories/news/0,4538,2711122,00.html I know a few people have been saying that MFC and ATL, etc, are being enhanced, but myself, I can't see this happening. I'd say MS have their sights set on .NET and C# and are ignoring other technologies they've got at the moment. What do other people think? Cheers, Peter
Don Box probably has helped shaping this strategy, a.o. by his contributions to SOAP. Personally, I think .Net is a master move, bold indeed for a large company like Microsoft. However, as with every "paradigm shift", the change won't happen overnight. Microsoft can't afford not to support and even update its legacy for years to come. No big enhancements any more, of course, but enough to allow us to program "the old way" for a long time. And, yes, for systems programming (a niche, let us not forget) .Net will be far, far away.
-
Just been browsing ZDNet news, and I came across this quote in one of the articles: Other industry pundits are sitting up and taking notice. "Microsoft is, in some ways, throwing everything away—their C++ compiler, COM [component object model], the Win32 API. Those are dead. They are not being enhanced," says Don Box, a co-founder of DevelopMentor, a software think tank that specializes in COM, Java and XML. "The .Net Common Language Runtime is the new operating system for Microsoft. Windows NT has been relegated to the Hardware Abstraction Layer." http://www.zdnet.com/sp/stories/news/0,4538,2711122,00.html I know a few people have been saying that MFC and ATL, etc, are being enhanced, but myself, I can't see this happening. I'd say MS have their sights set on .NET and C# and are ignoring other technologies they've got at the moment. What do other people think? Cheers, Peter
Hello, the codegurus around the world. I think that this is simple. After Microsoft throws away C++ compiler, COM and Win API, what means? Make Windows dead! As long as DOT NET is a standard enviornment, Microsoft is a king. Microsoft knows this very well since Windows dominate OS market of PC home user. Probably, Microsoft will target the company enviorment since it has the broadband. PC home user still needs Windows if we don't have a stable broadband. So, for a little while, Windows is still alive.:rolleyes: Have a nice day. -Masaaki Onishi-
-
What follows is just my view based on what I've seen so far. .NET isn't the answer to every solution. You won't find device drivers, games and the like being written in it. There will always be a need for C++/C (well at least for the forseeable future) .NET as it's name suggests is for writing internet apps, for connecting people and data across a wider range of devices. Or at least thats probably how it started out but then people started to see other uses. My guess is that .NET will be the building block for the next generation of operating systems. A starting point for building better applications by reusing objects and components rather than making API level calls. Making the hardware invisible, so it doesn't matter if your app is running on a PC, a mobile phone or a set-top box. .NET is just another layer to make our jobs easier, so we can concentrate on our own functionality rather than worrying about keeping track of threads and memory allocation etc. .NET is to Windows what C was to assembler. Just a tool to make writing software easier and quicker. It could turn out to be another silver bullet or possible become the best thing since we got rid of punch cards :-) All I know is that whatever happens it's going to be a fun ride, with lots of cool stuff to play with and learn about and hopefully better applications at the end of it. I don't know about you but that's why I'm in this game. Michael :-)
Nah! .NET is not just a slower C++ for the internet. It is not a Java replacement nor threat. .NET has two incarnations: 1. The technology part: A Virtual Machine able to interpret many languages in a very speedy way thanks to all the research Microsoft has invested in. C# is just one of the languages, the one that will try to threat Java (although only on Win32), but I guess it will be the one which will run better. 2. The marketing scam: 2 years ago Sun was the dot in .com, so Microsoft came with the original idea of being the dot in .net. Now that .com is out, .net doesn't sound appealing but micosoft has not found a better name for their technology. Sincerely the marketing part sucks, and that is very strange from Microsoft. What happened with their great ideas? Or is it that the Marketing department doesn't get they have a technological marvel in their hands? Win95 was pretty lame in features, but the marketing was excellent. Now they are trying the other way around, very dumb in my opinion.
-
Good points. It's just I can't really see .NET being the answer to every solution - certainly I can't see C# being the best language to use (interpreted) for every solution. But as you said, it's up to us to move with the times and what is required. Cheers, Peter
but C# is NOT an interpreted language. as all .NET lalnguage, it is compiled down to an IL version. then, a JIT-compiler turns that to native code on the target machine. correct me if i'm wrong, of course. -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
-
but C# is NOT an interpreted language. as all .NET lalnguage, it is compiled down to an IL version. then, a JIT-compiler turns that to native code on the target machine. correct me if i'm wrong, of course. -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
-
but C# is NOT an interpreted language. as all .NET lalnguage, it is compiled down to an IL version. then, a JIT-compiler turns that to native code on the target machine. correct me if i'm wrong, of course. -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
Well at a Microsoft conference that I went to in November this question was asked and they presented that can be 3 ways that you can have a program for .NET. The wording is mine, I cant find my documentation from the conference. :( 1. Totally Compiled - this is like today's programs 2. JIT - the IL version gets interpreted when you run the app 3. Compiled JIT - when the app is installed it get compiled by the JIT-compiler into native code for the system and saved as the native code. This way the JIT-compiler is just run once. These ideas could have changed since November. I did not have a chance to go to the .NET talks at WinHEC since I had river talks to go to. Too bad work gets in the way sometimes. Steve Maier, MCSD
-
An Intermediate Language that gets translated to machine code at run-time. Sounds like interpreted to me.:eek:
then you need to learn what "interpreted" means. "interpreted" means that the program is not running as native code but is actually just the input to an interpreting program. a Word macro is interpreted, Word isn't. just-in-time compilation is not "interpreting". it is more like shipping the source to your app and forcing the user to compile it at least, and probably just, once before running it. -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
-
Well at a Microsoft conference that I went to in November this question was asked and they presented that can be 3 ways that you can have a program for .NET. The wording is mine, I cant find my documentation from the conference. :( 1. Totally Compiled - this is like today's programs 2. JIT - the IL version gets interpreted when you run the app 3. Compiled JIT - when the app is installed it get compiled by the JIT-compiler into native code for the system and saved as the native code. This way the JIT-compiler is just run once. These ideas could have changed since November. I did not have a chance to go to the .NET talks at WinHEC since I had river talks to go to. Too bad work gets in the way sometimes. Steve Maier, MCSD
three ways? wow, at least they're keeping it simple ;) -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
-
three ways? wow, at least they're keeping it simple ;) -c ------------------------------ Smaller Animals Software, Inc. http://www.smalleranimals.com
Wow - this thread is a little messed up! =) This is what I know (and has been consistently explained at the Microsoft seminars I have attended the last 6 months). 1) .NET CLR (common language runtime) targetted applications are compiled to IL (intermediate language) during development. 2) Applications are installed in IL form. 3) The IL code is compiled to machine code upon 1st execution in the runtime environment/target machine. 4) This compiled IL code is optimized to the runtime CPU. There are IL compilers specific to every supported x86 CPU type - so you'll have optimized Pentium 2 code on a Pentium 2, and optimized Athlon code on an Athlon. This compiled code is very fast - Microsoft expects the better design of the .NET Framework (wrt to MFC and older libraries) to actually make .NET applications faster than VC6 apps. 5) VB.NET (VB7) and C# will ONLY target .NET. C++ can be compiled to IL ("managed C++") or directly to x86 (just like VC6). Oh, it looks like VB Script is going to be killed off. 6) (this isn't a staement by MS)It appears to me that C# and the .NET CLR are the direct descedents of VJ++. C# mitigates the legal problems, and the CLR mitigates the interpreted language issues of Java and also gets rid of the antiquated design of COM. I think .NET is actually designed to increase developer productivity (probably a first for Microsoft). They have done a great job so far - Beta 1 is a lot of fun to work with. IMO - this is Microsoft's most significant contribution to software development ever. I hope it does well in the marketplace
-
Don Box probably has helped shaping this strategy, a.o. by his contributions to SOAP. Personally, I think .Net is a master move, bold indeed for a large company like Microsoft. However, as with every "paradigm shift", the change won't happen overnight. Microsoft can't afford not to support and even update its legacy for years to come. No big enhancements any more, of course, but enough to allow us to program "the old way" for a long time. And, yes, for systems programming (a niche, let us not forget) .Net will be far, far away.
I suspect that, after the release of VS.Net, these old technologies will be supported much like Win16 was supported in VS - they'll shovel the old, unsupported, development tools onto the install disks. Keep in mind that Microsoft has bet the company on .Net. They have 4 years of development into it and spent over a billion dollars. Also, C# quickly becoming the primary development language in Microsoft now. It is only a matter of time, at least for Windows developers.
-
I suspect that, after the release of VS.Net, these old technologies will be supported much like Win16 was supported in VS - they'll shovel the old, unsupported, development tools onto the install disks. Keep in mind that Microsoft has bet the company on .Net. They have 4 years of development into it and spent over a billion dollars. Also, C# quickly becoming the primary development language in Microsoft now. It is only a matter of time, at least for Windows developers.
-
Just been browsing ZDNet news, and I came across this quote in one of the articles: Other industry pundits are sitting up and taking notice. "Microsoft is, in some ways, throwing everything away—their C++ compiler, COM [component object model], the Win32 API. Those are dead. They are not being enhanced," says Don Box, a co-founder of DevelopMentor, a software think tank that specializes in COM, Java and XML. "The .Net Common Language Runtime is the new operating system for Microsoft. Windows NT has been relegated to the Hardware Abstraction Layer." http://www.zdnet.com/sp/stories/news/0,4538,2711122,00.html I know a few people have been saying that MFC and ATL, etc, are being enhanced, but myself, I can't see this happening. I'd say MS have their sights set on .NET and C# and are ignoring other technologies they've got at the moment. What do other people think? Cheers, Peter
C/C++ isn't going anywhere... what do you think .NET itself is written in? And XP? Personally, I really don't care if they don't update C++, or whatever, as long as it at least continues to function. Be nice to get a newer compiler, but there are alternatives (like intel's 5.0 compiler). I'm just an old C hack that abuses C++ as needed, so all the C++ purists these days dont really interest me. STL? Bleeccchh!! Not that I'm a fan of any language that has a new, and not a delete either :) Jim Wuerch www.miwasoft.com Quote from my readme files: "This is BETA software, and as such may completely destroy your computer, change the alignment of the planets and invert the structure of the universe."
-
But surely no everthing can be written in .NET, would about applications should as word and SQL server. MS are pushing .NET big time, there're not sure developers will take it on board. I say wait until the dust settles before head for the bunkers.