metaclass: (Default)
[personal profile] metaclass
http://juick.com/zamotivator/2317894
Забиватор мутит веб-приложение на Scala+Lift.
Я сдуру решил глянуть, чо там за проблемы. В целом, надо как-то прекращать практику заглядывания "ради интереса" в чужие проекты, ибо голова не казенная.
Во-первых, гит я знаю плохо и переключится на ремоте branch так и не смог. Ну, тут все очевидно - надо изучать и пользоваться, это мне просто лень. А так - скачал просто архив
Во-вторых, слава богу, что ждевелоп заставил забиватора использовать мавен - он хоть и безумный, но по крайней мере, нормально документирован и я его уже использовал.
В-третьих, эта хреновина на mvn jetty:run выкачала половину интернета, по-моему. Этот странный фетиш разработчиков на тему "повторного использования кода" им боком вылезет еще неоднократно - когда ради 1 функции тащится целый фреймворк, а он за собой еще 100500 зависимостей - шансы налететь на конфликты версий и прочее червие сильно возрастают. А мавен это делает очень легким, оказывая медвежью услугу. Ну, там хотя бы лишние зависимости исключить можно и то хлеб.
В-четвертых, оно ругается на то, что там используются две разных версии Scala-compiler. Т.е. см. выше - про версии, "с приездом вас".
В-пятых, оно собирается ровно один раз. Второй раз надо удалять target, иначе конфликты типов вида

https://gist.github.com/metametaclass/5422381


В-шестых, забиватор частично прав насчет Lift - там просто реальный майндфак и хипстерство, документация в гугло-группе и на SO, разобраться конкретно с его проблемой можно, но радости от этого не наблюдается никакой.
Причина, в целом, классическая - веб-фреймворки (в отличие от библиотек) - очень негуманная штука. Стоит выйти за рамки HelloWorld и монолитных приложений и оказывается, что любая задача выливается в копание по исходникам, SO, форумам и раскиданной по сотне мигрирующих туда-сюда сайтов.

ЗЫ: Забиваторъ утверждает (http://juick.com/2320702) что мавен выбрал самостоятельно.

Date: 2013-04-20 02:31 pm (UTC)
From: [identity profile] jakobz.livejournal.com
Ничего абсолютно хорошего с веб-фреймворками нет. Никакого даже близко уровня абстракции вещей типа "контрол" или "компонент" они предоставлять не умеют. Большинство - тупо обертки над http. Даже простейшие удобняшки поверх этого ломаются при первой же попытке сделать что-то сложнее редактора трех полей. Компоненты, даже банальный datepicker, ни в один фреймворк не входят, а собираются по помойкам интернетов где делаются детями-инвалидами. Даже якобы мейнстримный jqueryUI - уже понос дергающийся и моргающий, остальное - вообще жопа.

Date: 2013-04-21 10:49 am (UTC)
From: [identity profile] fantaseour.livejournal.com
Раз уж Вы 7 лет эту почву топчите, то странно, что удивляетесь таким явлениям. Просто в вебе не прижились привычные десктопные контролы, а попытки их сделать ведь были. Но как-то не приросло. Из-за исторических причин наверное

А с календариком причины могут быть совершеннно не мистичиеские:

1) несколько раз инициировали календарик и ожидаете не тех эффектов
2) сколнировали кусок с календариком через jQuery и пробуете его навесить заново
3) у контрола уже были классы, которые просигналили, что календарик уже навешен.

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

Date: 2013-04-21 10:50 am (UTC)
From: [identity profile] fantaseour.livejournal.com
И я думаю, что народ тут в осоновном обсуждает сервер сайд, а не клиент сайд.

Date: 2013-04-22 06:51 am (UTC)
From: (Anonymous)
Может это вам пора перестать думать за всех? Ваши формочки составляют процентов 3-5 в лучшем случае, от всех задач, решаемых в вебе, и большинству делфи в вебе не интересен, т.к. от сервера и клиента требуются разные задачи.

Если у вас сложный UI на формах, особенно в интранете, почему бы вам не попробовать ExtJS или kendooUi, например? Или более радикальные Cappuccino/sproutcore? Пробовали ли вы связки gwt+extjs, если вам так нужна концепция единого кода для клиента и сервера?

Я думаю, при желании можно найти десяток библиотек, на головую превосходящих убогий jqueryUI, и при этом попадающие в ваши критерии "контрола" или "компонента" (который плох своей деревянностью в настройках и монструозными размерами при слабой функциональности, что-то я не замечал там проблем с отрисовкой — может это ваша проблема с кодом?).

Судя по вашему комментарию, дальше jqUI вы не смотрели, но разве это проблема серверных фреймворков?

Date: 2013-04-22 07:36 pm (UTC)
From: [identity profile] plumqqz.livejournal.com
extJS мне в свое время живо напомнил Borland C++ 2.0 на одном мегабайте. Есть что-то такое... менуэтное.

Date: 2013-04-23 10:42 am (UTC)
From: (Anonymous)
По его истории развития (extjs) можно писать учебники "О костыльности идеологии ООП в жаваскрипте и борьбе архитектуры софта с жабами языка", но, тем не менее, со своими функциями он справляется, и делать на нем GUI при должной сноровке можно быстро.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 4th, 2025 10:53 am
Powered by Dreamwidth Studios