Top-level JavaScript frameworks, libraries, tools, and their use

Source: Internet
Author: User
Tags ruby on rails microsoft edge

Almost every one weeks, there is a new JavaScript library sweeping through the network community! The Web community is increasingly active, diverse, and growing rapidly in many Areas. To study every important JavaScript framework and library is an impossible task. next, i'll share some of the most famous and influential frameworks and libraries developed by the front end. below, Let's take a look at the top-level JavaScript Web front-end frameworks, libraries, and tools and their use.

Please note:

    • If you don't have a frame or library that includes your favorite JavaScript, please forgive it.
    • Please update your frames and libraries in real time, with the latest versions often having better cross-browser and Cross-device Support. You can use the same tools as the instrumentation device to help determine whether an older version is compatible with the best-configured device.

next, Let's take a look at the list below!

AngularJS

AngularJS is a popular enterprise framework that many developers use to build and maintain complex Web applications. AngularJS is very popular, and many companies use it, like Domino's pizza, Ruian airlines, iTunes connect,paypal payments, google, etc. AngularJS is an open source framework supported by Google. AngularJS describes itself as an extension of HTML that can be used to build complex Web applications. In addition, if you are familiar with TypeScript, you will be well aware of how AngularJS is Written.

AngularJS is an MVC-type framework that provides a two-way data model and a binding between views. This data binding allows automatic updates to occur whenever there is a change in the data on both Sides. It allows you to build reusable View Components. At the same time, it also provides a service framework for easy communication between the front-end Services. finally, It's just plain JavaScript.

When do I use AngularJS? When you are building a complex Web front-end application and need a modular framework to handle EVERYTHING.

 React

React is the most beloved JavaScript project of the year! Everyone seems to be talking about Reactjs. At each meeting, at least two people were talking about React at a meeting last Year. React is open source, mainly developed by Facebook with the help of other companies ' major Technologies. React describes itself as a JavaScript library for building user Interfaces.

React in MVC, mostly View. It's completely focused on the MVC part, ignoring the rest of the Application. It provides a component layer that makes it easier to use UI elements and combine Them. It abstracts the DOM, makes it good at optimizing rendering, and allows Node. JS to express React; It implements a one-way, flexible data flow that makes it easier to understand and use other frameworks.

As with V in MVC, many works with React and AngularJS or Ember together.

When do I use React? When you want a strong view layer, but other parts of the app don't need a detailed framework, or when you want a view layer that combines angular, Backbone, or Ember in your app, or when you create an isomorphic Web Frame.

  Backbone

Backbone is a well-known simple framework that incorporates a single JavaScript File. Backbone Popular for some time. Developed by Jeremy Ashkenas from the Coffeescript and underscore frameworks. Backbone is particularly popular for teams seeking small architectures. Because their small Web applications do not need to use large frameworks such as AngularJS and Ember.

Backbone provides a complete MVC framework and Routing. The model allows Key-value bindings and events that handle data changes. Models (and Collections) can be connected to the RESTful API. Views can declare event handling, while routers can handle URL and state management very Well. Provide all the features you need when creating a single-page app that doesn't offer too many features and unnecessary complications.

When do I use Backbone? Backbone is a GOTO framework for simple Web Applications.

 Ember

Ember is a standalone WEB application framework that focuses on coding efficiency. Ember is a popular, core team including Yehuda Katz, a core team of Ruby on Rails and JQuery. Ember describes itself as a framework that does not waste your time and can be used to create great Web applications. This is very assertive, which also gives you a lot of options.

Ember is also an MVC Framework. It includes a template and a view engine that ensures Automatic updates when data changes, just like Angularjs,backbone and React. It includes a conceptual Web component that lets you extend HTML with your own tags (just like AngularJS). It also has a routing and model engine that can work with RESTful Apis.

When do I use Ember? If you just want a working framework, or if your budget is tight, or deadlines are near, don't pursue too much flexibility, you can use Ember.

JQuery

JQuery is a framework that does not require much Introduction. It makes Cross-browser sites a reality and enables the Web to evolve Today. JQuery is one of the reasons that WEB standards are truly respected by most major browser Vendors. The mission of the JQuery Foundation is to "develop and support Open-source software, open up the network, make it accessible to all, and work with the development community." ”

JQuery is the most commonly used JavaScript library in the world, and no application does not use it unless it does not care about coding Efficiency. It makes DOM traversal, event handling, animation, AJAX so simple and easy in all Browsers.

When do I use jQuery? You can use JQuery in addition to the lightweight version you want to use like zepto.

 Wijmo

Wijmo Enterprise is a set of development controls that includes HTML5 and JavaScript for business application Development. Includes advanced JavaScript controls, classic JQuery widgets, financial icons, and Flexsheet and OLAP to meet the needs of mobile, PC-side, and IE6-enabled applications. At the same time, Wijmo also supports other popular frameworks, such as Angular, Angular2, KnockOut, Vue, React, etc.

When do I use wijmo? When you want to build a user interface that has a good user experience for your Application.

 Underscore&lodash

For the program developer, some JavaScript built-in, the efficiency is not high enough. There is always a lack of functional functionality or a function to simplify the Code. Underscore (and Lodash) is a JavaScript library that provides practical functionality without the need for a built-in monkey patch for JavaScript objects. Both libraries provide more than 100 helper functions and other particularly useful features, including maps, filters, calls, cuts, templates, adjustments, bindings, extensions, picks, clones and More.

When do I use underscore? When you need a single JavaScript file to improve coding Efficiency.

When do I use lodash? When you need a module and lightweight and efficient, easy to be supported by AMD and community plugins when underscore version.

 D3.js

Data visualization and charting are common requirements for Web Applications. When it comes to any data manipulation and visualization, d3.js is the de facto Standard. It is one of the most popular projects on GitHub and is used by hundreds of organizations. A large number of graphs, graphs and visual libraries are built on D3.

D3 allows you to manipulate files of any data source and can be converted to DOM, SVG, or CSS. D3 focuses on modern network standards and ensures that proprietary formats like Flash or Silverlight are Free.

When to use D3. Js? When you need any form of Visualization.

Babylon.js

Want to create a video game that runs completely on modern WEB standards and cross-browser? Consider Babylon.js,babylon.js to be a 3D game engine built on WebGL and JavaScript. You can create an incredibly high-quality game engine that includes physical, audio and particle systems.

When do I use babylon.js? When you are building a video game that contains any complex 3D Scene.

 Three.js

Want to create a 3D visualization without the need for a full game engine? Three.js provides a lightweight 3D library to render a HTML5 canvas, SVG, and WebGL. This is indeed a clear library, with hundreds of examples of good results in Three.js's use case Presentation.

When do I use three.js? Whenever you need a simple three-dimensional visualization, you can output it to the Canvas.

Mocha & Chai

For a long time, JavaScript testing was incredibly annoying. From scratch, testing any code is often considered annoying, but it's what every developer should do. At the same time, testing their code, each developer always seems to be very dismissive, and choose to ignore it. There is a way to improve the problem by using the form of Mocha & Chai. Although the two libraries get their name from tasty hot drinks, They can test your code in different ways.

Mocha is a JavaScript testing framework that makes it easy to test asynchronous code in node models and browser Applications. Mocha tests can be run in tandem and have high-quality tracking exceptions for the correct test cases.

Chai is a Behavioral-driven development/test-driven development assertion Library that can be used with MOCHA. It makes it easy to express your test content in a readable way.

When do I use Mocha and chai? It's always possible! Please test your code to make the world a better place.

 Karma

This list contains Mocha and Chai, which would be incomplete if you did not include the runner who ran the tests and set up the continuous integration tests. Karma is a tool designed to help you run tests automatically for different browsers. This will help you to run Mocha and Chai on all Browsers.

Not every browser can run on every platform, fortunately, there are some free tools that you can use to test other browsers, such as Browsers. If you run on OS X and want to test Edge or Internet Explorer, You can use this free Tool.

When do I use Karma? When your application has a complete test suite and wants to make sure that the test passes on all Browsers.

 Phantomjs

Run a full-featured browser to test your code for memory and CPU Intensive. PHANTOMJS allows you to run headless WebKit's rendering engine on Safari and Chrome. This allows you to run your tests, capture the screen, monitor the network, and automatically navigate the page using the JavaScript API.

When do I use phantomjs? When you need to do more testing, manipulate the page and monitor network Requests.

Grunt & Gulp

Product website construction usually involves some tasks such as reducing JavaScript and Css,coffeescript/typescript compilation, unit testing, Performance Lintin. Maybe You've got the toolchain ready for the product site, but if not, you can use tools like Grunt and Gulp. Both tools have a number of plugins to help you refine your product Website.

When do I use Grunt? If you prefer to write a configuration file and do not mind when the task runs during the intermediate file Generation.

When do I use Gulp? If you prefer to write code compared to a write configuration file, and you want to use Node. Js's streaming capabilities to perform tasks Faster.

 Babel

JavaScript, as a language, develops rapidly. In the summer of 2015, ECMAScript released many of its new features implemented in the latest Browsers. If you want to see the 2015-year ECMAScript compatibility, you can look at the list from the original @kangax. You'll find the latest version of Edge,firefox and Chrome, with almost complete Compatibility.

We are not living in a perfect world. As a developer, we need to continue to support legacy browsers that don't have the latest JavaScript Features. We want to push the network and improve our code Base. Babel is a JavaScript compiler that compiles the latest JavaScript standards into ES5-compatible javascript, allowing you to run on older browsers like IE9. It has a few plugins that make it easy to use React to develop and even use features other than specifications.

When do I use Babel? When you want to use the new JavaScript language feature while continuing to support legacy Browsers.

more web Development Practices

This article comes from a series of articles from the Microsoft Technical Evangelists and engineers in JavaScript learning articles, while the best articles include Microsoft's Edge browser and the new edgehtml rendering Engine.

We encourage you to test across browsers and devices, such as Microsoft's Edge (Windows10 default Browser)

    • Scan your site for out-of-date libraries, layout issues, and accessibility
    • Download free virtual machines for Mac, Linux, and Windows
    • Check Web Platform status across browsers including the Microsoft Edge roadmap
    • Remotely test for Microsoft Edge on your own device

Learn more in depth from engineers and evangelists

  • Coding Lab on Github:cross-browser testing and best practices
  • Microsoft Edge Web Summit (from Our engineering team and JS Community)
  • woah, I can test Edge & IE on a Mac & linux! (from Rey Bango)
  • advancing JavaScript without breaking the Web (from Christian Heilmann)
  • the Edge Rendering Engine that makes the Web just work (from Jacob Rossi)
  • unleash 3D rendering with WebGL (from David Catuhe)
  • Hosted Web Apps and web platform Innovations (from Kevin Hill and Kiril Seksenov)

Open Source Community Projects:

    • Vorlon. JS (cross-device Remote JavaScript Testing)
    • Manifoldjs (deploy Cross-platform hosted Web Apps)
    • Babylonjs (3D Graphics made Easy)

More free tools and back-end Web development

    • Visual Studio Code for Linux, MacOS, and Windows
    • Code with Node. JS with trial on Azure Clo

Article source: by Rami Sayar

Original Link: Http://www.codeproject.com/Articles/1066408/Top-JavaScript-Frameworks-Libraries-Tools-and-Wh

Top-level JavaScript frameworks, libraries, tools, and their use

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.