Future IoT full stack development--javascript OR Python?

Source: Internet
Author: User
Tags image processing library

Future IoT full stack development--javascript OR Python.
The development of IoT involves a lot of complex and long development cycle, so we must find a wide range of programming languages and methods.
JavaScript supports HTTP and JSON, supports functional programming, and provides an interactive environment that can be applied to all stack development of IoT.
Python, as a glue language, can undertake a large number of tasks in the Internet of things and embedded systems, and partly replaces the above languages.

Internet of Things is an important part of the new generation of information technology, is also an important stage of development of "information" era, not too clear to see the article "IoT field story, experience, technical combat", is the so-called language no country, whether Js or Python, have their own advantages, The most important thing is to see a person choose their own more appropriate language. But on the basis of future IoT development, individuals feel that Python is a mainstream and more advantageous, unbelief. Please read the last sentence of the article.




first, Javascript.

Perhaps very few people know the predecessor of JS , Javascript, formerly known as LiveScript, is the introduction of Java after the company introduced by Netscape, then for some reason, it will be the original LiveScript redesign, Reference to the object-oriented concept, and renamed JavaScript, is said to be because a small staff in the boredom of the development of their own version.
JavaScript is named because JavaScript is an object-based scripting language that embeds HTML documents. A large part of the syntax is similar to the Java language, and JavaScript is designed to make it easy to work with the Java language, which fully supports Java applet applets, Java Applet applets also make it easy to access existing JavaScript code. Therefore, JavaScript can also be viewed as a simplified version of the Java language.

Front-end developers are more aware of the advantages of JavaScript to arrange: JavaScript can reduce network transmission. JavaScript has a cross-platform nature. JavaScript is simple and easy to manipulate HTML objects. JavaScript supports distributed operations. JavaScript is simple and weakly typed and relatively secure.

However, it also has limitations , such as browser vendors to different levels of JavaScript support, "Web security" to some of the features of JavaScript, such as. NET most of the attacks are run through Js script injection.

Currently there are many browsers on the internet, such as Firefox, internet
Explorer, opera, and so on, but the degree of JavaScript support for each browser is not the same, different browsers when browsing a home page with JavaScript script, because the support of JavaScript slightly different, the effect will be a certain gap, Sometimes they don't even show up.


again, Python.

  Glue language , the same is also object-oriented, but I prefer to call it "snake" language, a C and shell language between , full-featured, easy to learn to use, extensible language, why so say, in you will be based on Java, if you also learn Js and Python, I think Python will do it faster.

There is a common application situation in the development game, and the model needs to be generated quickly. How to operate.

Use Python to quickly generate the prototype (sometimes even the final interface) of the program, and then rewrite it in a more appropriate language for the part that has special requirements.

  For example, the Graphics rendering module in 3D games, the performance requirements are particularly high, you can use C + + rewrite, and then encapsulated as Python can call the Extension class library. Note that you may need to consider platform issues when you use an extended class library, and some may not provide cross-platform implementations.

Python was born in the hands of Guido. In fact, the first implementation is on a MAC machine. It can be said that Python developed from ABC and was largely influenced by Modula-3 (another rather beautiful and powerful language designed for small groups). and combines the Unix shell with C 's habits.

If you use it, you should be impressed with the extensions it supports, scalability and embeddedness, including very practical. such as the famous Computer Vision Library OpenCV, three-dimensional visual library VTK, medical image processing Library ITK, as well as recently in the help of the company developed the Advanced Decompile Read library (tentatively named YHK).


who is the king in the future?

That contrast advantages and disadvantages and the use of rules after we found that the two are different, the future of the development of things can not be separated from the same thing, that is, intelligent and scientific computing, foreign These years more mainstream is the MATLAB, remember the company led the team has a British students back to the brothers, and he chatted Understand that, in fact, in foreign countries, MATLAB has always been a relatively mainstream, but it is commercial, and Oracle, like the need to pay, and expensive. This shows that the foreign go is not "procedures, products, projects", but "robots, intelligence, scientific computing, graphics, algorithms," These, of course, domestic also, but is not the mainstream trend, this year only to feel the trend of the market changes, perhaps the future will focus on development, so single from this point of view, the scientific algorithm occupies a large proportion.

using Python to do scientific calculations has the following advantages: First, MATLAB is commercial, and expensive. And Python is completely free, and many open source Scientific Computing Libraries provide Python's calling interface. Users can install Python and most of the extensions on any computer free of charge. Secondly, compared with Matlab, Python is an easier to learn, more rigorous programming language. It enables users to write code that is easier to read and maintainable. Finally, Matlab is mainly focused on engineering and scientific computing. However, even in the field of computing, often encountered in file management, interface design, network communications and other requirements. Python has a rich library of extensions that can easily accomplish a variety of high-level tasks, and developers can use Python to implement the full range of functionality required by a complete application.


Because of the simplicity, readability, and scalability of the Python language, there has been a growing number of research institutes in the world using Python for scientific computing, and some well-known universities have used Python to teach programming courses. For example, Carnegie Mellon's Programming Foundation, MIT's Computer Science and programming introduction is taught in the Python language.

Many Open-source scientific computing packages offer Python's calling interfaces, such as the famous Computer Vision Library OpenCV, the three-dimensional visual library VTK, and the medical image processing library ITK.
Python's dedicated Scientific computing expansion library is much more, such as the following 3 very classical scientific Computing extensions: NumPy, scipy, and Matplotlib, which provide Python with fast array processing, numerical operations, and drawing capabilities, respectively. So the development environment of Python language and its numerous extensions is very suitable for engineering, scientific researchers to process experimental data, make charts, and even develop scientific computing applications.



Commercial applications such as electrical quotient, games, reptiles, data analysis, etc. then to distributed systems, network systems, large-scale data storage, web infrastructure, such as performance analysis, and then come over is graphics rendering, scientific computing, intelligent, and then to the speed of operation, fast processing, support of the expansion of the library, if it is you, you will choose what.





| | Copyright NOTICE: This article is Dujinyang original article, reproduced please indicate the source. http://blog.csdn.net/djy1992/article/details/71712628

Related Article

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.