Reference Address:

  • Eclipse Theia vs. Eclipse Che vs. VS Code | ECD Tool Time | Jonas Helming
  • VS Code for the Web: vscode.dev
  • vscode.dev(!)

The essential difference

  • VS Code: a mature, free desktop application that you can download and install and use
  • Eclipse Theia: An open source framework for customizing IDE development (some features based on VS Code), supports on-site, cloud deployment, and can be white-branded

For most developers, VS Code actually covers most development scenarios

scalability

Plug-in market

VS Code

It has its own plugins market, rich in plugins, but only installed in VS Code

Theia

It can only be downloaded from the openVSX plug-in Marketplace

In fact, VS Code plug-ins are supported, but due to the limitations of the VS Code plug-in market, VS Code plug-ins cannot be fully used. The plug-ins can only be hosted by the plug-in developer on openVSX, so the number of plug-ins is less than VS Code

Plug-in development

VS Code

Extensions to register commands, menus, views, language servers, and other functions via VS Code apis; Install and uninstall at VS Code runtime

Relatively simple development, familiar with VS Code API, relatively low entry requirements

But it also means that plug-in development is limited and can only be extended through the API provided by VS Code, so you can’t change the logo, remove default menus, commands, create complex views, etc

Theia

Theia actually provides two plug-in mechanisms, one is a plug-in development mechanism similar to VS Code, Plugin, which relies on the API provided by Theia for plug-in development, users can install and uninstall plug-ins at IDE runtime

The other is Extension, which is built directly into our tool and cannot be modified by users

He had access to all of Theia’s internal methods, which meant we could personalize all of Theia’s functionality

The downside of this plug-in development is that it is relatively demanding for developers to understand Theia’s internals, and the existing documentation is largely inadequate for highly customized development

Cloud deployment

VS Code for the browser

It is currently under development at vscode.dev/

No installation, use a browser to develop code, mainly connected to github/Azure, for example, enter vscode.dev/github.com/… /… This particular URL opens the IDE in a browser for code development

Different from the original plug-in development

Most language development is supported, but some language plug-ins are not supported

Theia

Cloud deployment solutions are already supported

And the code is open source, can develop independently again completely

maintenance

VS Code

MIT protocol, which is basically owned by Microsoft, 420 active contributors, the top 20 are basically owned by Microsoft, so the control is basically still with Microsoft

Theia

EPL agreement, led by the Eclipse Theia Foundation Board, available for commercial use, 110 active contributors, top 20 belonging to 6 different companies

conclusion

  • When it comes to Code development alone, VS Code actually meets most programmers’ development needs; However, if more than code editing may involve other complex chart editing operations and internal method changes, Theia should be selected for custom development
  • In terms of plug-in development, if there is no special function, it is recommended to use VS Code for development, because Theia basically supports VS Code plug-ins to reduce the workload of repeated development.
  • During code development, it is recommended to encapsulate modules and UI components to facilitate future migration to other tools