How to Learn more than 600 programming languages

Source: Internet
Author: User

A few weeks ago, as an intern at 8 th Light, I got my score report from the CEO. During my meeting with the CEO, I found a blind spot on how to become a programmer. At first I thought that to expand my software career path, I had to learn many languages. I want to tell you that this is not the case.

How many programming languages do we have? You just need to take a look at the list on Wikipedia, more than 600! To be honest, in my personal circumstances, I don't believe I can learn hundreds of languages. Because there are too many documents to read, there are too many differences between them. Many of them are similar, such as the object-oriented languages C ++, Java, Ruby, and Python. However, we have a more efficient way to learn them, that is, to classify them.

At the American University of derui, a required course education for each graduate is how to effectively learn. I am lucky to have met a very good professor, Mr. Sugarman. Although this method is very basic, it can be applied to almost everything-no matter how incredible the number of them seems.

Basic Theoretical points of object-oriented programming language:

Learn basic theoretical points, such as design patterns/paradigms, so that you know the common knowledge in all object-oriented programming languages, rather than simply improving the level of one language. This is the most effective way to learn programming languages.

There are many types of programming languages, such as functional languages, object-oriented languages, and data-oriented languages (more ). By classifying various languages, these 600 languages can be roughly divided into 50 categories. By learning the basic theoretical points of each classification, it is much easier to learn different languages in classification. Here is an example.

There are five basic principles for Object-Oriented Programming Languages to help you write clean and excellent code. These principles are summarized by Bob Martin and called the SOLID principle. Here is an article that explains these principles in the form of images. These principles are:

An object has only one responsibility, and all service interfaces only execute such tasks.

Program entities, such as classes and objects, are open to extended behaviors and closed to modifying behaviors.

Subclass should be used to replace the class it inherits.

The dependency of one class on another class should be limited to the minimal interface.

The dependency abstraction layer (Interface) is not a specific class.

By learning these principles, you can more effectively program in all object-oriented languages. Of course, you need to learn this type of language to practice these principles, but this is completely worthwhile.

Differences between various object-oriented languages:

Similar to object-oriented languages, there are many differences between them:

Syntax: understanding the differences in syntax between different languages has many benefits, one of which can help optimize your coding. By keeping a method or class similar to its behavior in terms of features, it makes the program easier to understand.

Uniqueness: each programming language has its own uniqueness compared with other languages. Java has the characteristics of private methods and data customization, and Ruby has a strong advantage in Web applications.

In short, it is important to learn the differences between different languages. This language may be easier to use or more powerful than some aspects of that language.

Summary

The most effective way to learn programming languages is to learn their basic patterns/paradigms, which is more efficient than learning each language separately. By learning these basic principles, you can apply them to many other similar languages. Learning the differences between different languages helps us to select a more appropriate language in the face of various situations.

[What it means to know Programming ages]

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.