Project Lagrange 是一项将强大的几何处理能力引入 Adobe 产品的计划。它将尖端的研究工作与前沿的产品联系起来。Project Lagrange 计划建立在以下设计原则之上:
模块化设计
大型功能应分解为较小的单个功能模块,这些模块应尽可能相互解耦。模块化设计支持单元测试,防止小的更改在代码库中广泛传播,并使添加新功能变得容易。
先决条件+保证
应该严格执行算法的正确性。这是通过清楚地记录和检查每个模块的精确前提和相应保证来实现的。应该避免依赖于输入相关参数调整的算法。
接口+计算引擎
功能的接口应该与计算算法分离。这使得用更好的算法替换另一个算法成为可能,并且理想情况下不需要更改客户端代码。
大规模测试
应定期对主要功能进行大规模的实证测试,以确保其正确性和稳健性。让数据自己说话。