Future IoT full stack development--javascript OR Python?
IoT development involves a lot of complexity and a long development cycle, so we have to look for a wide range of programming languages and methods.
JavaScript supports HTTP and JSON, supports functional programming, provides interactive environments, and is suitable for all-stack development of IoT.
As a glue language, Python can take on a number of tasks in the Internet of things and embedded systems, and partially replace these languages.
?? Internet of Things is a new generation of information technology is an important part of the "information" era of important development stage, not too clear can look at the article "IoT Domain story, experience, technical combat", is so-called language no country, whether it is Js or Python, have their own advantages, The most important thing is to see the individual choose their own more appropriate language. But on the basis of the development of IoT in the future, the individual feels that Python is the mainstream and more advantageous, does not believe? Please read the last sentence of the article.
first of all, Javascript.
?? Probably few people know the predecessor of JS , the predecessor of Javascript called LiveScript, is the introduction of sun company introduced Java Netscape Company, at that time for some reason, it will be the original LiveScript re-design, Referring to the object-oriented concept and renaming it to JavaScript, it is said that a small clerk developed its own version when bored.
?? 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 the JavaScript design makes it easy to work with the Java language, which can fully support Java applet applets, Java's Applet applets also make it easy to access existing JavaScript code. As a result, JavaScript can also be seen as a simplified version of the Java language.
?? Front-end developers are more aware of the advantages of JavaScript to arrange the following:
- 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 weak, and relatively safe.
?? But it also has limitations , such as browser vendors to the level of JavaScript support, "Web security" for some of the functionality of JavaScript, such as. NET most 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 each browser is not the same level of support for JavaScript, different browsers when browsing a home page with JavaScript script, because the support of JavaScript slightly different, its effect will be a certain gap, Sometimes it doesn't even show up.
and again, Python.
?? Glue language , the same is also object-oriented, but I prefer to call it the "snake" language, a language between C and Shell , full-featured, easy to learn and easy to use, extensible language, why so to say, on the basis of you will Java, if you learn Js and Python, I think, Python will be more competent.
?? There is a common application scenario in the development game that requires a quick model generation. How does it work?
?? Use Python to quickly build a prototype of a program (and sometimes even the final interface of the program), and then rewrite it in a more appropriate language for the parts that have special requirements.
?? For example, the 3D game Graphics rendering module, performance requirements are particularly high, can be rewritten in C + +, and then encapsulated as Python can call the Extension class library. It is important to note that you may need to consider platform issues when you use the 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 evolved from ABC and was largely influenced by the Modula-3 (another rather beautiful and powerful language designed for small groups). And a combination of Unix shell and C habits.
?? If you've used it, you should be impressed with the extensions it supports, extensibility and embedding, including usability. such as the famous Computer Vision Library OpenCV, three-dimensional visual library VTK, medical image processing Library ITK, there are recently developed in the help of the company's advanced anti-compilation read library (tentatively named YHK).
who is the king in the future
?? The comparison of advantages and disadvantages and the use of rules we found that the two are different, the future of the development of the Internet of things can not be separated from the same thing, that is, intelligent and scientific computing, foreign years of comparison is the mainstream of MATLAB, remember the home company led the team there is a British study back buddies, and he chatted a few times, Understand that, in fact, in foreign countries, MATLAB has always been more mainstream, but it is commercial, and Oracle, like the need to pay, and expensive. Thus, the foreign go is not "procedures, products, projects", but "robotics, intelligence, scientific computing, graphics, algorithms" These, of course, the domestic also has, but is not the mainstream trend, this year just feel the trend of the market change, perhaps the future will focus on development, so single from this point of view, scientific algorithm occupies a large proportion.
Using Python to do scientific calculations has the following advantages:
- First of all, MATLAB is commercial and expensive. Python is completely free, and many open-source Scientific Computing Libraries provide Python's calling interface. Users can install Python and most of its extension libraries for free on any computer.
- Secondly, compared with Matlab, Python is a more easy to learn, more rigorous programming language. It allows users to write code that is easier to read and maintainable.
- Finally, MATLAB focuses on engineering and scientific computing. However, even in the field of computing, often encountered in file management, interface design, network communications and other needs. Python, with its extensive library of extensions, can easily perform a variety of high-level tasks, and developers can use Python to implement the full range of functions required by the application.
?? Due to the simplicity, legibility and extensibility of the Python language, there is an increasing number of research institutions that use Python to make scientific calculations abroad, and some well-known universities have used Python to teach programming courses. For example, Carnegie Mellon's programming fundamentals, MIT's Introduction to Computer science and programming are taught in the Python language.
?? Many open source scientific computing packages provide Python's calling interface, 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 extension library is more, such as the following 3 very classical scientific extension libraries: NumPy, scipy, and Matplotlib, which provide Python with fast array processing, numerical operations, and drawing capabilities. As a result, the Python language and its many expansion libraries make up the development environment ideal for engineering, scientific researchers working with experimental data, charting, and even developing scientific computing applications.
?? E-commerce, games, reptiles, data analysis and other commercial applications, to distributed systems, network systems, large-scale data storage, web infrastructure, such as performance analysis, and then come to the graphics rendering, scientific computing, intelligent, and then to run speed, fast processing, supporting the expansion of the library, if you, what would you choose?
|| Copyright NOTICE: This article for Bo Master Dujinyang original article, reproduced please indicate the source. http://blog.csdn.net/djy1992/article/details/71712628
Future IoT full stack development--javascript OR Python?