我感觉第三章中,类的职责没有细分好。主要是两点
来源:3-5 使用组合设计模式优化代码

杨少峰
2020-02-19
我感觉第三章中,类的职责没有细分好。主要是两点:
- 对于其他开发者使用的话,并不友好。(使用不灵活和便捷)
- 类的组合不太合理。
2.1、我的理解,假如我是一个爬虫库封装者的话,让其他开发者使用我的爬虫库,那么我应该只对外开发一个入口。而不是让用户new两个类。
2.2、crowller这个类既然定义为基类,那我觉得analyzer这个类应该继承crowller,它拥有crowller的所有方法。 那么,crowller里面则是封装所有爬虫都可以使用的公用方法。
ps:
比如,我司某天要同时爬取5个网站,我总不能去new 5个class吧~~~
而是我应该去new一个统一的爬虫类,去传递统一的url,然后再写一个class,由这个class继承crowller的所有爬虫公用方法。
个人见解,想问下作者有何看法?
写回答
2回答
-
同学你好,真正编写crowller,实际上没必须要这么写的,这么写主要是为了衍生出一些知识点,让大家巩固下基础,真正的使用方式在后面的实战里会逐步涉及。
012020-02-24 -
布罗利00
2020-05-03
个人觉得,老师也是因此引发出组合模式 。Analyzer类感觉是对扩展开放原则。Analyzer类可以作为抽象类, 让用户定义的子类去继承它 ,并实现analyze接口。两个类的之间,尽可能单一职责原则
00
相似问题