首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单设计问题:家长,孩子,老师,学生

简单设计问题:家长,孩子,老师,学生
EN

Stack Overflow用户
提问于 2011-06-04 13:50:24
回答 1查看 396关注 0票数 0

很简单的问题,但我想看看专家是如何看待它的。

这只是想象中的软件,只是为了理解OOP。我有一个学校管理软件。所以我有课

  • Student
  • ClassRoom
  • Teacher

现在我指派一位老师担任某一特定教室的班主任.因此,ClassRoom包含

代码语言:javascript
复制
Teacher classTeacher; 
Student[] students; 

现在整个程序都写好了一切都很好..。

问题:

现在,如果校长提出了一条新的规则,那就是不应该有一个老师是家长的学生。现在,我们需要为一个小的需求在代码中带来更多的参数和大量的更改。设计应该如何才能使需求的未来更改(这将不可避免地)只需要对代码进行微小的更改?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-04 14:01:34

这不应该是一个大的代码更改,这应该是一个验证更改。

Psuedo代码:

代码语言:javascript
复制
Class ClassRoom {
    List<Student> students
    Teacher teacher

    ClassRoom(Teacher _teacher, List<Student> students) {
        teacher = _teacher;
        SetStudents(students);
    }

    void SetStudents(List<Student> _students) {
         foreach (Student s in _students) {
             if (validate(s)) {
                 students.add(s);
             } else {
                 // error handling logic
             }
         }
    }

    void validate(Student student) {
        if (student.parent == teacher) {
            return false;
        }
        return true;
    }
}

class Student : Person {
    Person parent
}

class Teacher : Person { }

当然,您必须进入数据库和代码库,并向所有学生添加“父”属性。但这也不应该太难。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6237102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档