新手问个OOD的问题# JobHunting - 待字闺中
c*0
1 楼
CareerCup 上的题, Design the data structure for an online book reader
system, sample solution 如下:
class User {
User_id;
User_details;
Account_type;
Search_Library();
Read_book();
Renew_Membership();
AddUser();
Get();
Set();
};
class Book {
Book_id;
Book_details;
AddBook();
Update();
Delete();
Get();
Set();
};
class OnlineReaderSystem() {
Book B;
User U;
ListenRequest();
Search();
Display();
};
我不理解的地方:
1.为什么User 可以addUser(),Renew_MemberShip(), Book 可以AddBook(), Update(),
Delete()? 这些method是否需要administrator class来实现
2. 如果需要administrator class, 是否private data member应该包含set of Book
和 User?
3. User class 里面的Read_Book() method应该实现什么功能?这个方法为什么不放在
OnlineReaderSystem里面?
4. User是否需要存一个data member 放他自己library里面的书?这里Search_library
()是search 他自己的library还是全部的library?
还有一个general 的问题, 如果我需要一个object A, 还有一个collection of object
A, 是否需要建两个class?比方说book class 和 books class.
谢谢高手指点
system, sample solution 如下:
class User {
User_id;
User_details;
Account_type;
Search_Library();
Read_book();
Renew_Membership();
AddUser();
Get();
Set();
};
class Book {
Book_id;
Book_details;
AddBook();
Update();
Delete();
Get();
Set();
};
class OnlineReaderSystem() {
Book B;
User U;
ListenRequest();
Search();
Display();
};
我不理解的地方:
1.为什么User 可以addUser(),Renew_MemberShip(), Book 可以AddBook(), Update(),
Delete()? 这些method是否需要administrator class来实现
2. 如果需要administrator class, 是否private data member应该包含set of Book
和 User?
3. User class 里面的Read_Book() method应该实现什么功能?这个方法为什么不放在
OnlineReaderSystem里面?
4. User是否需要存一个data member 放他自己library里面的书?这里Search_library
()是search 他自己的library还是全部的library?
还有一个general 的问题, 如果我需要一个object A, 还有一个collection of object
A, 是否需要建两个class?比方说book class 和 books class.
谢谢高手指点