7 reasons the framework becomes the new programming language

Source: Internet
Author: User

Thanks to the powerful tools, the need for speed, and the evolution of the programming itself, the next tedious war will end in the framework API, not the syntax.

AD:

In the 1980 's, the simplest way to have a boring war is to praise your favorite programming language for being the best. C, Pascal, Lisp, Fortran? Programmers spend several hours explaining in detail how the particular way of crafting a if-then-else statement is better than your way.

That's a thing of the past. Today, the war on grammar and structure is basically over, because the world has summed up some simple standards. In C, Java, and JavaScript, there is little difference between semicolons, curly braces, and so on. Interesting arguments about types and closures still exist, but most of them are meaningless because automation is narrowing the gap. If you do not want to define the data type, then there is a possibility that the computer will be able to infer exactly what you mean. If your boss wants to use JavaScript and you like Java, then the cross-compiler "Note 1" translates all the static types of Java code into the minimized JavaScript that can be run in the browser. Why is there war when technology is backing it?

Today, interesting battles take place on the frame. When I was planning a new course at Johns Hopkins University and other faculty members, the framework became the focus of the discussion. Angular better than Ember? is node. js everything?

We designed a survey course that will explore the architecture of the most important packages, which is the foundation of the Internet. This is the center of Action, and the value of this research course is to explore the architecture of the most important packages around today's Internet.

In this sense, the framework is the new programming language. They are the latest ideas, philosophies, and practicality that modern code has been built up. It's a bit of a blip, but most of it becomes a new basic component of programming. The following are seven aspects that contribute to the trend of this framework, making the framework a new favorite to breed a boring war.

Most of the code is being strung together with the API.

Writing software in the past means invoking all of your skills in the programming language to maximize the press code. Mastering pointers, functions, and scopes makes sense-the quality of the code depends on doing the right thing. Today, automation handles most of the things in this area. If you leave useless statements in your code, don't worry, the compiler will remove the useless code. If you have the pointer hanging, the garbage collector may find it.

Also, coding practices are different today. Most of the code is now a long list of API calls. There are occasional data reorganizations between API calls, but even these jobs often have other APIs to do. Some of the lucky ones are writing smarter code for the core of our machine, "Note 2", and pointer juggling, but most of us work at a higher level. We simply run the pipeline between the APIs.

In view of this, it is more important to understand the performance of the API and what can be done. What kind of data structure does it accept? How does the algorithm behave when the data set grows larger? Questions like this are more concentrated in today's programming than with questions about grammar or language. Indeed, there are a number of tools that simplify the invocation of a program from another language. For example, linking the C repository to Java code becomes straightforward. Understanding the API is important.

It is worthwhile to stand on the shoulders of giants

Suppose you have become a believer in Erlang or another new language. You think it provides the best platform for writing documents and bugs-free apps. This is a good point, but it can take years to rewrite the available Java or PHP into the language of your latest choice. Your code can eventually become significantly better, but is it worth the extra time?

The framework has made a difference to the hard work that came before us. We may not like the architecture they choose, we may argue for the details, but the way to stop complaining, find and coexist is more effective. It is so easy to inherit all the essence and dross from the framework code base. Using the new language you like, writing everything yourself instead of a more popular framework, this is a powerful way to simply follow the framework author and its API, and it doesn't make you quick to enjoy new choices.

Understand what the architecture does, not the syntax

Since most of the coding is a string of API calls, there is not much advantage in learning language traits. Of course, you can be an expert on how Java initializes static fields within an object, but it's better if you can figure out how to play the power of Lucence, javadb, or a bunch of other code. To get an insight into the optimizer of the Objective-c compiler, you'll spend months, but learn the ins and outs of the latest Apple core repository and you'll really make the code good. You will learn more deeply about the details of the framework, rather than the syntax of the language the framework relies on.

Most of our code spends a lot of time in the internal loop of the repository. Figuring out the correctness of language details can help, but knowing what's going on inside the repository can make a significant return.

Algorithm-led

Learning a language helps you cope with the data hidden in variables, but it just takes you farther away. The real thing to overcome is to make sure the algorithm is correct, and they are usually defined and implemented by the framework.

Many programmers understand that it is dangerous and time consuming to re-implement standard algorithms and data structures. You may make it more consistent with your needs, but you risk making subtle mistakes. The framework has been extensively tested for years. They represent a collective investment in software infrastructure. When you figure out what "go off the Grid" "Note 3" means, throw away the hard work of others and build an algorithm hut with your own hands-in fact, there are not many examples.

The right thing to do is to learn the framework and learn how to use them to maximize your strengths. If you choose the wrong data structure, you turn a linear job into a time-consuming, input-size two-time function. Once you do that, it will be a big hassle.

Correcting the syntax of the compiler and the smart IDE

Should I add a semicolon after the last statement in a block of code? Is the semicolon "delimiter" or "Terminator"? Language designers spend a lot of time making analyzers that implement these rules--guess what--I don't care. I was concerned about 10 years ago, but now the IDE has done this for me. They looked at me all the time and told me when I messed up. I asked them to think for me and spend time thinking about the big questions about the code. The IDE is a menial, programming assistant that handles these trivial details.

Automation has saved us from the tedium of programming grammar. Of course, they can't do all the work for us. We still need to have the vague thinking of deploying that kind of punctuation. But most of the time, the details of the language are no longer important.

The IDE not only helps the framework, but also has some small details. They remind us of the parameters of the function call, and they even check whether the data is the correct type. Then, we should know which functions to use and how to group them together. When the syntax is not too critical, this is where our energies need to be concentrated-more advanced methods and functions that will help to find a solution more easily.

Grammar and visual language disappear together

Although it has been predicted for many years, it is still slowly occurring in some code, though not all of them. Some programs continue to be very literal, but some are becoming more visually "Note 4", which means that the potential for computer language is not too important.

The GUI Builder is the easiest place to see this phenomenon. You can drag the user interface widget all day and all night without worrying about it as C, Java, or other languages. Details are encoded in a visual box.

Androidbuilder makes it possible to drag more layouts, which will faithfully write XML and Java Small code that requires code to run. It is difficult to discuss what the visual language will look like in the future, especially after they have not been aware of the prophecy many times, but as they grow, the tools will add more visualizations. This means that the language is not so powerful or important.

Code is legal

Computer language has great agnostic. They are designed to be open, receptive and almost infinitely stretched. They intend to do whatever you want. Of course, sometimes you need to use some extra characters because of the syntax, but these are few keystrokes. After that, it was mostly if-then-else, plus occasional clever restraints. All these languages will help you to get the results you want, in the way you wanted them. If there are some harsh words, then they should be designed to keep your code as free as possible, and not to limit what you can do.

The power of the framework is right here, which is what designers can decide what is allowed and what is essentially forbidden. If the designer doesn't want something to happen, then the magical function call disappears from the API. If designers like the idea, then there are often multiple function calls and many support tools. This is why Harvard Law School professor Larry Lessig "Note 5" Why you like to say "code is Law".

The framework establishes rules for the corners of the internet in which they are located, and once you choose them, you must live under the rules. Some blogging platforms encourage links to other blogs through Ajax calls. That's why you have to be careful with your research and smart choices. This is why the framework ultimately dominates all aspects of our lives, even those that we are not programming.

    • Note 1: Crossover compiler (English: Cross compiler) is a compiler that can produce an executable file for another system platform under one system platform. Cross-compiler is useful when the target system platform (the platform on which the application is developed) is difficult or not easy to compile. Http://zh.wikipedia.org/wiki/%E4%BA%A4%E5%8F%89%E7%B7%A8%E8%AD%AF%E5%99%A8

    • Note 2: Bit splitting (bit banging): a technology that simulates the serial interface standard (I²C, SPI, etc.) using the microcontroller's universal port.

    • Note 3:off The grid: Do not use water, electricity, credit cards, or social networks to avoid leaving records; Http://www.urbandictionary.com/define.php?term=off+the+grid

    • Note 4: The Visual programming language (Visual programming language, hereinafter referred to as VPL), also known as the ' graphic language ', ' Visualization program language '. Users use graphical elements for programming, unlike text-based programming. VPL is based on visual expression, using ' grammar ' or some sort of ' auxiliary marker ' to arrange graphics and text. Many VPL are built on the concept of ' blocks and arrows ', with blocks or on-screen objects as the main body, with arrows connected to each other, with straight and curved segments representing each other's relationship. Http://zh.wikipedia.org/wiki/%E8%A6%96%E8%A6%BA%E5%8C%96%E7%A8%8B%E5%BC%8F%E8%A8%AD%E8%A8%88%E8%AA%9E%E8%A8%80

7 reasons the framework becomes the new programming language

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.