说明:
此文档内容系我在备考软考系统架构师的时候,从多方来源进行的一个整理
(大部分来自于网络上各位大牛的整理,我直接白嫖了,一部分是我自己从历年
真题里面整理出来的),里面大部分理论知识点都建议各位备考的同学背熟并且
一定要理解其中的意思。在考试的时候,案例分析里面我个人认为它们基本都不
会被再次考到(起码在我两次的考试当中,它们一个都没有考试到,但是怕就怕
万一呀),但是它们对于夯实你的理论基础帮助是非常巨大的,可以让你更加从
容的去应对案例分析里面的理论考试,因为案例分析的考试内容,很多时候就是
从同一个理论知识点的不同角度去考的,所以我建议你朝死了去背诵并且一定一
定要理解他们的意思,不要把自己弄成了一个书呆子。在我两次的备考过程中,
我提前一个月的时候,就在地铁上反复拿着它当黄色小说看,人都块魔怔了,在
期间琢磨或者说也弄懂了很多以前不太清楚的知识点。当然,还是那句话,每个
人都应该有一份自己的整理笔记,我的笔记可以给你做参考,但别把它当成考试
必过的法宝,这锅我不背啊!(此文档严禁用于任何 RMB 牟利意图)最后,祝
各位同学考试成功。
案例分析知识点总结
第 1 题:解释器,管道过滤器,隐式调用三种架构风格从机器学习流程定义的灵活性和学
习算法的可扩展性两个方面进行对比与分析,哪个更适合于机器学习平台?
解释器:机器学习流程定义的灵活性高,可扩展能力强,因为解释器风格可以通过自定义流
程规则及配套流程解释引擎开发,做到用户层面的流程完全定义,而不需要修改代码,所以
无论是修改已有的业务流程,还是要扩展不同的角色,创建新角色的流程都非常便利。
管道过滤器:机器学习流程定义的灵活性较低,可扩展能力较弱。因为管道过滤器是把数据
处理职能做成过滤器,把数据传递做成管道,此时如果流程不发生变化,是可以通过这种方
式实现的,但一旦流程变化,或是扩展功能,需要对过滤器进行修改调整,或是流程在程序
层面重建,此时必须修改代码完成任务。
隐式调用:机器学习流程定义的灵活性一般,可扩展能力一般。隐式调用强调的是通过间接
方式进行调用,如采用事件机制,要完成某个动作时先触发事件,事件与相关动作关联,以
提升灵活度,比管道过滤器强,但弱于完全自定义的解释器。
第 2 题:针对用户级别和折扣规则管理功能的架构设计问题,李工建议采用面向对象,王
工建议采用基于规则,请从用户级别和折扣规则定义的灵活性、可扩展性、性能三个方面
进行比较,更适合采用哪种架构风格?
灵活性:面向对象将用户级别、折扣规则等封装为对象,在系统启动时加载,灵活性较低。
基于规则将用户级别、折扣规则等描述为可动态改变的规则数据,灵活性高。
可扩展性:面向对象加入新的用户和折扣规则时需要重新定义新的对象,并需要重启系统,
可扩展性差。基于规则加入新的用户级别和折扣规则时只需要定义新的规则,解释规则即可
进行扩展。
性能:面向对象的用户级别和折扣规则已经在系统内编码,可直接运行,性能较好。基于规
则需要对用户级别和折扣规则进行实时解释,性能较差。
综上可以得出,针对用户级别和折扣规则管理功能更适合采用基于规则的架构风格。
评论