Let s talk about why I switched from Python to Go

Updated on technology 2024-03-30
5 answers
  1. Anonymous users2024-02-07

    Both python and go can be learned. Python is a dynamic language, while Golang is a compiled language.

    1.If you are a non-professional programmer and are learning programming for the first time, choose Python. Because it is quick to get started, easy to use, rich in information, and covers a wide range of fields. Extremely beginner-friendly.

    2.If you want to pursue a career in big data analytics or artificial intelligence machine learning, learn Python.

    4.If you want to become a service backend, we recommend choosing GO.

    In general, the performance of GO is better than the other two, and the concurrency performance is also much stronger, and in the back-end ecosystem, the back-end service framework and the architecture design of the distributed system are stronger than Python and Ruby. This is not to say that Python and Ruby can't develop large-scale systems, in the early days, YouTube was developed by Python, and the GitHub main site was developed by Ruby.

    If you use go for back-end development, it will be easier to overall. I remember that I chose to go because of Ruby's shortcomings in back-end distributed services, the lack of concurrency performance of the Rails framework, and the domestic Ruby environment.

    5.If you're interested in cloud-native development, choose GO. In this regard, GO has an absolute advantage.

    Go is the easiest, the libraries are quite complete and concise, the documentation looks relaxed, if you do "serious" web server-side development, front-end and back-end separation, or distributed microservice development or something, then GO has the highest input-output ratio, no one, high efficiency, easy maintenance, and easy to deal with multi-person cooperation.

    Python looks simple, but it takes time to learn deeply, especially when you come across a lot of libraries that use high-level syntax, you have to figure out these high-level syntax, right, but the difficulty increases. Of course, if you have data processing, one-time scripts, and machine learning needs, it is still good to use python.

  2. Anonymous users2024-02-06

    1. Simple deployment.

    The go compilation produces a static executable file with no external dependencies other than glibc. Due to historical reasons, the ecosystem of Python deployment tools is quite chaotic.

    2. Good concurrency.

    A single GO application can also effectively use multiple CPU cores and perform well in parallel. Python multi-threaded and multi-process server-side programs are not simple to write, and due to global locking, multi-threaded Python programs cannot effectively use multi-core, and can only be deployed in a multi-process manner.

    3. Good language design.

    From an engineering point of view, GO's design is excellent. The specification is simple and flexible enough for programmers with knowledge of other languages to get up to speed quickly. What's more, GO comes with a complete toolchain, which greatly improves the consistency of team collaboration.

    For example, gofmt automatic typesetting go ** largely eliminates the problem of inconsistent typesetting styles written by different people.

    How to learn GO:2. Strengthen your practice by using the resources provided by Ardan Labs, a GO language training community.

    3. In turn, study the theoretical textbooks about computer systems and re-understand the system knowledge.

  3. Anonymous users2024-02-05

    Features of Golang:

    Statically strong-typed, compiled, and concurrent.

    Statically typed language, but it has the feeling of a dynamic language, it can be compiled directly into machine code, and it does not depend on other libraries.

    The language level supports concurrency, which is the biggest feature of GO, which inherently supports concurrency; GO is the concurrency supported in the genes, which can make full use of multi-core, and it is easy to use concurrency.

    Garbage mechanism.

    Built-in runtime and support for garbage** is one of the features of a dynamic language, and while it's not perfect at the moment, it's good enough to handle most of the situations we can encounter, especially the GC later.

    Object-oriented programming is supported.

    There are concepts of interface types and implementation types, but inheritance is replaced by embedding.

    Rich standard library.

    GO already has a large number of built-in libraries, especially the network library is very powerful.

    Built-in C support.

    Go can also directly include C**, using the existing rich C library.

    Features of Python:

    Interpreted language.

    The program does not need to be compiled before running, and it is translated when the program is run, and the special interpreter is responsible for interpreting the program when each statement is executed**, so that the interpreted language needs to be translated once every time it is executed, which is relatively inefficient.

    Dynamic data types.

    Support for overloaded operators, as well as support for generic design.

    A fully object-oriented language.

    Functions, modules, numbers, strings are all objects, everything is an object in Python; Inheritance, overloading, and multiple inheritance are fully supported.

    Has a strong standard library.

    The core of the Python language only includes common types and functions such as numbers, strings, lists, tuples, dictionaries, collections, files, etc., while the Python standard library provides additional functions such as system management, network communication, text processing, database interface, graph system, XML processing, etc.

    The community offers a large number of third-party libraries.

    The Python community provides a large number of third-party modules that can be used in a similar way to the standard library; Their capabilities cover scientific computing, artificial intelligence, machine learning, web development, database interfaces, graphics systems, and more.

  4. Anonymous users2024-02-04

    There is no such thing as turning, the two are used together. Python is a tool, and Go is a formal software.

  5. Anonymous users2024-02-03

    Who knows why you're going to switch from python to go.

Related questions
8 answers2024-03-30

Rumors in the rivers and lakes: Life is short, I use python, >>>More

13 answers2024-03-30

I'll tell you about my dreams: the first category, I have no control at all, because I don't know I'm dreaming. This is also the most common type of second type, I know I'm dreaming, I try to wake up (you know, sometimes I know I'm dreaming, and it's not a familiar place around, so I don't want to do it anymore) but I can't wake up, and after a while, I may really wake up reluctantly, but I will have a convulsion (maybe it's really convulsions, or maybe it's just conscious, not in reality). >>>More

5 answers2024-03-30

In life, it is not enough to have material wealth, but also to have spiritual wealth, because a positive attitude towards life and a high spirit are the key to overcoming difficulties.

27 answers2024-03-30

Younger sister. You and the dragon are not wrong or right, because you are both people who have no sense of direction emotionally, so in the eyes of onlookers, your tangled love has betrayal, good horses, indecisiveness, and inexplicability.... Even today, you're not sure you have a future, are you? >>>More