stringtranslate.com

Electron (marco de software)

Electron (anteriormente conocido como Atom Shell [5] ) es un marco de software gratuito y de código abierto desarrollado y mantenido por OpenJS Foundation . [6] El marco está diseñado para crear aplicaciones de escritorio utilizando tecnologías web (principalmente HTML , CSS y JavaScript , aunque son posibles otras tecnologías como marcos front-end y WebAssembly ) que se representan utilizando una versión del motor del navegador Chromium y un respaldo. terminar usando el entorno de ejecución Node.js. [7] También utiliza varias API para habilitar funciones como la integración nativa con los servicios Node.js y un módulo de comunicación entre procesos .

Electron se creó originalmente para Atom [5] y es el marco de GUI principal detrás de varios otros proyectos de código abierto, incluidos GitHub Desktop , Light Table , [8] Visual Studio Code , WordPress Desktop [9] y Eclipse Theia . [10]

Arquitectura

Las aplicaciones electrónicas incluyen un proceso "principal" y varios procesos "renderizadores". El proceso principal ejecuta la lógica de la aplicación (por ejemplo, menús, comandos de shell, eventos del ciclo de vida) y luego puede iniciar múltiples procesos de representación al crear una instancia de la BrowserWindowclase, que carga una ventana que aparece en la pantalla al representar HTML y CSS .

Tanto el proceso principal como el de renderizado se pueden ejecutar con la integración de Node.js si el nodeIntegrationcampo del proceso principal está configurado en true.

La mayoría de las API de Electron están escritas en C++ u Objective-C y están expuestas directamente al código de la aplicación a través de enlaces de JavaScript . [11]

Historia

En septiembre de 2021, Electron pasó a un ciclo de lanzamiento de ocho semanas entre versiones principales para coincidir con el ciclo de lanzamiento de Chromium Extended Stable y para cumplir con un nuevo requisito de Microsoft Store que requiere que las aplicaciones basadas en navegador estén dentro de dos versiones principales del última versión del motor del navegador. [12]

Electron lanza con frecuencia nuevas versiones principales junto con cada dos versiones de Chromium . Las últimas tres versiones estables cuentan con el respaldo del equipo de Electron. [13]

Recepción

Las aplicaciones de escritorio creadas con Electron incluyen Atom , [27] balenaEtcher , [28] Eclipse Theia , [10] Microsoft Teams , [29] Slack [30] y Visual Studio Code . [31] [32] Brave Browser se basó en Electron antes de que fuera reescrito para usar Chromium directamente. [33]

La crítica más común a Electron es que requiere un exceso de software cuando se utiliza para programas simples. [34] Como resultado, Michael Larabel se ha referido al marco como "notorio entre la mayoría de los usuarios de escritorios Linux por consumir muchos recursos, no integrarse bien con la mayoría de los escritorios y, en general, ser despreciado". [35] Mientras tanto, Joey Sneddon afirma que esta compensación es sensata ya que Electron reduce en gran medida el costo de desarrollo y mantenimiento de software multiplataforma. [36]

Los investigadores han demostrado que el gran conjunto de funciones de Electron puede ser secuestrado por delincuentes con acceso de escritura a los archivos JavaScript de origen. Esto requiere acceso de root en sistemas *nix y los desarrolladores de Electron no lo consideran una vulnerabilidad. [37] Aquellos a quienes les preocupa que Electron no siempre se base en la versión más reciente de Chromium han recomendado aplicaciones web progresivas como alternativa. [38]

Ver también

Referencias

  1. ^ "electrón/electrón". GitHub . Archivado desde el original el 2 de agosto de 2016 . Consultado el 8 de mayo de 2018 .
  2. ^ "Liberar electrón v28.2.1 · electrón/electrón". 31 de enero de 2024 . Consultado el 7 de febrero de 2024 .
  3. ^ ab "Liberar electrón v29.0.0-beta.9 · electrón/electrón". GitHub . 12 de febrero de 2024. Archivado desde el original el 13 de febrero de 2024 . Consultado el 13 de febrero de 2024 .
  4. ^ "electrón/LICENCIA en master". GitHub . Archivado desde el original el 12 de mayo de 2017 . Consultado el 3 de julio de 2020 .
  5. ^ ab Sawicki, Kevin (23 de abril de 2015). "Atom Shell ahora es Electron". electrón . Archivado desde el original el 9 de noviembre de 2017 . Consultado el 6 de enero de 2022 .
  6. ^ "Cree aplicaciones de escritorio multiplataforma con JavaScript, HTML y CSS | Electron". Archivado desde el original el 9 de mayo de 2022 . Consultado el 1 de febrero de 2023 .
  7. ^ "Electron Internals: uso de Node como biblioteca". electronjs.org . 8 de agosto de 2016. Archivado desde el original el 9 de noviembre de 2017 . Consultado el 3 de julio de 2020 .
  8. ^ Horner, Gabriel (10 de diciembre de 2015). "Mesa de luz 0.8.0". mesa de luz.com. Archivado desde el original el 13 de diciembre de 2015 . Consultado el 3 de julio de 2020 .
  9. ^ "Repositorio de GitHub". GitHub . Archivado desde el original el 19 de febrero de 2016 . Consultado el 16 de junio de 2019 .
  10. ^ ab "Theia: plataforma IDE de escritorio y en la nube". theia-ide.org . Archivado desde el original el 20 de abril de 2018 . Consultado el 31 de diciembre de 2021 .
  11. ^ "De nativo a JavaScript en Electron | Blog de Electron". electronjs.org . 19 de marzo de 2019. Archivado desde el original el 26 de abril de 2019 . Consultado el 26 de abril de 2019 .
  12. ^ "Nueva cadencia de liberación de electrones | Electrón". electronjs.org . 14 de julio de 2021. Archivado desde el original el 14 de julio de 2021 . Consultado el 9 de febrero de 2022 .
  13. ^ "Liberaciones de electrones | Electrones". electronjs.org . Archivado desde el original el 16 de diciembre de 2022 . Consultado el 16 de diciembre de 2022 .
  14. ^ "Liberar electrón v28.0.0 · electrón/electrón". GitHub . 4 de diciembre de 2023. Archivado desde el original el 14 de diciembre de 2023 . Consultado el 14 de diciembre de 2023 .
  15. ^ "Liberar electrón v27.0.0 · electrón/electrón". GitHub . 10 de octubre de 2023. Archivado desde el original el 11 de octubre de 2023 . Consultado el 11 de octubre de 2023 .
  16. ^ "Liberar electrón v26.0.0 · electrón/electrón". GitHub . Archivado desde el original el 23 de septiembre de 2023 . Consultado el 23 de septiembre de 2023 .
  17. ^ "Liberar electrón v25.0.0 · electrón/electrón". GitHub . Archivado desde el original el 23 de septiembre de 2023 . Consultado el 23 de septiembre de 2023 .
  18. ^ "Liberar electrón v24.0.0 · electrón/electrón". GitHub . Archivado desde el original el 23 de septiembre de 2023 . Consultado el 23 de septiembre de 2023 .
  19. ^ "Liberar electrón v23.0.0 · electrón/electrón". GitHub . Archivado desde el original el 23 de septiembre de 2023 . Consultado el 23 de septiembre de 2023 .
  20. ^ ab "Liberar electrón v22.0.0 · electrón/electrón". GitHub . Archivado desde el original el 15 de diciembre de 2022 . Consultado el 16 de diciembre de 2022 .
  21. ^ ab "Liberar electrón v21.0.0 · electrón/electrón". GitHub . Archivado desde el original el 16 de diciembre de 2022 . Consultado el 16 de diciembre de 2022 .
  22. ^ "Liberar electrón v20.0.0 · electrón/electrón". GitHub . Archivado desde el original el 16 de diciembre de 2022 . Consultado el 16 de diciembre de 2022 .
  23. ^ abc "Liberación de electrones v19.0.0 · electrón/electrón". GitHub . Archivado desde el original el 31 de mayo de 2022 . Consultado el 31 de mayo de 2022 .
  24. ^ ab "Liberar electrón v18.0.0 · electrón/electrón". GitHub . Archivado desde el original el 4 de mayo de 2022 . Consultado el 4 de mayo de 2022 .
  25. ^ ab "Liberar electrón v17.0.0 · electrón/electrón". GitHub . Archivado desde el original el 12 de febrero de 2022 . Consultado el 28 de febrero de 2022 .
  26. ^ ab "Liberar electrón v16.0.0 · electrón/electrón". GitHub . Archivado desde el original el 6 de diciembre de 2021 . Consultado el 3 de diciembre de 2021 .
  27. ^ Sawicki, Kevin (23 de abril de 2015). "Atom Shell ahora es Electron". electrón . Archivado desde el original el 16 de octubre de 2019 . Consultado el 15 de julio de 2017 .
  28. ^ "Grabador en GitHub". GitHub . Archivado desde el original el 16 de noviembre de 2018 . Consultado el 7 de julio de 2020 .
  29. ^ msdmaguire. "Cómo utiliza Microsoft Teams la memoria: Microsoft Teams". docs.microsoft.com . Archivado desde el original el 8 de diciembre de 2020 . Consultado el 12 de noviembre de 2021 .
  30. ^ "Creación de aplicaciones híbridas con Electron". Varias personas están codificando . 25 de octubre de 2016. Archivado desde el original el 16 de octubre de 2019 . Consultado el 12 de agosto de 2017 .
  31. ^ Bright, Peter (29 de abril de 2015). "El nuevo editor de código de Microsoft se basa en Chromium de Google". Ars Técnica . Archivado desde el original el 7 de mayo de 2015 . Consultado el 18 de noviembre de 2015 .
  32. ^ "Proyecto de código abierto". GitHub . 29 de marzo de 2022. Archivado desde el original el 23 de noviembre de 2015 . Consultado el 20 de mayo de 2018 .
  33. ^ Singh, Jagmeet (3 de enero de 2017). "Ahora la gente incluso está haciendo aprendizaje automático en JavaScript". Código abierto para U. Archivado desde el original el 7 de enero de 2017 . Consultado el 26 de agosto de 2022 .
  34. ^ Probado, Liam (19 de noviembre de 2021). "Algunas joyas de FOSS: Franz, RamBox, Pidgin y más". El registro. Archivado desde el original el 19 de noviembre de 2021 . Consultado el 26 de agosto de 2022 .
  35. ^ Larabel, Michael (9 de febrero de 2019). "Las aplicaciones electrónicas son malas, así que ahora puedes crear aplicaciones de escritorio con HTML5 + Golang". Forónix. Archivado desde el original el 26 de agosto de 2022 . Consultado el 26 de agosto de 2022 .
  36. ^ Sneddon, Joey (23 de julio de 2017). "En serio amigos, las aplicaciones de Electron no son tan malas". Dios mío Ubuntu. Archivado desde el original el 16 de mayo de 2018 . Consultado el 26 de agosto de 2022 .
  37. ^ Gallagher, Sean (7 de agosto de 2019). "Skype, Slack y otras aplicaciones basadas en Electron se pueden bloquear fácilmente". Ars Técnica. Archivado desde el original el 7 de agosto de 2019 . Consultado el 26 de agosto de 2022 .
  38. ^ Hoffman, Chris (15 de agosto de 2019). "Esa aplicación nativa probablemente sea sólo un navegador web antiguo". Cómo ser friki. Archivado desde el original el 15 de agosto de 2019 . Consultado el 26 de agosto de 2022 .

enlaces externos