Net was late. But I finally think I should talk about the future of .NET. The reason is very simple, I now receive almost 50 email inquiry. Net's future and other technologies, what is it? The advantage. So here, I will introduce my personal view of this technology future development.
I will start from the expectation of the developer and end with the point of view of the company (software industrial enterprise).
All right!
When a developer began to develop a software, he asked or needed:
1. Appropriate programming language knowledge to write business logic
2. Database knowledge to store his data
3. Tools that connect business logic to the database in distributed environments
4. Know how to pack the app
5. If you need to provide user transparency on the client, you need to develop web solutions.
6. I hope some components to multiplexed their hard work or other people's efficient solutions.
7. I hope to complete the update client's task through the logic of the script or server side.
8. I hope to authorize a group to reuse your components to promote your business or work.
9. I hope to provide a simple user interface
10. I hope to avoid the trouble of building a web page you already.
There are still a lot of ... (I can't include or discuss all aspects because all these things are different from those of them)
But I think the 10 points mentioned above should be all serious developers to consider. So, in terms of technology, before .NET coming, we know that the solution to these issues is: ** Here I assume you I hope to select one from the list of all possible options and I will only provide the name of these popular technology.
1. Appropriate programming language knowledge to write business logic: C, C , and Java.
2. Database: Oracle, SOL Server, etc.
3. Tools that connect business logic to database components in distributed environments: CORBA, RMI, DCOM, etc.
4. Package the distribution application: installer (independent), binary files, then final registration components
5. Provide online solutions: HTML, DHTML, CSS, and XML, etc.
6. I hope to use software reuse mechanisms: Java Beans, COM, etc.
7. Client Update: Java Script, JScript, Applets, etc., and server-side logic: Perl, ASP, PHP, etc.
8. Components Offers: Physical copy and registration components or access through server
9. Simple user interface: VB, VC , GTK, etc.
10. Reusable Web components: There is currently no popular software in the industry.
For example, I used to use my development environment: C , SQL Server, DCOM, HTML, COM, JScript, ASP, Server, and Client Registration Utilities, VC , GTK (on Linux) and XML. So I encountered The problem is that I need a long time to learn these technologies and almost every time I doubt whether these technologies can spread or can survive. I don't say that all developers have to learn all the technologies, but they can Faster, if you want to design new and creative things, then you must have a good understanding of at least one of the things we discussed above, and what you do this is true of this industry leader. .
However, for .NET, Microsoft rely on several technologies that have several techniques with significant boundaries in a package. Means that you have all things but will not confuse them.
So if you start learning .NET, everything you need to learn is:
Main technology: C # (VB.Net is also a good choice)
ASP.NET
XML.
There are only three kinds .................. Yes!
C # can be used to write the script for client updates, create business logics, do server-side programming, write Windows applications, write console programs, make component design, and it can use XML as data, metadata (data) , Commercial logic and database connectivity tools, but you need ADO.NET C # implementation, and further if you want to release something to the Internet, you need to install ASP.NET on the server, if you want to create reuse Web components, you need the concept of Web Services, just like VC developed Windows Services, but there is no physical limitations.
Only one language, we can use it in almost every place. There is no more confusion ... Yes! There is no COM / DCOM waste system main memory component registration process has no system authorization allowance process (Except for some special circumstances).
So this is a high degree of success from the perspective of programmers or developers.
Now let us think about it from the company (Of course! I discussed here is a small company, they work in a separate project). For example, a company recruits four VC programmers because their project will develop, But in the later 6 months they got a project developed with VB.
What will it now?
They will ask their developers to learn VB to start working. Of course, another way is to fire them and recruit a group of VB developers!
So this is a major problem.
But for .NET, due to excellent mutual compatibility, you don't need to learn a new .NET language because you can introduce a language component into another .NET language.
Therefore, for .NET is not necessary to convert your VB programmer into a Managed C programmer or convert C # programmers to JScript.net programmers.