Какой-либо хороший телефон UML экранирование вопросов там?

Есть старый трюк, чтобы сделать это только с одним сравнением / ответвлением. Может ли это действительно улучшить скорость, может быть под вопросом, и даже если это произойдет, это, вероятно, слишком мало, чтобы заметить или позаботиться о нем, но когда вы только начинаете с двух сравнений, шансы на огромное улучшение довольно малы. Код выглядит следующим образом:

// use a < for an inclusive lower bound and exclusive upper bound
// use <= for an inclusive lower bound and inclusive upper bound
// alternatively, if the upper bound is inclusive and you can pre-calculate
//  upper-lower, simply add + 1 to upper-lower and use the < operator.
    if ((unsigned)(number-lower) <= (upper-lower))
        in_range(number);

В типичном современном компьютере (то есть, в любом, использующем дополнение по два) преобразование в unsigned на самом деле просто нет - просто изменение в том, как рассматриваются одни и те же биты.

Обратите внимание, что в типичном случае вы можете предварительно вычислить upper-lower вне (предполагаемого) цикла, так что обычно это не дает значительного времени. Наряду с уменьшением количества команд ветвления это также (как правило) улучшает предсказание ветвления. В этом случае одна и та же ветвь берется независимо от того, находится число ниже нижнего конца или выше верхнего конца диапазона.

1113 Что касается того, как это работает, основная идея довольно проста: отрицательное число, если рассматривать его как число без знака, будет больше, чем все, что начиналось как положительное число.

На практике этот метод переводит number и интервал в точку происхождения и проверяет, находится ли number в интервале [0, D], где D = upper - lower. Если number ниже нижней границы: отрицательно , а если выше верхней границы: больше, чем D .

5
задан Electrons_Ahoy 30 June 2009 в 02:12
поделиться

7 ответов

There is a big difference between the level of UML experience required for a site doing model-driven development and somewhere that wants to use UML just for more formal design and documentation.

You should be in agreement with management about which category you fit or aspire to ;-)

1) ask them which diagram types they use most often and to describe the last occasion on which they used each of those diagrams. If they are really using UML regularly, they should be able to come up with a realistic scenario.

2) ask them to talk about using whiteboard UML vs tools, which can lead into a discussion of their favourite tool and its benefits/weaknesses as well as the need to retain whiteboard diagrams or not.

Anybody who uses UML regularly to think and especially to work out design collaboratively should be able to talk to these points without much hesitation.

3
ответ дан 13 December 2019 в 22:14
поделиться

Вместо того, чтобы сосредотачиваться на деталях UML, вы могли бы сосредоточиться на вопросе, почему. Например, почему вы должны использовать UML в этой ситуации? Какова цель UML? такой вопрос, вероятно, будет хорошо работать по телефону.

1
ответ дан 13 December 2019 в 22:14
поделиться

Как насчет некоторых общих параметров UML, которые легко объяснить?

  • Опишите разницу в диаграмме UML между частным и частным. публичное наследование?
  • Опишите вашу наиболее используемую / любимую динамическую диаграмму и почему?
  • Опишите вашу наиболее используемую / любимую статическую диаграмму и почему?
  • Какой уровень детализации вы считаете UML наиболее полезным в вашей разработке?
  • Что НЕ входит в диаграмму вариантов использования?
0
ответ дан 13 December 2019 в 22:14
поделиться

Вместо того, чтобы предлагать кандидату нарисовать диаграмму, вы можете попросить его интерпретировать, внедрить или найти ошибки в данных диаграммах. У меня сложилось впечатление, что те, кто понимает UML, могут создавать и понимать диаграммы, а те, кто не использует его, терпят неудачу в обоих случаях.

Если вы достаточно доверяете кандидату, чтобы не распространять вопросы (например, это позднее собеседование) , вы можете отправить ему несколько схем средней сложности по электронной почте во время экрана телефона и посмотреть в реальном времени, сможет ли он их интерпретировать. Вы можете отправить диаграмму с ошибкой и попросить кандидата ее найти. Или вы можете попросить кандидата написать что-то конкретное (например, определения классов).

Если вы не хотите отправлять вопросы, настройте какой-нибудь веб-сайт, на котором будет временно отображаться диаграмма (например, через флеш-память), но диаграмма не может быть записана без фактического захвата экрана (что кандидат должен быть слишком занят, чтобы делать это во время собеседования).

Конечно, вы также можете использовать приложение для совместной работы в реальном времени и попросить пользователя каракули. Большинство UML в совместном проектировании изначально создается как наброски от руки, а не с помощью формальных инструментов.

Кроме того, если вам нравятся головоломки, один из способов провести неформальное собеседование по UML (при условии, что у вас есть рисование в реальном времени) - поиграть в «UML pictionary». В Вашингтоне была компания, которая сделала это на мероприятии по подбору персонала, где кандидаты должны были либо нарисовать фразу на UML, либо интерпретировать ее.

вы также можете использовать приложение для совместной работы в режиме реального времени, и пользователь будет делать наброски. Большинство UML в совместном проектировании изначально создается как наброски от руки, а не с помощью формальных инструментов.

Кроме того, если вам нравятся головоломки, один из способов провести неформальное собеседование по UML (при условии, что у вас есть рисование в реальном времени) - поиграть в «UML pictionary». В Вашингтоне была компания, которая сделала это на мероприятии по подбору персонала, где кандидаты должны были либо нарисовать фразу на UML, либо интерпретировать ее.

вы также можете использовать приложение для совместной работы в режиме реального времени, и пользователь будет делать наброски. Большинство UML в совместном проектировании изначально создается как наброски от руки, а не с помощью формальных инструментов.

Кроме того, если вам нравятся головоломки, один из способов провести неформальное собеседование по UML (при условии, что у вас есть рисование в реальном времени) - поиграть в «UML pictionary». В Вашингтоне была компания, которая сделала это на мероприятии по подбору персонала, где кандидаты должны были либо нарисовать фразу на UML, либо интерпретировать ее.

где кандидаты должны были либо нарисовать фразу в UML, либо интерпретировать ее.

где кандидаты должны были либо нарисовать фразу в UML, либо интерпретировать ее.

5
ответ дан 13 December 2019 в 22:14
поделиться

«Вы использовали UML? С какой целью? Что вы об этом думаете?»

Экран телефона, ИМО, не обязательно определяет, лгут ли люди: в каком В этом случае нет необходимости «проверять» людей по телефону.

Вместо этого экран телефона должен видеть, насколько (при условии, что человек не лжет) его опыт и желания соответствуют ли они достаточно хорошему, чтобы их путешествие стоило для личного интервью.

Если они лгали во время телефонного интервью, вы можете обнаружить это позже во время личного интервью или проверки на месте.

0
ответ дан 13 December 2019 в 22:14
поделиться

Еще один хороший вопрос - это какой-то вариант «Каковы, по вашему мнению, основные ограничения UML?»

У любого, кто достаточно использовал UML, будет целый список мелких неприятностей и прочего, что это просто недостаточно выразительно для. Тот, кто только что изучил формы, здесь не преуспеет.

1
ответ дан 13 December 2019 в 22:14
поделиться

Я согласен с Soldier.moth большинство людей просто злоупотребляют UML, чрезмерно усложняя его, вместо того, чтобы использовать его в качестве инструмента связи с пользователями.

Так что спросить ПОЧЕМУ - лучший вопрос. Это открытый вопрос, но лично вы видите, что кандидат не робот, обучающийся наизусть.

0
ответ дан 13 December 2019 в 22:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: