metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-12-16 03:42 pm

Кто-то тупой, или я или гвозди

Сижу изучаю различные варианты реализации middle-tier, который планируется использовать в будущем для нескольких проектов. Решил пересилить свой страх и взглянуть на J2EE. А надо сказать, что для неподготовленного ума ентерпрайз жаба выглядит совершенно ирреально бредовой: миллиарды фреймворков, утилит, серверов, сотни страниц документации, проекты на ней содержат over 9000 папок и мелких исходников и xml-конфигов и вообще я не уверен, что в здравом уме и имея некую начальную свободу выбора инструментов, с этим стоит вообще связываться.

Начал искать что-нибудь вроде "J2EE для начинающих с пошаговыми инструкциями". Нашел AppFuse. Вроде все описано понятно, есть QuickStart, написано откуда качать зависимости, итд, итп. Но таки вы будете смеятся - но я не могу найти, где качать исходники этого дела. Ссылки "Download" на сайте нету.

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

Вообще говоря, у меня уже есть почти полностью готовая основа для этого миддл-тиера, на которой я бы проект сделал очень быстро: Firebird+Delphi+ASP.NET RESTful веб-сервис. Но проблема в том, что это означает полную и окончательную привязку проектов к виндам, отказ от любых потенциальных работ с юниксами в будущем и сгнаивание мозга до состояния "сеньор-фокспро-девелопер в ВЦ НИИ Говна и Торфа, 50 лет, 30 лет опыта рисования формочек в дизайнере".

Кроме того, если дать объявление "требуется разработчик на дельфи" - приходят такие долбаные мышевозы с паттернами "magic button" что рыдать хочется, соответственно шансов на то, что хотя бы когда-нибудь я займусь только архитектурой и управлением проектами, вместо того, чтобы самостоятельно писать код, внедрять и обслуживать - не останется никаких.


PS: Есть кстати, еще одна, еще более неадекватная альтернатива: сойти с ума и ударится в нетривиальщину вроде ерланга и хаскеля, начать писать самодельный миддл-тиер на чистом С и изобретать прочие велосипеды. То, что это гарантированно будет легче для нервной системы, чем J2EE и ASP.NET, я уверен. Там комьюнити меньше и не будет такого, что половина интернетов забита разнообразными фреймворками, каждый из которых настолько наворочен, что позволяет не писать код, а всего лишь парой сотен xml-конфигов сделать любое приложение.
Я вспоминаю 90-е годы, когда никаких интернетов не было, проекты были более мелкие и выбора "на чем писать" особо не было, можно было велосипеды изобретать хоть годами.

В этом, кстати, и проблема с J2EE - я уверен, что 83% авторов готовых фреймворков думают совершенно не так как я, то бишь неправильно, хаскель не изучали, и вообще делали эти фреймворки по наитию левой задней пятки.

Вот, к примеру: я считаю, что любой, кто сталкивался с статической типизацией и выводом типов, резко перестанет делать проекты "мегапереконфигурируемыми" с помощью сотен xml-конфигов, т.к. это выносит проверку правильности с времени сборки на время деплоймента и запуска. Ошибся в xml-файле в одной букве и вешайся, читай 100-строчные стеки вызовов и это еще хорошо, если у тебя доступ к продакшен-серверу есть.

[identity profile] veter-r-r.livejournal.com 2009-12-17 03:42 pm (UTC)(link)
Не менее 83%

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-17 06:51 pm (UTC)(link)
Вы таки вздумали меня поучить? Пойдите лучше папу ебаться поучите. Я вообще апач не использую последние годы.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-17 07:00 pm (UTC)(link)
Nginx понятное дело. Он уже даже по миру отожрал существенную часть ниши lighthttpd.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-17 07:01 pm (UTC)(link)
В про поучить, я готов вас попросить хорошо, если вы в ответ обязуетесь записывать на видео, эту вашу беседу с вашим папой.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-17 07:11 pm (UTC)(link)
С профи Вам не получится пообщаться. Разве что Вы говорите сами с собой. Сразу же видно, кроме Вас не то, что профи нет, нет никого кого стоило бы выслушать или внимательно прочитать.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-17 07:12 pm (UTC)(link)
Да, кстати, Великий, снизойдите показать что-нибудь, что сделали своими руками?

[identity profile] ikato.com (from livejournal.com) 2009-12-17 09:23 pm (UTC)(link)
> Ссылки "Download" на сайте нету.

Таки есть:

http://appfuse.org/display/APF/Source+Repository
http://github.com/myabc/appfuse

Re: Автор шутит?

[identity profile] alexclear.livejournal.com 2009-12-18 09:08 am (UTC)(link)
Полагаю, что с hardware balancer будет не то же самое.
Кроме того, полагаю, что внутри hardware balancer все равно, некоторым образом, software. Более того, я даже догадываюсь, как такой софт написать самому.
Что меня не устраивает в схеме с Apache - да то, что Apache обрабатывает запросы от клиентов синхронно.

Re: Автор шутит?

[identity profile] alexclear.livejournal.com 2009-12-18 09:10 am (UTC)(link)
Что, в общем-то, лишний раз доказывает нам, что на Java могут писать даже высшие приматы.

Re: Автор шутит?

[identity profile] alexclear.livejournal.com 2009-12-18 09:12 am (UTC)(link)
Вас с такими познаниями к Павлу Дурову никогда не наймут.
Если Вы, конечно, знаете, кто это.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-18 09:19 pm (UTC)(link)
Весь ваш местный высер лишний раз показывает, что пиздабола и мудака тоже могут поставить руководить 30 ява разработчиками. Боюсь правда качество у конечного продукта будет говняное. Но все компенсируется конструктивной сложностью, ведь правда же?

[identity profile] volodymir-k.livejournal.com 2009-12-19 01:34 am (UTC)(link)
В парадигме mvc спринг -- это организация контроллера и отделение от view. То есть можно на основе одного ява-контроллера иметь и веб-морду, и soap, и жаваскрипт-аякс-json. Одновременно. Или даже не одну, а много.

Для написания веб-интерфейса там помощи немного. Есть теги, но их не надо использовать. JSTL гораздо лучше.

[identity profile] volodymir-k.livejournal.com 2009-12-19 01:39 am (UTC)(link)
То есть убрали претензию к языку xml. Да, в энтерпрайзе диагностика чуть посложнее коре дампа от хелловорлда.

Re: Автор шутит?

[identity profile] alexclear.livejournal.com 2009-12-19 03:21 pm (UTC)(link)
И у асинхронных серверных приложений есть такого же уровня проблемы, как и у тех которые выполняют обработку синхронно - C10k например :-)

Ой, таки да что Вы говорите?
ПРАВДА, ЧТОЛЕ?
И какого же это уровня проблемы, если более подробно?
C10k, например? Что Вы можете знать про C10k?
Вы ни разу в жизни epoll queue своими руками не заполняли, какой для Вас C10k?

Более всего в направлении распараллеливания процессов Google идет со своими разработками.

Какой еще Google?
С какими еще разработками?
Какое еще распараллеливание каких процессов?
О ЧЕМ ВЫ?
Вы себе представляете, что для большей части web-приложений достаточно тривиальной горизонтальной кластеризации и шардинга, безо всяких там map-reduce?

А ваш уровень РНР скриптинга, это для школяров оставьте :-0)

А Вы, надо полагать, Google enginner?

Это я к вашим приматам и прочим истерикам :-)

Вы байт от ниббла не отличаете, не знаете, куда и зачем растет стек.
Не пишите мне больше.

Re: Автор шутит?

[identity profile] alexclear.livejournal.com 2009-12-19 03:32 pm (UTC)(link)
Забавно, что этот беженец считает нас PHP-шниками.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 04:33 pm (UTC)(link)
Отлезь животное.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 04:33 pm (UTC)(link)
А ему больше не на чем подняться.

[personal profile] ex0_planet 2009-12-19 06:06 pm (UTC)(link)
А подход "выполнить магические пассы и позвать того-кто-Знает если не сработало" - он вообще оказывается наиболее эффективной (в очень многих смыслах) стратегией, только пользователи в конечном счете оказываются в проигрыше.
К xml'ю претензий вообще не было, он здесь чисто привычным жупелом работает :-)

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 08:13 pm (UTC)(link)
Еще какие слова знаешь, ебосрань? Позови к телефону папу.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 08:33 pm (UTC)(link)
Пойди свой пунцовый галстук потолкуй, хуеплет. Удивительно что ты еще по помойкам не побираешься с такими талантами. Но ничего, скоро будешь.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 09:29 pm (UTC)(link)
Смотрите, говорящая залупа не только в IT, но и в русском языке нихуя не разбирается (http://www.google.com/search?client=safari&rls=en&q=define:+толковать&ie=UTF-8&oe=UTF-8).

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 09:54 pm (UTC)(link)
Я смотрю из тебя счастье так и прет. Ты его береги. На всю жизнь не хватит.

Re: Автор шутит?

[identity profile] bopm.livejournal.com 2009-12-19 10:49 pm (UTC)(link)
Хуйли тебя бояться? Я таких мудаков как ты годами на хую вертел, к чему делать исключения? Не пиши мне больше.

[identity profile] zhengxi.livejournal.com 2009-12-20 12:57 pm (UTC)(link)
> Вот, к примеру: я считаю, что любой, кто сталкивался с статической типизацией и выводом типов, резко перестанет делать проекты "мегапереконфигурируемыми" с помощью сотен xml-конфигов, т.к. это выносит проверку правильности с времени сборки на время деплоймента и запуска. Ошибся в xml-файле в одной букве и вешайся, читай 100-строчные стеки вызовов и это еще хорошо, если у тебя доступ к продакшен-серверу есть.

Кстати, а разве статическая типизация от этого спасёт ?
Например, у + - и * одникаковый тип (a -> a -> a), ошибся в одной букве (- вместо +, < вместо >, и так далее) - и проверка правильности выносится с времени сборки на время деплоймента и запуска.

[identity profile] metaclass.livejournal.com 2009-12-20 01:03 pm (UTC)(link)
К + и * с помощью системы типов можно прикрутить размерность, тогда их перепутать будет невозможно :)

Но от таких опечаток, в общем случае, конечно, никак не защитишься. Но все таки разница есть - тестировать правильность бизнес-логики, зная, что ошибок типизации у тебя нет, и архитектура нормальная(потому что другую просто не сделаешь) или тестировать и бизнес-логику, и правильность ее реализации и вообще все, что могло поломаться.

Page 8 of 9