OOD 题目: Design a calendar Application (similar like Google Calendar)

Design a calendar Application (similar on lines with Google’s Calendar)
It should support the following functionalities:

  1. Ability to create, update, delete an Event
    a. An event would typically consist of {start, end, location, Owner, user-list, title}.
    b. Events can either be like meetings(with a dedicated location and appropriate guest-list) or as well be like holidays, birthdays, reminders etc.
    c. An event once created, can be either accepted or rejected by the constituent users - if neither it should be in neutral state.
  2. Get Calendar for a user Ui
  3. Get Event details.
  4. For a given set of users [U1, U2,…Un], identify their common free slot of time.

Expectations

  1. Code should be demoable, either by using a main driver program or test cases.
  2. Create the sample data yourself. you can put it into a file, test case or main driver program itself.
  3. Avoid writing monolithic code.
  4. Code should be readable, modular, testable, extensible with proper naming conventions. It should be easy to add/remove functionality without rewriting entire codebase.
  5. Code should handle edge cases properly and fail gracefully.
  6. Don’t use any external data store, all the data should be loaded in application itself.
  7. Don’t spend lot of time in parsing the input.

相关讲解视频

Youtube

报名mock

报名mock

报名mock

报名mock

报名mock

报名mock

报名mock

报名mock