Programing

NW.js, Brackets-Shell 및 Electron의 기능적 차이점은 무엇입니까?

lottogame 2020. 6. 13. 10:11
반응형

NW.js, Brackets-Shell 및 Electron의 기능적 차이점은 무엇입니까?


이제 TideSDK가 실제로 죽었으므로 HTML / CSS / JS 응용 프로그램을 독립 실행 형 데스크톱 응용 프로그램으로 실행하기 위해 대체 '래퍼'를 살펴 보았습니다. 지금까지 실행 한 세 가지 실행 가능한 옵션은 NW.js (이전의 node-webkit), brackets-shellElectron (이전의 atom-shell)입니다.

문제는 기능 세트, 호환성 등의 측면에서 세 가지를 충분히 비교하지 못하는 것 같습니다. 나는 이것을 (객관적인) 차이점에 대해 다소 표준적인 스레드로 바꾸고 싶습니다. 특히 세 가지

  • 플랫폼 지원 ; 운영 체제, 종속성 등
  • HTML5, CSS3 및 JavaScript에 관한 한 언어 기능 지원 . 같은 것들을 생각 ", 그리고 그렇다면, 어떤 코덱을 사용할 수 HTML5 비디오 작업이다합니까?"
  • 트레이 아이콘, 팝업 알림 및 OS 렌더링 메뉴 표시 줄과 같은 비표준 추가 기능 .
  • 확장 성 ; 예. 네이티브 코드를 '플러그인'하고 Node.js와 대화하는 등의 기능.
  • 건축술 ; 특히 개발자로서의 일상적인 사용에 영향을 미치는 구조적 차이.
  • 디버깅 ; 개발 툴, 자주 사용되는 툴과의 호환성 node-inspector등 포함
  • ... 등등.

응용 프로그램 개발자로 선택할 때 중요한 객관적, 기술적 차이점은 무엇입니까?


나는 약 2 개월 전에 비슷한 연구를했으며 결국 노드-웹킷과 함께 갔다. node-webkit의 가장 큰 장점은 node.js와 npm입니다. npm의 패키지 관리는 정말 좋으며 노드는 파일 시스템 액세스를 잘 수행했습니다.

대괄호-쉘은 흥미로워 보였지만 멋진 IDE 이외는이 것을 다른 것보다 좋거나 더 좋게 만드는 것을 얻지 못했습니다. 그들은 "브래킷-쉘은 브라켓 프로젝트에 의해서만 유지된다"는 비명을 지르고있다.

https://github.com/adobe/brackets-shell#overview

Atom-shell은 최근에 활성화 된 것으로 보이지만 실제로는 웹킷 런타임에 첨부되는 실제 작성 및 편집기 / IDE라는 점에서 대괄호처럼 보입니다. 또한 node.js 위에 구축됩니다. 중학교 화학을 상기시키지 않고 온라인으로 물건을 검색하기가 어렵다는 단점이 있습니다.

나는 정말로 새로운 편집자를 원하지 않으며 대부분의 프로그래머는 이미 좋아합니다. 실제 응용 프로그램 개발의 경우 거의 동일하게 작동하며 모두 웹킷을 사용하므로 작동해야합니다. 기본적으로 웹 사이트처럼 90-95 %를 쓴 다음 기본 부분 및 일부 구성을 처리합니다.

이러한 것들은 Windows, Mac 및 Linux 언어 지원-HTML5, CSS3 및 Javascript에서 실행되는 세 가지 플랫폼 모두에 해당됩니다. Javascript를 실행하기 때문에 원하는 거의 모든 라이브러리 / 프레임 워크를 다운로드하여 실행할 수 있습니다.

웹킷의 큰 경고는 코덱 지원입니다. 일반적으로 dll /을 지원하도록이를 재구성하지 않으면 비디오가 아닌 비디오 코덱에 문제가 발생합니다. 예를 들어 배송 된 노드 웹킷은 mp4 비디오를 재생하지 않습니다.


나는 지난 며칠 동안 Atom-Shell 과 놀고 있었고 지금까지 그것을 좋아합니다.

그것에 대한 가장 좋은 부분은 GitHub에 의해 뒷받침된다는 것입니다. 장기적으로, 특히 큰 추종자를 얻는 경우 플랫폼에 정착 할 수 있어야합니다. Node.js 의 주요 공헌자StrongLoop 과의 계약으로 Node.js를 직접 개선함으로써 가능해졌습니다 (다른 회사, 심지어 Joyent보다 Node.js 핵심 개발자를 더 많이 고용한다고 주장함).

또한 시작하기가 다소 편하다는 것을 알았습니다. 구조를 배우고 첫 번째 개념 증명을 실행하는 데 하루가 걸렸습니다. 매우 시원합니다.


중요 항목:

  • 플랫폼 지원 : Windows, Linux, Mac OSX ( 추가 정보 여기 )
  • 언어 기능 지원 : HTML5, CSS3, Chromium을 통한 JS-지금까지 문제가 없었지만 비디오를 구체적으로 테스트하지는 않았습니다.
  • 기본 기능 : 기본 앱 메뉴, 작업 트레이 지원, 전역 단축키, 프로토콜 처리기 지원 (지금까지 본 것)
  • 확장 성 : 뛰어난 Node.js 통합으로 클라이언트와 서버 모두 Node.js 모듈과 기본 요소를 "필수"할 수 있습니다. 또한 문제없이 Bower 라이브러리 (jQuery 포함)를 성공적으로 테스트 했습니다.
  • 건축 : 다른 점에서 다루었지만 일반적으로 매우 매끄 럽습니다.

업데이트 (11/25/14) : 공식 용량에서 Atom-Shell의 유스 케이스를 아직 찾지 못했지만 내 용도에 맞는 몇 가지 작은 앱을 빌드하는 데 사용했습니다. PM 소프트웨어에서 시간이 기록되고 Paypal 송장이 생성됩니다.

플랫폼에 대한 나의 의견은 여전히 ​​긍정적입니다. 꽤 굉장합니다.

내 인보이스 앱에서 Bootstrap 3의 대시 보드 예제 템플릿 과 몇 가지 노드 모듈 (블루 버드, 페이팔 SDK, 팀워크 PM 클라이언트)을 가져 와서 약간 복잡한 앱을 만들었습니다. 그것은 며칠이 걸렸고 잘 작동합니다.

나는 견고하고 안정적이며 빠르며 코딩하기 쉬운 Atom-Shell에 대해 부정적인 것을 생각할 수 없습니다. 나는 이것이 누군가를 돕기를 바랍니다.


NW.js는 웹 표준을 완벽하게 지원할뿐만 아니라 다음과 같은 기본 앱 개발을위한 비표준 기능 목록을 지원합니다.

메뉴, 트레이 등을 포함하여 위키에서 볼 것이 훨씬 더 많습니다.


나는 한동안 대괄호로 작업 해 왔으며, 여기 내 발견 사항이 있습니다.

  • brackets-shell is primarily developed as a shell under the brackets IDE project, but the project can run any web application. You just need to point it to your own html page. Clint Berry wrote an excellent tutorial about doing just this: http://clintberry.com/2013/html5-desktop-apps-with-brackets-shell/
  • The project is backed by Adobe and has a lot of activity
  • Documentation could be better

  • platform support They support Windows, Mac and Linux. An installer package can also be created. I only tested it on Win and Mac, it works great.

  • feature support html5, css3, js. Html5 video does not work out of the box, but is very easy to enable (by default the ffmpegsumo.dll is not copied into the installer, if you change the script to copy it it will work).
  • native features menu bar, 'open file with', file system access. I am not using any of these, as all I need is the communication with the node process.
  • extensibility a nodejs is built in, and you can communicate with node from your web application. In this way, you can use node to access the filesystem etc.
  • architecture The project is well set up, keeping a nice separation between the shell project and your own web app running inside it. In your own application, a global appshell object is available which gives you access to the brackets functionality (filesystem access, communication with node process, ...).

One thing to note (if you care), is that the Electron officially does not support Windows Vista. Vista's market share is about halfway between OSX 10.9 and 10.10 (both of which are fully supported by Electron). Vista is also still supported by Microsoft until 2017.

NW.js works fine in Vista, as well as OSX 10.9+. NW.js works on Ubuntu, Debian, Zorin, Manjaro, Arch, and most other Debian based Linux OS's. Electron has refused PR's to fix Ubuntu specific bugs on their platform which is concerning.

NW.js works in XP too. Currently 18% of the market is still on XP. So if you're desktop application is more general purpose or wants to have access to the late adopters still on XP, you're probably better off with NW.js (0.14.7) as Electron only supports Win 7 and up.

If you use NW.js 0.12.3 you can also support OSX 10.6+ and very old versions of Debian based Linux OS's like Ubuntu, and Win XP+. It is recommended that you do special builds just for those legacy systems though and use the newer versions of NW.js for newer OS's.

참고URL : https://stackoverflow.com/questions/23731517/what-are-the-functional-differences-between-nw-js-brackets-shell-and-electron

반응형