juan_gandhi: (Default)
[personal profile] juan_gandhi
Серьёзно

Upd. Попросил раззамочить.

Ну вы записывайтесь к нему в друзья; умнейший человек, между прочим.

Date: 2010-05-26 11:40 pm (UTC)
From: [identity profile] ygam.livejournal.com
You are not authorized to view this protected entry.

Date: 2010-05-26 11:40 pm (UTC)
From: [identity profile] occam-aga.livejournal.com
подзамоченный только немного :)

Date: 2010-05-26 11:49 pm (UTC)
From: [identity profile] softmaster.livejournal.com
о важности инкапсуляции в лице protected class members? %)

Date: 2010-05-27 02:30 am (UTC)
From: [identity profile] skavish.livejournal.com
вот интересно я много читаю о всяких таких командах как описывает автор поста, но сам никогда не сталкивался, все больше разумный народ попадался. ну может что-то и было похожее где-то в паралельных группах и то чисто по слухам.

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

Date: 2010-05-27 12:07 pm (UTC)
From: [identity profile] just-developer.livejournal.com
Вот вот...
Думать просто надо, а не java какую-либо обвинять

Date: 2010-05-27 03:30 am (UTC)
From: [identity profile] yatur.livejournal.com
Люди сурово игнорируют YAGNI (you ain't gonna need it) и KISS (keep it simple, stupid) принципы. У Кента Бека (или у Мартина Фаулера или у обоих) описаны психологические причины этого. Страх изменений. Любые изменения - это потенциальные баги и глюки. Поэтому, давайте мы сделаем программу максимально гибкой на все случаи жизни, чтобы один раз отладить и потом только конфиги менять.

Разумеется, это недостижимо :( Отсюда и идея agile programming: embrace change. Но как и любые другие психологические привычки, привычку говорить "а вдруг нам понадобится..." трудно изжить.

Date: 2010-05-27 04:16 pm (UTC)
From: [identity profile] tonsky.livejournal.com
Да, про страх хорошо. И embrace change. Это ж суть agile, но как-то она ускользала от меня. Слушайте, спасибо!

Date: 2010-05-28 04:34 pm (UTC)
From: [identity profile] yatur.livejournal.com
Пожалуйста. Всегда приятно пообщаться с умным человеком :)

Date: 2010-05-27 03:42 am (UTC)
From: [identity profile] relyef.livejournal.com
Чушь там написана. Если бы написавшего звали многосложным индийским именем, я бы хоть понял, откуда у него такие взгляды. Copy-paste - наше все? (последняя фраза - это был сарказм)

Date: 2010-05-27 04:56 am (UTC)
From: [identity profile] vit-r.livejournal.com
Давным давно известный феномен.

Одним нравится находить решение задачи, другим нравится программирование.

Date: 2010-05-27 05:55 am (UTC)
From: [identity profile] izard.livejournal.com
Спасибо, действительно хорошо пишет, зафрендил.

Date: 2010-05-27 05:59 am (UTC)
From: [identity profile] plumqqz.livejournal.com
"Оказывается, я уже сорок лет говорю прозой!"

Date: 2010-05-27 09:19 am (UTC)
From: [identity profile] ok-its-the-last.livejournal.com
Вот-вот. Лошадь ест овес.

Date: 2010-05-27 06:28 am (UTC)
From: [identity profile] wakes-up.livejournal.com
Это по тому, что когда пишешь N-ую фигню по составлению отчетов хочется наконец куда-то приткнуть свои знания

Date: 2010-05-27 09:34 am (UTC)
From: [identity profile] gabaidulin.livejournal.com
Прочел несколько постов и вот что пришло в голову. Многие примеры, которые он приводит, это же классическая SOA архитектура. Она, кстати, вполне себе имеет свою нишу и не только в enterprise, а например в компаниях, у которых много севисов и которая, комбинируя их, может получать новые(Yandex, Rambler, Mail и много других). А то что она несколько многословна, так это цена за гибкость строить "приложения из кубиков". Многие компании в том или ином виде ее используют. Ну java предлагает делать это так.

Получается, что он "Пастернака не читал", потому что ни одного наезда на эту самую SOA я не увидел, а ругалась только имплементация. А как ее сделать по-другому и сильно лучше, используя java, это еще вопрос.

Date: 2010-05-27 09:35 am (UTC)
From: [identity profile] gabaidulin.livejournal.com
Тем более, что есть всем(?) известные рецепты, как эту многословность, хотя бы, не писать руками.

Date: 2010-05-27 05:28 pm (UTC)
From: [identity profile] tonsky.livejournal.com
Еще бы не видеть ее глазами.

Date: 2010-05-27 07:39 pm (UTC)
From: [identity profile] gabaidulin.livejournal.com
Я имел в виду кодогенерацию.

Date: 2010-05-27 05:27 pm (UTC)
From: [identity profile] tonsky.livejournal.com
Ну как SOA? Система одна, монолитная. Это считается SOA?

Date: 2010-05-27 07:38 pm (UTC)
From: [identity profile] gabaidulin.livejournal.com
Я просто увидел в постах очень характерные паттерны. Например, предоставлять клиентам некоторое api через интерфейсы.

SOA вообще декларирует не реализацию, а подход. Чтобы было понятно, приведу пример. Допустим у вас есть задача аутентификации и авторизации юзера.

Самый простой вариант имплементации, это получение от юзера логина и пароля, проверка его через хранилище данных и так далее.

Но иногда некоторые сумасшедшие люди реализуют целый отдельный сервис для этих целей, у которого есть api(с которым и общается программа-клиент), есть несколько реализаций(для разных протоколов). Иногда даже специальнвй протокол, который потом оборачивается в JSON/XML и который потом доставляется через HTTP/SOAP/TCP.

Отсюда и растут все эти AuthImpl и так далее.

Зачем?

А потому что проектов у компании много, она может даже прикупить что-то на стороне и надо подумать об интеграции(всем хочется же, чтобы юзер залогинился 1 раз, и имел доступ на все сервисы). Таким образом, проект, который написан на php может быть интегрирован(нужно будет реализовать только клиента для сервиса, через доступный протокол).

Могу еще пример вспомнить. Интеграция сервиса прогноза погоды с вики(с информацией о приметах из википедии). Или еще. Интеграция тв программы с обсуждениями в блогах(это уже Яндекс).

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

Из ваших постов я не понял, недовольны ли вы архитектурой SOA в целом, ее имлементацией или ее неоправданным(по вашему мнению) применением.

Date: 2010-05-27 11:28 am (UTC)
From: [identity profile] vaggie.livejournal.com
зафрендил чо. вот интересно, есть же профессия золоторя, и ничего люди, не жалуются. мне вот за маинтенанс денег платят, так что чем больше на свете рьяных программистов, а не решателей задач, тем больше у меня работы. и это повод для бесконечных лулзов и холения своего ЧВ

Date: 2010-05-27 06:21 pm (UTC)
From: [identity profile] yakov-sirotkin.livejournal.com
И я довольно много на маинтенансе заработал. Но это просто слёзы по сравнению с теми результатами, которые можно было бы получить, если включить мозг сразу, а не когда приходится платить за поддержку больше, чем за разработку.

Date: 2010-05-27 04:25 pm (UTC)
From: [identity profile] nikaan.livejournal.com
я вот такое видел : когда человек писал на все случаи жизни, но при этом ещё не ясно представляет итог. В какой-то момент оказалось, что всё написанное несовместимо с тем, что надо. Пришлось переписывать(мне, и совсем не в объектно ориентированном стиле:)), быстро, и конкретно под этот случай. Потом, правда, проект всё равно закрылся:) но это неважно.

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

Date: 2010-05-27 04:28 pm (UTC)
From: [identity profile] nikaan.livejournal.com
представлял

Date: 2010-05-27 04:54 pm (UTC)
From: [identity profile] tonsky.livejournal.com
Точки расширения или роста вроде.

Date: 2010-05-29 08:03 pm (UTC)
From: [identity profile] nikaan.livejournal.com
тут надо уточнить - речь не об общей архитектуре или о дизайне, а о куске непосредственно работающего кода. Я его себе представляю как канализацию - с трубами и т.д. В этом случае "концы" легко заменяемых деталей обычно узкие. Потому я и точки называю точками сужения. Вроде бы в книжке (не помню кого) "эффективная работа с унаследованным кодом" про это писалось в такой же терминологии - там в контексте того, какие места лучше покрывать тестами (в первую очередь). А откуда пошла быть Ваша терминология?

Date: 2010-05-27 04:56 pm (UTC)
From: [identity profile] tonsky.livejournal.com
Много же у вас друзей. Спасибо :)

Date: 2010-05-28 08:09 am (UTC)
From: [identity profile] jdevelop.livejournal.com
мне или везет, или не очень - но я постоянно бью по рукам на тему отсутствия абстракций и копипиздинга

поэтому спокойно читать такие псто не могу, это если опус прочитает какой-нить джуниор и начнет грамотно аргументировать "я тут написал стопиццот функций getHui1/getHui2/..../getHui200 с одним разным параметром, потому что кто ж это будет менять!"

или блядь запилить в DAO на сохранение юзера еще и отсылку емылов, варку кофе и прочие внезапные сайдэффекты

а потом заставить написать к этому юниттестов

просто - надо включать моск.

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

June 2025

S M T W T F S
1234567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 2nd, 2025 10:20 am
Powered by Dreamwidth Studios