Pull to refresh

Comments 31

Лучше упомянуть, что Play они использовали старый и писали на Java ;)
+1, Автор бы еще байт-код сравнивал с кодом на скале. Главное доказательство того что не стоит тратить свое время на лифт а изучать более полезные вещи, такие как play состоит в том что последний был выбран typesafe хотя лифт тоже рассматривался но был достаточно быстро отброшен.
Если верить полаку, то он намеренно отказался от поддержки Typesafe.
No, Typesafe adopted Play because I decided that it's better not to work with Typesafe and have rejected their offers to join forces. Play is their only real alternative and it's a weak one. – David Pollak Sep 14 at 19:12
stackoverflow.com/questions/12424617/comparing-lift-with-play2
Ну да конечно не меня выгнали с работы а я всех выгнал и остался один в компании. Он конечно товарищ еще тот ну да ладно эта его сторона не затмит его заслуги перед сообществом scala.
Поллак обиделся просто как девочка и наплакал по всем углам, где только смог (я видел много мест, но вот этот вопрос, например, вижу первый раз, спасибо за ссылку).
Лифт мощный, да, но там «куча мала» — порядка нет, и элегантностью не пахнет, мне попадались места, когда 3 разных человека закомитили туда один и тот же функционал и использовали каждый свой — а мне пришлось и выбирать один из 3.

Я на 90% уверен, что предложение Typesafe, если оно было, звучало примерно так «Давай мы всё почистим и наведём порядок и возьмём Lift в Typesafe», к тому времени Поллак уже начал истерить в своём блоге и просто принципиально отказался.
Вот его блог, кому охота подробностей Санта-Барбары :) От статей по закрытие scala-tools.org и раньше.
Простите, но слова Расмуса Лердорфа не означают: "…что разработчику не нужно заботиться о безопасности и он может полностью сконцентрироваться на бизнес-логике." Они означают что он не нашел проблем с безопастностью в foursquare.
В лифте, правда, много секьюрити реализовано автоматически, и, вообще, не требует ни знания ни понимания — это круто.
Я вот на Play после Lift писал — много приятных идей, но про security приходилось думать самому и не раз.
Фраза «Когда вы пишите на Lift вы пишите раза в 2-3 меньше кода, чем если бы писали на другом фреймворке » должна выглядеть как «Когда вы пишите на Scala, то вы пишете в 2-3 раза меньше кода, чем если бы писали на Java». Полок очень хорошо использует возможности Scala в своем фреймворке, но компактность кода все же больше заслуга самой Scala.
Да верно, подправил насчет java.
Но все равно получается компактнее чем на Play, правда уже не в такой большой степени.
Автор лифта один из евангелистов в мире scala, он очень много сделал но вот дизайнер фремворков из него никакой.
К сожалению у меня выработалось скептическое отношение к штукам в стиле «смотрите как я с помощью трех строк могу быстро забубенить простенький пример», так как в угоду краткости приносят в жертву понимание нижележащих процессов. Я считаю, что явное лучше не явного, и я готов написать чуть больше кода, но понимать всю внутренюю кухню, что бы после года разработки не крыть матами весь белый свет за то, что у тебя есть продишью и не понятно где у нее ноги растут.

ЗЫ. Возможно лифт не такой. Но что бы эксперементировать нужен живой проект, но у меня нет желаения на такие эксперименты.
>> А если сравнивать с фреймворками типа Spring MVC / Struts то разница будет еще больше

Можно и Spring MVC писать на scala.
Мне lift сильно напомнил asp.net web forms. И это меня несколько насторожило. Хоть несколько раз и пытался вернуть его в поле зрения.
Это вам наверное напомнило runat=«server» для контролов. Но имейте в виду, что Scala действительно другой язык во многих отношениях и пишут на нем действительно иначе. А фреймворк Lift максимально эксплуатирует эти особенности.
Со Scala уже достаточно близко знаком. Но на Lift поглядываю с опаской все равно. Зато вот от Squeryl в восторге.
Ну и мне нравится писать clientside самому. Все таки clientside это то, что работает непосредственно у клиента. И не иметь возможность подтянуть какую-то часть, из-за того что ты этот кусок кода не контролируешь — не уверен что я могу себе это позволить.
Вы немного странно сравнили lift и squeryl. Один вэб фремворк (хотя и с нашлепками в виде mapper и record) и ORM.
Кстати недавно зарелизилась orm slick. Посмотрите на нее тоже может быть понравится.
Согласен, не очень адекватно получилось. Просто о squeryl я узнал в свое время именно из lift cookbook. И пытался сказать, что lift меня насторожил, а вот squeryl понравился.
Насчет ORM согласен. Mapper / Record — ваще гавно какое-то.
Мы тоже в свое время выбирали ORM и остановились на Squeryl, отказавшись в итоге от показавшимся приятным Circumflex. Что касается Lift, то он же не отбирает у вас возможность делать client side ручками, просто дает возможность это делать еще несколькими способами. Вы ведь и на Scala можете писать код Java-way, а в процессе находите более изящные решения.
Пытался использовать Scala + Lift, даже статью написал. Иногда использую Lift на своих проектах. Но основная проблема — это Scala. Да, кода нужно писать меньше, но частенько время тратится на то, чтобы понять, КАК это написать. И, порой, чтобы написать 1 строчку Scala-кода, я трачу столько же времени, сколько я бы потратил на 100 строк кода на Java.
Просто нужно больше опыта. По себе знаю что очень сложно со слабыми знаниями Scala идти в Lift.
Однозначно. Просто больше практики.
Городом N-ском обычно называют Новосибирск :)
Lift считается одним из самых сложных и в тоже время мощных web-фреймворков существующих на данный момент
А кем, простите, считается? Вот Play 2 например часть «официального» стека. И вобще я бы не доверял человеку, который о себе пишет, что он one of the top Scala developers (особенно глядя на код Lift, особенно ранний). View first мы уже видели в JSP/JSF, ASP/ASP.NET, да что там далеко ходить – в PHP (там кстати тоже всё можно делать очень быстро и лаконично и «безопасность» встроена прямо в язык (sic)).

Это не говоря уже о том, что код Lift идёт в разрез со всеми существующими coding guidelines и то, что они декларируют, как глубокое понимание идеологии языка, на самом деле является просто злоупотреблением мощными синтаксическими возможностями Скалы, от которого всячески отговаривают люди, которые действительно стоят во главе Scala-community. Результат: опытный Scala-разработчик смотрит на Lift-код и в принципе не понимает, что здесь происходит (это вроде как Java EE-разработчик и WebSphere-разработчик – это две большие разницы).

Поллак вечно рассказывает насколько у нас всё самое лучшее, самое крутое, все остальные ничего не понимают, а у меня сто лет опыта работы в индустрии (если что, до Скалы человек занимался тем, что торговал крутыми и сложными Excel-спредшытами). Самый лучший Комет? – По сравнению с тем, что уже сейчас (почти) есть в Play 2.1 это и рядом не стояло, я о Iteratee-based IO. Да и вобще люди велосипедов не изобретают, для асинхронного реквеста у вас обычный Akka-actor, а не что-то своё, не совместимое больше ни с чем.
Создается впечатление что у этого человека такая бизнес-модель — книжки продавать а что бы они лучше продавались под них можно и фреймворки писать. Я с данным художеством (лифтом) плохо знаком но вы верно пометили очень похоже на спагетти-код из php или asp.net.
Only those users with full accounts are able to leave comments. Log in, please.