In the cloud era, where do Java programmers go?

 

Welcome to the WeChat public account liaoliaoaws



multidimensional thinking

 

I remember when I first graduated, everyone got together and often debated the issue of which programming language was better. Back then, when we were young, we looked at problems in black and white. We, who had just come out of the university campus, still believed that every question had a standard answer. So looking at programming languages ​​is no exception, and stubbornly believes that there must be a programming language that overwhelms the crowd and is omnipotent. For programming languages, everyone has their own criteria for judging. Some people use the difficulty of learning as the criterion. They think that C and C++ are the most difficult to learn, so they are the most powerful. Some people use the popularity index as a criterion, Java is popular, so it wins. Some people use development efficiency as a standard. Php has high development efficiency and deserves the first place.

 

After working for a few years, I slowly discovered that programming languages ​​have their own advantages and disadvantages. Each language has its own suitable business field. Language is just a tool. Faced with specific business scenarios, there is no The best language, only the most suitable language. For example, in the face of cross-platform scenarios, Java may be more suitable, and if performance is highly concerned, C++ may be more suitable. If you consider development efficiency, scripting languages ​​such as Php and Python may be more suitable. It doesn't make much sense to simply rank various development languages ​​in a single dimension. On the other hand, the test-oriented education we received since childhood is to simply and rudely evaluate each individual in a single dimension according to the test scores, which is meaningless in itself. The society's evaluation of each individual is actually multi-dimensional, and it is very important to develop the habit of thinking about problems in multiple dimensions.

 

multi-skilled survival

 

With the advent of the cloud era, where do various development languages ​​go? What changes have taken place on the cloud platform? People often ask me, I heard that Python is very popular, we are very anxious to do Java, should we switch to Python? Will continuing to do Java slowly run out of food? At first, I was a little confused when I faced this question, and I didn't know how to answer it. After thinking deeply, the answer I came to is multi-skilled survival. According to the characteristics of the cloud platform, here are some suggestions for you.

 

  • On the cloud platform, the choice of development language is more forgiving. For example, AWS, its various service SDKs support multiple programming languages ​​at the same time, to develop an application based on cloud services, if you are good at Java, then use Java development, if you are good at Python, then use Python development. Instead, the choice of language varies from person to person, which is very helpful for the advancement of the project.

 

  • In terms of programming language, programmers are required to be multi-skilled, and Java programmers in the object-oriented world must learn a scripting language, such as Python and Javascript. Python programmers also need to learn an object-oriented language, such as Java, although Python also supports object-oriented.

 

  • In the cloud era, the depth requirements for programming languages ​​are not as high as before. On the contrary, there are higher requirements for the breadth of programming languages. If you can master multiple programming languages, it will be more comfortable. Especially in the era of agile development and DevOps, Java and Python may be used for development in a project, and Javascript and Shell may be used for operation and maintenance automation. If you are a full-stack engineer, it is perfect.

 

  • The strong type feature of Java itself makes it not flexible enough to achieve the freedom of programming like Python. Therefore, in order to improve this problem, based on the Java platform, several Java variants have appeared, such as Groovy and Scala, which are the most eye-catching at the moment. Nothing beats Kotlin. The direction of the efforts of these languages ​​is basically the same, that is, to develop in a weakly typed scripting language similar to Python, and then run the code directly on the Java platform. Does this count as Java's self-salvation? So Java programmers have another option, which is to learn Kotlin or Scala. Personally, I feel that Groovy's grammar is rather weird. If there is no rigid demand, it is not recommended to learn it.

 

In the era of artificial intelligence, those who master a single skill have a high risk of being replaced. We are also in the IT industry, if we only master a single programming language and only do a single specific position, it is time to consider making some changes.

 

Welcome to scan the code and follow the personal public account liaoliaoaws


 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326342264&siteId=291194637