Поскольку Java является собравшим "мусор" языком, Вы не можете предсказать, когда (или даже если) объект будет уничтожен. Следовательно нет никакого прямого эквивалента деструктора.
существует унаследованный метод, названный finalize
, но это называют полностью на усмотрение сборщика "мусора". Таким образом для классов, которые должны явно убраться, соглашение состоит в том, чтобы определить близкий , метод и использование завершают только для проверки исправности (т.е. если близкий не был назван, делают это теперь и регистрируют ошибку).
был вопрос, который метал икру, всестороннее обсуждение завершают недавно, так, чтобы обеспечил больше глубины при необходимости...
Мигающие огни и прочие блестящие вещи. Хорошие игры наполнены цветами и вызывают такое же приятное возбуждение, как просмотр фейерверков.
Одно из мест, где вы можете увидеть эффективное применение этого принципа, - это приложения, использующие людей для генерации или индексации контента. В этих случаях игровые аспекты являются способом поощрения самомодерирования. Например, в SO репутация и значки нацелены на поощрение конструктивного поведения, такого как ответы более высокого качества, экспертная оценка и т. Д. Подобные системы существуют на многих общих форумах, а также на таких сайтах, как boardgamegeek и wikipedia. .
Я могу представить, что такого рода вещи хорошо работают для таких вещей, как вики-страницы сообщества / компании, документация по программному обеспечению, или соблюдение стандартов кодирования или покрытие тестов. Проблема, как всегда, состоит в том, чтобы не дать игре стать в центре внимания. Например, если вы можете получить репутацию за приведение в порядок своей вики-страницы в интрасети,
Блестящий вопрос, Эван! А теперь окончательный ответ:
Я думаю, что любая работа может стать интересной, если разбить ее на достижимые задачи. Приложение становится игрой, когда оно предоставляет эти проблемы, объясняет их и измеряет успех или неудачу.
Трудности встраивания проблем в приложения…
По этим причинам встраивание конкретных задач в приложение имеет очень ограниченную ценность. Социальные игры могут быть исключением, потому что другие пользователи частично определяют задачи и надлежащим образом оценивают прогресс в каждом конкретном случае.
Doom как интерфейс для управления процессами, кто угодно?
Я думаю, что основная проблема в том, что в большинстве приложений они используются для определенной цели. Им не нужно стимулировать пользователя, делая его более «забавным», и обычно это отвлекает. Представьте, что произошло бы, если бы Visual Studio (или какая-либо другая ваша любимая IDE) дала вам значки ... Как и здесь, многие люди сосредоточились бы на приобретении этих барсуков вместо написания хорошего кода.
Другое дело, что, по крайней мере, в в случае значков / достижений они бессмысленны для автономных приложений.
В настоящее время игры являются синонимом сообщества.
Большинство бизнес-приложений не включают в себя широкий спектр аспектов многопользовательской игры или сообщества.
Игры - это действительно образовательные приложения. Правда, обычно они учат тому, как играть в игру, но они все еще обучающие.
К тому времени, когда вы заканчиваете обычную игру, вы становитесь экспертом в десятке различных механик, знаете, как справляться со сложными сценариями, и может распознавать нескольких разных врагов и их модели.
Хотя сама игровая механика («прыжок!») может быть неприменима к типичным приложениям, взгляните на то, как игровой подход к обучению, безусловно, может быть.
Это определенно правда, что «игровые» функции в приложении могут отвлекать и снижать эффективность многих приложений.
Идея добавления игровых функций в продукт заключается в том, чтобы навязать своего рода экономия на производительности - причина работы. Например, значки здесь довольно изящные, но что действительно побуждает людей преуспевать в SO, так это репутация. Это позволяет им добиться большего и большего влияния, а также связывает их с чувством ответственности за сайт. Я думаю, что здесь SO действительно удачный баланс.
Хотя игровые функции в других приложениях могут быть оскорбительными, представьте себе это:
> gcc -c main.c -o main.o
Compiling... while your waiting, what's your favorite color?
Edit Вопрос, на который вы, возможно, захотите ответить очень конкретно: «Какое поведение вы поощряете, почему вы его награждаете и какова награда?» Если все это связано с производительностью и не имеет ничего общего с каким-то ортогональным счастьем (то есть социальным положением), я не уверен, что это сработает. Конец редактирования
С другой стороны, вы должны посмотреть этот доклад на тему «Человеческие вычисления». Вау.
http://video.google.com/videoplay?docid=-8246463980976635143
В нем говорится об использовании игр для категоризации изображений для Google. Немного не по теме, но вы могли бы это оценить.