Svelte, un cadre en voie de disparition qui ne disparaîtra pas

Lorsque l'autre jour, dans notre confortable @sveltejs le chat chambre, ils envoyé un lien de télégramme à l'autre « révélant » l' article sur les Svelte, je suis très heureux, anticipant une bataille technique intéressante ou tout au moins une lecture intéressante de quelqu'un d'autre expérience pratique. Outre le fait qu'il est toujours intéressant et utile, un certain ensemble de circonstances - des vacances et une mise en quarantaine planifiées - m'ennuient à la maison, et un article similaire pourrait quelque peu diversifier ma journée. Imaginez ma déception, vous ne pouvez même pas imaginer ... mais passons aux choses sérieuses.



Pour clarifier encore une fois, cet article est une réponse à la publication "Svelte, un cadre en voie de disparition qui n'a toujours pas disparu" .

Avertissement
, , -, . , - — , , « ».

Malgré le fait que l'auteur de l'article original, cher action52champion, est clairement dans un état déprimé, probablement causé par l'auto-isolement et la crise mondiale, sur laquelle il écrit directement:

action52champion : Paranoïa, dites-vous, et vous avez raison. Mais mon thérapeute est occupé à soutenir les victimes de coronavirus. Ils en ont besoin. Par conséquent, je dois vous prononcer.

J'essaie toujours de rendre la publication de la réponse aussi utile, intéressante et surtout PAS diabolique, présentant tout comme une sorte d'interview de l'auteur de l'article original avec moi. En cours de route, je vais essayer de répondre à certaines questions fréquemment posées sur le choix de Svelte comme outil, comment exactement il a été mis en œuvre dans notre pays et ce qui se passe aujourd'hui. Je vais vous raconter quelques histoires. Donc dans l'ordre.

Entretien


À propos de moi


action52champion: . : Angular, React, Vue. , - Svelte production-ready .

Bonjour champion d'action, je suis très heureux d'être ici, merci de m'avoir invité! Je m'appelle Pavel Malyshev, je suis l'auteur de tous ces merveilleux articles (même si la plupart sont des traductions) qui vous accablent. À ce stade, je dirige le développement d'un petit studio à Nizhny Novgorod dans les domaines du Web et de la Smart TV.

Même si l'un de nos lecteurs ne suit pas Svelte, il peut peut-être me connaître grâce à mes rapports lors des plus grandes conférences informatiques en Russie et dans la CEI, telles que HolyJS, RIT ++, FrontendConf, DUMP, CSS-Minsk-JS, Yandex events et toutes sortes de mitaps dans différentes villes de la Fédération de Russie.

Il m'est également arrivé d'être un héros des numéros de RadioJS n ° 54-55, des normes Web n ° 170, de Devshahty n ° 94 et de quelques autres. Outre Svelte, j'aime parler des applications web isomorphes avec SSR, PWA, composants Web et SmartTV.

, Svelte


action52champion: , , , .

Grande question! Le fait est que j'ai eu la chance de pouvoir prendre des décisions individuellement concernant certaines des technologies qui seront utilisées sur un projet particulier dans les domaines de développement que je supervise. De plus, mon niveau technique et mon expérience (plus de 13 ans) permettent, me semble-t-il, de faire ce choix le plus équilibré possible.

Malheureusement, dans les entreprises informatiques, la personne qui prend de telles décisions est souvent très dissociée du processus de développement et des technologies.Par conséquent, elle n'est pas guidée même par l'opinion de ses développeurs, mais par certaines options de décision et battage médiatique généralement acceptés. Autrement dit, ils raisonnent à peu près comme vous: "il y a les trois grands et c'est plein de solutions toutes faites pour cela, que penser alors."

Étant donné que notre studio est très petit et que je participe directement au développement de projets et que j'écris du code, j'aborde le processus de choix des technologies le plus scrupuleusement possible et les solutions sont mises en œuvre progressivement et systématiquement, mais avec audace.

En parlant spécifiquement de Svelte, le premier projet pour lequel je l'ai sélectionné en 2017 est un widget intégré pour les sites. En fait, le choix n'était pas génial - ni la vanille, ni ce qui se compile en vanille. Même notre bien-aimée Vue à ce moment sous sa forme pure pesait ~ 25Kb gzip, ce qui est monstrueux pour un tel projet.

Le choix s'est avéré extrêmement réussi, et à la fin, nous sommes arrivés à la conclusion que si nous nous étions arrêtés sur de la vanille pure et que nous avions tout écrit à partir de zéro, nous avions très probablement manqué les délais et possiblement perdu de l'argent. Mais nous avons eu la chance de retrouver Svelte, bien qu'à ce moment-là personne ne le sache vraiment.

La même année, après avoir terminé le projet, j'ai écrit mon premier article sur Svelte sur le Habr «Magically Disappearing JS Framework» pour partager un nouvel outil prometteur avec la communauté. Naturellement, l'article a été accueilli plutôt froidement, ce qui peut être confirmé par le fait qu'un article plus ou moins technique avec des exemples de code et un bon design a ensuite collecté 3 fois moins de plus que votre «vyser» profane aujourd'hui. En fait, c'était l'un des premiers articles sur Svelte en général et pas seulement russophone.

À propos des articles payés et quel est le «profit»


action52champion : La prochaine fois, j'ai été hanté par le sentiment que quelqu'un venait de griffonner des messages personnalisés.

Soudain, j'ai pensé qu'une partie du temps que je consacre au développement communautaire de Svelte est en fait payée par mon travail. Vous ne savez pas si mes matériaux doivent être considérés comme sur mesure?

Il semble que dans une interview, j'ai dit qu'en plus de promouvoir un outil décent que j'utilise dans mon travail et d'aider sa communauté / développeurs, mon intérêt indirect est dans le fait que les programmeurs Svelte, les postes vacants pour eux apparaissent sur le marché, et les clients sont plus fidèles à l'utilisation de cette technologie. Et bien sûr, ce n'est pas seulement cela, le fait est que l'utilisation de Svelte facilite notre travail et nous fait gagner du temps et de l'argent.

D'accord, je vais vous expliquer comment cela fonctionne. Les clients sont généralement divisés en 2 catégories:

  1. - React/Vue/Angular/Ember/{ } — ,
  2. , .

Malheureusement, souvent les premières décisions sont imposées sur la base du battage médiatique / RP, ce qui, bien sûr, est plus fort pour les outils pris en charge par les sociétés (React / Angular) et / ou les communautés fortes (Vue + Chinese).

Il ne sert à rien de cacher que nous voulions l'outil que nous considérons comme le meilleur dans la liste des «cadres dont j'ai entendu parler» de nos clients. Non pas parce que nous sommes une sorte de masochistes ou de méchants et que nous voulons tout faire mal, mais parce que c'est un outil vraiment digne, à notre humble avis. Les solutions Svelte sont simples et efficaces. Le plus souvent, je regarde avec horreur les projets React, qui nous parviennent parfois à terme. Même une très belle et bien-aimée Vue par moi-même semble déjà volumineuse.

En général, je pense que la «glace s'est brisée» et nous avons atteint notre objectif. Si en 2017-18 il était possible de faire un projet sur Svelte uniquement pour les clients du 2ème type, alors en 2019-2020 beaucoup de gens ont entendu parler de Svelte et sont prêts à l'utiliser dans leurs projets. Presque tous les jours, des personnes, des représentants de diverses entreprises, y compris de grands services, m'écrivent dans un télégramme dans un chat personnel et Svelte, et posent des questions sur Svelte et son écosystème. Je suis heureux que vous, chère Action, m'ayez donné l'occasion d'en parler.

À propos de défauts spécifiques


action52champion : Je ne veux pas comparer Svelte et d'autres frameworks et passer par ses défauts spécifiques. Vous pouvez lire cet article pour plus de détails.

Ici, vous êtes malhonnête. Si je comprends bien, vous n'avez aucune expérience avec Svelte. Il me semble que vous n'avez même pas parcouru le Tutoriel sur son site officiel pour raisonner sur le sujet. Par conséquent, je pense que vous ne pouvez tout simplement pas faire cela. Si je me trompe, écrivez-moi à ce sujet et je suis prêt à le tester dans la pratique, par exemple en concluant quelque chose comme un pari avec vous.

À mon tour, j'aimerais considérer un cas spécifique, et j'ai déjà mentionné les principaux inconvénients de Svelte à la fin de cet article . De plus, beaucoup de matériel et de véritables critiques peuvent être trouvés dans notre discussion par télégramme . Nous n'avons pas de censure là-bas et vous pouvez écrire des questions sur le sujet.

À propos des trois grands


action52champion: : , , — ( ) .. , , . . -. - 5 . . . . . .

Vous savez, vous avez soulevé un sujet intéressant. Les trois grands projets sont-ils si «mûrs»? Peuvent-ils couvrir absolument tous les cas de développement web, répondre à tous les «nouveaux défis»? La réponse évidente est «non», car sinon nous n'aurions pas assisté à l'émergence de plus en plus de nouvelles solutions.

Est-il bon que de nouvelles solutions apparaissent? Certainement «Oui», car le temps passe et de nouvelles tâches, de nouveaux défis apparaissent. Il y a 10 ans, nous ne pensions qu'aux ordinateurs de bureau et à un âne, il y a 5 ans, nous pensions aux mobiles, aujourd'hui l'IoT, les appareils embarqués et portables passent au premier plan.

Je comprends qu'en tant que développeur sujet à des conditions dépressives, vous aimeriez que les progrès s'arrêtent ou même ralentissent. Pour rendre votre image du monde aussi simple que des bottes en feutre, il existe des cadres Big Three, pour ainsi dire, pour tous les goûts et toutes les couleurs, et vous savez exactement quoi faire. Mais chère Action, ce n’est pas le cas.

Ce n'était donc pas avec la première vague de frameworks frontend, ce ne serait pas avec les leaders actuels. Soit dit en passant, dans ce sens, je ne dis pas du tout que Svelte est nécessairement un nouvel outil de vague. Il a vraiment beaucoup repensé, mais en même temps, il l'a beaucoup ancré aux solutions existantes. Qu'il occupera une position de leader dans le nouveau panthéon des technologies frontales ou qu'il soit juste un signe avant-coureur de leur apparence, je ne sais pas, bien que je n'exclue pas une telle opportunité.

À propos de Vue


action52champion : Je me souviens comment Vue a décollé et gagné en popularité dans le contexte d'une réaction angulaire. Oui, il y avait des relations publiques, mais Vue n'avait tout simplement pas besoin de relations publiques. Il a résolu les vrais problèmes de ballonnement et de complexité d'autres cadres. Il a pris ce qui était réalisé chez les autres et réalisé sous une forme minimaliste. Il a résolu un problème spécifique - la complexité et la monstruosité de deux autres cadres. Quel vrai problème Svelte résout-il je ne sais pas. Ce qui est écrit sur leur site Web est une déclaration de bonnes intentions.

J'adore vraiment cette histoire. A propos de la façon dont la noble Vue, avec un beau design, a fait irruption de manière inattendue dans le cadre du panthéon pour tout le monde, l'illuminant par sa simplicité et sa concision. J'aime tout dans cette histoire, sauf que ce n'est rien de plus qu'un mythe. Voici un aperçu: voici le

code Vue (2014):

var app = new Vue({
  el: '#app',
  data: function() {
    return {
       greeting: 'Hello',
       firstName: '',
       lastName: ''
    };
  },
  computed: {
      fullName: function() {
         return this.firstName + ' ' + this.lastName;
     }
  } 
});

Et voici le code Ractive (2012):

var app = new Ractive({
  el: '#app',
  data: function() {
    return {
       greeting: 'Hello',
       firstName: '',
       lastName: ''
    };
  },
  computed: {
      fullName: function() {
         return this.get('firstName') + ' ' + this.get('lastName');
     }
  } 
});

Comme vous pouvez le voir, en plus des différences cosmétiques mineures, le reste du code est presque identique.

Vous direz peut-être que c'est une vieille école et tout le monde écrit sur Vue dans SFC (2015):

<template>
<p>{{greeting}} {{fullName}}</p>
</template>

<script>
export default {
  data: function() {
    return {
       greeting: 'Hello',
       firstName: '',
       lastName: ''
    };
  },
  computed: {
      fullName: function() {
         return this.firstName + ' ' + this.lastName;
     }
  } 
};
</script>

<style scoped>
p { color: red; }
</style>

Et je vous répondrai que "rien n'est nouveau sous la lune" (c) - Ractive (2014):

<p>{{greeting}} {{fullName}}</p>

<script>
component.exports = {
  data: function() {
    return {
       greeting: 'Hello',
       firstName: '',
       lastName: ''
    };
  },
  computed: {
      fullName: function() {
         return this.get('firstName') + ' ' + this.get('lastName');
     }
  } 
};
</script>

<style>
p { color: red; }
</style>

Et aussi ce DOM virtuel, ou DOM parallèle ? J'espère que je ne vous ai pas complètement confondu. J'ai parcouru les commentaires sur l'article original et j'ai réalisé que vous ne comprenez pas la différence entre le DOM virtuel et le DOM fantôme, qui découle clairement de ce commentaire:

action52champion : Shadow DOM a été introduit dans le framework pas d'une bonne vie. Son manque signifie que Svelte sera certainement plus lent, où il y aura de nombreuses mises à jour.

Apparemment, vous n'avez pas non plus entendu parler des composants Web, mais vous n'imaginez même pas pourquoi vous avez besoin d'un DOM virtuel. Rien, mais vous êtes un bon intervieweur, et pour cela vous êtes aimé.

Mais je vais continuer. L'une des raisons pour lesquelles nous avons déménagé à Vue en 2015 était que le Ractive que nous utilisons depuis 2013, en raison du manque d '«évangélistes agressifs», ne pouvait tout simplement pas éclater et accumuler de la masse. Dans le même temps, le jeune Vue, semblable à lui comme 2 gouttes d'eau, à la suite du soutien d'une communauté chinoise très cohérente et orientée vers le pays, a déjà commencé à faire du battage médiatique dans l'Empire du Milieu. Le déménagement s'est avéré être pratiquement gratuit, bien que nous ayons perdu certaines des fonctionnalités intéressantes de Ractive, que Vue n'a toujours pas.

Ce fut une leçon que vous devez également apprendre - pas toujours la meilleure technologie est au sommet. Il y a bien plus de facteurs que la qualité et le caractère innovant des idées. Il doit y avoir un moteur de croissance, que ce soit le soutien des entreprises ou une communauté cool. Juste comme ça, un diamant ne devient pas un diamant.

J'aime vraiment Vue et je pense que c'est l'instrument le plus approprié pour moi des Big Three, mais je comprends objectivement que je ne l'aime pas moi-même, mais les idées qu'il reflète. Les idées de Ractive que nous avons perdues.

Svelte, à bien des égards, est un adepte des idées Ractive combinées aux idées incarnées dans Rollup (par exemple, minimalisme, tremblement d'arbre, etc.) et cela n'est pas surprenant, car tous ces outils ont un seul auteur .

Plus récemment, Angular a introduit une compilation de modèles AoT similaire à Svelte. Savez-vous où j'ai vu (et même utilisé) quelque chose de similaire pour la première fois et cela nous a permis en 2013 de supprimer la partie du runtime qui fonctionnait avec les modèles? Eh bien, tu as un point.

Pourquoi si longtemps


action52champion : D'un point de vue pratique, une chose est importante - la façon dont le cadre résout les problèmes réels de l'entreprise. Et de ce point de vue, si vous prenez 2 frameworks qui résolvent les problèmes de la même manière, mais l'un d'eux a plus de communauté et d'écosystème, il est raisonnable de choisir ce dernier. Svelte est sorti en 2016. Vue est sorti en 2014. La différence est de 2 ans. Ceux. Svelte pourrait prendre en compte toutes les erreurs de Vue et devenir le meilleur, reconquérir le public et le marché. Mais il reste la plus grande marginalité connue principalement pour ses articles élogieux.

Avant de répondre à la question, je corrigerai légèrement votre affirmation. En fait, Svelte est sorti en 2017. Son auteur, Rich Harris, a parlé de lui dans ses «Cadres sans le cadre: pourquoi n'y avons-nous pas pensé plus tôt?» seulement à la toute fin de 2016.

De plus, Svelte 1 était plus probablement une preuve de concept, qui a été discutée plus d'une fois dans la communauté et dans la communication avec l'auteur. Malgré cela, c'est Svelte 1 que j'ai utilisé sur le premier projet avec un widget et pour cette tâche, cela a parfaitement fonctionné. À ce moment, nous avons continué à écrire sur Vue et à soutenir des projets sur Ractive. Le premier projet plus ou moins sérieux a déjà été développé sur Svelte 2, dont la sortie n'est intervenue qu'à la mi-2018, dont j'ai tout de suite parlé dans l' article correspondant .

Je dirais qu'à partir de la deuxième version de Svelte, en principe, j'ai commencé à avancer. Avant cela, ni moi, ni l'auteur, ni d'autres volants de la communauté n'ont fait de tentatives particulières pour parler de lui. Par conséquent, puisque vous souhaitez donc considérer l'année, il serait plus approprié de considérer la date de sortie de Svelte mi-2018.

Certaines ondulations dans les commentaires suggèrent que la date de sortie de Svelte soit l'apparition de Svelte 3, qui est généralement sorti il ​​y a seulement un an et a obtenu des résultats incroyables cette année. À ce sujet, vous pouvez rappeler Angular et AngularJS - deux frameworks différents sous le même nom. Personnellement, je considère que tous ces calculs ne sont rien d'autre qu'un populisme stupide.

Vous voudrez peut-être savoir pourquoi nous n'avons pas écrit plus de projets sur Svelte 1, car c'était si beau. Il semble que la réponse soit évidente - à ce moment-là, il était vraiment humide et ne convenait qu'à des projets tels que des widgets. Je ne peux pas dire que nous l'avons abandonné du tout. Plusieurs projets internes ont également été écrits sur Svelte 1, et des parties d'anciennes applications ont également été réécrites sur Ractive. Les composants qui constituaient les goulots d'étranglement dans les performances de Virtual DOM ont été réécrits avec succès dans Svelte 1 et mis en œuvre dans les projets, doublant les performances de ces composants. Ce fut également une expérience très positive.

À propos des frontaux stupides et gourmands


action52champion : Cela est particulièrement vrai pour ceux qui viennent d'entrer dans le frontend. Il conduit souvent pour de l'argent. Donc: il n'y a pas d'argent à Svelte. Il n'y a pas de travail non plus. Et le plus intéressant - il n'y aura pas d'expérience non plus.

Formulation très émotionnelle. Pour une raison quelconque, je pensais que vous n'étiez que l'un de ceux qui «ont déménagé dans le front-end pour de l'argent», et cela semble assez récent.

Si je me trompe et que vous êtes un frontal expérimenté, alors vous vous souvenez peut-être qu'il y a quelques années, le travail pour la même Vue n'était pas non plus terminé. Les emplois étaient fragmentaires et offraient moins d'argent que React, Angular ou même Ember aux développeurs. Dans le même temps, nous voyons maintenant que Vue a déjà pris une position digne. Pour Svelte, il est également inévitable que vous le vouliez ou non.

À propos de l'écosystème


action52champion: « » « , ». , , . ! 2020 — .


Quant à Svelte et son écosystème. Il convient de noter immédiatement que, malgré l'apparente simplicité et le minimalisme, Svelte est très complet dès la sortie de la boîte. En tant que cadre d'interface utilisateur solide, il a absolument tout ce qui est nécessaire pour créer une interface utilisateur moderne. Voici un diagramme des fonctionnalités intégrées que j'ai préparées pour l'un de mes rapports:



Par exemple, dans React, il n'y a rien du tout. Bien que React soit le cadre d'interface utilisateur le plus populaire, il n'est rien de plus qu'un moteur de modèle en termes de fonctionnalités.

Bien sûr, l'écosystème externe est encore beaucoup plus modeste. Cependant, Svelte dispose déjà d'une liste assez étendue de solutions toutes faites et de toutes sortes d'ensembles de composants que vous pouvez trouver iciet il se déplace dans cette direction exactement de la même manière que les autres cadres précédents. C'est dommage que des gens comme vous essaient sans réfléchir de lui saisir cette chance. D'un autre côté, je me souviens comment il y a quelques années, tout le monde a écrit la même chose à propos de Vue, et il y a environ 6 ans à propos de React et rien, ils ont percé. L'ignorant ne reste que l'ignorant.

A propos du "saint"


action52champion: , , — - . , 3 , . , , , , , . Svelte .

Je ne voudrais pas approfondir cette question pour ne choquer personne. Je peux seulement dire que souvent le même React est souvent critiqué précisément pour avoir été «affiné» par les particularités des problèmes de développement des entreprises de Facebook. C'est compréhensible, Facebook fait React principalement pour lui-même, et toutes les décisions qui sont bonnes pour Facebook ne sont pas bonnes pour vos projets, mais il n'y a personne pour se plaindre.

React est généralement un bon framework qui convient à de nombreux projets, en particulier lorsque vous avez besoin d'un excellent support Typescript. Mais il est loin d'être parfait et il a définitivement besoin d'alternatives.

À propos de toutes sortes de choses différentes


action52champion: , Svelte . JS VueJS, Svelte. Vanilla JS , ? , ? - ? Virtual DOM, ? Write less code? ? , , , Vuejs React - , .

Question éclair, excellente.

  1. Le minimalisme est réalisable. Des problèmes surviennent lorsqu'un principe différent est posé dans le fondement même de la solution. Par exemple, Reduh dans son essence ne peut pas être minimaliste en raison de l'abondance d'un passe-partout intégré. Dans le même temps, Storeon, travaillant essentiellement sur les mêmes principes, reste minimaliste. En général, tous les cadres modernes ont tendance à diviser leurs composants en unités les plus petites possibles. De plus, vous devez comprendre comment écrire le code le plus déclaratif et piloté par l'état.
  2. Ce n'est pas un choix entre Vanilla JS et Svelte. Svelte - c'est Vanilla JS, que vous n'avez pas besoin d'écrire et qui est beaucoup plus facile à maintenir et à développer.
  3. Typescript + — « », -. . TS. , Vue ? TS ± Svelte.
  4. , Virtual DOM. Svelte , change detection . .
  5. . . React Vue. 1.5 , .
  6. Puisque vous n'aimez pas les exemples de la documentation Svelte. Pouvez-vous suggérer des cas plus graves à partir de la documentation d'autres cadres?

Habituellement, pour expliquer brièvement comment fonctionne Svelte, j'utilise ce libellé:

Svelte vous permet d'écrire du code déclaratif de haut niveau dans les sources qui est facile à développer et à maintenir, et à obtenir un code impératif et performant de bas niveau qui fonctionne très bien à l'exécution.



Et cette approche est très différente même de Vue, dans laquelle SFC n'est rien de plus qu'un moyen plus pratique d'écrire Vue.extend.

À propos de la communauté


action52champion : Svelte aurait une grande communauté russophone. Je ne le vois pas, je ne vois que des évangélistes, chacun prêchant pour dix.

Heureux que vous ayez posé des questions à ce sujet. La communauté russophone est représentée par le chat principal dans les télégrammes ( @sveltejs ), un chat séparé pour le framework Sapper ( @sapperjs ), une chaîne avec des postes vacants ( @sveltejs_jobs ) et des actualités ( @sveltejs_public ), ainsi qu'un groupe VK ( @sveltejs_ru ).
Le principal mouvement est dans un chat dans lequel il y a déjà plus de 1,5K personnes et un squelette plutôt plein de camarades actifs.




Il y avait plus de 170 personnes lors de notre premier rallye offlan le 22 février à Moscou, et près de 1 000 visiteurs ont regardé la diffusion en ligne. Le prochain mitap devait être à Saint-Pétersbourg en avril-mai, mais la pandémie a ajusté nos plans. J'espère que tout ira bien bientôt et que nous continuerons. Vous pouvez suivre nos Meetups sur la page officielle des Meetups Svelte Russian .

Voyons qui d'autre parle de Svelte. Par exemple, voici le respecté Andrei Melikhov (Devshakhta) raconte comment Yandex.Money utilise Svelte:



Ici, une citation littérale d'Andrei Sitnik (auteur de PostCSS / Autoprefixer / etc) au HolyJS Piter de l' année dernière :
«Svelte est, franchement, la meilleure invention du monde des frameworks Javascript. Nous ne devrions pas parler de crochets, nous devrions parler de Svelte. »

Et même si, probablement, c'était une exagération scénique, ses tweets et retweets constants sur Svelte ne donnent aucun doute sur sa sincérité.



Bien sûr, je n'ai aucun doute que mon intervieweur respecté est plus intelligent que nous tous ... bien que non, j'en doute. Désolé, pensées à haute voix.

Sensibilisation des Pro (PAS)


action52champion : Contre -arguments de niveau - vous ne pouviez tout simplement pas comprendre Svelte - c'est généralement au-delà de l'humour. Les gens qui travaillent avec des angulaires et réagissent ne peuvent pas comprendre un petit Svelte simple? Il s'agit probablement ici de Svelte même. Ou qu'il n'y a fondamentalement rien à comprendre, car il n'y a rien de valable.

Il semble que j'ai déjà répondu à une question similaire, mais je suis prêt à la répéter, puisque vous m'avez fourni une telle opportunité. Un des problèmes que je vois personnellement en termes de promotion de Svelte est que visuellement, il est trop similaire aux cadres des Big Three, bien que conceptuellement il diffère beaucoup. Cela a été particulièrement ressenti dans Svelte 1/2, lorsque les gens sont venus dans la communauté et les commentaires de Habr et n'ont sincèrement pas compris en quoi Svelte diffère de Vue. Et en effet, à ce moment, les deux étaient trop similaires à Ractive. Avec la sortie de Svelte 3, les différences sont devenues plus vives, mais cela n'a pas résolu complètement le problème.

C'est pourquoi les personnes qui viennent à Svelte traînent le plus souvent dans les mêmes approches que celles utilisées dans d'autres cadres, sans se rendre compte que Svelte peut offrir des solutions plus élégantes aux mêmes problèmes. Vous ne pouvez même pas imaginer combien de cas de ce genre nous considérons littéralement dans notre chat chaque jour et le plus souvent, les gens partent avec le commentaire "Comment cela pourrait-il être fait?"


Popularité Pro (PAS)


action52champion: « , 3 ?», . , . 5 , . - , . . , ( ). — , .


Et vous êtes cependant un provocateur! ))) Bien que beaucoup considèrent cela comme une dignité d'intervieweur, je pense toujours que vous devez au moins un peu comprendre le sujet, afin de ne pas avoir l'air stupide dans leurs provocations.

"Tu as dormi à nouveau, chérie." (c) Voir StateOfJS 2018 - Svelte dans le top 1 des «Autres bibliothèques», et en 2019, il est régulièrement entré dans le pool principal de frameworks frontaux, alors qu'il est mené par le critère de «l'intérêt» en lui:



Il y a donc des progrès. Cependant, une incompréhension absolue des lois les plus simples du marché est également évidente. Lorsque le marché est «vide», il est aussi appelé «l'océan bleu», alors il est facile de l'occuper, surtout lorsque Facebook est derrière vous. Lorsque le marché est concurrentiel (l'océan écarlate), il est alors beaucoup plus difficile d'y accéder. Par conséquent, il est logique qu'au fil du temps, devenir un leader commence à prendre plus de temps, mais cela indique également le contraire - si vous pouviez devenir un leader sur un marché hautement concurrentiel, et même sans argent et sans relations publiques, alors votre produit est vraiment digne.

En fin de compte, regardez combien de frameworks / bibliothèques / plateformes / $ mol il y a et tous ne sont pas à égalité avec les Big Three. Oui, au moins, ils ont juste leur propre hub sur une ressource informatique populaire et mettent en évidence la syntaxe personnalisée sur Github.

Svelte a déjà tout cela, mais bien sûr pas seulement comme ça, mais grâce au travail de la communauté. Il est déjà assez populaire pour avoir un tas d'articles sur Medium et Dev.to , un tas de formation et d'autres vidéos sur Youtube et beaucoup de toutes sortes de solutions toutes faites. Ne vous reprochez pas, tout le monde se trompe.

À propos d'OSS


action52champion: Svelte . Svelte, , Svelte . , ? , . ? Who's using Svelte?.. - ? , , VueJS ?

Comme nous l'avons déjà découvert, depuis 2 ans depuis le début de la popularisation de Svelte et / ou depuis 1 an depuis la sortie de sa version populaire, il s'est passé beaucoup de choses autour de lui, donc je pense que cette question est vocale.

Cependant, il est important de mentionner une chose: Svelte est un projet purement communautaire et la communauté ne veut pas être engagée et affiliée à une société. Tout récemment, un membre de la communauté a entamé une conversation sur Patreon pour l'auteur du cadre, mais l'auteur lui-même a même interrompu ces discussions. Je comprends que beaucoup sont habitués à utiliser les avantages des logiciels libres pour rien et même à leur présenter leurs besoins commerciaux. Mais en fait, les gens qui utilisent OSS ne vous doivent rien, ma chère, mais beaucoup d'entre nous pourraient participer à des projets OSS, et ne pas gagner stupidement de l'argent sur les décisions des autres.

En ce qui concerne Svelte, ces mêmes sociétés «différentes» nous aident différemment. Par exemple, Mail.Ru nous a beaucoup aidés avec le premier métapom russe sur Svelte. Nous avons fourni à notre beau bureau du matériel, des cookies, pris en charge l'organisation de la diffusion et de l'enregistrement. Merci Mail.Ru!

À propos du fait que


action52champion : Êtes-vous sûr que le droit de recommander ce cadre est si catégorique? Le frontend est un domaine où de nouvelles personnes viennent chaque jour sans expérience. Ils ne sont pas en mesure d'apprécier l'étendue de l'inutilité de Svelte. Ils verront des articles élogieux où des gars intelligents avec un regard sérieux parlent de ce qu'est une merveilleuse transmission d'événements, un compilateur, etc. Ce qui est intéressant d'un point de vue académique, mais pas d'un point de vue pratique. Ils penseront que cela vaut la peine de contacter, ils passeront leur temps et se retrouveront avec rien. Et en distribuant des lots d'articles sur la façon merveilleuse de faire des conneries sur Svelte, ce qui peut également être fait sur des cadres normaux, vous ajoutez un énorme cochon aux personnes novices.

Ma question préférée! Presque comme une cerise sur un gâteau.

Oui, je suis sûr que j'ai raison et c'est pourquoi:

  • Je sais de quoi je parle. J'utilise Svelte dans mon travail et poste des solutions dans OSS.
  • Je suis décideur dans le choix des technologies et responsable de la réussite des projets.
  • J'ai quelque chose à comparer. En plus de Svelte, j'ai de l'expérience avec de nombreux frameworks aujourd'hui et dans le passé (Backbone, AngularJS, Ractive, Riot, Vue / Nuxt, React, LitElement).
  • Je communique beaucoup avec ceux qui utilisent également Svelte et j'aide souvent ceux qui veulent l'apprendre. J'entends leurs problèmes et essaie toujours de proposer des solutions.
  • J'ai lu des rapports sur Svelte et je suis prêt à répondre à des questions de fond.

Merci, cher Champion d'Action, de m'avoir invité et de m'avoir donné l'opportunité de parler à nouveau d'un cadre aussi merveilleux que Svelte! Merci pour vos questions réfléchies et bien formulées et vos sujets abordés. Meilleurs vœux à vous et bonne journée!



P / s


L'interview est terminée, et maintenant Alaverdi. Et vous, cher @ action52champio, êtes-vous sûr d'avoir le droit de blâmer pour un instrument que vous n'avez pas seulement utilisé, et que vous n'avez pas vraiment vu dans vos yeux? Quelle est votre expérience pratique avec Svelte et a-t-elle même au moins un des frameworks? Vous n'aimez pas React, vous ne comprenez pas Vue. Angulaire? Non je ne crois pas.

Il me semble, avant d'écrire au moins quelque chose sur une ressource technique, il est logique de bien le comprendre, et pas seulement de jeter les plaques tournantes, souffrant d'un manque d'attention de votre psychothérapeute. Appelez-le mieux, vous en avez besoin.

MISE À JOUR:


J'en profite pour inviter tout le monde à une rencontre en ligne avec l'auteur de Svelte, où il répondra aux questions les plus intéressantes qui ont été recueillies auprès de la communauté:
sveltesociety.dev

All Articles