Will the go language become the mainstream web development language?

Source: Internet
Author: User
Is it said that the go language is handled with great concurrency? Can you compete with Java PHP?

Reply content:

The Lord is worried, there is no competition ....
Although go has become the most concurrent language in the world,
But
This does not prevent PHP from becoming the best language in the world,
Does not prevent Java from becoming the most modal language in the world,
It doesn't prevent C + + from becoming a language that can be learned in 21 days ... Is language really that important? Web back-end applications are mostly dead on the database, with PHP as long as the algorithm is correct, as well as very stable. Moreover, now the server is the price of cabbage, real performance is limited to buy the server to do polling. Now the internet company can live successfully over three years of the few, if the technology again kidnapped, then directly gameover will have many kinds of mainstream web development language.
Go may also be one of them. Thank you for your invitation. Did not expect to be invited to answer questions about Golang, this for my usual write client C + + use more, write service end with Golang than less people really feel again amazing.
My answer is as follows:
In the process of Golang the language, about this on a certain language can reach the class is this "xxx of a certain aspect is very good, can compete with AA,BB", "XXX can become the mainstream of X" or even "XXX can become the language of the PA a field" and the like, I think we have to answer these questions. You have to first of all the web inside a lot of language, the basic mainstream have been used once, the mainstream web language behind the support of a certain deep understanding to make more close to the objective answer. Fortunately, I've done this before. are also applied to the actual project. WCF in C # with Ajax wrote the webOS, with PHP written web site and system backstage, with Flash wrote the website, with Java wrote B/s, early ASP VBScript also made the site. All the time to the back switch to the game area developed by C + + and Golang.
To the present self-summary is: language in a certain field is more powerful than other languages, and its behind the support side, with its own advantages and disadvantages, and its documentation details whether or not, with the birth of language sooner or later, is proportional to the time. Take a few mainstream contrast, behind Java has been acquired by Oracle Sun,php's entire organization and related community support is also very strong, how to say that Facebook will not let people hit the face of PHP, Golang is the first Google to get out (the relationship in detail self-search), But it is also a self-made system. According to the above just said a few relations in order to good seating. There are only 2 main factors found in the final impact: their own strengths and weaknesses and the time of birth of the language. Others can be ignored as a unified level.
With the advantages and disadvantages of language itself, now as long as one can become the mainstream of the web development language, each other will have such or such advantages and disadvantages, will lead to users inclined, but from the production environment, they are qualified. can be used regardless of the difference. Write a website, Golang can write, Java can also write. So how to choose this time, from the company atmosphere is the use of more than the more advanced? What is the definition of better and more advanced? Who can define which is better and more advanced because of the advantages and disadvantages of each language's differences? I think these two are questions that mortals can't think of. I am a mortal. But what about it? (So what?) The company will only from the actual situation of the project to consider, so cool advanced gadgets, who understand? No one? Not a lot of people understand? Do you want this? Not necessarily. Can't you do anything else? Others are fine. Then why do you use this? Because this xxx is very xxxx. that xxx language xxx characteristic is not also very xxxx? Yes, XXX language xxx features are also very xxx. Then why do you use this? Almost died of a cycle.
Yes, the crucial last factor: the length of time the language was born. Aside from some wonderful things (such as Apple's Things), by eliminating the law, the language is born earlier, meaning that the language system is more integrated into the production environment (no choice, all the way to black), self-evolution to reduce the risk of more comprehensive, cultivate more use of the audience to continue their own system of promotion and development of a virtuous circle , it is easier to build more early infrastructure projects in the formation of the system of the accumulation of applications, and the formation of deeper coupling relationship with the system resulting in the non-rejection, easy to complete compression with the field of future language development potential space to increase stasis .... Wait a minute. A whole bunch of stuff. Say so much, is to tell you a large number of companies are using so several mainstream out of the box, the recruitment of people are also to go back and forth with so several mainstream, the company also to consider various costs, project risk. Do not live with cooked. So, I now tell you, even if it is Golang is an absolute invincible web development weapon, also will not become the mainstream web development technology, because the other language is also very good, and they are many, two fists difficult enemy four, not to mention so many hands. In particular, the advantages of go are not all done on the web!!! (There is no depth here, or it is a lengthy speech.) )
The answer is finished, think the answer is OK, there are children shoes to see the trouble you stretch your fingers to praise the encouragement, to promote the understanding of the atmosphere to answer questions. (^_^) selection has a similar risk/cost assessment process, which is the technology, but mainly not the technology, is the cost:
    • Does the library mature? I use PostgreSQL and Redis, there are a few third-party services and multiple payment gateways, are there libraries, these libraries are actually tested?
    • Is it a big community? Industry is not a real application, behind is not a large number of technical staff in the continuous contribution, and not just a handful of people in the advocate, followed a bunch of people shouting, but not many people actually in use.
    • Is it easy to find information? 80% questions can Google solve at a time?
    • Are you studious? Can Junior's technology learn and start producing more quickly? The time it takes to get started to become a best practice developer is not as good as other web languages.
    • Is it suitable for rapid development? How fast will the go development respond to demand changes? It is not necessary to change them every time they need a new project.
    • Is there a fatal bottleneck? For example, the core function of an existing system relies heavily on one of the implementations of lamp or LNMP and go does not.
    • Do you have a key advantage? My set of REST API uses Php,python to 200 servers, with Go only need 20 units.
    • Conditions allow me to use it? Existing systems do not need to be significantly modified for the introduction of go, but are also within budget and allow time.
Go to write two small Web projects, go is suitable for web development, the library is mature enough, go performance on the general project does not make sense, so just nice to have, some advantages of language design on the web background development is not must have, and the strong type of language after all, no PHP , the language of Python is studious, or strong typing is meaningless for most web applications, and the data required for business logic is especially awkward.

The performance of the Web backend is not dependent on the concurrent implementation of the single process, but the traffic balance under the premise of multi-process guarantees the service stability, the performance problem is mainly solved by the architecture, not the language itself.

Go in the field of web development won'tBecome mainstream.

As a person who has done the website in Go and has been running for a few months. I'll tell you what I think.


In fact, there are people who need to build a station, many of the technology revealed a hint of surprise, and soon returned to the cost of the problem.


There are a lot of bugs like PHP, and even an old hand, it's hard to get rid of the development documentation, why do most Web sites still use PHP? A company, unless it is a start-up company, will rarely change the language they use most. Because they are too familiar with the original language and put too much resources into it, they have no incentive to switch a new set of languages because of certain attractive selling points when the risks are unknown.


Just like why Google chose Java as the main Android development language. What language to choose, also involves an ecological problem. The impact of educated talent, influenced by market acceptance, is affected by the existence of solutions. Even with Google's so many awesome C + + masters, they chose a language that faced object-c with no performance advantage.


Back to the go language itself, it is not used to do Web server. It focuses more on distributed systems, such as advertising and search, which are highly concurrent servers. Moreover, although not very like node. js, also used it to write the site server, server code and client sharing, but it is a good dream, but have to admit that it is more suitable for the site server, in addition to thousands of ready-made modules, in node. js Add a module, the content of other sites to capture, Can be like the customer service side, with jquery to analyze and deal with. And, now the JS compression, scss,less, foreground development workflow, has become more and more difficult to get rid of node. js.


But the Go language in the Web site development is still far from enough, although commonly used function modules have appeared, but they do not have time to precipitate, no rich related information, or need the same time curve to learn, to study, to debug.



A language to defeat the old boss, unless it can persuade the CEO of each company, can realistically create huge economic benefits. Otherwise, the developer's voice is actually very few.

It's pretty hard to miss because of the spike in Web application development. If there's a chance of 2000 years or so, Erlang hasn't spoken yet. Other languages come out to gather what lively (no, not necessarily, not really idle
A foreign dating site, plenty of fish, a man developed, 03 station, at that time with http://asp.net and SQL Server, so many years passed, the monthly Google advertising revenue of $ more than 500,000, and shortly before the site to 5 billion dollars sold.

Use whatever language you are good at, and hold on to your idea.

What language to write service, really is not the key, the key is you want to profit!
  • Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.