------ research study on js library reference

1 Introduction

To illustrate this issue from the following aspects:

  1. characteristic.

  2. stability.

  3. performance.

  4. Pack Eco.

  5. community.

  6. learning curve.

  7. Documents.

  8. tool.

  9. Development History.

  10. team.

  11. compatibility.

  12. trend.

2. General & Intensive

characteristic
       When you research a JS library, of course, is the most important function, like the UI interface is very convenient for the development React ratio, which is part of the factors that pop up.

React to solve the problem but very focused, for example, then the Router and Store section to the community to the solution, which allows the official Vue of maintaining the ecological model of development again. But more depends on your preferences, such as lodash streamlined library will be focused, it is capacity provided by this library if you solve business problems.

Rating: A - BUG small, convenient debugging. B - will not affect your stability, such as the probability of BUG and your business code similar. C - the introduction of this library will let you back line failure.

performance

If you let the user 15 seconds to open a Web page, it was all in vain.

Take PReact as an example, why the same API wheels can survive? Because of the small size, but also to promote PReact focus on performance.

How to understand a word you say is not made useless wheel in? Better performance.

Rating: A - small size, high performance, support a variety of features such as Black & Tree shaking. B - no impact on performance. C - resulting in reduced performance.

Pack Eco

   

Used monaco-editor do? Everyone but it has to go amd line with webpack, I do not know what method you use it to support commonjs, but you certainly wasted a lot of time.

Eco package including third-party package maturity, ease of use package, how many support a modular approach, whether to support TS, there is no manage their dependencies, and so on.

Out of the box is the best, long-term maintenance organization better.

And do not have too many competing community-based programs better. For example, the tool library with lodash It's easy, but React to choose which program data stream? Too many competitors continue to write soft snatch the user (programmer) attention, trying to convince them to work overtime reconstruction.

Rating: A - program unique and ecological functioning well, maintain a record of standards and smooth. B - a lot of red envelopes coming network, and select multiple competition. C - no one has given you to do the package, I want to use their own packaging.

   community

Stack Overflow can quickly search answers to their questions reflect the activity of the community, whether it is the official Q & A document or a third party.

The more active the community, the more help you advance step on the pit, if you encounter a problem we have not encountered before, does not mean you have to use multiple depth, and you may simply use the wrong library.

Rating: A - Daily forums are active, Github issue Nissin problem. B - forums / chat rooms less active. C - in addition to boast of documents, could not find any information about the.

 

Do not think the library function to do strong, even if the user will have difficulty with the point knelt lick, it is an illusion.

Vue are so popular, is because the native HTML threshold is lower than the JSX, using React users tend to feel JSX lower threshold than HTML. I do not know how to describe, can produce everything from the perspective of JS, learning HTML but was considered a manifestation of the high threshold.

So recognize the reality, JSX Star multi not how advanced the theory (theory really advanced), but many people feel that the overall maintenance costs lower than learning HTML.

Rating: A - day can become skilled workers moving bricks of this library. B - a waste of a week to put into use. Only to find the school a week before understanding is wrong, but also realize that this is just the beginning - C.

File

Written by the author of the document library are generally people that this experience would be more rich people in general, writes in documents generally do not consider the feelings of beginners, so find a beginner-friendly document was quite easy.

For the defenders of the library, to stand in the perspective of a beginner to write a document, users stand point of view, if you can not read the beginning of the document, it is best as soon as possible from another document or another library.

Rating: A - site devoted to the defense documents, videos, pictures, sample projects, no matter how little, then you can have a special foundation organization programming competitions, entry may completeness powerful mapping technology ecosystem through a three year olds day. B - there are basic Readme and API documentation. C - Readme written Create react app, the only other source of investigation.

tool

Tools can be reflected in the dimension of the advantages of this library, first had brought ease of use, and secondly to show the strength of the team to maintain strong (energy overflowed into the surrounding tool can do a).

The reason why such a fire Redux, Redux dev tools contributed, I read some psychology books, also experienced some technical selection, see Redux dev tools, graphical interface, the brain because of the visual impact than by rational logical thinking too big, subconscious plus a lot of points to Redux, leading to discuss the results have become less rational.

If your library can graphically express, or do a PPT or aid, it would certainly be greatly extra points. (React chrome plugin bright when you open the page react to do it really cool, great sense of the medal ceremony, so I do not want to change a frame)

Rating: A - two or more tools, including browser development, code editor expand, CLI tools or SaaS service, the strength of RCC then there will be a lot of fancy aids appear. B - a tool. C - no tools.

Development History

A Star 10K library, if the first submission is ten days ago, if not brush it's best not to use, because they do not know when the author is no longer maintained.

The more a long history of library use smaller the risk, unless it was eliminated in the face (technology stack, ecology, programming language, etc.).

Rating: A - more than four years, authoritative certification. B - 1-4 years, many people have been using before. C - the author himself did not used to use Amway you go online.

team

To see who is the man behind the library. Large corporations widely used open source library, and have some international influence, but also the success of open source giant historical experience, it would increase convincing.

But Vue is an exception, with almost single-handedly build a freshman in particular, for this situation, I want to say is really a love of technology and practice full time maintenance man, perhaps more than a byproduct of the maintenance team carrying a KPI closer spectrum.

Rating: A - first-tier manufacturers, quality certification authority. B - Medium maintenance team, and there is a clear division of labor record. C - Outside of work out the way open source, there is no intention to be responsible for the library.

compatibility

In addition to browser compatibility, compatibility API library is also very important. When you can easily reach the author, and changes to the API proposal is adopted quickly, you have to be careful.

React Router 3 -> 4 upgrades pains we have experience before, babel7 also bring a lot to give up stage 0-4 Tucao, Angular1 distinction between direct and Angular2 so many people turn black powder. While many times frequent updates to add new features, but if you bring API compatibility issues, but will provoke resentment.

If your team to maintain 10 years, because of the very hard work of a library update leads to time dimension, a uniform distribution of the dozens of different versions, you'll swear next item is no longer using this library a.

Rating: A - always compatible upgrade, it is impossible to advance warning and told that a version will be discarded, and provide migration tools, such as React. B - but there are Break Change the upgrade changes the document very clearly written. C - the sudden arrival of a small version upgrades allow the calling code before you have to reconstruct.

trend

Speculation Ye Hao, Ye Hao to discuss, to keep everyone fresh attention to this very important for the library, because it can be associated to let the library do a lot of the above said point.

But note that excessive speculation, may reduce the stability of this library, after all, before the user explosive growth, the best part when mice.

Rating: A - is HackNews star of the topic, Star tens of thousands, all kinds of meetings this name (Vue conf, React conf). B - hundreds of Star, have some discussion. C - Do not look now less Star, sooner or later I will be more than what we get at it.

Moving costs

This supplement is the author of more important day: If you do not have this library one day, and be replaced by another cost how much?

This aspect of test libraries do well, many mainstream test script library, such as between Jest, Ava, Mocha, Jasmine and others have system conversion, the industry basically reached some consensus and norms.

Compare pits are React, Vue, Angluar, after you use basic was bound, so far no one can do seamless migration of major framework. Of course, JS age is still very short, and that is not good in the future will be to subvert the new language, technology, container and history, standardization is not impossible but it takes time, perhaps in more than a decade later, but today is not to do to.

3 summary

The next discussion of technology selection, you can come up with a rule than a right!

Then the technology selection is a basic library use these foundations can maintain their own open source libraries, and more time on creating business value.

Careful consideration will find programmers to develop the tool library is also suitable for the concept of points, lines and body. A library react-button is a point, and it is in line react if people abandoned, countless react-xxx will capsize. And react, vue, angluar these lines in the face js engine, when you can write WebAssembly with C #, Reason, Blazor, Dart browser will gradually become the protagonist, react like the library should all be melted down to build. When future human-computer Internet browser is not required as a medium, js engine attached to the surface of the body - human-computer interaction scenarios have been knocked over, this wave will cause much change.

Therefore, selection of technology to solve current business problems, careful consideration of several factors, suitable for solving business scenario is sufficient.

 

Guess you like

Origin www.cnblogs.com/zhouyideboke/p/11571488.html