Merge pull request #56 from shaggygi/patch-2
Update oop-extensibility-model-overview.md
This commit is contained in:
Коммит
da262f49c5
|
@ -26,15 +26,15 @@ Writing extensions using the new model provides the following benefits:
|
|||
|
||||
* **Increased reliability** – Extensions written with the new model are out-of-proc and will not block the Visual Studio UI. This means that if the extension crashes, VS will not crash as a result.
|
||||
* **Reduced API complexity** – The new model’s wrapper API has been built from the ground-up to be more cohesive and simpler to implement while retaining the old model’s advanced functionality.
|
||||
* **.NET Core Only** – In order to benefit from latest enhancements on .NET and C# the new extensibility model will only support .NET Core 6 and forward. All APIs will also be built on .NET core and will be .NET 6 compatible and extensions will be loaded in a .NET Core host.
|
||||
* **.NET Core Only** – In order to benefit from latest enhancements on .NET and C#, the new extensibility model will only support .NET Core 6 and forward. All APIs will also be built on .NET Core, will be .NET 6 compatible, and extensions will be loaded in a .NET Core host.
|
||||
* **Hot-loading functionality** – Excluding ones requiring VS component prerequisites that haven’t been installed yet, extensions written using the new model can be installed and loaded without needing to restart Visual Studio.
|
||||
* **Cross-CPU Platform** – Since underlying implementation is based on RPC compatible brokered services and is .NET core based, all Gladstone extensions will run on all CPU platforms supported by .NET core runtime.
|
||||
* **Cross-CPU Platform** – Since underlying implementation is based on RPC compatible brokered services and is .NET Core based, all extensions will run on all CPU platforms supported by .NET Core runtime.
|
||||
* **Low-trust extensions (Coming Soon)** – Since extensions in the new model run in a separate process, they can be isolated from devenv and ran in a low-trust sandbox. This environment will provide the extensions with read-only access to the file system and controlled writing access via the model’s APIs.
|
||||
|
||||
## Technology
|
||||
The new extensibility model is primarily built on top remote RPC contracts that are provided as brokered services from Visual Studio. The extensions are hosted in an external ServiceHub process that communicates with Visual Studio via RPC and both utilize services provided by Visual Studio and may also provide services to Visual Studio process in certain cases.
|
||||
|
||||
Extensibility packages that are provided as part of the SDK consist of base classes, utility methods and wrapper objects around these RPC contracts with the goal of making extensibility surface area easier to use, easier to discover and also to be able to quickly contribute to Visual Studio ecosystem such as creating a new command handler.
|
||||
Extensibility packages that are provided as part of the SDK consist of base classes, utility methods and wrapper objects around these RPC contracts with the goal of making the extensibility surface area easier to use, easier to discover, and also to be able to quickly contribute to Visual Studio ecosystem such as creating a new command handler.
|
||||
|
||||
## Next Steps
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче