Просто еще одно сравнение веб-стартап-платформы


Я ищу, чтобы сделать веб-стартап, который включает в себя что-то вроде сайта электронной коммерции, но немного более глубоко, чем это. В то время как это то, что я предпочел бы не вдаваться в детали с точки зрения первоначальной идеи, я могу указать (на базовом уровне), что потребуется от веб-сайта. Если у вас есть какие-либо наблюдения или мнения, полученные из личного опыта, которые относятся к тому, что вы видите здесь, я был бы признателен, если бы вы могли поделиться ими.

  • Paypal Взаимодействие с API (определенно).

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

    • PostgreSQL кажется довольно хорошим выбором, поскольку из того, что я читал, его структура немного более "объектно-ориентирована", чем, скажем, MySQL. С другой стороны, я использовал MySQL раньше и не было особых проблем с ним вообще. Стоит ли для этого изучать PostgreSQL?
  • Реализация Java или .Net (предпочтительно Mono, поэтому я могу использовать .Net при размещении веб-сайта с помощью Apache).

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

    • Хотя моно может быть хорошим вариантом, я знаю, что ASP.Net MVC 3 еще не был выпущен для Mono, с которым может быть больно работать, без их синтаксиса Razor. Кроме того, кажется, что Java полностью заполнена библиотеками классов, которые занимаются веб-разработкой, которые могут быть загружены из интернета. Если у кого-то есть опыт работы с ними, я был бы признателен, если бы это было опубликовано. Из того, о чем я читал. Spring и Struts2, они кажутся лучшими там - особенно с тех пор, как они (AFAIK) MVC.

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

    • Я действительно хотел бы иметь возможность разместить свой сайт через Apache, а не использовать Windows Server или что-то подобное, как, честно говоря, я ненавижу их установку. Я ни в коем случае не отрицаю его, я просто говорю, что он мне не нравится.

    • В C# есть много вещей, которых, по-видимому, нет в Java, включая делегаты, неподписанные типы и LINQ. Есть ли что-нибудь в Java, что может противостоять им?

4 4

4 ответа:

Если вы собираетесь использовать Java, вы не можете разместить хост с apache. Вы будете запускать Tomcat или какой-либо другой контейнер сервлетов, или полный сервер приложений Java EE, такой как Glassfish. Вы можете использовать apache в качестве переднего плана для запросов с более эффективным протоколом (протоколом ajp), чем просто выполнение http-вызова.

Никогда не использовал Mono, не делал тонны чтения, но если вы хотите использовать ASP.NET - я бы просто пошел с окнами. Избавь меня от лишних хлопот.

Честно говоря, вы можете легко просто сделать бэкэнд набором API и UI очень ajaxian, основанный на взаимодействии с бэкендом таким образом, что позволит вам легко переключаться между бэкенд-языками. Так что, если вам очень удобно в ASP.NET, сделайте это так, чтобы вы могли запустить его, а затем позже, когда вы захотите переключиться на повторную реализацию хостинга (с большим количеством извлеченных уроков, я уверен) в Java или Django или что-то еще.

"напишите мою собственную простую систему взаимодействия с кредитными картами"

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

Это мой любимый стек, он абсолютно летает. Я настоятельно рекомендую:

  • Twitter BootStrap
  • Facelets2.0/JSF2.0
  • CDI
  • JPA

Можно даже разместить его на http://jelastic.com/, используя сервер приложений GlassFish. Это действительно инновационный облачный хостинг-провайдер. Потратьте 30 секунд, чтобы посмотреть на их первую страницу, чтобы понять, почему.

MySQL / PostgreSQL: идите с тем, что вам знакомо. Если вы используете чистый JPA и JPQL, вы можете переключиться в любое время на a различные базы данных.

Paypal: как насчет Dwolla, Chargify или Google Checkout?

Я знаю, что сгорю за эти слова, но я бы снова посоветовал Django/Python по нескольким причинам. В настоящее время я участвую в крупном сайте с ним, и это беспорядок. Во-первых, инструментарий Python не так близок по калибру, как инструментарий Java. Во-вторых, Django слишком ограничен, и теги шаблонов даже не могут сравниться с потрясающими предложениями AJAX Facelets2.0/JSF2.0. В-третьих, это не совсем так. быстрый в исполнении, и он не является "гиперпродуктивным", как это рекламируется. Это нормально для маленьких вещей, но вы быстро перерастете их.

Мои $ 0.02:

Если вы развиваетесь (или у вас есть ресурсы), то идите с "тем, что у вас есть", что касается опыта. Не принимайте "религию", когда речь заходит о" платформе " - используйте то, в чем у вас есть лучший опыт. Более фундаментальный вопрос - "build vs buy" - да, Вы можете кодировать, как лучшие из них, но это ваша (бизнес) цель?

  1. Paypal-я не уверен, что вы подразумеваете под "дорогой", но, как заявил @Desmond Zhou, если вы не занимаетесь бизнесом создавая систему обработки платежей, вы даже не должны рассматривать возможность создания собственной системы взаимодействия с кредитными картами. Используйте установленные сервисы, такие как Paypal или сторонние альтернативные потоки оплаты из Googleили Amazon.
  2. по принципу "build vs buy" - вы можете использовать "платформы продавца" - от eBay (магазинов) или Amazon и не тратить ни минуты на разработку, а просто "начать" сейчас . Да, они будут поражать вас сборами - но так же будет и хостинг, что угодно время, которое вы проводите с несколькими шляпами-владельцем бизнеса / разработчиком / ИТ-специалистом. У нас, гиков, всегда есть эта "скрытая цена", и мы склонны забывать, что мы управляем бизнесом (если только бизнес на самом деле не является кодом/программным обеспечением).
  3. технологическая платформа/стек - Если Выдолжны развивать , как описано выше, идите с имеющимся опытом, чтобы вы могли начать свой бизнес, а не заниматься кривой обучения. Принимайте решения, которые учитывают долгосрочную перспективу-почему они вы рассматриваете моно над "родным" для .Net? чтобы сэкономить несколько баксов на хостинге? Мы, гики, любим думать о том, что" мы можем просто мигрировать " - конечно, это наша природа. Но отдаете ли вы себе отчет в затратах и усилиях, которые это потребует? например, переключение баз данных - поддерживают ли они одни и те же типы данных? шифрование? Часто то, с чего вы начинаете, - это то, с чем вы живете в течение долгого времени.
  4. я думаю (?) ты Висле (для Windows/IIS и SQL и АСП.Нетто) человек (как я). Я думаю, что WISA прошла долгий путь в качестве платформа и сообщество (Codeplex), и снижающие затраты. Не готов к полноценному SQL SVR, есть Express и даже Compact (отличная встроенная БД и идет по тем же инструментам разработки/управления, что и ее более крупные собратья MS). Это все еще не так дешево, как лампа, но, надеюсь, это не то, как вы принимаете решения на своих платформах-идите с тем, что вы знаете, - избегайте религии. Вы можете сделать любой язык, который у вас есть опыт в "fly", и если вы знаете платформу, fly быстрее / выше.

Надеюсь, это поможет...