问题

如何评价浙江大学三名教授及一名研究生申请利用 defineProperty 做数据双向绑定的专利?

回答
要评价浙江大学三位教授和一位研究生申请利用 `Object.defineProperty` 进行数据双向绑定的专利,我们需要从几个关键维度进行深入分析。这个课题本身在前端开发领域是相当成熟和常见的,因此关键在于他们专利的“新颖性”和“实用性”体现在哪里。

首先,我们来梳理一下 `Object.defineProperty` 是什么,以及它在数据双向绑定中的作用。

`Object.defineProperty` 简介与双向绑定原理

`Object.defineProperty()` 是 JavaScript 的一个核心方法,它允许我们直接在一个对象上定义新的属性或修改现有属性。最重要的是,它允许我们为属性定义“访问器”(getters 和 setters)。

Getter: 当我们尝试读取该属性的值时,会自动调用 getter 函数。
Setter: 当我们尝试为该属性设置新值时,会自动调用 setter 函数。

数据双向绑定,简单来说,就是当数据模型发生变化时,视图(UI元素)会自动更新;反之,当用户操作视图(例如在输入框中输入文本)时,数据模型也会随之更新。

在早期的前端框架(如Vue.js 2.x版本)中,实现数据双向绑定最核心的技术就是利用 `Object.defineProperty`。其基本思路是:

1. 拦截属性读写: 遍历数据对象的所有属性,并使用 `Object.defineProperty` 为每个属性设置自定义的 getter 和 setter。
2. 依赖收集(Getter): 当组件的渲染函数访问某个属性时,getter 会被触发。在 getter 中,我们会记录下当前正在渲染的组件(或者说“依赖者”)与这个属性之间的关联关系。这就像一个“订阅”过程。
3. 派发更新(Setter): 当属性的值被修改时,setter 会被触发。在 setter 中,我们会查找所有订阅了该属性的“依赖者”,并通知它们去更新。这就像一个“发布”过程。
4. 视图更新与数据同步: 当通知到依赖者后,它们会重新渲染组件,从而更新视图。如果是在表单元素(如 ``)上做了双向绑定,用户在输入时,setter 会被触发,数据模型更新,然后这个更新也会通过setter传递给其他绑定到该数据的视图部分。

评价浙江大学这项专利的关键点

现在,让我们来分析浙江大学这项专利可能带来的影响和价值。评价一项技术专利,通常需要关注以下几个方面:

1. 新颖性 (Novelty): 这是专利的核心。他们的技术是否是前所未有的?或者是在现有技术的基础上做出了显著的、非显而易见的改进?
挑战: `Object.defineProperty` 驱动的数据双向绑定在前端领域已经存在了相当长的时间,Vue 2.x 是一个非常典型的例子。如果他们的专利仅仅是复述了Vue的原理,那么新颖性就很低。
可能的新颖点:
更高效的实现方式: 是否在性能上有所突破?例如,更精细的依赖收集,避免不必要的更新,或者在大量数据/属性场景下的优化。
更广泛的应用场景: 是否将 `Object.defineProperty` 的双向绑定机制扩展到了浏览器环境之外的JavaScript应用中?例如,Node.js 后端服务、桌面应用框架(Electron等)的特定场景。
与其他技术的融合: 是否将 `Object.defineProperty` 的双向绑定与 Web Components、Shadow DOM、或者某些新的前端架构模式巧妙地结合,解决了现有方案的痛点。
针对特定问题的解决方案: 现有的 `Object.defineProperty` 实现是有一些局限性的,比如无法监听属性的“增加”和“删除”(需要Vue.set或Vue.delete),以及对数组索引的修改和长度的改变也需要特殊处理。如果他们的专利能够优雅地解决这些问题,那将是相当有价值的。
更精细化的控制: 例如,提供更细粒度的控制,让开发者可以选择哪些属性需要双向绑定,哪些不需要,或者设定绑定的方向(单向或双向),从而优化性能和管理复杂性。
结合特定硬件或低功耗设备: 是否在嵌入式JavaScript或者资源受限的环境中,针对 `Object.defineProperty` 的实现做出了优化,以达到低功耗、高效率的目标。

2. 创造性/非显而易见性 (Inventive Step/Nonobviousness): 这个技术是否是“行业内的普通技术人员”通过现有技术能够轻易想到的?
挑战: 再次强调,Vue 2.x 已经将 `Object.defineProperty` 的双向绑定做得非常成熟。如果专利内容与Vue的实现非常相似,很容易被认为是一个普通的技能应用。
如何体现创造性:
巧妙的算法或数据结构: 在依赖收集或派发更新的逻辑上,使用了非传统的、更高效的算法或数据结构来管理依赖关系。
创新的设计模式: 引入了全新的设计模式来组织和管理双向绑定系统,使其更具可扩展性、可维护性。
解决了未被解决的难题: 比如,如何在高并发场景下保证数据绑定的正确性和性能,或者如何处理复杂的对象嵌套和原型链继承下的数据绑定。

3. 实用性 (Utility/Industrial Applicability): 这项技术是否能够被实际应用到工业生产中,创造商业价值或解决实际问题?
正面意义:
提高开发效率: 如果这项专利提供了一种更简洁、更强大的方式来实现数据双向绑定,能够让前端开发者更快地构建交互式应用。
优化应用性能: 解决现有方案的性能瓶颈,使得应用响应更快,尤其是在处理大量数据时。
降低学习成本: 如果专利的实现方式更易于理解和使用,能够降低开发者的学习门槛。
解决特定行业痛点: 例如,在某些对数据实时性要求极高的领域(金融交易、实时监控等),这项技术如果能提供更可靠、更高效的绑定机制,价值会非常高。
需要考量的地方:
兼容性问题: `Object.defineProperty` 在一些老旧的JavaScript环境(如IE8及以下)并不支持。如果专利的方案依赖于此,其适用范围会受限。不过,现代Web开发通常不再需要兼容如此老旧的环境。
框架依赖性: 如果这项技术非常紧密地绑定在一个特定的框架或库中,其独立的应用价值可能会被削弱。更好的专利通常会提供一种通用的解决方案,或者能被多种框架采纳。

4. 技术深度和具体实现:
对 `Object.defineProperty` 的理解深度: 他们对getter/setter的调用时机、执行上下文、以及如何在其中集成依赖收集和派发更新的逻辑,是否有着深刻的理解和精妙的设计?
依赖收集机制的细节: 他们是如何存储和查找依赖的?是基于数组、Map、Set,还是更复杂的结构?数据结构的选择和查找效率直接影响性能。
派发更新的策略: 当一个属性更新时,是立刻通知所有依赖者,还是有异步更新、批量更新的策略?这关系到用户体验和性能。
处理复杂数据结构: 如嵌套对象、数组、Map、Set等,如何递归地为它们的所有属性或元素添加响应式能力?如何处理属性的动态增删?
与虚拟DOM的配合: 如果这项技术是为某个特定的UI渲染机制(如虚拟DOM)设计的,那么其效率和配合程度也需要评估。

可能的评价方向总结

基于以上分析,对浙江大学这项专利的评价,可以从以下几个方面展开:

是否是“在已知技术基础上做了不显而易见的改进”? 如果仅仅是实现了Vue 2.x 那一套,很难获得有价值的专利。
解决了现有 `Object.defineProperty` 方案的哪些痛点? 例如,对属性增删的限制,对数组操作的特殊性,性能瓶颈,内存泄漏风险等。
在性能和资源消耗上是否有显著优势? 在大数据量、高频更新场景下,他们的方案表现如何?
是否具有通用性,或者是否能解决特定领域的难题?
专利的描述是否清晰、具体,技术实现是否可验证?

举例说明(假设的创新点):

假设他们的专利描述了一种新的“依赖图构建”算法,能够更智能地识别出实际发生变化的组件,从而只触发最少量的UI重渲染。或者,他们设计了一种“惰性响应式”机制,只有当一个属性被实际读取时,才会为其创建getter/setter,从而在应用启动时大幅减少内存消耗和初始化时间。又或者,他们找到了一种方法,能够通过一次 `Object.defineProperty` 调用,递归地代理整个复杂对象树,同时解决了动态增删属性的问题,而无需像Vue 2.x 那样依赖额外的辅助函数。

结论

总而言之,评价这项专利需要看到其具体的技术细节和创新点。仅仅是利用 `Object.defineProperty` 实现数据双向绑定这个概念本身,已经在技术界被广泛应用和研究。因此,这项专利的价值,完全取决于他们在这个“已知领域”中做出了哪些独特、有效且具有创造性的贡献。

如果没有具体的技术细节,我们无法给出确切的评价。但可以预见的是,如果这项专利能够突破现有框架在性能、易用性、或者处理复杂场景方面的某些局限,那么它对前端开发领域将具有重要的理论和实践意义,并可能为浙江大学在相关技术领域赢得声誉和知识产权优势。反之,如果技术内容与现有成熟方案相差无几,那么专利的价值就会大打折扣。

网友意见

user avatar

作为专利行业的从业人员,我觉得有很多被非专业人士误会的常识有必要在这里给大家科普一下。以下针对这个题目解释一些专利行业的专有概念及其实务中的具体操作问题。

1、关于什么是专利申请。

由于题目涉及的是发明专利,所以这里的相关概念仅针对发明专利进行解释,不涉及实用新型和外观设计。并且,为了让科普更加通俗易懂,有的专有名词我会替换成比较容易理解的名词。后续也一样,不再一一进行强调。

专利申请,顾名思义,只是处于申请阶段的专利,在还没有获得授权以前它就不具有专利权,因此也不存在侵权可能性。也就是说,这时候被公布的专利申请,只是告知公众有这么一个技术被申请了专利,而不是这个技术已经被授予专利权,这时候申请专利的人是没有办法拿它去主张权利的。当然这里还涉及临时保护期的问题,为了避免把大家说糊涂,这里就先不提了。

在实务操作中,如果我们拿到一件技术交底书,在初步检索后发现该技术交底书所保护的技术内容已经被在先的技术公开,我们会建议申请人不要申请。但是,有的申请人,比如大学的老师、研究生等,因为迫于任务的要求,所以需要申请专利,而不管要不要授权。这时候我们就会按申请人的意思把他们给的技术内容写成专利申请文件并递交上去。

通过上面的解释,大家应该也能明白,申请专利本身并不是门槛多高的一件事,只要你愿意申请,就可以去申请,至于它授不授权,还要看后面实质审查阶段的情况。这就引出了下一个概念,实质审查。

2、什么是实质审查。

实质审查,就是对于一件发明专利申请是否具有可专利性,由国家知识产权局的专利审查部门的专业审查员对专利申请进行实质性审查的过程。

一件专利能否获得授权,其最常见的需要满足的条件就是新颖性和创造性。

新颖性,是指该发明或者实用新型不属于现有技术;也没有任何单位或者个人就同样的发明或者实用新型在申请日以前向国务院专利行政部门提出过申请,并记载在申请日以后公布的专利申请文件或者公告的专利文件中。

创造性,是指与现有技术相比,该发明具有突出的实质性特点和显著的进步,该实用新型具有实质性特点和进步。

如果按照专业解释大家可能不太懂,所以这里我简单举例说明一下。

比如,在普通的杯子(不具有杯盖和把手)被人发明出来之后,有人去申请了一个带把手的杯子,有人又去申请了一个带杯盖的杯子。

首先,他们分别相对于普通杯子具有了把手和杯盖,所以他们两个都具有新颖性。

其次,由于带把手的杯子能够方便拿起,带杯盖的杯子能防尘和保温,因此他们相比于都具有了突出的实质性特点和显著的进步,因此又具有了创造性。

因此,他们都具有新颖性和创造性,在不存在其他缺陷的情况下就能获得授权。

当然,对于新颖性和创造性的判断,实践操作中会复杂很多,我这里只是简单举例,大家不要机械照搬。

这样,大家都能看懂了,虽然技术思路上都是发明了一种装水的容器,但是,由于他们和在他们之前的现有技术相比都存在较大区别,因此他们都能获得授权,而不是只要有普通杯子被授权,其他的改造型杯子就再也不能获得授权了。

对照着题目来看(当然这个技术我并不太懂,所以没有办法对该技术进行实质评价,这里我只做理论上的评价),虽然技术思路上是一样的,但是也许在实现方案上是存在实质区别的,所以并不排除其授权可能性。同时,在第一点的时候也说过,申请专利本身是没有什么门槛的,大家不要看到有现有技术被申请了就觉得这个世界上的人都道德沦丧,它可能有很多其他原因,并且也不会造成所谓的对科技进步造成阻碍,因为它还没有获得专利权。

3、关于专利侵权判断。

我看到有人提到之前有获得授权的专利,这里就再谈谈如何判定专利侵权。

我把授权公告号为CN103428202B的专利下了下来,我们现在来看看它的保护范围最大的权利要求1的具体内容。

可以看到,授权的专利的保护主题为“基于FTP和XML的遥感数据产品自动监控入库方法”,其技术方案中包含了五个步骤。

首先要明确一点,专利侵权判定标准中最重要的一个是“全面覆盖原则”。即,一件专利的保护范围,以其记载的权利要求书中的全部技术特征为准,判定侵权产品侵犯专利权,必须该权利要求的全部技术特征都存在于该侵权产品中。

通俗来说,就是这个权利要求1中记载的所有技术点,在侵权产品中都能找到。现在,本领域的技术人员可以来看看,是不是在本领域中采用这个技术,就必须要把这个权利要求1中所有的技术点都覆盖,如果不是,那么就可以认为不构成侵权。

这里还需要补充一点,专利授权与否的因素有很多。有的时候,只要你的权利要求写得足够长,可能也能获得授权。这是因为,即使给你授权,你去主张权利也无法获得胜诉(因为保护范围实在太窄),因此并不会对公众造成任何影响。所以大家不要谈专利而色变,在知道一件专利申请被授权时,应该先去看看授权专利的权利要求书长啥样,初步判断侵权可能性,再探讨给这件专利授权是否合适的问题。

4、关于专利权的无效。

很多人以为,专利一旦授权了我就啥也不能干了,这是一个很常见的误区。

专利审查程序中有一道特有的行政程序就是专利权的无效。只要有具体的无效理由,任何人都可以对一件被授予专利权的专利提起无效申请。比如像本题目中所述的,这个专利技术本身是现有技术,那么你可以拿着在申请日之前公开的现有技术的证据,到专利复审委员会去提起该专利的无效请求。

如果确实这个专利和现有技术一模一样,那么,它被无效的可能性就会很大。而一旦专利权被无效,则视为自始不存在,当然也就无法再拿它去主张任何权利了。


暂时想到这么多。如果大家还有一些其他问题,我可以再对该答案进行补充。

写得比较仓促,如果出现不准确的内容,接受大家的指正。

类似的话题

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有