After changing jobs, you need to use C # To develop some code. This gives you the opportunity to access products other than the Microsoft operating system. Actually, when I went to college, I met vc6.0. It seems that there was a course called VC ++ program design or something. At that time, I really wanted to learn something. However, it was delayed by SARS and never again.
First, let's explain the technical background and six years of Java experience. However, due to the technical route of the company's products, it has always been limited to j2se itself. Object-oriented is a beginner and I have never understood J2EE or anything. Now, I think the technical aspect is really narrow and a bit embarrassing.
C # I have been around for about a month. It is true that the syntax is similar. After all, it is basically an object-oriented language of the times. However, the development environment of Microsoft is quite different from that of Java. Because of the cross-platform features of Java, Environment configuration is not closely related to the operating system. As long as JDK is installed, the eclipse green software will take a test and the program compilation will not be faulty, there is basically no problem when you want to run it, as long as the concept of classpath is clear. However, it is not that easy at Microsoft. It is not easy to set up the development environment properly. Everything is dependent on each other. Without knowing how many items are installed, you will be dizzy.
As a beginner in C # Like Me, I can temporarily ignore the details of the environment for a while. After all, it is not so deep. The C # language itself is not applicable to the namespace and partial concepts.
In Java, the package corresponds to the namespace in C #, But the package exactly corresponds to the file location, that is to say, the location of the class file and the package of the class can basically represent each other. But it is different in C #. namespace only indicates a logical concept. The namespace attribute has nothing to do with the file location. To be honest, it is quite dizzy. I don't know what the purpose of this flexibility is.
I understand partial, but I want to separate the automatically generated code from the handwritten code. The interface code written in the visual editor cannot be opened without slight modification. However, switching between several partial files in vs is quite troublesome. It has its own advantages and disadvantages.
Now vs is on stage. I use vs2008. Maybe there are too many projects in our solution (more than one hundred projects, the response to any operations is very slow (my sub-configuration is okay ).
(My machine sub-configuration)
I checked it online and there was no particularly good solution. But is it easier for Microsoft, the boss, to use such a expensive ide? The following lists the features that I often use during development. If you know how to use them, please kindly advise.
1. auto-completion: auto-completion should be a feature that eclipse developers are familiar with, whether it is a class name, variable name, or method name, even the system or custom template will appear in front of you when appropriate. For classes, even if there is no import, it will be listed on the classpath for you to choose from and automatically imported after the selection, which is very convenient. But for vs, it's really not helpful.
(Complete the class name)
(Automatic completion of variable names)
2. search: When writing code, a commonly used auxiliary function is to look at the operations I perform on a variable in the current effective region, or where a private method in this class is called. In eclipse, just click the variable or method you want to observe, the background color can be clearly distinguished. However, VS is not helpful at all.
(Variable highlighted)
It is convenient to find a class Ctrl + Shift + T by name in eclipse. It does not seem to work in.
(Search by class name)
3. browsing: to see the inheritance relationship between the subclass and the parent class, we should do the first thing after getting the new module code. In eclipse, it is very clear whether it is forward or reverse.
(View Reverse type hierarchies)
(View positive type hierarchies)
Want to view the call hierarchy of a method? No problem.
(View call hierarchies)
In a subclass, you can check which method overwrites or implements which parent class or interface has a clear mark in eclipse for ease of viewing. In vs, you need a good memory.
(View overwriting/implementation)
4. Navigation: Ctrl + Click on variables, methods, and classes to define this function. This seems to have been provided by Vs, but the F12 needs to be found desperately on the keyboard. Oh, not all. There is a premise to go to the definition of the selected class or method that you want to open the project of the class you want to go! Faint. If I know where I want your ide to do anything. The function I love eclipse is to return to the last modification with one click, and vs won't be remembered for me.
5. refactoring: In eclipse, renaming or moving the variables, methods, and classes basically requires no mouse clicks. Vs seems to have been included in it, and it hasn't been used for commenting yet.
6. debugging: The functions are similar during debugging. The next step of eclipse is very fast, but vs is very slow. I don't know if it is related to too many projects. By the way, eclipse can modify the code during the debugging process. As long as the structure is not damaged and saved successfully, it can be re-run without re-running. It is considerate and considerate.
7. Shortcut Key: This item cannot be forced. After all, which one is used first. However, I always think that among the shortcut keys for editing common code functions, eclipse is often completed once, And vs needs to be done twice. For example, if you comment out the code eclipse, It is Ctrl +/, VS is Ctrl + k, CTRL + C. Canceling the code annotation in eclipse is to press Ctrl +/again, and VS is another set of shortcut keys Ctrl + k, CTRL + U. I really don't know what the figure is.
8. Others: Eclipse is multi-threaded. In many cases, you can wait for a backend to complete the work while working.
Really, there are a lot of intimate functions that I can't say about eclipse. It's really helpless to watch silly, some problems may be caused by my lack of understanding about the language and. If you have any good experience to improve your work efficiency, please join us.
Of course, I believe the world will not do this to me. Of course, I believe that I am not alone here. Later I found resharper, a paid vs plug-in, which is a great solution to these inconveniences during the trial period. Solved many functional problems, and the speed problem was still not improved. I want to write an article about this plug-in. If you are interested, you can go to the http://www.jetbrains.com/resharper/.
It's really hard to write something.