F
F
Faber Estello2018-03-05 12:49:27
JavaScript
Faber Estello, 2018-03-05 12:49:27

Javascript frameworks - a tribute to fashion or speed and convenience?

The front-end world was suddenly swept by a wave of js frameworks (React, Angular, Vue, ...).
As they write on habré:

JavaScript frameworks can be a lifesaver for rapid web application development

Do I understand correctly that a web application is a multi-page site like airbnb , amazon , uber , and other services with online orders, payments, ... ?
What is a web application?
Well, if so, then we can assume that for such js services, frameworks are really convenient. A large team of developers is working on them, but now there are many orders on exchanges with a request to use js frameworks for layout of online stores and almost for landing pages.
Just because it's trendy?
Isn't it easier to create pages using only html, css, js, and wouldn't it be faster than setting up a collector, creating a template in different folders?
So far, it’s already scary to start learning js frameworks because of the cumbersomeness of just the project settings.
Here is the code for one such application:
<template is="light-core-template" shadow-dom="" parent-tag="my-application" ready="">
<light-core-ajax src="{{configUrl}}" on-success="_configLoaded"></light-core-ajax>
<template is="light-core-template" if="{{content !== null}}">
  <light-core-state-machine>
      <light-core-state state="page" on-state-change="_onPageChange" route="(/:page)">
      <light-core-state state="product" on-state-change="_onProductChange">
      <light-core-state state="about" on-state-change="_onAboutChange">
  </light-core-state></light-core-state></light-core-state></light-core-state-machine>
</template>


<template is="light-core-template" if="{{showScene}}">
  <main id="main" role="main" class="u-fixed u-pos-tl c-stack-wrapper c-draggable  {{isMenuActive ? 'is-zoomed-out' : ''}}">
    <app-slideshow current-index="{{currentSceneIndex}}">
      <app-slide id="about-region" disable="false" class="u-viewport-fit-w u-pos-b u-absolute u-pos-tl u-overflow c-stack is-prev">
         ...

Is this valid, why then html at all, if thanks to js frameworks everything is typeset with custom tags (template)?
It seems that programmers do not simplify the possibility of development for themselves, but rather complicate it every year.

Answer the question

In order to leave comments, you need to log in

9 answer(s)
M
maxbublik, 2018-03-05
@maxbublik

JS frameworks have been front-end for a few years now, and it's not a fad, and it's not going anywhere. Just like traditional layout will not go anywhere. They will live together. A clear line between websites and web applications cannot be drawn, but the essence of the question of the author of the question is clear.
Of course, doing a simple landing on something like Angular / React is a clinic. Although if interactive blocks are needed, it is obviously better to use Vue than to fence something in jQuery. Vue is just great in that you can use it only for individual widgets, and continue to write the rest of the site as you please.
The Vue framework itself and your Vue widget code do not always need to be compiled. Templates for Vue don't look like the nightmare in the listing. It’s not necessary to type everything with custom tags, for me, this is also a clinic. Yes, you still have to assemble it into a product, and the assembly is always difficult, and this is an anchor that you will have to drag for several more years, but over time you get involved, the assembly script wanders from project to project. Assembly will have to be patient.
In short, if you make up but you don’t know anything more complicated than jQuery in JavaScript, then you are in the ass. And every year you get deeper.

D
devunion, 2018-03-05
@devunion

And I'll put in 5 cents about the benefits of Vue. I started learning Angular a few years ago. I came to the conclusion that there are interesting ideas, but somehow everything is done through one place. Spat. I continued to use jQuery (I hope that the need to use jQuery or similar libraries does not raise any questions. You can optimize performance for a long time and effectively only later, when it is really needed. In most cases, it does not reach optimization at all). Then I looked at Vue. Liked. Been using it on various projects. I used to start making simple jQuery projects. there seems to be no need to drag the framework. In the future, it turned out that as the project developed, jQuery no longer met all the needs. Rewrote with Vue. Probably, in the future I will immediately write everything in Vue and not bother.
Conclusion: try it, you won't regret it!

X
xmoonlight, 2018-03-05
@xmoonlight

but now there are many orders on exchanges with a request to use js frameworks for layout of online stores and almost for landings.
Just because it's trendy?
YES. And nothing more...
It seems that programmers do not simplify the possibility of development for themselves, but rather complicate it every year.
YES. You speak right! The current trend: the task is not to do it (quickly and well), the task is to earn (everyone and more).
1. Everything can be done natively (vanilla.js, pure js). As a last resort - on the same Jquery.
The main thing is to correctly build the architecture .
2. The financial side of the issue: accustom to their framework and PR-yat everywhere in order to then:
PS: it makes sense to develop something from frameworks, if it is not "out of the box" and create with the simplest understanding and use of the tool.
Here is an example of my module (in "pure" js): includeHTML (only 1 function...).

A
Alexander, 2018-03-05
@LordGuard

For me personally, it is much easier to write a relatively complex landing page with various animations on nuxt.js (vue.js + SSR) than on pure js. What can we say about more sophisticated sites. And I generally know what I'm talking about. Recently I rewrote one project on vue.js, which before that I myself wrote on php + jquery. And I noted for myself that a lot of the points on which I got stuck for several days with jquery - with vue.js were solved in a couple of lines of code. It's really convenient.
PS: a project on vue.js deploys in 3 minutes using vue-cli, and with nuxt in the same time with configured server rendering.
PSS: yes, and there are some pitfalls and it may take time to analyze them, but they are many times smaller and gradually you start thinking about other, much more complex and important issues.

P
Programmir, 2018-03-05
@Programmir

Tribute to fashion. Everything can be done with jquery. I tried to learn react, vue - some kind of dregs. It is not clear why they are needed, they only complicate everything.

A
Alexander, 2018-03-05
@alexmixaylov

Isn't it easier to create pages using only html, css, js

maybe in something simpler, but using the same CSS preprocessors like LESS or SASS
, you greatly simplify your life by using at least variables and mixins,
and if you need to change something, and this often happens ....
the same with JS, if you use the same VUE (angular and react are much more complicated), you can save yourself from writing routine tasks from scratch

D
Denis I., 2018-03-06
@dplsoft

IMHO, there are several aspects.
you need to understand that javascript is useful, but "overrated". they shove him wherever they get, even where he is not needed in the quantities in which they shove it. and then they have a shit code that no one except the author is able to understand how it works.
hence the correct understanding about javascript frameworks: this is a necessity that has been elevated to the rank of fashion and is actively exaggerated.
those. you need to automate the behavior on the page, but today there is a lot of speculation around this, and frameworks created not out of necessity or not to solve specific problems, but for the sake of sugar, beautiful principles and for the sake of beautiful "magic".
why do you think jQuery is more alive than ever? Is it the presence of megatons of all sorts of super duper fancy frameworks? because it is relatively simple and straightforward. it probably doesn’t have the best architecture, it doesn’t have the most ideal principles in terms of design patterns, but it’s simple, it allows you to solve your problems here and now without turning your server part inside out for the sake of observing another feature of a mega beautiful architecture, which came as a revelation to the architect of what some angular, and without which this mega harvester works.
declarative templates, "correct" mvc (naturally correct in the brains of the author-theorist of the framework), dynamic rendering of elements in large lists ... all this is beautiful only in the course format after 2 semesters of training, and when you end up with ctrl-f it doesn’t work on the page and the client eats your brain, and all you can say is “this is how the framework is arranged, display a list of elements” - this is not funny at all, this is the brain javascript of the authors of such pages, sorry)))
in general, the framework is - the topic is necessary, but do not allow a situation where you have more javascript in the system than the server part. too thick javascript - it ends badly, especially when you have an enterprise project, long deadlines, and the need for refactoring.
it is about refactoring that those who choose a beautiful, correct framework are forgotten)))
although if your task is to "secure a lifelong stream of income for yourself", in such a way as to twist the client's hands and blackmail him "do not increase salary - I will dump into the fog" because with no one else is able to work with your work, because what you have done is basically not supported and no one understands it except you - then of course arm yourself with a bunch of trendy frameworks, be in trend and do everything on the right frameworks, splurge .. .and may luck help you not to be nailed around the corner by your own clients.))

O
ozknemoy, 2018-03-06
@ozknemoy

for applications and complex sites, frameworks, for regular jquery sites. the most interesting is where that border is difficult / simple

N
Nurbek Nurjanov, 2018-12-26
@nurbek_nurjanov

Nobody gave you a good answer.
Why do we need a spa - it's hard to divide the work into backend and frontend.
The work of a sideman is sharply reduced by 100 times. Not 2, not 3, but 100 times roughly speaking.
Because the backend is no longer involved in generating html code. Backend takes only restfull and that's it.
The rest of the front-end worker himself cherachit.
And it's buzzing when the cutlet is separated from the impudent fly. :))

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question