我们如何对员工层次结构(软件工程师、高级软件工程师、经理等)及其职责进行建模?

我们如何才能最好地为员工可以拥有不同名称的结构设计课程。经理可以管理少数员工。每个员工都有一些责任。我的想法是在以下几行。想知道更好的方法


enum DesignationLevel {

    SE, SSE, MANAGER;

}


class Designation {

    DesignationLevel dl;

    List responsibilies;

}


class Employee {

    Designation desig;

    Employee manager;

    List subordinates;

}


犯罪嫌疑人X
浏览 145回答 2
2回答

UYOU

看起来没问题。不要使用 的原始类型List,使用List<Responsibility>和List<Employee>。还有什么是SE和SSE?鉴于您的问题的上下文,我可以弄清楚,但您的代码的读者可能无法解决。使用适当的名称。此外,您如何为没有经理的 CEO 建模 - 经理为空是否可以接受?是否存在员工可能有多个经理的情况?enum DesignationLevel {&nbsp; &nbsp; SOFTWARE_ENGINEER, SENIOR_SOFTWARE_ENGINEER, MANAGER;}class Designation {&nbsp; &nbsp; DesignationLevel designationLevel;&nbsp; &nbsp; List<Responsibility> responsibilities;}class Employee {&nbsp; &nbsp; Designation designation;&nbsp; &nbsp; Employee manager;&nbsp; &nbsp; List<Employee> subordinates;}

炎炎设计

作为枚举常量的不同名称enum Designation {&nbsp; &nbsp; SOFTWARE_ENGINEER, SENIOR_SOFTWARE_ENGINEER, MANAGER;}员工(普通员工和经理)应根据其指定而具有指定和职责。此外,如果一名员工(即经理),那么他可以在他之下有下属,而他们也是一名员工,因此添加了类型列表。由于下属是类型列表,经理可以有下属,他们也可以是员工或经理,员工可能没有下属。class Employee {&nbsp; &nbsp; Designation designation;&nbsp; &nbsp; List<String> responsibilities;&nbsp; &nbsp; List<Employee> subordinates;}如果需要,可以为董事和管理人员提供单独的课程。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java