栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

检查嵌套字典中的成员资格

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

检查嵌套字典中的成员资格

我的python技能很差,所以我太无知了,无法在任何合理的时间写出我的想法。但是我确实知道如何进行OO分解。

为什么

Employees
班上要做所有的工作?整体的Employees类可以执行几种类型的操作:

  • 从文件读取和写入数据-aka序列化
  • 管理和访问单个员工的数据
  • 管理员工之间的关系。

我建议您创建一个类来处理列出的每个任务组。

定义一个

Employee
类来跟踪或记录员工数据并处理现场处理/整理任务。

使用

Employees
该类作为员工对象的容器。它可以处理诸如追踪员工主管的任务。

定义一个虚拟基类EmployeeLoader来定义一个接口(load,store,??)。然后为CSV文件序列化实现一个子类。(虚拟基类是可选的-
我不确定Python如何处理虚拟类,因此这甚至没有任何意义。)

所以:

  • 创建具有
    EmployeeCSVLoader
    文件名的实例。
  • 然后,加载程序可以构建
    Employees
    对象并解析文件。
  • 读取每个记录时,将创建一个新的Employee对象并将其存储在Employees对象中。
  • 现在,要求Employees对象填充主管链接。
  • 遍历Employees对象的雇员集合,并要求每个人整理自己。
  • 最后,让序列化对象处理更新数据文件。

为什么这种设计值得努力?

它使事情更容易理解。较小的,以任务为中心的对象更易于为其创建干净,一致的API。

如果发现您需要XML序列化格式,则添加新格式变得很简单。子类化您的虚拟加载器类,以处理XML解析/生成。现在,您可以在CSV和XML格式之间无缝切换。

总而言之,使用对象来简化和构建数据。将常见数据和行为分成单独的类。保持每个班级专注于一种类型的能力。如果您的类是集合,访问器,工厂,厨房水槽,则该API将永远无法使用:它太大了,并装载了不同的方法组。但是,如果您的课程仍在讨论中,那么它们将易于测试,维护,使用,重用和扩展。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/648061.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号