Как выбрать правильную технологию и платформу для проекта? - PullRequest
0 голосов
/ 11 февраля 2009

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

  • Адресуемые URL
  • Очень быстро
  • Mobile - обслуживает iPhone и другие интеллектуальные устройства
  • Использовать существующие социальные сети
    • Живите
    • Facebook
    • LinkedIn
    • Twitter
    • Craigslist
    • 1022 * Etc. *
  • Использовать существующие услуги ID
    • Live ID
    • Открытый ID
    • 1032 * Etc. *
  • Клиентское и онлайн-приложение для управления
  • Целевое множество устройств
  • Мощная и гибкая отчетность
  • Мощные и гибкие критерии фильтрации и поиска
  • Самоподдержание; не требует большого количества администрирования
  • Сервис на основе
  • API, чтобы другие могли подключиться к нашим услугам (за плату)
  • Легко импортировать и экспортировать данные

Мне любопытно - учитывая эти принципы, как бы вы решили определить соответствующие технологии для использования в этом проекте? .NET или PHP? SQL Server или MySQL? Silverlight или Flash? У меня определенно есть свои личные предпочтения, но я не хочу, чтобы это омрачало мое мнение. Я хотел бы использовать правильные инструменты и технологии для проекта.

Есть какие-нибудь мысли и / или предложения?

Ответы [ 4 ]

2 голосов
/ 11 февраля 2009

Похоже, вы ищете золотой молоток. Там нет ни одного. Вам решать, что лучше для проекта. .net / php способны справиться со всем этим.

Если вам нужно настоящее приложение для iPhone, естественно, ни одно из них не будет работать. Однако вывод на устройство - это всего лишь вопрос обнаружения устройства и соответствующей визуализации представления, когда вы говорите о веб-платформе.

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

1 голос
/ 11 февраля 2009

Хорошо, вот основной ответ: вы можете взломать это в .NET, PHP, Java или Python. В этом вы найдете любое количество рамок. Большинство из этих рамок готовы к производству.

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

Однако есть один важный фактор, который следует учитывать: стоимость. Хотя .NET, вероятно, обладает лучшими инструментальными средствами в любой среде, он довольно сильно привязан к Windows. Если вы планируете использовать 100 машин в ферме серверов, необходимо рассчитать годовую стоимость запуска вашего окончательного решения.

Наконец, прочитайте Release It . Вопрос о том, как вы отслеживаете и обрабатываете свой код, вероятно, даже более важен, чем любая упомянутая вами функция.

0 голосов
/ 11 февраля 2009

Это один из тех классических вопросов "это зависит". Вы, безусловно, хотите исключить технологии, которые явно не подходят для вашего проекта - вы знаете, например, ActiveX для веб-сайта, который вы хотите, чтобы пользователи Mac могли использовать: -)

Но устранить несоответствия довольно легко. И вещи после этого довольно субъективны. Единственный способ сузить их - сделать выбор. Например: поддержка широкого спектра мобильных устройств. Какие именно? Если вы хотите настроить таргетинг на несколько платформ, вы почти наверняка говорите о веб-приложении - возможно, вы уже решили это.

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

Короче говоря, трудно ответить на "лучший" вопрос в вакууме. Там будет десяток комбинаций инструментов и технологий, которые могут делать то, что вы хотите. Чтобы выбрать один из них, вам нужно использовать свои конкретные требования и ресурсы для сокращения списка.

0 голосов
/ 11 февраля 2009

Не знаю PHP (и не люблю его в этом отношении), поэтому могу сказать только о ASP.NET:

  • Адресуемые URL - ASP.NET MVC (и System.Web.Routing) могут сделать это
  • Очень быстро - зависит от вас (переполнение стека чертовски быстро, так что убедитесь сами)
  • Мобильный - Опять за вами
  • Использовать существующие социальные сети - ASP.NET может сделать это
  • Использовать существующие службы идентификации - может сделать то же самое
  • Клиентское и онлайн-приложение для управления -?
  • Ориентация на множество устройств - может это сделать
  • Мощная и гибкая отчетность - может сделать это
  • Мощные и гибкие критерии фильтрации и поиска - Lucene.NET пород
  • Самоподдержание; не требует много администрирования -?
  • На основе услуг - зависит от вашего определения «на основе услуг»
  • API, чтобы другие могли подключиться к нашим услугам (за плату) - ASP.NET может сделать это
  • Легко импортировать и экспортировать данные - зависит от того, какие данные это
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...