What the most popular programming language JavaScript can do

First of all, unfortunately, "PHP is the best language", but it is not the most popular language.

Sad

At the same time, sorry for the languages ​​that were just listed on the TIOBE programming language list in April:

Tiobe April

You are all great, but neither of you can handle this big task.

Before starting, let me talk about the three languages ​​I commonly use: Java, JavaScript, Python.

  • Java, let me learn a lot of knowledge about the architecture level, which can refer to the architecture-related documents I wrote before. I don't like the language at all, but it's really cool.

  • Python, it's really simple enough that I like to use it to learn all kinds of theoretical knowledge, such as recommender systems, Bayes' theorem, natural language processing, etc.

  • JavaScript, see below.

data visualization

In some of the books I've read in the past, Processing is mainly used as a visual language - it started in 2001, it was originally created for artists and designers, and it became a comprehensive design and prototyping tool, Can be used to create complex data visualization fields.

Processing

Processing was brought into the Web domain, resulting in Processing.js, and D3.js.

D3.js

Of course there are tools from Plotly, Leaflet, Sigma JS, etc.

Mobile App: Cordova

Then came PhoneGap (Cordova today), which brought WebView to mobile applications and JavaScript to mobile applications.

Cordova

Using Cordova allows us to develop multi-platform releases at once. We also mention Ionic, the leader in hybrid applications:

Ionic

Mobile app: React Native

Now that we've mentioned Cordova, we should also talk about React Native. Also run multiple times for one development:

React Native

Although it has many pits, it is still worth looking forward to.

Mobile platform: DeviceOne

Now that we've mentioned React Nativie, we should also talk about DeviceOne. Also run multiple times for one development:

 

Currently the only one that uses javascript to achieve native cross-platform (android, ios, windows).

Server: Node.js

It is the performance of V8 that brings JavaScript to a new height, so Node.js was born - JavaScript can be used in the front-end and back-end, a full-stack era of JavaScript.

Nodejs

Mongodb as the database, Express as the server-side MVC, they can provide a RESTful service, then add Angular.js of the MVVM framework, and you know what I'm talking about!

mean.png

Desktop application: NW.js and Electron

NW.js runs on Chromium and Node.js, which allow us to make desktop applications in HTML and JavaScript. In addition to NW.js, there are also recently popular Electron, Atom editor's

Electron

Unlike Cordova's multi-platform build multi-version, Electron can build applications for multiple platforms on one platform. That is, we can package Linux and Windows applications on Mac OS without recompiling on Windows.

It is brought to the desktop, so that the desktop and the web are consistent. The most successful example is Slack, which is valued at $3 billion:

Slack

So, if you're using Slack on the desktop, you're going to be stuck.

Full platform application

I once wrote an article " One Code to Build Mobile, Desktop, and Web All-Platform Applications ". Running Ionic on Eletcron means unlimited possibilities.

One code to build mobile, desktop, web full-platform applications

Anything that can be developed with the Web can be done with the Web.

game

From the moment WebGL was brought into the browser, it was decided that this was a new world.

HTML5 games

Let's forget about compiling, launching updates, plugins, etc., and we can also run it directly in one development.

VR

If you have seen the previous article " The Application of JavaScript in the VR World ", then you will have more impressions of this content.

The main idea is to render the VR perspective through WebView:

Three.js Oculus

And various browser manufacturers are promoting WebVR to provide support for virtual reality device display.

WITH

While most AR applications may be a bit far from us, the closest one is Leap Motion — which uses palm and finger movements for input without hand contact or touch.

Leap Motion

In the same way as VR, read the data of the sensor, and then hand over the gesture to the browser for processing. For details, please refer to what I wrote before: " Basics of Leap Motion JavaScript Development Gesture Control "

hardware

Earlier I saw that Arduino encapsulates the API in a DSL at compile time. The NodeMCU has built-in support for the Lua language, allowing starters to use Lua to start. Tessel natively provides a JavaScript runtime environment, and we need to write JavaScript to run on it.

Tessel 2

Tessel 2 is a relatively high-profile hardware, but what about low-profile ones?

Samsung designed the JerryScript engine, which can run on less than 64KB of memory, and the entire code can be stored on less than 200KB of read-only memory (ROM).

IoT.js

When you think about it, the future is bright.

Internet of Things

Wait, what Samsung launched above is IoT.js, which means that it can already be used in the field of Internet of Things. Why is there still an application here? I just wanted to mention this a little bit:

IoT Node.js

The above is just the application of Node.js in the Web, and the big difference between the Internet of Things and the Web is that the Internet of Things can use a variety of different protocols, and these protocols all require the support of Node.js.

Therefore, if we need to start the web version and mobile application, then we naturally need it as the background.

operating system interface

Although better machines bring better performance, it is clear that people's demand for native applications is not as strong. Firefox OS has already lost ground to mobile operating systems, but this operation has been brought to the realm of IoT:

Firefox OS

This means that we can use JavaScript to develop the interface of the operating system.

What else do you think JavaScript can do?

Source: WeChat public platform: phodal  Author @phodal

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326784737&siteId=291194637