Days ProgramWrite it down and think that C # Is really ugly ...... One thing that has been fighting for the past few days, for example, I have changed an interface into an abstract class. Good guy, you must first add abstract to all methods, and then add override to all sub-classes, A good change ...... What's more, I took this step to divide it into two interfaces. After the abstract class is deleted, I had to remove the override implementation methods on all the sub-classes, and it was a good change ...... If this guy has more than 10 or 20 sub-classes in the project, the workload would be quite large ~~~~ Therefore, we should make it clear from the very beginning whether abstract classes or interfaces are required ...... All of them are forced by C.
This is not a problem. I will not be able to get a protected internal for a while, so I am confused. What is this? Protected and internal, this is clear enough, regardless of my feelings. There are no anonymous internal classes, and I have to create a class for every visitor eight hundred, knowing that this class will not be used for the second time in the next eight years. And delegate ~~~ However, the syntax of delegate in 1.1 is also ugly, so there are still improvements in 2.0 ...... You don't need to count it as much as 1.1, and there is no pan-type sub ......
In fact, it's not just C ...... Every time I look at a class and want to mix in, but mix does not in, I feel depressed. annotation writes several metadata files and has to be explained in the container. Java without delegate. Five lines are written for anonymous internal classes before and after functor.Code, Functionality is a row. With the delegate C #, the delegate is quite like closure, but this context is not correct ...... Using three different high orders to implement the same function, the conclusion is that none of them is good, which is similar to a pile of objects. Although objects are not so easy to reuse, no one is willing to reuse those functor In the syntax.
Nothing else ...... In fact, it is better to store a variable in the object. The variable contains a program. If you run it, take the program out of Eval, which is no better than creating several subclasses ......
(Not to provoke a language war ...... Write C # is depressing, just a little bit of relief ...... Do not take it seriously .)