Я интересуюсь расширением моего веб-сайта для предоставления услуги, которая вовлекает пользователей "регистрация" в кампус моего университета. Начиная с Услуг на основе определения местоположения (LBS) является довольно новым, и нет большой литературы вокруг этого, мог обеспечить соответствующие интересы для этого вопроса, у меня есть следующие вопросы спросить:
Во-первых, я знаю, что должен разработать приложение для Android и возможно приложение телефонного приложения. Для всего я предполагаю, квадрат просто использует клиент для отправки данных в их веб-сервер назад и вперед.
Кроме того, любая литература по этой теме значительно ценится.
Используйте foursquare API.
У них есть готовые библиотеки для Django и Python здесь, они должны облегчить интеграцию foursquare в ваш сайт.
Подражание foursquare - не лучший подход. Решение, отвечающее вашим специфическим функциональным потребностям и уровню нагрузки, всегда будет индивидуальным, а не скопированным. Даже самый большой университетский кампус в мире, где каждый человек пользуется сервисом, будет совершенно ничтожен по сравнению с пользовательской базой foursquare. Так что все, что они делают, НАМНОГО выше, чем то, что вам нужно.
Для ваших целей простой веб-сервис, вероятно, более чем достаточен. Сейчас я создаю приложения, чувствительные к местоположению (события в сфере искусства/культуры и потребительские предложения, локальные для текущего местоположения пользователя), которые обращаются к PHP-скриптам с аргументами строки запроса или опубликованных данных и потребляют JSON. Ничего фантастического, но я могу справиться с нагрузкой на стороне сервера с помощью легких технологий, которые я уже знаю, и я знаю, что это будет масштабироваться в соответствии с моей реальной нагрузкой.
Не будьте привязаны к тому, как это делает кто-то другой, даже если он является лидером отрасли. Их потребности - это не ваши потребности.
Ну, я думаю, что хорошим первым шагом было бы посмотреть на API Foursquare, как для того, чтобы увидеть, можете ли вы просто интегрироваться с их сервисом (т.е. искать регистрации в зданиях кампуса или что-то еще), так и для того, чтобы получить представление о том, что они используют. Их API выглядит как довольно стандартный веб-сервис, использующий XML или JSON, что кажется хорошей практикой и для вас.
Существуют некоторые трудности в создании масштабируемого веб-сервиса, который будет работать с географическими данными: вам понадобится база данных, которая может обрабатывать геопространственную индексацию для вас (иначе алгоритмы могут стать немного сложными). Если вы знакомы с Django, то GeoDjango может вам подойти. Я слышал, что Foursquare переходит на использование MongoDB, которая имеет некоторые функции геопространственного индексирования: скорее всего, они используют базу данных NoSQL из-за своих уникальных проблем масштабирования, о которых вам, вероятно, не стоит беспокоиться.