LINUX.ORG.RU

Python + Pyramid(Pylons) + GAE + 1C(?), отговорите!


0

1

Здравствуйте. Хочу запилить Интернет-магазин.

В смысле как бизнес, а не только web-приложение. Возможно, свой, возможно продам (есть кому). Но в этом топике у меня вопросы именно по разработке web-приложения.

ГлавнойПобочной целью при этом является освоение перспективных технологий (в выборе которых я свободен, т.к. не знаю никаких).

После довольно усердных изысканий, склоняюсь к сабжевому набору технологий. Аргументирую выбор каждой:

Python - нравится; перспективен (на сколько - вопрос); прост; широко применяется именно для web. Основная рассматривая альтернатива - Java. Но она стара, минималистична, безлулзова, многословна, многоскобочна, кажется более сложной в применении именно в web-девелопменте. PHP не рассматривал, т.к. он имеет репутацию быдлоязычка для хоумпаг (даже название как-бы намекает), может и незаслуженно, но я поверил. К тому же не поддерживается GAE и не применяется нигде, кроме web. Ruby не рассматривал почти по тем же причинам. C# не рассматривал, т.к платформа, фактически, windows-only, стрёмно. Остальные языки суть маргинальные в моем представлении.

Pylons Pyramid - т.к. выбрал питон, то выбор фреймворка свелся к выбору между сабжем и Django (хотя есть и другие, но они гораздо менее распространены). Первый имеет репутацию «правильного» по своей архитектуре фреймворка. Это для меня важно, т.к. проект будет ынтырпрайзным по сути - длинный цикл жизни, много бизнес-логики, возможен слабоконтролируемый рост функционала.

Goggle Apps Engine - относительно этого пункта у меня меньше всего уверенности в правильности выбора. Подкупает возможность вообще не парится об администрировании этих ваших линуксов, диплойменте, масштабируемости и распиздяйстве/криворукости/жадности хостеров. Тем более, что во всех этих вопросах я нуб и не хочу тратить много времени на исправление. Отталкивает невозможность использовать реляционную БД, не слишком ли трудоемко окажется реализовывать много бизнес-логики с NoSQL хранилищем данных. Также пугает сложность ухода от гугле, если таковая необходимость возникнет.

1C - я в раздумьях, где мне реализовывать основную бизнес-логику приложения. Либо сайт у меня будет только web-мордой, а весь цикл обработки заказов реализовывать в 1С, либо у меня будет только одно приложение. В случае выбора 1с, напрягает необходимость идти на лицензионные нарушения расходы; необходимость создания и поддержки собственной программно/аппаратной инфраструктуры (в большей степени); дополнительные (и очень немалые) трудозатраты на интеграцию сайта и 1С. В пользу 1С: мое превосходное очень хорошее знание оной, весьма значительная часть необходимого функционала будет «искаропки». С этим пунктом определится могу и по ходу разработки web-приложения, в зависимости от того как у меня сложится с производительностью труда.

Прошу покритиковать мой выбор как целиком, так и каждый пункт по отдельности.

PS: умозаключения основаны почти полностью на чтении интернетов, но не на собственном опыте. Прошу воспринимать соответствующе.


Жаба - надежно, глобально, ынтырпрайзно. К тому же исходники можно не открывать

anonymous ()
Ответ на: комментарий от anonymous

>Жаба - надежно, глобально, ынтырпрайзно. К тому же исходники можно не открывать

да, это было на другой чаше весов, но не перевесило

Mleg ()

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

heisenberg ★★ ()

а, слушай, я не дочитал твой пост до конца, но после вот этого

1C

беру слова назад. извини, что отнесся к тебе, как к программисту и вообще человеку, близкому к IT. конечно, выбирай любой язык!

heisenberg ★★ ()
Ответ на: комментарий от heisenberg

Разарботчики фейсбука уже сто раз пожалели, что выбрали пых. У них там сервисы на жаве пишут. Возьмем лучше гугл, яндекс, амазон, 37signals, twitter. И где у них там пых?

А таки да, бизнес-приложение, это не сайтик для страдания фигней. PHP - нишевой язык, для бизнес-приложений нужно выбирать универсальные языки, вроде питона, жавы или руби. Даже С++ сойдет. Но не пых.

dizza ★★★★★ ()
Ответ на: комментарий от dizza

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

heisenberg ★★ ()
Ответ на: комментарий от heisenberg

Пруфы про фейсбук искать лень, но пробегало. Ну чисто дедуктивно можно додумать, т.к. если у них по сути и не пых, и HipHop, да жавные сервисы, то явно они их пыха выросли.

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

Вобщем не хочу очередной пых-холивар, но у нас используют несколько языков, пых в том числе, и пых зарекомендовал себя наиболее ушербным. Хотя вприципе да, работает. Даже какая-то сложная логика на нем вертится. Только «работает» ни разу не аргумент в пользу пригодности.

dizza ★★★★★ ()
Ответ на: комментарий от heisenberg

> беру слова назад. извини, что отнесся к тебе, как к программисту и вообще человеку, близкому к IT. конечно, выбирай любой язык!

Главной особенностью «человеков, близких к it» является то, что их даже к it лучше близко не подпускать.

Ведь было же до 1861 года им легко и просто...

anonymous ()
Ответ на: комментарий от heisenberg

у лицокниги не обычный хомячковый пхп, а свой т.н. HipHop for PHP, но даже он не устраивает fb-девелоперов по производительности вот они и думают куда сбежать

anonymous ()
Ответ на: комментарий от heisenberg

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

anonymous ()

Но она стара, минималистична, безлулзова, многословна, многоскобочна, кажется более сложной в применении именно в web-девелопменте.

Именно для веба да. Но бизнес-приложения с веб мордой далеко не заканчиваются котнролерами. Толстую логику лучше писать на чем-то строго типизированном, т.к. придется много рефакторить. У нас вот прижился такой подход: жава на бекенде в виде рест сервиса. Веб-морда на питоне.

Есть еще scala, если хочется новенького, но без знания жавы соваться не советую.

dizza ★★★★★ ()
Ответ на: комментарий от dizza

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

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

В сторону Scala тоже чуток поглядывал, но новенького хочется не настолько сильно :) И погружаться в мир Java, начав со Scala, это наверно черезчур.

Mleg ()

>Python

Всё ок, нормальный выбор.

Pyramid

Для человека, который выбирал технологии на чтении интернетов, это, имхо, сложновато. Джанго будет попроще для начала.

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

Goggle Apps Engine

Зря, лучше таки нормальный хостинг.

Подкупает возможность вообще не парится об администрировании этих ваших линуксов

Когда проект дорастёт до уровня, когда надо париться об администрировании этих линуксов, у тебя будут деньги на грамотного админа. Ну или проект умрёт раньше, но тогда тем более.

1C - я в раздумьях, где мне реализовывать основную бизнес-логику приложения.

Ни в коем случае. Серьёзно.

anonymous ()

про 1С

1С - это система для внедрения обновлений готовых конфигураций. Всё! Выкинь маркетологический бред. Есть законы и правила, и есть система, которая их быстро воплощает в жизнь - 1С.

Битрикс - стоит как самолёт. Сторонние решения - хак на хаке (у меня друг пишет «хакерский» магазин поверх 1C, и это чистый беспросветный ужас). Просто посмотри на прайс, эти цены не абстрактны. Я не отговариваю - если 1С действительно нужен, то всё ОК. Если нет - нафига козе баян?

Про питон - питон это питон плюс memcached для кластеризации, плюс пустые надежды заюзать джангу, и хороший вкусный секс с Pylons. Но ты и так это знаешь.

Нереляционная БД - это не «слишком ресурсоемко», гораздо хуже сам GAE, красивая система на поверхности подводных камней. Тебе не придется беспокоиться о криворуких хостерах, зато придется медетировать на структуру GAE :)

Мы разрабатываем платежные системы на основе Java. Часто некрасиво и тупо, зато надежно. Но жавы у тебя нет в списке. Почему?

stevejobs ★★★☆☆ ()
Ответ на: комментарий от anonymous

Для человека, который выбирал технологии на чтении интернетов, это, имхо, сложновато. Джанго будет попроще для начала.

Я не тороплюсь. У меня задача сделать не быстро, а качественно, и чтобы было легко расширять и поддерживать. Я не сторонник использовать инструменты «под задачу», тогда будет поверхностное знание всего по чуть-чуть, лучше хорошо освоить «правильный» фреймворк и использовать всегда только его.

Mleg ()

Не питаю особых симпатий к жаве, но назвать ее старой как-то язык не поворачивается. А вот безлулзовость — это да. Язык специально созданный для индусов, никакого веселья.

Ichiro ()
Ответ на: про 1С от stevejobs

Битрикс - стоит как самолёт.

Я имел в виду 1С:Предприятие, а не 1С-Битрикс.

зато придется медетировать на структуру GAE

Я готов к этому. Это к любой платформе относится, хочешь, чтобы всё хорошо работало - правильно используй API.

Мы разрабатываем платежные системы на основе Java. Часто некрасиво и тупо, зато надежно. Но жавы у тебя нет в списке. Почему?

Есть в списке (см. параграф про Питон). Рассматривал. У меня вопрос стоит, по-большому счету, так: что я выберу для этого проекта, то и станет в перспективе моей специализацией (сейчас я занимаюсь 1С, которая Предприятие). Заниматься Java я не хочу. Она так популярна, потому что на ней тьма всего понаписана, ей нет сейчас альтернативы, она надежна, глобальна, ынтырпрайзна, как правильно написал анонимус, но это точно не будущее языков программирования. Может и Питон не будущее, но перспективы лучше, на мой взгляд.

Mleg ()
Ответ на: комментарий от Mleg

А ты собираешся заниматься интерпрайзом вообще? Если да, то выбор у тебя не велик: java, c# и если осовоишь java, то еще и scala, а вот это вполне будущее языков.

dizza ★★★★★ ()
Ответ на: комментарий от dizza

> Если да, то выбор у тебя не велик: java, c# и если осовоишь java, то еще и scala, а вот это вполне будущее языков.

А шо scala уже попала в категорию интерпрайзных языков? Если чё, аргументировано плиз!)))

anonymous ()
Ответ на: комментарий от anonymous

Если разработка внутреняя, то интерпрайзность мереется не распространненостью, а зрелостью. Scala работает на зрелой платформе, это открывает ей светлый путь к интерпрайзу :)

dizza ★★★★★ ()

Почему не на битриксе?

anonymous ()
Ответ на: комментарий от anonymous

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

Mleg ()

В-общем. Тот проект я и не начал, потому что снова устроился работать фиксом как 1с-«программист». Однако, идею освоить что-либо, кроме 1С, я не оставил, к тому же всю жизнь душа лежит к web-разработке. Пришел к выводу, что всё-таки Java - самый практичный выбор, а web-разработка на GAE+GWT кажется очень вкусной. Есть идея для своего интернет-магазина, начинаю её реализовывать при помощи указанных технологий. Пока скорее в учебных целях. Спасибо всем отписавшимся.

ЗЫ: про этот тред вспомнил, увидев его в топе результатов поиска по «GAE forum», ЫЫЫЫ

Mleg ()

весь бухучет я бы полностью вынес в 1С. на вебе только отслеживание заказа в стиле «этим ребятам налоговую еще предстоит выслать»

VladimirMalyk ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.