2004 Years of graduation, I heard that Java programmers work relatively easy to find, so began to become attached to Java . Flash A few years later, did a lot of projects, also released a number of technical articles on Java , in General, this decade has been with an eternal topic entanglement -"performance optimization."
In retrospect, most of my time was spent dealing with performance improvements across large systems, and in many cases the O (log N) algorithm could have been used, and I used the O (N2) algorithm, and had been entangled in the GC performance optimizations, performance optimizations forJVM compilers,Java Enterprise API invocation methods, and more.
My experiences are actually most java programmer in java 15+ year time in a microcosm, there is a data you may know, java1.1.8 is Font-family:calibri >java1.0 for " Font-family:calibri ">8 times, and java1.1.8 for the first time formally introduced just-in-time compiler. In the next more than 10 years, sun and the open source community have made a massive improvement around performance issues, mainly focused on JVM garbage collection mechanism and corresponding algorithm promotion, compiler algorithm promotion, all kinds of api promotion and so on. However, these optimizations and improvements will always have bottlenecks, and it is impossible to introduce just-in-time compiler, JVM garbage Collection introduces parallel algorithms in such a way that greatly improves java performance, It is still necessary for the programmer to improve the system performance by JVM , the overall optimization of the code, and the reasonable system architecture.
Over time, we don't have to worry about memory now, the server I'm using today is256GBAbove the memory of the machine. In additionJVMA new garbage collector is also introducedG1,G1More automated than the past garbage collector, while the rise of cloud computing has helped solve the problem of standalone machines, it is now entirely possible to address resource bottlenecks by leasing resources to cloud computing providers.Java8and subsequent versions by introducingLambdaThe project continues to work to make better use of multicore processors. In addition, theJDKDesign and implement a modular system, and then apply the system toJDKitself can also be a trend, which makes large chunks of code easier to manage and facilitates code reuse for applications and large operations. Oracle says that theyJava8Is promising and has begun to discussJava 9Key areas of development, such as joining aself-tuning JVMTo increase the scalability of local integration and large-scale multicore, adding cross-language support for cloud applications through new meta-object protocols and resource managers. ExpectedJava9AndTenBig data, multi-lingual interoperability, cloud computing, and mobile are expected to -Years and .Year release.
No matter what your future position is, I will continue to delve into Java and related technologies and continue to publish technical articles. More than 10 years later, I want to say to Java : "We are inseparable from each other."
[Java 20 anniversary] my more than 10 years of experience and future analysis