ntv.js框架开源的目的

2019独角兽企业重金招聘工程师标准>>>
1. 如何来兼容不同厂商的规范?
在东方有线(OCN)网内有众多不同厂商的机顶盒,各厂商均有自己的机顶盒中间件规范 。其中按中间件规范可分为3种,分别是、SHDV、NGB-H 。不同的规范定义导致了机顶盒应用在开发同一功能时需要同时使用3种规范定义的接口代码 。(接口总api个数均在100+)
网内高达95%的第三方应用开发商多采用以下2种方式来处理,方式1:业务代码与接口代码耦合在一起来处理应用的功能逻辑 。方式2:单独将接口代码写在一个文件中,业务代码按不同接口进行调用,来完成页面功能逻辑 。这些方式直接导致的问题就是业务与接口代码耦合和脚本文件过长难以扩展和维护 。
2. 机顶盒应用脚本调试难的问题
新入门的应用开发者,面对的第一个问题就是调试难的问题 。

ntv.js框架开源的目的

文章插图
机顶盒浏览同PC浏览器一样支持的alert()函数,但是使用alert()去调试代码非常浪费时间与精力,而且部分机顶盒在调用alert()后会出现死机现象 。一般在pc浏览器的做法是采用.log()或直接开启调试模式,但在机顶盒上这些都无法使用 。
3. 厂商中间件内核不一与中间件软件版本众多的问题
由于不同厂商采用的中间件浏览器的内核不一样,导致类似与PC平台上与IE的相同问题,常见的问题就是CSS显示不一致的问题 。这些问题不同于PC平台上已知的问题,而是需要开发者逐步实验得出的结果 。
另一个问题,中间件也是逐步升级和完善的过程,导致了网内同一款中间件同时存在多种软件版本,对开发来说直接导致的问题就是同一种规范的代码在不同软件版本的机顶盒上会出现无效的情况 。而这些问题也是需要开发者逐步实验得出的结果 。
ntv.js框架是如何解决上述问题的?
1. 框架将接口代码进行统一封装,在使用过程中对于开发者来说3种规范使用同一个接口 。
ntv.js框架开源的目的

文章插图
2. 框架按功能和接口进行了划分,让之后的功能扩展及维护更容易 。
3. 框架集成了调试模式、常用函数工具类、特效插件和机顶盒特殊处理类 。
4. 最重要的,框架累计了厂商不同中间版本的已知bug及特殊问题,对于新开发者来说就是经验值 。
ntv.js框架的开源目的?
正如上面提到诸多问题,为了节省新入门开发者的时间与重复工作量,同时将开发者的焦点集中在应用业务实现上 。也希望更多同行的开发者加入框架的代码积累与完善及改进方面的考虑 。
编写高质、高效、丰富的机顶盒应用 。
【ntv.js框架开源的目的】在之后的文章中将逐步对机顶盒的开发经验与框架的所有部分进行详细的说明 。