От Trello до Slack, от WordPress.com до Github, стана все по-разпространено за така наречените настолни приложения, които да обединяват уеб сайт с няколко характерни функции като уведомления, достъп до файловата система и менюта. Най-разпространената технология, която позволява това, се нарича Electron, и се използва от няколко приложения, които може и да не подозирате, като Chat-приложението Discord и Microsoft Visual Studio Code.
Electron улеснява разработчиците да пускат приложение едновременно на Windows, MacOS и Linux, но има и недостатъци за потребителите. Електронните приложения са огромни, от една страна. Slack, приложение за разговори, заема 237 MB място на твърдия диск на моя Mac, а консумацията на памет не е ниска. Какво поглъща всички тези ресурси? И защо разработчиците използват нещо толкова неефективно?
Електронните приложения са доста лесни за правене
Електронът "решава" това, като предлага една платформа, която работи на трите основни операционни системи за настолни компютри. Това означава, че разработчиците могат да напишат кода за неща като уведомления веднъж и да очакват това да работи нативно във всяка операционна система. Дори по-добре за разработчиците: всичко може да се изгради с помощта на Javascript, HTML и CSS технологии, всеки, който кодира за уеб са много запознати.
Електронните приложения пристигат с твърде много цели хроми
Как е възможно? Отчасти защото всяко електронно приложение обвързва пълен уеб браузър: Chromium, версията с отворен код на Google Chrome. Това е обединено заедно със специфичните за платформата инструкции, за да се гарантира, че всичко се държи точно както очакващите разработчиците на всички системи. Ето защо настолната версия на Slack заема повече от 200MB пространство на твърдия диск: повечето от Chrome е свързан там.
You can think of Slack as a small javascript program running inside another operating system VM (chrome), that you have to run in order to essentially chat on IRC. Even if you’ve got the real chrome open, each electron app runs its own, extra copy of the whole VM.
Така че да, има недостатъци за потребителите. На първо място, всяко едно електронно приложение, което изтегляте, обединява по-голямата част от Chromium и всяко приложение, което изпълнявате, изпълнява голяма част от този код. Тук няма споделяне на ресурси, както е имало с нативни приложения, което означава, че електронните приложения ще заемат повече пространство и памет на твърдия диск, отколкото специално разработено приложение с вашата платформа. Ако производителността е нещо, за което наистина се интересувате, може да искате да избегнете електронните приложения.
Чакай, така ли е Електрон Добър или Лош?
И тези приложения наистина се интегрират по-добре с вашата операционна система по-добре от уеб сайтове. Те живеят в собствения си прозорец. Те предлагат страхотни клавишни комбинации, родствени известия и други неща, които не можете да правите по същия начин само с браузър.
И това е добър залог, че приложения като Slack, Trello и WordPress.com няма да се притесняват да предлагат настолни версии, ако Electron не съществува, като се фокусира вместо мобилните и браузерните версии. Така че не е въпросът дали електронът е лош; това е дали електронните приложения са по-добри от нищо. Аз съм готов да кажа "да", но разумни хора могат да не са съгласни. (И хей, за тези хора винаги има уеб версията.)