The various programming languages in my eyes

Source: Internet
Author: User

Java

People who like Java certainly like to type. All I'm talking about is tapping the keys on the keyboard. You have to keep repeating and repetition.

The person who designs the Java system is a madman, and the way he solves the problem is design patterns. If you think of design patterns as a way to solve problems in this language, you will find that there are many such design patterns in Java.

On the other hand, the Sun's guys really have a little bit of a mind on the Java spec, which makes it possible to run on an embedded system, so we stick with it. It's hard for me to believe that Python or C runs on my phone's desktop system.

And what about those directories? I had to use eclipse because only it knew how to skip the 1000-word-length path name. If I have 10 classes in the same directory in the app, will it hurt someone?

C

C is accurate. When I write a program in C, if it's done, I know it's reliable. It's like painting a masterpiece with a small brush. Writing code on such a detailed level requires a different mindset. When you sit down and write C, you have to plan how to write it before you do it. Otherwise there must be a lot of effort to change.

If your experience is rich enough, the memory leaks are less likely to come to your door. Its second characteristic,--malloc/free, is always inseparable. You can't forget any one. Otherwise it's like forgetting to flush or turn off the lights. That's all you have to do.

There is a good saying, if you are going to paint the house, a good brush is far from enough. I bet you want a big roller shaft. If I had to write an entire application or system, I wouldn't have to use C.

C programs want to make changes, it will cost a good old. When I write algorithms, I know that the first time is definitely not right, so I usually first write in Python, and then translated into C.

C++

It's a C with a string class. There are also arrays, lists, queues, and so on that you can use to achieve what you want. Word: Don't think about self-innovation templates. It's too difficult. In addition to this, C + + also improved C, in C + + you can write very good software. This extra feature allows it to be used on some large systems that are not too difficult to follow as long as you are following the same constraints.

Javascript

This is a language that no one likes. But he likes you. When you start learning about it, you might write some very bad code, use objects as dictionaries, and other objects as keys, but that's OK, because the code works fine, as long as the browser supports JavaScript.

JavaScript does not have a connector, so all the code shares a namespace, but fortunately everyone knows it, so we can get along with each other in a harmonious environment.

Coffeescirpt

Coffeescirpt is an interpreter that translates the strange languages that look like Ruby into JavaScript on a row-by-line basis. It is a javascript--with all the foreign syntax, square brackets, and extra keywords to remove. Only the basic meaning of the code remains.

Coffeescirpt is very nice. If you want to write a lot of code, it will make you more efficient at least 25%. You can see more lines of code on the screen at once.

When you write code with Coffeescript, you have to always remember that this is about generating JavaScript. Here's the problem. You have to learn JavaScript first. The new people in the project have to learn JavaScript before they can learn coffeescript, and finally learn the project code.

node. js

I wish I could love it too. I think I gave it a chance. It's a callback that I can't stand. I knew there would be a day when one of the callbacks didn't appear, and then my app stuck there waiting. It's killing me.

Another thing is that it has almost no built-in anything. If you want to do something, there will always be a lot of modules to implement this function. Which one should we choose? If there is a problem, which module will someone support?

Scala

Scala is a functional, strongly-typed language that compiles into JVM code.

I am in the work of high school Scala. There was a start-up production system that used it, and I joined them later.

This makes me see the ugly side of Scala: type derivation. The type recommendation was used by it to the extreme. Each object has a type, but to determine what type it is, you have to check several files on different hierarchies. Scala also inherits the bad habits of Java folders, so you have to look for a type to go into several levels of directory to find the corresponding file.

In short, Scala is excellent-for those initial developers. Newly added members have a long learning curve to familiarize themselves with the existing code.

Erlang

Erlang is one of the few I've ever wanted to fall in love with. I really tried. It is a beautiful functional language, it can write very fine small modules, they communicate in a precise way, your system can run more than 10 years, because it can handle the unknown problem, if necessary, restart, and then continue to run.

But its structure is too complex. Development seems to be stuck in the era when Berkeley invented the socket. What is needed in the current era is almost the same. Why is it so hard to develop a simple Web service?

Go

Go is easy to learn, and so is the case for newcomers. It uses the language concept of 40 years ago to build a robust asynchronous system, but it allows you to program as you write synchronous code. You can easily write 1000 threads that can work safely.

It still needs to be improved in terms of library support. When I want to do something, which library should I use to--github 2011 years or the semi-finished product that started in 2013? One is a link to the official homepage, but its official homepage does not seem to be up to date. Well, I think I'll write one myself ...

And why is it so laborious to append elements to the array?

Python

In Python, no matter what you want to do there will be a corresponding library, if you are using Linux, it is absolutely the choice, because it can be installed with one click.

If you want to do some digital processing or scientific calculations, choose Python and you deserve it.

The string in Python may or may not be binary, so you have to learn the text encoding.

Python 3

Python 3 and Python have many common features, but it is a different language. Because it is relatively new, it is not very well supported. I also want to use it, but there will always be a library that only supports Python 2.

The various programming languages in my eyes

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.