К куче неграмотных спеков был приложен вот такой код который надо было реюзать до буквы.Мальчик-Одуванчик wrote:Чет я не врубился причем здесь дизайн.
Стоит ли идти в стартап?
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
Это он так решил redefine entityId .. Полет мысли тасссказать. То что это уже захаркордено в базе - это семечки. А самое главное попробуй инициализировать обьект с таким ID из имеющихся APIs. Позеленеешь.dotcom wrote:Зачем тут контретно этот адаптер и вобще адаптер для shallow copy? Человек, действительно, из ++ пришел.
Товарищу давно в психушку пора, или на заслуженный отдых в лучшем случае ,а не в архитекторы.
Last edited by Сабина on 20 Jun 2013 01:18, edited 1 time in total.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Стоит ли идти в стартап?
Ну в общем действительно непоняна необходимость адаптера в этом конкретном примере
Констуктор копирования похоже писался дая использования SimpleId x = SimpleId(y);
Констуктор копирования похоже писался дая использования SimpleId x = SimpleId(y);
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
Адаптер нужен потому что у них все писано под DO объекты для JSP, а теперь их надо конвертировать в business entity beans. без переписа apis, отсюда и адаптерыМальчик-Одуванчик wrote:Ну в общем действительно непоняна необходимость адаптера в этом конкретном примере
Констуктор копирования похоже писался дая использования SimpleId x = SimpleId(y);
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 9035
- Joined: 25 Oct 2011 19:02
- Location: SVO->ORD->SFO
Re: Стоит ли идти в стартап?
Честно говоря, без контекста понять, в чем проблема трудно. Но я верю, что там все плохо.Сабина wrote: Это он так решил redefine entityId .. Полет мысли тасссказать. То что это уже захаркордено в базе - это семечки. А самое главное попробуй инициализировать обьект с таким ID из имеющихся APIs. Позеленеешь.
Товарищу давно в психушку пора, или на заслуженный отдых в лучшем случае ,а не в архитекторы.
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
А вы так были правы про тех рекрутеров что они ламеры тоже полные. и чего я вас не слушалаdotcom wrote: Но я верю, что там все плохо.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Стоит ли идти в стартап?
Это да. Может имелось ввиду что имеющиеся классы имеют только такой конструктор копирования и ваяйте адаптеры сами?dotcom wrote:Честно говоря, без контекста понять, в чем проблема трудно. Но я верю, что там все плохо.Сабина wrote: Это он так решил redefine entityId .. Полет мысли тасссказать. То что это уже захаркордено в базе - это семечки. А самое главное попробуй инициализировать обьект с таким ID из имеющихся APIs. Позеленеешь.
Товарищу давно в психушку пора, или на заслуженный отдых в лучшем случае ,а не в архитекторы.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Стоит ли идти в стартап?
Тут склонен согласиться с crypto5. Не вижу особой проблемы с copy constructor в Java. Конечно можно использовать clone, но как бы уже давно решили коллективным разумом, что clone is broken in Java. Читать Effective Java, там Блок нормально это обьясняетcrypto5 wrote:Так а че там с SimpleId не так? Очень интересно.
И собственно советуетThis is a fundamental problem: the clone architecture is incompatible with
normal use of final fields referring to mutable objects, except in cases where
the mutable objects may be safely shared between an object and its clone. In order
to make a class cloneable, it may be necessary to remove final modifiers from
some fields.
Вообщем читать Item 11 в книге, там это хорошо обьясняется.A fine approach to object copying is to provide a copy constructor or copy factory.
-
- Уже с Приветом
- Posts: 9194
- Joined: 04 Mar 2011 03:04
- Location: SFBA
Re: Стоит ли идти в стартап?
Почитав жавщиков, проникся, у них нет default copy constructor. Во, сколько рутинного кодирования всегда, когда надо скопировать объект, даже shallow. В C++ 11 уже можно инициализировать объект, комбинируя констракторы.
... and even then it's rare that you'll be going there...
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Стоит ли идти в стартап?
дефолтный copy контруктор генерится тремя кликами мышки в эклипсе.Medium-rare wrote:Почитав жавщиков, проникся, у них нет default copy constructor. Во, сколько рутинного кодирования всегда, когда надо скопировать объект, даже shallow. В C++ 11 уже можно инициализировать объект, комбинируя констракторы.
In vino Veritas!
-
- Уже с Приветом
- Posts: 9194
- Joined: 04 Mar 2011 03:04
- Location: SFBA
Re: Стоит ли идти в стартап?
А Eclipse это часть Java? И потом при добавлении новой переменной в класс перегенерится?crypto5 wrote: дефолтный copy контруктор генерится тремя кликами мышки в эклипсе.
... and even then it's rare that you'll be going there...
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Стоит ли идти в стартап?
Скажем так, в C++ default copy constructor полезен только для простых обьектов. А может и быть источником довольно хитрых багов. И таки да - в Java нет implicit copy constructor, нужно писать свой в формеMedium-rare wrote:Почитав жавщиков, проникся, у них нет default copy constructor. Во, сколько рутинного кодирования всегда, когда надо скопировать объект, даже shallow. В C++ 11 уже можно инициализировать объект, комбинируя констракторы.
A(A a) {
this.b = a.b;
...
}
-
- Уже с Приветом
- Posts: 8628
- Joined: 22 Mar 2011 01:40
Re: Стоит ли идти в стартап?
И что тут не так? Возможно избыточно немногоСабина wrote: для началаCode: Select all
SimpleId(SimpleId eid) { this.esvc = eid.esvc; this.keyType = eid.keyType; this.keyStub = eid.keyStub; this.key = eid.key; }
Code: Select all
SimpleId(SimpleId eid) {
this.eid = eid;
}
Code: Select all
this.eid.esvc;
this.eid.keyType;
this.eid.keyStub;
this.eid.key;
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Стоит ли идти в стартап?
Кстати я ошибся - не генерится, так что вопрос можно закрыть ))Medium-rare wrote:А Eclipse это часть Java? И потом при добавлении новой переменной в класс перегенерится?crypto5 wrote: дефолтный copy контруктор генерится тремя кликами мышки в эклипсе.
In vino Veritas!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Стоит ли идти в стартап?
Ну что же, неплохая идея, чтобы добавить что-то вроде @CopyConstructor в projectlombok (http://projectlombok.org/features/index.html). Постараюсь заимплементировать на выходных и отправлю в проект.crypto5 wrote:Кстати я ошибся - не генерится, так что вопрос можно закрыть ))Medium-rare wrote:А Eclipse это часть Java? И потом при добавлении новой переменной в класс перегенерится?crypto5 wrote: дефолтный copy контруктор генерится тремя кликами мышки в эклипсе.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Стоит ли идти в стартап?
Чем люди только не оправдывают свою лень к изучению скалы ))Интеррапт wrote:Ну что же, неплохая идея, чтобы добавить что-то вроде @CopyConstructor в projectlombok (http://projectlombok.org/features/index.html). Постараюсь заимплементировать на выходных и отправлю в проект.crypto5 wrote:Кстати я ошибся - не генерится, так что вопрос можно закрыть ))Medium-rare wrote:А Eclipse это часть Java? И потом при добавлении новой переменной в класс перегенерится?crypto5 wrote: дефолтный copy контруктор генерится тремя кликами мышки в эклипсе.
In vino Veritas!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Стоит ли идти в стартап?
Так был у нас с тобой спор уже по этому поводу. Только вот ту же Скалу, например, к тому же Андроиду - не прикрутишь. И к GAE тоже не прикрутишь. Т.е. как-бы прикрутить можно, но все очень глючно и с огромным скрипом идет и для продакшена вообще никак. А тот же projectlombok отлично работает, что с Андроид, что с GAE.crypto5 wrote:Чем люди только не оправдывают свою лень к изучению скалы ))
Я вот недавно злобно пошутил над АццкоМото, когда предложил ему Скалу под Андроид и он полез проверять и писать код. Уж не помню, чем он меня обидел, может девушку у меня увел или что-то вроде.
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
Только добралась до вопроса....crypto5 wrote:Так а че там с SimpleId не так? Очень интересно.
Конструктор может и валид, но совершенно идиотский и ненужный. А в пропертях этого чуда еще сидит service instance ...
Вам придет в голову при создании нового api вот так задизайнить Id обьектов? то есть у вас user с id 1234, а вы берете и ему в новой системе такое вот id фигачите. А теперь представьте что на таких id надо строить все возвращаемые ресурсы, причем при этом использовать существующий api и все закончить к сентябрю. И как я уже сказала id - это только вершина айсберга. Все остальное задизайнено так что волосы дыбом, как будто кто-то задался целью написать книжку "how to write rest api that all developers will hate"
Где simplicity? Где reusability ? Где jaxrs implementation в конце концов?
Ну если вам так хочется быть адвокатами этого кода расскажите уж тогда что и его "lazy инициализация" просто замечательная
Last edited by Сабина on 20 Jun 2013 07:13, edited 1 time in total.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 9194
- Joined: 04 Mar 2011 03:04
- Location: SFBA
Re: Стоит ли идти в стартап?
Познавательно... что-то ведь читал на тему chained constructors/ explicit default constructor в C++ 11. Где... надо найти...
P.S.
Спасибо Сабине за увлекательные истории про мохнатый код. Заставило задуматься о различиях языков/ новых фичах на тему.
P.S.
Спасибо Сабине за увлекательные истории про мохнатый код. Заставило задуматься о различиях языков/ новых фичах на тему.
... and even then it's rare that you'll be going there...
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
А он и правда мохнатый. Я такого не видела раньше никогда, правдаMedium-rare wrote:P.S.Спасибо Сабине за увлекательные истории про мохнатый код.
Товарищ все настаивал что это все продакшен реди и уже вынимает данные из базы. При дебаге оказалось что оно вычитывает все данные показываемых им джейсонов (данные пользователя) из юзер сессии. Не будешь же солидного дядю по рукам шлепать когда он такое говорит? Сидишь там молча на всех митингах и выслушиваешь этот "концерт одного артиста", песня поется всегда одна и та же "мы сделаем лучше фейсбука, мой рдф бейзд дизайн - это последнее слово техники. я вам уже все разжевал и в рот положил - кодируйте"- причем два часа и каждый день. Какой там тим спирит и креативити? Все сидят молча и слушают одно и тоже нервничая что полно работы и придется дома доделывать. Что интеерсно все все понимают и согласны что так делать и не надо, но нашли же крайнюю (меня) и слава богу.
Бррррр. Мне просто летать хочется от мысли что я туда больше ни ногой.
Last edited by Сабина on 20 Jun 2013 07:33, edited 2 times in total.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 9194
- Joined: 04 Mar 2011 03:04
- Location: SFBA
Re: Стоит ли идти в стартап?
Ну дык, они же какое-то финансирование под то подняли? М... уже можно поработать какое-то время.
... and even then it's rare that you'll be going there...
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Стоит ли идти в стартап?
да-да . То-то очередная пачка работников со свистом разбежалась в пятницу.Medium-rare wrote:Ну дык, они же какое-то финансирование под то подняли? М... уже можно поработать какое-то время.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Стоит ли идти в стартап?
У меня сложилось впечатление что композитные айдишники как раз неотьемлемая часть хипстерской рест культуры, типа добираться до обьекта как GET /product/type/movie/title/matrix/lang/ru легко собрать и легко дебажить и не надо запоминать всякие id=3298798 где то.Сабина wrote:Только добралась до вопроса....crypto5 wrote:Так а че там с SimpleId не так? Очень интересно.
Конструктор может и валид, но совершенно идиотский и ненужный. А в пропертях этого чуда еще сидит service instance ...
Вам придет в голову при создании нового api вот так задизайнить Id обьектов? то есть у вас user с id 1234, а вы берете и ему в новой системе такое вот id фигачите. А теперь представьте что на таких id надо строить все возвращаемые ресурсы, причем при этом использовать существующий api и все закончить к сентябрю. И как я уже сказала id - это только вершина айсберга. Все остальное задизайнено так что волосы дыбом, как будто кто-то задался целью написать книжку "how to write rest api that all developers will hate"
Где simplicity? Где reusability ? Где jaxrs implementation в конце концов?
Иногда lazy инициализация действительно полезна, тяжело судить не разобравшись в деталях.Ну если вам так хочется быть адвокатами этого кода расскажите уж тогда что и его "lazy инициализация" просто замечательная
In vino Veritas!
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Стоит ли идти в стартап?
Может быть когда то кто-то и вас, андроид программистов осчастливит нормальным языком программированияИнтеррапт wrote:Так был у нас с тобой спор уже по этому поводу. Только вот ту же Скалу, например, к тому же Андроиду - не прикрутишь. И к GAE тоже не прикрутишь. Т.е. как-бы прикрутить можно, но все очень глючно и с огромным скрипом идет и для продакшена вообще никак. А тот же projectlombok отлично работает, что с Андроид, что с GAE.crypto5 wrote:Чем люди только не оправдывают свою лень к изучению скалы ))
Я вот недавно злобно пошутил над АццкоМото, когда предложил ему Скалу под Андроид и он полез проверять и писать код. Уж не помню, чем он меня обидел, может девушку у меня увел или что-то вроде.
In vino Veritas!