диаграмма классов для C ++ - PullRequest
       0

диаграмма классов для C ++

0 голосов
/ 24 декабря 2010

Ребята! Я понял, что мой предыдущий вопрос не значил для вас, ребята, согласно моим намерениям. Я прошу прощения за то же самое.

Позвольте мне позировать по-другому.

Возьми мой случай, вчера я встретился на собеседовании.

Парень спросил меня, что он пытается разработать приложение, похожее на google maps, для своего устройства с Windows Mobile.

Он попросил меня придумать диаграмму классов для приложения.

Это было как вышибала для меня.

В таких случаях каким должен быть мой подход? с чего мне начать? Как я должен смотреть на проблему?

Надеюсь, это лучше поняли.

Я прошу вас ответить мне, учитывая, что я - любитель-разработчик C ++, который никогда не работал над какими-либо проектами на этапе анализа и проектирования

и не знает азбуки дизайна.

Спасибо

krisssam

Ответы [ 4 ]

2 голосов
/ 24 декабря 2010

Может быть, немного излишне для интервью, но даже там я все равно пошел бы на 1 и 3 и начал бы с 4.

  1. спрашивал как можно больше спецификаций, чтобы вы знали, что ожидается
  2. Когда это возможно / необходимо, используйте примеры, чтобы получить четкое представление о том, как он будет использоваться
  3. Начните с высокого уровня, сосредоточив внимание на основных функциях.Ищите предпочтительно менее 6 игроков (модулей) и старайтесь посмотреть, как они взаимодействуют.Определите характеристики и интерфейсы.
  4. Разбейте эти проигрыватели на подмодули и посмотрите, как они взаимодействуют (также определите элементы и интерфейсы).Повторяйте до тех пор, пока не получите реализуемые сущности (классы)
  5. параллельно с 4, для архитектуры посмотрите, как она будет развернута и какие языки / рамки / библиотеки необходимы / доступны.

Для google-карт я предполагаю, что игроками могут быть база данных карт, программа просмотра карт, пользовательский ввод, поисковая система, но я не эксперт в области графического интерфейса / ГИС / мобильных устройств.

2 голосов
/ 24 декабря 2010

Для начала вам необходимо четкое понимание того, что вам следует написать. Сформулируйте это понимание на английском языке. Теперь каждое существительное является кандидатом в класс. Каждый глагол является кандидатом на метод. и существительные, встречающиеся в одном предложении, являются кандидатами на объединение.

Это звучит довольно просто. Это потому, что я сильно упростила это. На самом деле это намного больше. Получить четкое представление о том, что должно быть написано в одиночку, непросто. Если вам интересно, предлагаю почитать книгу по объектно-ориентированному анализу и дизайну.

1 голос
/ 24 декабря 2010

Определите обязанности, которые будут иметь каждый компонент программного обеспечения, а затем задайте им классы.

0 голосов
/ 24 декабря 2010

Это не относится к языку.Диаграмма классов - означает, что вам нужно определить основные объекты, которые «играют» в этом приложении.

Объект карты и его элементы данных и действия

объекты значков и его элементы данных и действия и т. Д....

...