Electron - za i przeciw

W innym wątku @azja napisał:

Chętnie dowiedziałbym się, co negatywnego jest w Electron, gdyż tak na szybko, bazując na informacjach z ich strony (że jest w technologii Web, Open Source, Cross Platform) oraz na wielości dostępnych tam aplikacji, koncepcja platformy Electron wydaje mi się rozsądna i perspektywiczna.

do czego ja osobiście używam

czasami

i jakoś mi to nie przeszkadza że potrzebny jest do tego Electron :wink:

Pewnie chodzi o to, że aplikacje Electrona pożerają dużo zasobów komputera i często są uboższe w funkcje (choć nie zawsze musi to być prawdą). Niektórym też kojarzy się z Windowsem (mimo, że jest multiplatformowy to swego czasu było o nim głośno właśnie w kontekście MS).

Osobiście nie mam zdania na ten temat, jakoś nie miałem okazji przetestować aplikacji Electrona.

Nie twierdzę, że Atom, czy Electron, są złe, tylko to, że odczuwam niechęć do Atom’a z powodu Electron’a. Dlaczego? Dlatego:

  • zwiększone użycie zasobów, w porównaniu do podobnych aplikacji, tworzonych w innych technologiach. Ogólnie rzecz biorąc, bo w poszczególnych przypadkach (nie wiem, zakładam tylko taką możliwość) może być inaczej. Lubię optymalizować, a użycie Electron’a jest tego przeciwieństwem - również z powodu argumentów poniżej;
  • konieczność sporego narzutu, w postaci instalacji ponad 100MB soft’u. Jeżeli potrzebuję tego do uruchomienia stosunkowo małych programów (np. edytor text’owy), to spory przerost formy nad treścią. Zmniejsza się jednak z każdą kolejną zainstalowaną aplikacją, korzystającą z Electron’a. Widzę, że w repozytoriach, są jego dwie wersje - jeżeli używam oprogramowania opartego o obie, to aby go używać, muszę dołożyć blisko 300MB;
  • bazuję na bibliotekach GTK. Czasem, gdy muszę lub chcę, instaluję programy zbudowane na Qt. Używam Wine. Używałem Javy. Electron, to kolejne środowisko, które psuje jednorodność (system operacyjny, to nie kultura lub państwo - różnorodność nie musi być jego zaletą);
  • Electron, to:
    Node.js, zbudowany na silniku js V8 (Google), używanym przez Chromium (Google);
    Chromium (Google)
    Ergo → Electron, to w zasadzie program google’owy. Doceniam wkład Google czy Microsoft’u w rozwój cywilizacji (w przeciwieństwie do Facebook’a - ruja i poróbstwo), to jednak każda hegemonia wywołuje u mnie sprzeciw (jako człowieka miłującego wolność) i niepokój (o długoterminowe perspektywy cywilizacyjne);
  • Electron, to w gruncie rzeczy oprogramowanie desktop’owe, napisane w JavaScrip’cie, zapakowane w przeglądarkę internetową. W czasach gdy Microsoft lansował przeglądarkę, jako interface do wszystkiego w systemie, byłem przekonany, że to dobry pomysł (wyleczyłem się z tego, gdy zobaczyłem niefunkcjonalny, płaski interface w Viście), ale już od dawna uważam, że należy dobierać narzędzia do wykonywanej pracy, a nie dostosowywać pracę do wymyślonych narzędzi;
  • unifikacja technologi sieciowych i lokalnych, to dobry pomysł … teoretycznie. Praktyka, to:
    – wyznaczanie kierunków rozwoju branży przez działy marketingu;
    – niechlujstwo programistyczne (żyjemy w czasach powszechnej tandety);
    – ludzka chciwość i egoizm, które skutkują wykorzystywaniem dobrych pomysłów przeciwko naiwnym;
    Ergo → unifikacja, to zbrodnia przeciwko bezpieczeństwu. W momencie pojawienia się (złe określenie, bo ta obecność jest permanentna) jakiejś podatności, to mamy autostradę od komp’a Złego do komp’a mojego.

Być może znalazłbym coś jeszcze, ale nie chcę, aby ktoś odniósł wrażenie, że mam skłonności sadystyczne i lubię się znęcać.

Generalnie electron jest dobry dla Linuxa, bo wiele aplikacji w technologii webowej jest w ten sposób dostępnych i tutaj trzeba pogodzić się, że zużywa to tyle zasobów jak oddzielna przeglądarka, ale z coraz nowszym i mocniejszym sprzętem coraz mniejszy z tym problem.

Jednak faktycznie nie ma sensu używać electron’a do programów, które mają swoje odpowiedniki w innych technonologiach i są dużo lżsejsze, czyli taki Atom to porażka, ale np. jak ktoś używa intensywnie social media i różne komunikatory to może zainstalować np. Caprine, który umożliwia dostęp do różnego śmiecia w jednym miejscu - wygodne jak ktoś ma takie potrzeby. Jest też sporo innych, całkiem niezłych aplikacji typu electron, które w zasadzie można używać przez przeglądarkę, ale niekoniecznie jest to wygodne.

Po prostu electron ma swoje miejsce, ale są programy, których umieszczenie w electronie albo zrobienie w technologiach webowych mija się z celem (Atom).

Głos w dyskusji:

  • Po co tworzyć aplikacje dla systemu, którego wiele osób nie chce, skoro można stworzyć taką, która działa na każdym? To myślenie, w świecie aplikacji mobilnych i wzrostu popularności alternatywnych OS-ów, doprowadziło do popularyzacji formatu Electron. Framework Electron.js dostarcza wszystkie zalety, które obiecywał UWP, a w dodatku robi to za darmo i na więcej platform. Robi to źle, ciężko, brzydko, niebezpiecznie i powoli. Ale docelowo skutecznie. I dlatego się przyjął. Wie o tym nawet Microsoft: Skype, Teams (to jest dopiero okropność!) oraz nowa aplikacja XBox to wszystko kontenery Electrona. Bowiem zamiast tworzyć wersje Skype’a dla Windows 7, Linuksa, macOS i Windows 10, lepiej stworzyć jedną.

K.J. Dudek, Dajmy już sobie spokój z UWP …, (dobreprogramy.pl)

“framework” pisany skryptami :rofl: