Перейти к содержимому

Донат
На хостинг
ISK за переводы
до 75kk за 1000зн.
Хроники EVE
Сборник
Новичкам
Полезная информация
Фотография

PHP или ASP.NET MVC?

холивар PHP ASP MVC

  • Авторизуйтесь для ответа в теме
280 ответов в теме

#1
Tihiy

Tihiy

    Форумный призрак

  • Tech III Pilots
  • PipPipPipPipPip
  • 2057 сообщений
1004
  • EVE Ingame:Diego Virt
  • Corp:-FDE-
  • Ally:-
  • Client:Рус

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

 

Суть:

Я имею опыт работы с пестрым набором языков, но и с тем и с другим сталкивался только вскользь. А сейчас нужно определиться, на чем кодить большой проект интернет-магизина (готовые CMS не предлагать!). Хочу, что бы весило мало, работало быстро, тянуло бы много народу разом и поменьше возможностей случайно наделать дыр. Пока выделил для себя следующие плюсы у каждого:

 

PHP

+ дешевая рабсила много относительно не дорогих соискателей на вакансию разработчика, если такие понадобятся.

+ не дорогое лицензирование (будь то хостинг или просто лицензия на БД)

+ много всяких манулов, советов, хелпов и готовых решений в интернетах.

+ отличная производительность, если ограничивать себя в навешивании свистелок и еще чего-нибудь.

+ трафик и вес

 

MVC

+ простая разработка разных крутых штук (LinQ же!)

+ компилируемый, побыстрее будет, если много логики вне БД.

+ ООПешность, ибо удобно и реюз.

+ нативная поддержка AJAX и всяких там яваскриптов

 

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


  • 0
Умей мечтать не став рабом мечтаний
И мыслить мысли не обожествив...
/Р. Киплинг/

#2
Pointer

Pointer

    Clone Grade Nu

  • Tech III Pilots
  • PipPipPipPipPipPipPipPip
  • 8818 сообщений
1999
  • EVE Ingame:Zleus
  • Client:Eng
В свое время наелся с большим проектом и кучей логики на интерпретируемом языке, спасибо, больше никогда не возьму такого говна. Хотя с пхп дела вообще не имел, может для него это и нормально.
  • 0

#3
Cu Sidhe

Cu Sidhe

    Newbie

  • Tech II Pilots
  • 26 сообщений
6
  • EVE Ingame:SWFU tsk
  • Client:Eng

GWT + SPRING + HIBERNATE + JPA + GXT :]

PHP для больших проектов не советовал бы.


Сообщение отредактировал Cu Sidhe: 04 December 2013 - 12:55

  • 0

#4
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng

C# гораздо умнее php и в 10 раз тяжелее превращается в смердящую помойку. Хрен с ним с линком, но статическая типизация + лямбды это офигительно.

Но с нуля я бы не брал асп, а брал бы какой-нибудь веб-фреймворк работающий на моно (порт asp либо какой-нибудь NancyFX). Вин сервера дороги, а моно норм работает. Единственная с ним проблема - это странный сборщик мусора, который иногда жрет живые объекты, что, впрочем, обходится. 

 

PS Дешевизна говнокодеров на пхп обманчива. Язык им по рукам не бьет, в итоге все на что они способны - вносить еще больший хаос в проект. Среднестатистически .net девелопер пишет довольно тупо, зато надежно и предсказуемо (то же самое касается и джавы). А пхп разработчик делает что-то вменяемое только если он очень дорогой и умный. С другой стороны, умные челы сваливают с пхп на что-нибудь более привлекательное + все умные там в топовых конторах, откуда ты их к себе не сманишь. А .net в основном гниют в энтерпрайзе, поэтому стянуть их на что-нибудь чуть менее скучное будет значительно проще. 


Сообщение отредактировал glkudr: 04 December 2013 - 13:40

  • 5

#5
Pointer

Pointer

    Clone Grade Nu

  • Tech III Pilots
  • PipPipPipPipPipPipPipPip
  • 8818 сообщений
1999
  • EVE Ingame:Zleus
  • Client:Eng
Вообще нормальный веб проект состоит из легкого фронт-энда с юзеринтерфейсом и т.д. и бакэнда с бизнес-логикой. Теоретически можно фронт-энд делать на том-же пхп, а бакэенд на mvc, хотя в случае с mvc лучше на нем делать обе части.
А лично для себя, для своих внутренних хотелок, не для клиентов, я хочу попробовать go lang в качестве бакэнда, теоретически выглядит довольно клево, а на практике еще дела с ним не имел вообще.
  • 0

#6
kiruxa

kiruxa

    Clone Grade Zeta

  • Tech III Pilots
  • PipPipPip
  • 402 сообщений
73
  • EVE Ingame:Randall Flegg
  • Corp:npc
  • Client:Eng

GWT + SPRING + HIBERNATE + JPA + GXT :]

PHP для больших проектов не советовал бы.

hibernate вроде как имплементация jpa


  • 0

#7
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng

 Теоретически можно фронт-энд делать на том-же пхп

 

Чо вы там курите а? Фронтенд это JS и его разновидности, все (ну + статическая разметка, ее пофиг чем отдавать). Ну не умеют другие языки интерпретироваться в браузере. 


Сообщение отредактировал glkudr: 04 December 2013 - 13:59

  • 0

#8
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng

Тут есть такой фактор, что .NET платформа огромная и работают на ней больше коммандами. Потому что объёмы огромны и хорошо её за пару лет знать не будешь - там счёт на пятилетки идёт. Из опыта знакомых коллег. Ну и чисто потребительское мнение - многие сайты на ASP.NET, которые я видел, не очень быстры, а некоторые так вообще тихий ужас. Т.е. слова выше, что " Среднестатистически .net девелопер пишет довольно тупо, зато надежно и предсказуемо (то же самое касается и джавы)." могу подтвердить :) Другое дело, что сделать п****то и что бы летало -  другой вопрос. Вон stackoverflow написан на ASP.NET насколько я знаю, и они вполне делились инфой. Но это у них заняло не мало времени и они из топовых разработчиков на этой платформе.

 

С PHP сильно зависит от исполнителей, прям просто ну пипец как зависит. Я тут не так давно в ответ на твит одного из Core разработчиков PHP ответил "PHP is like Blizzard games - easy to learn, hard to master" - так мой твит разошелся таким тиражом, что я прифигел не один раз. Очень многие не доходят до стадии "hard to master" вообще. Ещё меньше её преодолевают.

Поскольку я сам являюсь разработчиком на PHP с почти 10-ти летним опытом и 99% моей работы в основном была в крупных проектах и толковых конторах, то я могу однозначно сказать, что можно сделать большой проект без проблем. Вопрос выбора правильного инструментария, а так же порядка в голове - не допускать говнокод, не допускать костыльных решений, не откладывать рефакторинг если он нужен и обязательно иметь в комманде пару опытных зубров (на крайняк хотя бы одного и что-бы он пи***л всех остальных палкой по рукам за недочёты и всякую нездоровую фигню).

 

Дёшевость PHP разработчиков - миф. Хорошие разработчики на PHP зарабатывают не меньше своих коллег по цеху, просто в этой сфере очень много низкокачественных проектов, кантор спорного пошиба и.т.д. А вот в high-end сегменте PHP конкуренция между разработчиками не очень большая, так как их сравнительно мало и им готовы платить МНОГО.

 

Решать вам :)


Сообщение отредактировал Psihius: 04 December 2013 - 14:09

  • 0

Сообщество FactorioMMO: Discord , Reddit


#9
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng

Тут есть такой фактор, что .NET платформа огромная и работают на ней больше коммандами. Потому что объёмы огромны и хорошо её за пару лет знать не будешь - там счёт на пятилетки идёт.

 

Да ну, ничего такого страшного нет в .net. То  что ты говоришь - это как раз отрыжки кровавого ынтырпрайза в виде сайтов на sharepoint и иже с ним. Ну так с тем же успехом можно сказать, что друпал тормозит, потому что пхп тормозит. Нет, вовсе не поэтому ;)

 

Вообще скорость исполнения языка как такового это последнее что должно интересовать при обычной сервисной разработке. Чаще всего проблемы производительности с ним вообще никак не связаны.

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

 

А вот в high-end сегменте PHP конкуренция между разработчиками не очень большая, так как их сравнительно мало и им готовы платить МНОГО

 

Все так. Нормальный тим лид на пхп в Москве будет просить 180 и даже не смутится.  


Сообщение отредактировал glkudr: 04 December 2013 - 14:13

  • 1

#10
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng

Да ну, ничего такого страшного нет в .net. То  что ты говоришь - это как раз отрыжки кровавого ынтырпрайза в виде сайтов на sharepoint и иже с ним. Ну так с тем же успехом можно сказать, что друпал тормозит, потому что пхп тормозит. Нет, вовсе не поэтому ;)

Ну страшного то нету конечно, просто сам объём даже той же стандартной библиотеки не маленький и просто нужно не мало времени что бы разобраться, понять, исследовать и.т.д., т.е. набраться опыта. Просто сколько я слышал, маленьких проектов на нём почти не делают, т.е. оверкилл, а над большими проектами в одиночку просто не работает никто :) В итоге имеем то, что имеем.

 

Что касается скорости языка, PHP на самом деле по скорости интерпритации отнюдь не медленный, незнаю как в данный момент, но пару лет назад по тестам синтетическим он уверенно в среднем был быстрее чем Ruby и Python. Но для WEB дева это имеет малое значение, поскольку фундаментальные подходы у этих языков и написанных на них фреймворках очень разный и прямое сравнение почти невозможно. Всё зависит от реализации, использования библиотек, инструментария и.т.д. На PHP можно написать проект, который будет работать так-же быстро, как и на каком-нить RoR или Django, а можно сделать на PHP быстрее и проще чем на RoR и Django - от проекта тоже зависит. Но на любом из них можно написать проект так, что он умрёт.

 

И ещё нюанс - ещё 3-4 года назад хороших фреймворков на PHP почти небыло - всякие CodeIgniter и ему подобные не в счёт, поскольку они по сути переходные - уже вроде ничего, но обратная совместимость с PHP4 и с PHP 5.1-5.2 давала о себе знать довольно сильно. В данный же момент, если выбрать для себя PHP 5.4 и выше, совершенно другая ситуация, совершенно другие фреймворки, возможности и инструментарий. Мир PHP за эти 3-4 года сделал гигантский качественный прыжок.


Сообщение отредактировал Psihius: 04 December 2013 - 15:14

  • 1

Сообщество FactorioMMO: Discord , Reddit


#11
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng

Ну страшного то нету конечно, просто сам объём даже той же стандартной библиотеки не маленький и просто нужно не мало времени что бы разобраться, понять, исследовать и.т.д., т.е. набраться опыта. Просто сколько я слышал, маленьких проектов на нём почти не делают, т.е. оверкилл, а над большими проектами в одиночку просто не работает никто :)

 

Я работаю :) Например, для тех же приложений под мобильники практически идеальный язык. Оверкилла не чувствую. 

Если же кодить на C# в стиле джавы, не используя разных прикольных фишек, то вообще можно за неделю освоиться. 


Сообщение отредактировал glkudr: 04 December 2013 - 15:22

  • 0

#12
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng

Я работаю :) Например, для тех же приложений под мобильники практически идеальный язык. Оверкилла не чувствую. 

Если же кодить на C# в стиле джавы, не используя разных прикольных фишек, то вообще можно за неделю освоиться. 

Ну давай не мешать всё-же разработку под мобилки и WEB :) Совсем разные вещи :)


  • 0

Сообщество FactorioMMO: Discord , Reddit


#13
glkudr

glkudr

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 3708 сообщений
714
  • EVE Ingame:GlKudr
  • Corp:Space Cleaners
  • Ally:exBSoD
  • Client:Eng

Ну давай не мешать всё-же разработку под мобилки и WEB :) Совсем разные вещи :)

 

Да никакой принципиальной разницы нет. Код UI другой и однопользовательский режим, это влияет на организацию БД. Остальное все то же самое. MVC во все дыры и так далее. Тормознутость запросов в вебе вполне симулируется железячной тормознутостью мобильников. 

 

Веб-аппы никто в одиночку не лабает не потому что это невозможно или неудобно, а потому что это не нужно. Хоть на пхп, хоть на .net Берешь CMS готовую и не сношаешь себе мозг. 


Сообщение отредактировал glkudr: 04 December 2013 - 15:29

  • 0

#14
Tihiy

Tihiy

    Форумный призрак

  • Tech III Pilots
  • PipPipPipPipPip
  • 2057 сообщений
1004
  • EVE Ingame:Diego Virt
  • Corp:-FDE-
  • Ally:-
  • Client:Рус

Я пишу много кода на C#, язык мне не в диковинку. Но, в основном, библиотеки и толстый клиент на WPF (MVVM, все дела). А у "заказчика" есть старый, больше не нужный, проект на пхп, которым он доволен был, т.к. "весит килобайты, работает быстро под нагрузкой, которую мы изначально и не планировали". Но "заказчику", по сути, нужно что бы работало - и он открыт для диалога касательно технологий и затрат. Надо на новогодних выходных запилить по макету на том и на другом, посмотреть, что получается и как оно вообще...

А на чем проще нечаянно понаделать дырок? Я так понимаю, что на PHP в неопытных руках?


  • 0
Умей мечтать не став рабом мечтаний
И мыслить мысли не обожествив...
/Р. Киплинг/

#15
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng
Неопытные руки в твоём случае главная проблема, да. Ну и выбор фреймворка тоже важен.

Сообщение отредактировал Psihius: 04 December 2013 - 16:25

  • 0

Сообщество FactorioMMO: Discord , Reddit


#16
Aurum_Gallente

Aurum_Gallente

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 11169 сообщений
1576
  • EVE Ingame:Aurum Gallente
  • Client:Eng

у ссп сайт тоже на asp 

 

ТС вообще имеет представление, что в php тоже есть mvc? mvc это вообще-то концепция, которая есть и в клиентском программировании, тот же angular имеет mvc структуру. 

 

Что значит большой? Какое-то абстрактное понятие для веб-разработки, там что, будет много товаров, огромная посещаемость или много функционала?)) Если амазон пилить не собираешься, то вне зависимости от языка и фреймверка тебя в 100% случаев выручит пряморукое кэширование, оптимизированные sql-запросы и чистка от говнокода, который может быть абсолютно на любом языке. Ну еще нужен нормальный хостинг.

 

брать asp не вижу смысла, если нет каких-либо друг причин, которые ТС не указал. На пхп посоветовал бы делать проект на Yii, в нем порог вхождения низкий - программиста всегда легко найти, достаточно быстрый. Если пхп не хочешь, бери ruby on rails, стоимость разработки конечно серьезно подскочит, но качество будет соответствующим. 

 

Еще очень важно пряморуко настроить сервер и БД, у меня случались траблы, когда элементарные join запросы выполнялись очень долго из-за криворукого сисадмина, неумеющего в mysql. Это если будешь брать выделенный сервер, который еще надо настраивать.

 

Брать готовые ЦМС крайне не рекомендую, как минимум из-за того, что они очень плохо дружат с грамотной сео-оптимизацией. Кроме магенто пожалуй, но всё равно кастомное решение с нуля будет лучше (при условии нормальных исполнителей)

 

Что значит "весило мало"? У меня библиотека Zend плюс всякие генераторы экселя и пдф весят пот 50Мб, это много или мало для тебя?) Если на сайте будет много товаров, то одних только картинок у тебя будет около 2Гб.

 

Сам я предпочитаю работать  (это если на php) на Zend 1 фреймверке - у него толстая библиотека почти на все случаи жизни, хорошая документация и комьюнити, минимальное количество дыр. Слоупочность фреймверка берем кэшированием как в слое пхп, так и в слое БД. Но это уже личные предпочтения, чаще приходится работать с тем, что уже есть.


Сообщение отредактировал Aurum_Gallente: 04 December 2013 - 16:57

  • 2
я всегда знаю, как надо лучше

#17
Tihiy

Tihiy

    Форумный призрак

  • Tech III Pilots
  • PipPipPipPipPip
  • 2057 сообщений
1004
  • EVE Ingame:Diego Virt
  • Corp:-FDE-
  • Ally:-
  • Client:Рус

Web-разработка проходила как-то мимо меня до текущего момента. MVC паттерн у меня правда жестко ассоциироваля с ASP.

Под термином "большой" имелось в виду, что не что-то на 2,5 товара, сплетенных из бисера сестрой, а среднестатистический магазинчик из я-маркета, со своей твораной (~5к наименований) и клиентской базой. Под весом - размер страницы, загружаемой пользователем. Ибо сейчас бесят сайты, которые по 2-3 метра льют трафика на кучу свистелок. Не у все и-нет, как в стольном граде. Размер же исходника/картинок на сервере мало волнует, врятли он будет критично большим.

Спасибо за фреймверки, покурим'с. Руби то же посмотрю, если время останется.


  • 0
Умей мечтать не став рабом мечтаний
И мыслить мысли не обожествив...
/Р. Киплинг/

#18
thefish

thefish

    Clone Grade Delta

  • Tech III Pilots
  • PipPip
  • 228 сообщений
104
  • EVE Ingame:Sherlock Masterson
  • EVE Alt:+2
  • Corp:Ice Cold Vodka
  • Client:Eng

Ну тут что можно сказать?
Посмотрите ценник лицензии на серверную винду.

Как только сделаете выводы - смотрите на Yii, Symfony, onPHP. С CMS не связывайтесь, потом не разгребёте.

ЗЫ Пишу на питоне.


  • 0

Осторожно! Чтение может привести к необратимому развитию мозга!


#19
Aurum_Gallente

Aurum_Gallente

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 11169 сообщений
1576
  • EVE Ingame:Aurum Gallente
  • Client:Eng

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

 

 

 

 был быстрее чем Ruby и Python.

 

руби успел сменить интерпретатор за это время, а рельсы измениться дважды до неузнаваемости.

 

ТС, главное не ведись на 1С Битрикс, остальное простительно  :troll:

 

а если серьезно, то озвученные ТСом требования вполне влазят в рамки php на нормальном фреймверке и нормальном хостинге, jango, RoR, asp будут лишней тратой средств в этом случае. Всё упирается в профессионализм исполнителей, которых тс найдет (дизайнер-юзабилист, сеошник, маркетолог, программист, рерайтер, контент-менеджер).


Сообщение отредактировал Aurum_Gallente: 04 December 2013 - 18:15

  • 0
я всегда знаю, как надо лучше

#20
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng

руби успел сменить интерпретатор за это время, а рельсы измениться дважды до неузнаваемости.

 

Ну поэтому и написал что N-ое кол-во лет назад, свежие тесты что-то не попадались на глаза. Ну PHP тоже на месте не стоял - там очень много поменялось и оптимизировали за это время :)

 

З.Ы. Сам тоже работаю с Yii - из всего он мне больше всего понравился и соотвествует KISS принципу (KISS - Keep It Simple Stupid или Keep It Simple Sane)


  • 0

Сообщество FactorioMMO: Discord , Reddit





0 посетителей читают тему

0 members, 0 guests, 0 anonymous users