Пожалуйста, не судите меня за то, что я делаю, потому что я понимаю, что это странная вещь, но мой босс хочет, чтобы это был внутренний инструмент.
Мне нужно было синхронизировать задачи с Microsoft ProjectФайл с календарем Outlook с помощью дополнения Outlook.Надстройка берет задачи, которые не имеют никаких подзадач, и помещает их в календарь, охватывающий время задачи.Мне удалось получить приложение:
- Загрузить файл проекта
- Добавить, обновить и удалить встречи из Outlook при синхронизации.
- Работать при загрузке, когдапроект не синхронизирован с календарем.
- Монитор Файл проекта и спрашивает пользователя, нужно ли синхронизировать.
- Обновление задач в файле проекта на лету при обновлении встреч в Outlook.
- Разрешить пользователю выбирать иерархию задач / назначений, например Задача B, является подзадачей Задачи A.
- Некоторые другие скучные вещи.
Теперь все это прекрасно работает, но сегодня я пытался обратить вспять процесс разработки и понял, что дизайн далек от совершенства.Код довольно аккуратный, и я чувствую, что избежал большинства запахов кода, но мне кажется, что дизайн не очевиден, если смотреть на код, и его нелегко понять сразу.Я только начал интересоваться шаблонами дизайна, и кто-то здесь предложил рефакторинг приложения, как отличный способ учиться.
Есть ли у кого-нибудь какие-либо идеи или ссылки на общие шаблоны дизайна, чтобы помочь мне получить голову?начать, например, типичный современный шаблон синхронизации, поскольку времени не хватает.
Большое спасибо
Пол