Department of the Open Optimization and analysis of the meeting, the new people are also asked to listen to the training. Content is a C + + project, sound technology is not difficult, but relatively large, maintenance for a few years. Said some code specifications, annotation style and so on. When it comes to some tool functions, such as string and int, they should be re-encapsulated. I'm curious why I don't call C + + ready-made library functions directly. Later, the big project is an important application, there is the PC version, also has the Android version. The PC version is Visual Studio directly compiled to run, there are interfaces to everything, Android inside too. The so-called Android version simply compiles the entire C + + project into a library file with a. So suffix in Visual Studio, which is then introduced into Android for invocation. So they have to maximize the compatibility of the C + + project with Android, which can be run on a PC, but not on Android. I wonder if this project is written in Java, will it save a lot of things? The answer is that it costs too much. There are not a few Java engineers in the company, mostly C + + programmers. Even if you ask a Java Daniel to come, familiar with the company's business is also a long time, the company can not be invited to stay with this person is also a problem. Obviously this is a legacy system! When I studied system re-engineering, I thought that only the big systems in banks and hospitals had that kind of feature, that is, the cost of developing new technology is too big, and the risk is particularly large, the company's entire business is in it. old system, although old, but after a long period of operation and maintenance, continuous testing and modification, can guarantee the existing functions, the enterprise has invested a lot of human and material resources. The addition of new features, system upgrades become simple, only in the existing architecture to continue to develop, there is a way to follow, even if the process is sometimes very difficult, some shortcomings of the system is always criticized, so you have the whole system to reconstruct the impulse. But the boss told you, not allowed!
A full-day training, nothing to understand, the only harvest is the first day heard. So. I have been asked if you have ever had the C-voice development of Android, I even said no, the development of Android only know the fur, have not made such a deep east. The original is not so advanced, just the C + + file compiled into a. so file, and then thrown into the android call. When I developed it, I used to package an EMF project into a jar file in Eclipse and then import it into NetBeans to continue development, plus some interface elements. The benefit of this is that Project manager can focus on designing EMF classes and interfaces, while others can develop interfaces in NetBeans (it is said that NetBeans is more convenient than the Eclipse development interface, and in my opinion, there is no convenient way to go, Interface code and logic code to make a lump), to use the EMF class and then called. The downside is that, in the process of NetBeans development, if you encounter the need to modify the structure of the class, you have to ask project manager to modify it in Eclipse, then repackage the jar and re-import it into NetBeans. The company's situation should also be similar, after the modifications in Visual Studio are compiled and then re-imported into the Android development environment.
Search on the Internet. So, some predecessors say similar to DLLs. But why not directly packaged into DLLs, at present I also do not understand. Probably because DLLs are for Windows, and. So for Linux, and Android is based on the Linux kernel. Learn slowly later.