C # reveal (and C # chief designer dialogue)

zhaozj2021-02-17  58

C # reveal (C # CEO interview)

The god of the small gas 2001.08.12

I originally wanted to reprint the interview record of Borland CEO DALE L. Fuller, but found this article and an interview. Compared, I prefer this article about C #, although it is very long but there is such a market, then care about the market, the development direction of your company, special time when Microsoft shows no support and pre-installed JVM After that, Borland will develop a lot of space. This "An Interview with Microsoft Chief Architect Anders Hejlsberg" I want to be more interesting, and some people will be more interested.

The protagonist of this interview record is famous in the Microsoft's famous name, because people currently like him will not exceed 10 in MS (Gates also accounts for one, and is the chief title), before he designed Turbo Pascal, and later leaders participated in Delphi's design work. Maybe we should start paying attention to this person and remember his name: Anders Hejlsberg

I originally wanted to translate it, but I have never turned it, I would rather copy; I think I can't translate such a boutique, and there will be many comparisons and arguments about programming languages. Some sensitive to Chinese developers; if you prefer it, you will interpret it with some feelings of the native language, and you will use some other pessimistic words for you, for each reading People may not be fair. Inadvertently affecting your thinking and reading, there is no intention of arguing about language expedition. Keep it's original, everyone will feel it. However, this article is absolutely worthy of translation, I look forward to it. Thank you this translator.

There are approximately 30 problems in the interview record, told many technical hotspots and opinions, I summed up some things I think, such as:

Is C # Is it Java clone? C # is it used to replace Java? C # is positioned into: the first facing language in the C / C family. There is no enums and pointers in java, and how do you implement and trade out when designing C #? Master's interoperability concept "unsafe code". "Language" and "Runtime", I know that many people are confused when talking about Java. Use a unsafe code with C #, while VB can't. The server-side VBScript, JavaScript is now not running while running while running. The difference and difference between .NET IL and JVM. What is the difference between Java and C # "Namespaces" or both, but different? When you asked the Release time of C #, Net Framework, Visual Studio .NET. Microsoft has submitted C # and CLI to ECMA. Does MS do not intend to control C #, what considerations for MS? Views on COM and C # standardization. "Pure C #", "Pure .Net", views on "Pure Java". Forever hotspots: XML

The following English is the election in the original text, you can review, too much. There is another article "Microsoft .NET vs. J2EE: How do the stack up?" Also comes with. Original URL: http://windows.oreilly.com/news/hejlsberg_0800.html Another URL: http://java.oreilly.com/news/farley_0800.html============= ==============================================

I Think One of the Key Differences Between C # and these Other Languages, Particularly Java, Is That We Tried to Stay Much Closer To C in Our Design

Why Are The Ree? I Mean, What's The Rational For Cutting Those? ENUMS Are Clearly A Meaning ENUMS Are Clearly A Meaning ENUMS Are Clearly A Meaningful Concept In C . We've Preserved Enums In C # and Made Type-Safe As Well.

Just because code is marked "unsafe" does not mean that it is unmanaged. Of course, we're not just throwing in unsafe pointers and leaving people vulnerable to downloading unsafe code over the Internet. Unsafe code is deeply tied into the security system.

We can not afford to rewrite all of our software. The industry just can not afford it, especially now when we're moving on Internet time. You've got to leverage what you have, and so I think interoperability is just key . We focused hard on giving programmers all of the right solutions for interoperating with Internet standards, such as HTTP, HTML, XML, and with existing Microsoft technologies, so you do not fall off a cliff the minute you find that something is not provided by the new .NET environment, or when you realize you want to leverage some existing API or component.We're going to build a platform that actually allows you to implement multiple programming languages ​​and also have them share a common set of APIs ( Application Programming Interfaces). Let's face it, some people like to program in COBOL, some people like to program in Basic, some like C , and some will like C #, I hope. But we're not trying to tell you to forget everything You EVER DID. We're Not Saying, "Now That there only one language, there shall be no further innovations in this race. "We're saying that our industry advances by its flexibility. How did Java come about? It came about because there were programming languages ​​before it and there will be programming languages ​​after it. We want to build a platform where your preference for one language over another does not negate the whole value proposition. We want to create a platform where there can be innovation. Who's helping COBOL programmers today? Who's taking them to the Web? Only on the .NET Platform Can You Embed Fujitsu Cobol in an AS Truly Revolutionary.

Language is a funny thing:. It's a matter of taste Language is almost a religious thing, and it's a lifestyle choice for programmers.In the evolution of languages ​​and frameworks, we always seemed to end up marrying a programming language to a particular API and a particular form of programming. VB was about rapid application development and forms, MFC (Microsoft Foundation Classes) was about sub-classing, and ASP was about putting stuff in web pages. in each case, your choice of programming model always dictated your choice of programming language and your choice of available APIs. It added to your workload the burden of learning new languages ​​and APIs every time you switched frameworks. We have really tried to unify all of that. We provide one API, one supporting visual design tool, And we give you the flexibility to cho..

One of the wonderful things the .NET framework has done for scripting languages ​​is to make them compiled Look at ASP Now, you're actually running real compiled code in your pages;.. It's not late-bound, dispatch look-ups where you do not see a runtime error until the user hits the page. ASP developers can use the full power of Visual Basic .NET instead of VBScript. and for the first time, they have the ability to use Perl, Python, and other popular languages IF the so choose.

I think the approach we've taken with the IL is interesting in that we give you options to control when compilation - or translation, if you will -. Of the IL to native code occurs With managed C , you can actually generate native . code directly from source Managed C can also generate IL, as can C # and VB and when you install your code we give you the option to compile it at that point;. to compile the IL to native at that point, so that when you run it there's no just-in-time compiler overhead. We also give you the option of running and compiling code dynamically, just-in-time compilation. and, of course, having an IL gives you many advantages, such as the ability to move to different CPU architectures and to introduce verifiability in type safety and then build the security system on top of that.I think one of the key differences between our IL design and Java byte code specifically, is that we made the decision up-front to NOT HAVE INTERPRETERS. OUR CODE WILL ALWAYS RUN NATIVE. So, even when you produce IL, you are never running an interpreter We even have different styles of JITs For the compact framework, we have the EconoJIT, as we call it, which is a very simple JIT [Editor's Note:.. .NET Compact is a subset of the .NET framework designed to be ported to other devices and platforms.]. For the desktop version we have a more full-fledged JIT, and we even have JITs that use the same back end as our C compiler. However, Those Take Longer So You Would Time.

Osborn: How Many People Involved in The Development of C #? Hejlsberg: The Language Design Team Consisted of Four People Team Had Another Five Developers.

In terms of the entire Visual Studio and .NET platform group, we are about a thousand-person division. That includes program management, developers, testers, all the build functions, the frameworks, the runtimes, the ASP programming models, and then all of the people like myself, the management overhead.Osborn: What are the planned release dates for C #, the .NET framework, and the next version of Visual Studio Goodhew:? Well, we've brought the technology preview to the 6,500 attendees here AT PDC. wee expect to go to beta sometime in the fall (2000), AND1 We'll Release When Ready. One of the real eXciting things we've Done is Take a Good Solid Look At How The Windows 2000 Launch Release Went and the way we involved key customers in the joint development and the joint deployment process. in the case of .NET framework and Visual Studio .NET, we will again work with customers to determine when the final product is ready to release. We're Going to Let Them Tell Us WHEN The Product IS ready. And, because we've got real customers involved in the process, we should get a much better product in terms of quality. The downside of that is the process then becomes a little indeterminate. This is a fundamental change. We are looking To Hit a Quality Bar for The Release of the Product Rather Than Just Pick An Arbitrary Date And Say We'll Ship.

COM is not a must for standardization of C # and a common language infrastructure. Not at all. C # has a class model that is completely rich, whereas COM is just another view of how applications can interoperate. But there's nothing in C # or the core common runtime that says there must be COM, GUIDS, HRESULTS, AddRefs, or Releases. there's none of that. The .NET common language runtime completely eliminates that. But it gives you great interoperability with COM, which I will continue forever to think is super important for the reason I gave earlier. But it's not a prerequisite at all.As Anders said, COM interop and COM support is critically important to us and to existing Microsoft customers. I think we've done a great job supporting COM on the. NET platform. But people in the industry have been reading too much into our use of the words COM and DLL. They conclude that the .NET platform is for Windows platforms only, and that's absolutely incorrect. and i think that just as COM interop i s important to Microsoft and to customers who are building solutions on Microsoft platforms, a standardization of C # and the common language infrastructure should allow for other implementations to add meaningful interop with any platform on which they choose to implement the language.

Special: The above text involves other people's privacy and personal rights, such as non-authorized or agree, please do not publish, reprint, repost, or other forms of communication. All of the above texts are only used for internal communication, not any news published and commercial purposes. This declaration.

转载请注明原文地址:https://www.9cbs.com/read-31049.html

New Post(0)