我应该将哪些框架用于使用USB/硬件API的桌面/触摸Angular应用



我需要开发一个非常依赖 usb/serial 的应用程序,Webaudio以及可能对硬件API的其他用法。

此时,此应用仅适用于 Windows 10平板电脑,因此它也应支持 touch&手势。但是,当然,我很乐意将Windows/UWP API的App Logic分离,以便将来将应用程序扩展到许多其他平台。

我选择使用 typescript&Angular ,但对框架组合确实不确定,我应该为此目的使用:

1)我应该仅使用纯电子角 - hammerjs组合吗?(也许将其部署为UWP应用程序)

2)我应该参与离子框架以支持触摸&移动性更好?还是电子与离子的组合会不必要地膨胀我的应用程序?

3)纯离子(无电子的UWP应用程序)是否支持Windows USB/序列功能?到目前为止,我发现仅适用于Android的USB-Cordova插件...

4)离子电容器是否为该应用程序的目的服务?一方面,该框架倾向于支持包括电子在内的许多平台,但另一方面,它的核心库不包括USB/串行API,即使我会选择为硬件使用(例如USB)编写通用插件(例如USB)关于创建电容器-Electron-Plugins的文档不多...

我会为您的意见感到高兴,因为目前我很困惑&不知道该选择什么...

我将提供一个有争议的意见。

如果您需要依靠多种技术,则每个技术都需要一个库,因为通常您不想开始重新发明轮子。例如,为了支持密码学,我会查看一个加密库。

现在,如果特定的库将自己作为框架做广告,逃跑!框架可以并且将与您的应用程序中的所有其他框架进行战斗。您最多只能拥有一个框架。您需要将整个应用程序包裹在框架上。您的应用程序中只能有0或1个框架。

因此,我的建议是您应用程序中框架的最佳计数为0。

使用库,不要使用框架。如果图书馆作为框架做广告,请不要使用它。

框架很快过时。图书馆通常不会很快过时。

现在,当然,特定图书馆最终可能会变得不受欢迎。因此,我将为每个库计划一个"退出策略"。仔细研究哪些图书馆可用。查看他们的编程界面。无论您选择哪种库,都可以在其编程界面周围创建包装器,从而为您的用例提供最少的必要接口。从本质上讲,这是所有可用库中最低的共同点。如果库变得不太好,您不会重写整个应用程序,只需重写包装器。

最新更新