Сохранен 521
https://2ch.hk/pr/res/790044.html
Прошлые домены больше не функционируют, используйте адрес ARHIVACH.HK.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Java. Снова. #37

 Аноним 06/07/16 Срд 23:43:49 #1 №790044 
14678378295040.png
Умираем, стагнируем, хороним Java EE, беседуем.

Шапка треда https://github.com/qqqlll/Java-Thread/wiki

Предыдущий тонет здесь >>784720 (OP)

Желающие прекратить терпеть смерть, стагнацию, похороны и пожаловать в будущее на острие прогресса, где готовые пакеты фреймворков ломаются при обновлении, просто не работают и живут полной жизнью уебывают сюда: https://2ch.hk/pr/res/789035.html
Аноним 06/07/16 Срд 23:47:32 #2 №790051 
>>790044 (OP)
Чому джава-тян не следует конвенции, правильному форматированию, не ставит пробелы?
Аноним 06/07/16 Срд 23:48:56 #3 №790052 
>>790044 (OP)
Джава умерла. Да здравствует Котлин!
Аноним 06/07/16 Срд 23:49:46 #4 №790056 
>>790052
ШОК! ЗОМБИ ВЫЕБАЛ ЕОТ И РОДИЛСЯ ЕРОХИН!
Аноним 06/07/16 Срд 23:50:58 #5 №790058 
>>790056
Пугачева удивила всех своей диетой: нужен лишь утюг и серпантин...
Аноним 06/07/16 Срд 23:51:09 #6 №790059 
Джава не нужна, коко, все на жс. Оракл кидает жаву, гугл забил хуй на ведроид и берет свифт. ЭЭЭЭ тырыпрайз перепишется на СКАЛУ
Аноним 06/07/16 Срд 23:52:08 #7 №790060 
>>790059
> ЭЭЭЭ тырыпрайз перепишется на СКАЛУ
Ты че сука, ты че. А как же релизнутый вчера .net core?
Аноним 06/07/16 Срд 23:52:34 #8 №790061 
>>790060
Бля точно, шарп же
Аноним 06/07/16 Срд 23:54:12 #9 №790063 
>>790059
> СКАЛУ
Ее кто-то использует вне тинькова?
Аноним 06/07/16 Срд 23:58:41 #10 №790068 
>>790063
Нихуя вроде
Аноним 07/07/16 Чтв 00:02:07 #11 №790071 
Анончик, как в природе появляются Hadoop макаки?
Разбираюсь с этой поебенью и чет трудно заходит.
Аноним 07/07/16 Чтв 00:02:21 #12 №790072 
>>790068
БЛЯ, АКАДЕМАНЫ, ДАВАЙТЕ ПРИДУМАЕМ ЯЗЫК НА ОСТРИЕ ООП И ФУНКЦИОНАЛЬЩИНЫ И ВСЕ ЭТО СУПЕР ОХУЕННО И ДОХУЯ ВОЗМОЖНОСТЕЙ. ДА, КОНЕЧНО ПРИДЕТСЯ ЧУТЬ ПОУЧИТЬСЯ, ЧТОБЫ ВСЕ ЭТО ИСПОЛЬЗОВАТЬ, НО ЗАТО КАКОЙ ВЫХЛОП! И ВСЕ ЭТО СОВМЕСТИМО С JAVA
@
ДАВАЙТЕ!
@
...
@
БЛЯ, И ЧО ДАЛЬШЕ?
Аноним 07/07/16 Чтв 00:07:29 #13 №790075 
>>790071
Значит, лучше иди в js тред.
Аноним 07/07/16 Чтв 00:10:27 #14 №790077 
14678394276080.jpg
>>790071
Берешь и Hadoop.
Аноним 07/07/16 Чтв 00:39:57 #15 №790089 
>>790059
>Джава не нужна
Уточнение - не-энтерпрайзная.

>все на жс.
Все вебострадания - да, именно туда.

> Оракл кидает жаву
Все верно.

> гугл забил хуй на ведроид и берет свифт.
Рассматривал этот вариант как запасной, но выиграв у Оракела отказался от него

> тырыпрайз перепишется на СКАЛУ
Нет
Аноним 07/07/16 Чтв 00:40:56 #16 №790090 
>>790060
.NET это не энтерпрайз, а SOHO и малый-средний бизнес
Аноним 07/07/16 Чтв 00:42:09 #17 №790092 
>>790071
Говно оверхайпнутое, без задач
https://habrahabr.ru/post/303802/
Аноним 07/07/16 Чтв 00:55:25 #18 №790105 
>>790090
> .net core
Теперь тырпрайз. Принимай пополнение.
Аноним 07/07/16 Чтв 01:02:57 #19 №790118 
>>790075
Зачем мне идти в js тред?
Аноним 07/07/16 Чтв 01:05:05 #20 №790121 
14678427055860.jpg
>>790044 (OP)
Опасный бунтарь врывается в тред
Аноним 07/07/16 Чтв 01:05:58 #21 №790123 
>>790092
Самому не по душе. Но прийдется с этим поработать и кластер уже собран.
Аноним 07/07/16 Чтв 01:06:26 #22 №790124 
>>790105
В прошлом треде уже обсуждали. Энтерпрайз - это не когда ты из единственного MS SQL Server кидаешь в браузер формочки лопатой, это когда все немного сложнее.
Аноним 07/07/16 Чтв 01:06:30 #23 №790125 
>>790121
Моча, цп!
Аноним 07/07/16 Чтв 01:07:30 #24 №790128 
>>790123
Поставь на кластер Greenplum и решай задачи.
Hadoop не нужен.
Аноним 07/07/16 Чтв 01:07:33 #25 №790129 
>>790124
> все немного сложнее
Это когда из двух?
Аноним 07/07/16 Чтв 01:08:35 #26 №790130 
>>790129
Из двух - уже ближе к энтерпрайзу, ты верно уловил.
Для этого уже нужен менеджер распределенных транзакций, например. И управление им.
Аноним 07/07/16 Чтв 01:44:06 #27 №790163 
> I heard the read storm problem has been solved by Shenandoah, a GC developed by Christine Flood (who was in the original GC G1 team at Sun in 2001). It is under the RedHat umbrella and should be merged in OpenJDK [1].

> Shenandoah uses a forwarding pointer in each object, adding overhead but limiting the problem only to write barriers. Here is Christine commenting on Azul vs Shenandoah [2]

> From the talk: average pause is 6-7ms, max is 15ms, and the talk is one year old.

> She hints at further developments in a version 2 which would make it entirely pauseless.

[1] http://openjdk.java.net/jeps/189

[2] https://youtu.be/4d9-FQZZoVA?t=13m11s
Аноним 07/07/16 Чтв 02:15:06 #28 №790178 
>>790063
В Data Mining / Machine Learning активно применяется, гугли Spark. Но на hh.ru такие вакансии не размещают и макак не берут.
Аноним 07/07/16 Чтв 02:20:35 #29 №790180 
>>790071
> Hadoop
Spark для бедных, чтобы кластеризовать данные, не помещающиеся на одном сервере силами обычных макак. Но учить нужно - это то, что выведет тебя из параши крудошлепства в светлый мир функционалобогов.
Аноним 07/07/16 Чтв 02:20:36 #30 №790181 
>>790056
ПОКА ТЫ ТУТ ЗА СВОЕЙ ДЖАВОЙ СЫЧУЕШЬ, ЕРОХИН-ТО КОТЛИН РАЗРАБАТЫВАЕТ
https://github.com/JetBrains/kotlin/commits/master?author=erokhins
Аноним 07/07/16 Чтв 02:26:20 #31 №790186 
>>790181
ВОН ВАНЬКА-ТО ЕРОХИН В JETBRAINS УСТРОИЛСЯ
Аноним 07/07/16 Чтв 02:39:36 #32 №790193 
14678483760230.png
Реальный коммент: https://javatalks.ru/posts/174196
А вот эта макака (не осилившая Java 8) объясняет, почему быдлокодер лучше "широкого специалиста":
http://www.skipy.ru/philosophy/professionalism.html
Просто эталонный жатник. Еще и с гнилым ЧСВ.
Аноним 07/07/16 Чтв 02:43:44 #33 №790196 
Скорей бы уже весь энтерпрайз перешел на скалу и всех этих жатников с 15-летним опытом выкинули на мороз, как дельфистов-формошлепов (не из них ли ганс_спб?).
Аноним 07/07/16 Чтв 02:56:45 #34 №790203 
>>790196
Почему не на D или Rust?
Подобные тебе старшеклассники-долбоебы обычно за них агитируют.
Аноним 07/07/16 Чтв 03:00:32 #35 №790204 
>>790203
Еще один неосилятор лямбд подгорел?
Аноним 07/07/16 Чтв 03:18:53 #36 №790213 
>>790204
Лямбды - это неплохо. Но обвешивать типичное ОО такими гроздьями статической типизации в изощренных формах как это сделано в Scala - явный перебор.
Аноним 07/07/16 Чтв 03:23:59 #37 №790216 
Пытаюсь разобраться в мавене. Что-то мне непонятно, как в мавен FX добавлять элементы, прямо в XML что-ли прописывать?
И как мне хендлеры к ним добавлять? В примере они тоже прямо в XML написаны. onAction="#handleButtonAction"
Аноним 07/07/16 Чтв 03:29:30 #38 №790221 
>>790213
Из альтернатив вроде Kotlin, Ceylon и т.д. сейчас только Scala готова к практическому использованию. На ней написаны Spark и Akka.
Аноним 07/07/16 Чтв 03:32:58 #39 №790222 
>>790216
А тебе как надо? Прямо в коде все прописывать?
Аноним 07/07/16 Чтв 04:10:49 #40 №790231 
>>790222
Ну без мавена все в коде прописывалось. А тут как-то нипанятна.
Аноним 07/07/16 Чтв 04:11:09 #41 №790232 
ГОЛУУУБААААЯЯЯ ЛУНАААА
https://www.youtube.com/watch?v=QPHUoX1rW7g
Аноним 07/07/16 Чтв 04:31:24 #42 №790235 
Алсо, в мавене ведь вью уже реализовано в виде xml? Т.е. надо только контроллеры и модель добавить, чтобы получилось mvc?
Аноним 07/07/16 Чтв 05:21:51 #43 №790239 
>>790221
Kotlin - это примерно как менять С++ на Go, к тому же JetBrains далеко не Гугл.

Ceylon - язык действительно во многом интересный, но перспектив у него еще меньше. Несмотря на то что за ним стоит RedHat, они его практически не продвигают активно - и RedHat в Java-мире не так уж много весит. Если ситуация с Oracle дойдет до того что разработка JavaEE фактически перейдет в RedHat, и Redhat начнет все-таки Ceylon активно продвигать - может быть что-то получится.

В Scala свои проблемы. Проблемы дико переусложненного языка оставим пока, с этим и так все ясно. Akka просвистела и померкла - выяснилось (ВНЕЗАПНО!) что модель акторов это не решение всех проблем. Главноскальщик пилит Dotty, нынешняя скалка ему уже малоинтересна - и это не особо скрывается. Большие конторы, сделавшие ставку на Scala (возьми ту же Expedia) очень по этому поводу нервничают, и тоже этого не скрывают. Другие конторы на это все смотрят и принимают логичное решение переход на Scala отложить до момента когда либо Dotty релизнется, либо наоборот, сдохнет.

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

Вот и остается опять Java.
Аноним 07/07/16 Чтв 05:55:50 #44 №790243 
>>790239
>Kotlin - это примерно как менять С++ на Go

Можно раскрыть аналогию поподробнее? А то все остальные языки качественно обосрал, а тут как-то жидко вышло.
Аноним 07/07/16 Чтв 06:37:48 #45 №790246 
>>790243
Если очень коротко - то создатели обоих языков "даже не стараются".
Для 1972 года оба из них были бы уже не очень интересны, всё-таки уже был Алгол68.
Изобрести современные языки, которые уступают даже C# - это надо было постараться.
Можно только позавидовать железобетонной репутации Роба Пайка и Кена Томпсона. Если их даже после разработки Go продолжают считать неглупыми людьми, то теперь, вероятно, такое мнение о них сохранится в любом случае, чтоб они не сделали. Даже если повторят любое из достижений лауреатов премии Дарвина — останутся в нашей памяти как неглупые люди.
Если замысел Go еще можно понять - это эксперимент Гугла, который проводится чтоб ответить на вопрос о том, насколько невероятно плохой язык сможет вытянуть поддержка невероятно крупной и невероятно влиятельной корпорации, то смысл Котлина полностью ускользает. Может быть у JetBrains мания величия.
Аноним 07/07/16 Чтв 07:08:34 #46 №790248 
>>790193
найс аватарка
Аноним 07/07/16 Чтв 07:10:07 #47 №790250 
>>790235
Причем здесь мавен, блять?
Аноним 07/07/16 Чтв 07:14:30 #48 №790251 
>>790250
Залей свой говнокод на гитхаб, я тебе мигрирую его на мавен.
Аноним 07/07/16 Чтв 07:26:11 #49 №790254 
На самом деле джава эетерпрайз параша давно не продается. Сужу по нескольким крупным бодишопам, EE макак потихоньку сокращают, зато увеличивают фроетенд, мобилки, скалы, котлины.
Аноним 07/07/16 Чтв 08:05:18 #50 №790262 
Пилю интернет-магазин. Вью делать на анте или на гредле?
Аноним 07/07/16 Чтв 08:20:44 #51 №790267 
14678688441780.png
>>790254
Аноним 07/07/16 Чтв 08:21:14 #52 №790268 
>>790262
на make
Аноним 07/07/16 Чтв 08:34:04 #53 №790271 
>>790268
И как быть тогда с автоматической генерацией необходимых библиотек в рантайме?
Аноним 07/07/16 Чтв 08:42:43 #54 №790273 
>>790271
Попробуй рекурсивные сверточные сети. Они сейчас в моде.
Аноним 07/07/16 Чтв 08:46:01 #55 №790274 
14678703617650.jpg
>>790273
Аноним 07/07/16 Чтв 11:01:40 #56 №790331 
>>790246
>Может быть у JetBrains мания величия.
Так для меня это выглядело всегда первой причиной создания Kotlin'а.
Аноним 07/07/16 Чтв 11:07:05 #57 №790334 
>>790331
Они скоре уловили что нужна New Java 2.0 совместимая в обе стороны на уровне сорцов,
но в тоже время с современными фичами.

Scala/Clojure/Groovy слишком отличаются от Java
Аноним 07/07/16 Чтв 11:41:25 #58 №790349 
>>790334
В этом отношении они уловили правильно.

> Another downside is that you have to do a bit of jiggery-pokery to get some third-party libraries such as Dagger or Mockito to work with Kotlin

Но стоят ли "несколько приятных фишечек" минусов ровно в том аспекте, которым Java и (единственно) ценна?
В результате - поделки для Android резво все бросились писать на Kotlin, а в мире EE только пожали плечами.
Аноним 07/07/16 Чтв 12:39:54 #59 №790400 
>>790349
> Dagger
По последним данным поддержку Dagger2 они добавили (так разработчики говорили, сам я не использую)

> Mockito
Там проблема что по умолчанию все класс final.
Пока я знаю два решения;
1) Юзать интерфейсы
2) Powermock
...
?) Обещали аннотацию "open all" (шоб как в джаве было), но что-то ничего про это не слышно
Аноним 07/07/16 Чтв 13:05:56 #60 №790417 
>>790400
Про Dagger это, конечно, очень радостно (хотя я до сих пор не понимаю нахуй он вообще нужен).
Как насчет всех остальных 100500+ джава-библиотек, из которых неизвестно сколько сломаются на ровном месте?
Аноним 07/07/16 Чтв 13:17:38 #61 №790428 
>>790417
> Dagger
> джава-библиотек
Не путай пожалуйста, Dagger 2 это не только библиотека.
Это плагин для gradle/maven, который встраивается в процесс сборки и на основе анатаций генерирует новый код.

Очевидно что когда разные плагины модифицируют процесс сборки, кто-то кого-то должен поддерживать.
Обычных библиотек это не касается.

Лично я по этому и не юзаю его, что не люблю кодогенерацию.
Аноним 07/07/16 Чтв 13:18:57 #62 №790429 
>>790417
>нахуй он вообще нужен
Зря ты так, пошерсти хотя бы швабру, есть там несколько хороших примеров, как минимум дев мок и убирает отовсюду какой-нибдуь Singleton_100500.getInstance(context)

А другие либы... Ну если что-то ломается, то написать задействованный кусок на джаве. Все андроидовские части нормально работают, rx и dagger тоже. Что еще из популярного - retrofit через оболочку с rx никаких проблем.
Аноним 07/07/16 Чтв 13:31:51 #63 №790440 
>>790429
Ну я и говорю. Для поделок на Андроиде, где библиотек хорошо если пять штук используется - и все одни и те же - нормально. Тем более что любой косяк исправляется выкладыванием в маркет новой версии и автоматическим автообновлением у всех клиентов.

Когда библиотек немного побольше, причем в разных проектах разных - выяснять что ломается что не ломается, а где вообще рыбу заворачивали (а именно высокое качество java-библиотек и есть главная её фишка) - причем, далеко не все выясняется в процессе сборки - и потом это немножко чинить, а потом с хорошей вероятностью перечинивать при обновлениях этой библиотеки - да вы смеетесь штоле. Ладно бы эти рюшечки котлиновские в 2 раза производительность повышали, так ведь хорошо если на 5% - в первую очередь потому что если сайты-визитки не штамповать тысячами (для чего Java брать в принципе не стоит), то время именно написания кода составляет процента 2-3 времени разработки проекта.
Аноним 07/07/16 Чтв 14:45:12 #64 №790482 
>>790440
Выучи новые слова:
reflection, bytecode instrumentation, codegeneration. Пойми их значение в контексте обсуждения. Возвращайся в тред.
Аноним 07/07/16 Чтв 14:52:48 #65 №790488 
> The Register understands that roughly a year ago, a movement started within Oracle to mothball its Java EE efforts and create a new proprietary enterprise-friendly Java runtime and API in its place
Аноним 07/07/16 Чтв 14:53:18 #66 №790490 
>>790482
Нихуя, объясняй.
Аноним 07/07/16 Чтв 15:45:38 #67 №790526 
>>790490
Страхи твои - надуманные. Большинство библиотек реализовано в виде классов у которых можно дергать методы, всё. Интероперабельность с таким кодом у Коtlin проблем не вызывает.
Аноним 07/07/16 Чтв 15:55:38 #68 №790545 
>>790526
>Большинство библиотек реализовано в виде классов у которых можно дергать методы, всё
И на каждой библиотеке сверху написано, относится ли она к большинству? И тестировали ли ее с котлином?

Что насчет JavaEE с CDI повсюду?
Аноним 07/07/16 Чтв 15:57:09 #69 №790548 
>>790545
> Что насчет JavaEE
Она утонула
Аноним 07/07/16 Чтв 16:05:32 #70 №790557 
14678967324440.png
Бля, давайте код обсуждать.
Аноним 07/07/16 Чтв 16:06:47 #71 №790559 
>>790548
То есть как я и говорил - котлин годится только для андроида. Кроме как для андроида и JavaEE джаву использовать бессмысленно.
Аноним 07/07/16 Чтв 16:37:32 #72 №790593 
>>790557
Нахуя нам твои хеллоуворлды?
Аноним 07/07/16 Чтв 16:39:08 #73 №790595 
>>790428
Не любишь кодогенрерацию? То есть reflection лучше?
Аноним 07/07/16 Чтв 16:41:10 #74 №790597 
>>790559
Почему только для андроида?
Аноним 07/07/16 Чтв 16:44:13 #75 №790601 
>>790595
Нет, лучше это гибкий-расширяемый язык с хорошей поддержкой DSL
Аноним 07/07/16 Чтв 16:45:49 #76 №790604 
>>790601
Что? Причём тут язык? Тебя про dagger спрашивали
Аноним 07/07/16 Чтв 16:47:06 #77 №790606 
>>790597
Потому что для JavaEE он не годится.
Ни для чего кроме Андроида и энтерпрайза джаву использовать не нужно и бессмысленно.
Аноним 07/07/16 Чтв 16:47:37 #78 №790609 
>>790604
Жилы же мы как-то во времена Dagger 1 который работал и БЕЗ кодогенерации и БЕЗ рефлекшена
Аноним 07/07/16 Чтв 16:48:13 #79 №790611 
> Smile!Smile!Smile!
> Smile!Smile!
> Smile!
> Have the program define a function that displays the string Smile! once, and have the program use the function as often as needed.


Make a maven war project and add Hibernate, JaxB, deltaspike-data-JPA and RESTEasy as dependencies

Make a simple entity "Message" containing a String atribute and "MessageList" One
Annotate each class with @Entity @XmlRootElement
Add an jaxb.index file on these classes package listing these two Entities
Annotate your Attribute by @XmlElement @NotNull @Size(min=2, max=10)
Make a MessageListDao interface annotted with DS @Repository @Path("/")
Make a simple persistence.xml file mapping to your database

Make an interface and a REST "MessageRESTService"
Add a method to this interface: @Produces(Mediatype.Application_json)@Path("/sayMessage/{message}/{count}") String getMessage(@PathParam("message") message, @PathParam("count"));
Implement this interface injecting your DAO in your service (with @Inject), and make this implementation @ApplicationScoped

Create an index.html file referencing NPM AngularJS, Twitter bootstrap, SASS (you can use grunt, npm and bower to automatically fill your index.html file js dependencies, but you've to add the maven-exec-plugin to call your grunt script during the 'generate-resource' phase)
Make an AngularJS application, a directive, a controller
Create inputs in your angular directive html file to choose your message and the occurence number, plus an HTML table with 'ng-repeat' attribute on the 'TR'
Bind the inputs and the table to AngularJS controller methods that will call your REST service
Create an default web.xml file in your src/main/webapp/WEB-INF directory (google it)

Configure the maven-tomcat-plugin (or maven-jetty) in your Maven pom.xml file

mvn tomcat:run and point your web browser to http://localhost:8080/
Аноним 07/07/16 Чтв 16:48:20 #80 №790613 
>>790606
Почему это не годится?
Аноним 07/07/16 Чтв 16:48:46 #81 №790614 
>>790613
Потому что CDI.
Аноним 07/07/16 Чтв 16:49:19 #82 №790616 
>>790609
А как по-моему dagger 1 работает? С помощью магии? Это и есть reflection
sageАноним 07/07/16 Чтв 16:50:03 #83 №790617 
>>790614
Ясно.
Аноним 07/07/16 Чтв 16:53:56 #84 №790623 
>>790616
> А как по-моему dagger 1 работает?
Я то как-раз знаю как он работает, а с тобой диалог продолжать бессмысленно,
ибо ты решил повыебываться без знаний.
sageАноним 07/07/16 Чтв 16:55:26 #85 №790627 
>>790623
> знаю как он работает
Оно и видно.
> диалог продолжать бессмысленно
Слив засчитан.
Аноним 07/07/16 Чтв 16:57:49 #86 №790629 
>>790609
Он, кстати, с ProGuard несовместим был. Ну то есть, его можно было заставить работать, но это был тот ещё квест.
Аноним 07/07/16 Чтв 19:35:00 #87 №790753 
>>790606
Тебя блядь забыли спросить, где жабу использовать можно, а где нельзя.
Аноним 07/07/16 Чтв 19:56:04 #88 №790788 
>>790044 (OP)
"Oracle is committed to Java and has a very well defined proposal for the next version of the Java EE specification – Java EE 8 – that will support developers as they seek to build new applications that are designed using micro-services on large-scale distributed computing and container-based environments on the Cloud." - Mike Moeller
Аноним 07/07/16 Чтв 20:27:15 #89 №790815 
>>790593
Чтобы ты дал свою оценку.
Аноним 07/07/16 Чтв 22:56:32 #90 №790976 
>>790753
Энжой йо ДжаваЭфИкс
Аноним 07/07/16 Чтв 23:55:22 #91 №791032 
>>790548
А она когда-нибудь была популярной? Весь энтерпрайз на Java SE + Spring.
Аноним 08/07/16 Птн 03:19:01 #92 №791147 
14679371419780.png
14679371419851.png
>>791032
Что ты знаешь об энтерпрайзе?
Аноним 08/07/16 Птн 03:27:42 #93 №791151 
>>791147
Не видел вакансий с Java EE, везде только Spring. А Кобол до сих пор используется, точнее его наследники, SAP ABAP и 1C.
Аноним 08/07/16 Птн 07:41:19 #94 №791189 
где можно пройти сертификацию от оракла? чет нихуя у них не понятно у партнеров на сайтах - одно блядь обучение а про сертификацию молчат
Аноним 08/07/16 Птн 08:50:21 #95 №791207 
>>790788
Ок.
Аноним 08/07/16 Птн 09:49:41 #96 №791245 
>>791147
> энтерпрайз
> сравнивает сложение больших чисел
Магистры хеллоуворлдов подтянулись
Аноним 08/07/16 Птн 09:59:28 #97 №791252 
14679611687030.gif
Аноним 08/07/16 Птн 10:46:14 #98 №791291 
Смотрите какой саит.
http://www.java-gaming.org/
Аноним 08/07/16 Птн 11:33:23 #99 №791319 
>>791291
Хватит шарить по сети - слушай что учитель информатики говорит.
Аноним 08/07/16 Птн 12:28:17 #100 №791360 
>>791319
И-извините.
Аноним 08/07/16 Птн 12:42:10 #101 №791364 
14679709301780.jpg
Аноним 08/07/16 Птн 13:16:56 #102 №791381 
>>790216
При чем тут мейвн? Это всего лишь сборщик.
>В примере они тоже прямо в XML написаны.
Наверно не в XML, а в fxml, и да, всякие onAction, onKeyReleased и прочее там надо прописывать.
Аноним 08/07/16 Птн 13:22:44 #103 №791385 
>>791364
Шакальненько.
Аноним 08/07/16 Птн 13:36:31 #104 №791394 
>>790239
Найс инфа про Скалу, долбоеб. То что ты прочитал какую-то хуйню на реддите или news.ycombinator не даёт тебе права делать какие-либо выводы и дезинформировать людей. Особенно с твоим уровнем интеллекта.
Да, у меня до сих пор бомбит от эффекта Даннинга-Крюгера, хотя я его наблюдаю еще со времён /c.
Аноним 08/07/16 Птн 14:52:17 #105 №791437 
>>791394
>То что ты прочитал какую-то хуйню на реддите или news.ycombinator не даёт тебе права делать какие-либо выводы и дезинформировать людей. Особенно с твоим уровнем интеллекта
Что именно ты готов опровергнуть? Не стесняйся.
Аноним 08/07/16 Птн 14:54:47 #106 №791438 
>>791245
Нормальный пример для наглядной демонстрации.
А что ты хотел бы сравнить? Качество интеграции с CICS и IMS TM? Здесь тоже COBOL впереди.
Аноним 08/07/16 Птн 14:55:43 #107 №791439 
>>791437
Мамку твою срал.
Аноним 08/07/16 Птн 15:18:52 #108 №791457 
>>791439
То есть ты согласен со всем про скалку, но тебе не нравится такой ход событий. И ты решил выразить своё отношение к этому доступным тебе способом.
Аноним 08/07/16 Птн 15:19:45 #109 №791458 
>>791457
Нет. Просто я мамку твою срал.
Аноним 08/07/16 Птн 15:50:01 #110 №791485 
>>791458
С чем же ты несогласен в таком случае?
Аноним 08/07/16 Птн 18:03:16 #111 №791605 
>>791437
Ага, сейчас бы в дискуссию самодовольным дурачком вступить. Все что мне было нужно - выбросить негативные эмоции которые я случайно получил при чтении твоего поста.
Аноним 08/07/16 Птн 19:13:18 #112 №791669 
>>791605
Хочешь позитивных эмоций? Бери совочек, отправляйся в песочницу страны вечного джаваскрипт-детства, тред рядом.
Работает оно хуево, зато позитив у всех, велосипедов с квадратными колесами пилится 100500+ каждую секунду. Весело, задорно, девки в коротких юбках.
Аноним 08/07/16 Птн 19:57:17 #113 №791699 
Можно ли в Мавене повесить компиляцию на плагин сборки? Суть: хочу вносить изменения в код и тут же получать джарник по одной кнопке. Отдельно вызывать compile из жизненных циклов и отдельно assembly из плагинов не хотет. Я ньюфаг и, возможно, ещё не понимаю сути Мавена и начал делать что-то не так ещё на предыдущих шагах. Если так, то объясните.
Аноним 08/07/16 Птн 20:02:36 #114 №791702 
>>791699
Maven - это cli приложение. Какая кнопка, наркоман?
Аноним 08/07/16 Птн 20:10:21 #115 №791708 
>>791702
Кнопка в эклипсе
Аноним 08/07/16 Птн 20:13:15 #116 №791709 
Я вот добавил columns and rows в fxml, как мне теперь взять модель этой таблицы, чтобы добавить значения? Table View - таблица.
Обычные примеры с проперти не подходят, нужно именно в коде вальюс добавлять. В таблице есть чекбоксы.

https://ideone.com/zJue4h

Аноним 08/07/16 Птн 20:16:04 #117 №791710 
>>791708
Ну в эклипсе есть Action (и кнопка): Run External Tool, по идее можно описать запуск Maven с необходимыми аргументами, да ко-всему этому shortcut навесить.
Аноним 08/07/16 Птн 20:17:59 #118 №791712 
>>791710
Вот пример подобной замороченности
http://www.mkyong.com/maven/integrate-maven-with-eclipse-via-external-tool-configuration/
Аноним 09/07/16 Суб 12:03:38 #119 №792069 
Каким образом берутся элементы из list и передаются в качестве параметров методу compare()?

http://pastebin.com/j3ESgFfQ
Аноним 09/07/16 Суб 12:12:44 #120 №792073 
>>792069
default void sort(Comparator<? super E> c) {
Object[] a = this.toArray();
Arrays.sort(a, (Comparator) c);
ListIterator<E> i = this.listIterator();
for (Object e : a) {
i.next();
i.set((E) e);
}
}

Аноним 09/07/16 Суб 18:03:51 #121 №792342 
>>792073
Пиздец какой-то.
Аноним 09/07/16 Суб 18:47:45 #122 №792363 
>>792342
Тебе что-то непонятно?
Аноним 09/07/16 Суб 19:22:30 #123 №792385 
14680813501760.gif
>>790044 (OP)
>пикрилейтед
>циклы с ифом
>2016
Эх, сейчас бы забыть лямбды и вернуться в 2005...
Аноним 09/07/16 Суб 21:53:47 #124 №792462 
>>792385
Как будто лямбды полностью заменяют ифы и циклы.
Аноним 09/07/16 Суб 22:49:24 #125 №792508 
14680937646890.jpg
я вам для следующего треда пик принёс
Аноним 09/07/16 Суб 22:56:16 #126 №792510 
>>792508
Уноси обратно, воспоминания о полутора неделях в континентальной Индии уйдут со мной в могилу.
Аноним 09/07/16 Суб 23:15:31 #127 №792517 
Анон, мне нужно, чтобы шарящий синьор-помиодор расшифровал некоторые джава-мемы (тип официальное мнение по сабжу с аргументацией)
Spring, GWT vs Vaadin (и почему первый обосрался), Red Hat, Oracle, будущее джавы.
Аноним 09/07/16 Суб 23:23:02 #128 №792523 
>>792517
Что из перечисленного тебе непонятно?
Аноним 09/07/16 Суб 23:24:55 #129 №792524 
>>792523
> тип официальное мнение по сабжу с аргументацией
как к ним относиться, очевидно
Аноним 09/07/16 Суб 23:28:12 #130 №792529 
>>792524
Никак не относится, а учить javascript.
Аноним 09/07/16 Суб 23:32:50 #131 №792533 
>>792529
я, конечно, понимаю, что у твоих хозяев есть дурная привычка не запирать курятник, но ты уже взрослый, вернись откуда выбежал.
Аноним 09/07/16 Суб 23:34:04 #132 №792534 
>>792533
Ты Федорова пересмотрел?
Аноним 09/07/16 Суб 23:37:14 #133 №792535 
>>792534
нет.
Аноним 09/07/16 Суб 23:56:07 #134 №792545 
14680977679440.jpg
Пацаны!
Почему спринг при попытке получить бин из фабрики бинов, таким вот образом:

ApplicationListener<?> listener = beanFactory.getBean(listenerBeanName, ApplicationListener.class);

тащит null, при этом если заглядывать дебагом в, собственно, beanFactory, у нее в beanDefinitionMap бин с именем переданным в listenerBeanName имеется, и бин который я пытаюсь дернуть имплементит ApplicationListener

В конфиге бин описан
Что за хуйня?
Аноним 10/07/16 Вск 00:09:02 #135 №792547 
>>792545
пересобери проект
Аноним 10/07/16 Вск 00:36:28 #136 №792568 
>>792545
так отдебаж, мудило
Аноним 10/07/16 Вск 01:47:10 #137 №792581 
>>792545
Пиздец - дрочат всякое говно Спринги-Хуинги, а потом ясное дело откуда в проектах всё это мракобесие.
Аноним 10/07/16 Вск 02:22:09 #138 №792592 
Нужна помощь. Хочу вытащить случайный/следующий элемент из списка и грязно надругаться над ним.

Пример:
//Создаем несколько объектов
List<MyObject> objects = new ArrayList<MyObject>();
for(int i=0; i<6; ++i)
objects.add(new MyObject());

Соответственно мне бы хотелось извлекать по порядку объекты и работать с ними. Да, я знаю про итераторы и другие возможности пробежаться по списку, но беда в том, что я вынужден возвращаться.
Из очевидного мне пришло просто выбирать случайный номер 0..n и таким образом работать, но как-то зашкварно, хотелось бы идти по порядку, но итератор не может ресет сделать.

Да, очень дебильный кейс. Благодарствую.
Аноним 10/07/16 Вск 02:23:46 #139 №792593 
>>792592
Может не ясно выразился. При каждом обращении к функции должен выбираться случайный\следующий объект. Если список подошел к концу, то начать сначала (я про последовательную выборку объектов). Рандом не очень нравится.
Аноним 10/07/16 Вск 03:01:03 #140 №792600 
Как мне в манифесте прописать, чтобы jar файл стал executable?
Аноним 10/07/16 Вск 03:02:35 #141 №792601 
>>792593
http://docs.oracle.com/javase/6/docs/api/java/util/Collections.html#shuffle(java.util.List) ?
Аноним 10/07/16 Вск 03:04:10 #142 №792602 
>>792600
У вас что, блядь, чебурнет уже запустили и вырубили гугл?
https://docs.oracle.com/javase/tutorial/deployment/jar/appman.html
Аноним 10/07/16 Вск 03:05:48 #143 №792604 
>>792602
да нет, просто пообщаться с корешами захотелось
Аноним 10/07/16 Вск 03:17:53 #144 №792606 
>>792602
блять, нахуй ты мне пишешь, как компилировать проект без ИДЕ, мразь тупая. Я спрашиваю, как сделать, чтобы по клику на главный jar файл приложение запускалось и не только у разработчика.
Аноним 10/07/16 Вск 06:02:33 #145 №792625 
>>792606
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>пакет.ТвойГлавныйКласс</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>

Я примерно так делаю. Хуй знает, Java только второй день ковыряю.
Аноним 10/07/16 Вск 06:03:49 #146 №792628 
Котаны, у вас веб-морда Гитхаба открывается? У меня грузится только текст, весь в кучу, без разметки, и очень долго.
Через проксю загружается моментально.
В России Гитхаб теперь блочат?
Билайн (и провод, и симка - одинаково)
Аноним 10/07/16 Вск 06:05:49 #147 №792631 
>>792628
Открывается без проблем на очень хуевом соединении. Ростелеком.
Аноним 10/07/16 Вск 06:09:09 #148 №792633 
>>792628
Три дня не открывался без прокси. Сейчас на дваче написал - и всё шустро загрузилось без прокси.
Билайн, спасибо. А что за фигня-то была, зачем блочили?
Аноним 10/07/16 Вск 07:12:08 #149 №792642 
>>792593
>должен выбираться случайный\следующий объект.
так случайный или следующий?
Аноним 10/07/16 Вск 07:17:25 #150 №792643 
14681242459290.jpg
>>790044 (OP)
Джавабоги, нужна ваша помощь.
Есть в классе метод, надо его вынести за пределы класса и вызывать из класса, откуда мы его убрали.
Как это сделать?
Аноним 10/07/16 Вск 07:27:29 #151 №792647 
>>792643
1. Создаешь новый класс.
2. Перемещаешь в него свой метод.
Аноним 10/07/16 Вск 07:39:13 #152 №792651 
>>792647
Я понимаю, что вопрос слишком детский для ынтырпрайз-гуру, но таки:
Как потом связать эти два класса? Как из первого класса обратиться к методу второго?
Аноним 10/07/16 Вск 07:52:12 #153 №792655 
>>792651
вынесенный метод обзываешь модификаторами public static и затем обращаешься к нему через ИмяКласса.имяМетода():
Helper.doSomething();
Аноним 10/07/16 Вск 10:34:02 #154 №792677 
>>792655
Ну я вызываю его Кококо кудах = new Кококо();
кудах.гетМани();

Вываливается ошибка:
>Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
Аноним 10/07/16 Вск 11:45:58 #155 №792697 
14681403581910.png
Ну че сидите макаки, джяваиндусы ёбаные? Я про ваш тред долбоёбов недавно узнал. И что же я тут вижу? - пидорас на пидорасе. Оправдываетесь. что за ебаны на пике? это кто-то из местных?
Аноним 10/07/16 Вск 11:47:59 #156 №792698 
>>792592
Цикл foreach спасет будущего студента Javascript.
Аноним 10/07/16 Вск 11:52:05 #157 №792701 
>>792677
http://bfy.tw/6frr
Аноним 10/07/16 Вск 12:57:31 #158 №792723 
>>792606
Пиздуй на процедуры, болезный. Коллега выше именно про устройство манифеста спрашивал.
Аноним 10/07/16 Вск 12:59:39 #159 №792727 
>>792697
Ты обезьяна мухосранская и индусов то не видела в живую? Пытаешься шовинизмом и айтишными стереотипами компенсировать свою уёбищность? Валяй!
Аноним 10/07/16 Вск 13:28:35 #160 №792750 
>>792592
На джаваскрипте делается за 5 секунд.
Аноним 10/07/16 Вск 13:31:29 #161 №792752 
>>792750
Просто джаваскрипт лучше.
Аноним 10/07/16 Вск 14:48:34 #162 №792827 
>>792701
Спасибо. Оказалось, я вызываю метод из класса, который наследует класс, из которого я вызываю метод.
Разве конплилятор не мог так и написать, а не строить из себя умного и писать заумный код?
Аноним 10/07/16 Вск 15:14:12 #163 №792843 
>>792827
Иди учить в чем разница между проверяемыми и непроверяемыми исключениями. Алсо интерпретатор тебе твердо и четко написал в чем проблема.
Аноним 10/07/16 Вск 15:29:44 #164 №792850 
Паттерн Producer/Consumer. Надо реализовать.
Хочу реализовать такое
Producer->[Queue]->{Consumer_1, Consumer_n}
Только я что-то охуел от всевозможных реализаций этого паттерна. Мне просто надо класть объект в очередь, а потом с ним быстро работать. Какой самый безопасный и актуальный вариант?
Аноним 10/07/16 Вск 15:31:11 #165 №792851 
>>792850
Пока что я запилил только на BlockingQueue. Выглядит убого, жду рекомендаций.
Аноним 10/07/16 Вск 15:35:38 #166 №792857 
>>792851
Почему убого? Разверни мысль.
Аноним 10/07/16 Вск 15:35:41 #167 №792858 
>>792850
> Мне просто надо класть объект в очередь, а потом с ним быстро работать.
AMQP.
Аноним 10/07/16 Вск 16:05:27 #168 №792874 
>>790044 (OP)
Как правильнее в Java организовывать циклы? Так:

for (int i = 0; i < n; ++i) {
// do some shit
}

или так:

IntStream.range(0, n).forEach(i -> {
// do some shit
});
Аноним 10/07/16 Вск 16:10:43 #169 №792878 
>>792874
Второй. Используй только их.
Аноним 10/07/16 Вск 16:13:16 #170 №792882 
побрызгала кота каплями от блох.
блохи отваливаются.
Аноним 10/07/16 Вск 16:22:37 #171 №792886 
>>792878
обоснуй
помимо как троллить нубов диковинной формой записи профитов не вижу никаких
Аноним 10/07/16 Вск 16:27:37 #172 №792889 
>>792874
Не слушай этого >>792878 - действуй по обстоятельствам. Нужен цикл c необычным шагом или сложными условиями выхода/изменения объектов в замыкании, или скажем в теле цикла до кучи лямбд - можно и старый использовать. Или скажем тело цикла простое и есть потребность для
IntStream.range(0, n).parallel().forEach
- переключайся на новый.
Аноним 10/07/16 Вск 16:28:53 #173 №792890 
>>792886
ну разве что распаралелировать можно при необходимости
Аноним 10/07/16 Вск 16:29:32 #174 №792891 
>>792889
> Или скажем тело цикла простое и есть потребность для
> IntStream.range(0, n).parallel().forEach
Тонко.
Аноним 10/07/16 Вск 16:36:44 #175 №792899 
>>792363
Где почитать об этом поподробнее?
Аноним 10/07/16 Вск 16:40:25 #176 №792901 
>>792857
Я не знаю, как грамотно организовать работу потоков.
В облаке есть n очередей (messages queue). В них надо пушить данные. Боль в том, что эти данные разного объема (от 1кб до несколько мб). Стэк технологий не самый удачный, но самый доступный.

На данном этапе принцип примерно такой
1. data = obj.get(); //получаем данные.
2. QueueManager.send(data); //QueueManager выбирает случайную очередь и отправляет туда сообщение.

Соответственно это пиздец медленно.
Я решил организовать работу так:
1. Получаем данные
2. Пушим их в очередь
3. QueueManager вытаскивает запись и пушит это в произвольную очередь.

Другими словами obj.get() - это у нас Producer, который срет в очередь сообщений, как только извлечет сообщение.
QueueManager - это consumer, который вытягивает сообщение из очереди и отсылает в облако.
В результате я столкнулся с тем, что нужно
Один поток по статистике: сколько получено сообщений, что там с очередью и так далее.
Один поток на получение данных и загрузки в очередь.
И несколько потоков (предполагаю, что тут надо перебирать наиболее оптимальные варианты) на инстансы QueueManager, которые будут пушить при первой возможности сообщение в облако.
[722519] Аноним 10/07/16 Вск 16:50:32 #177 №792913 
>>792874
только что проверил
второй метод чуть менее чем в 66 раз медленнее

в моем тесте у обычного цикла 2мс у стрима - 133мс
проверял при n = 100000
вместо соме щит простой инкремент инта

поэтому сам решай надо ли оно тебе
Аноним 10/07/16 Вск 17:46:53 #178 №792941 
>>792901
Что-то я в запутался. Не знаю, как это все нормально организовать.
Аноним 10/07/16 Вск 17:48:35 #179 №792942 
>>792913
У тебя, скорее всего, еще отмерялка не выросла делать бенчмаркинг научно достоверным. Но ты прав - оверхед есть и народ обсуждает этот момент, вот например:
http://blog.takipi.com/benchmark-how-java-8-lambdas-and-streams-can-make-your-code-5-times-slower/
Аноним 10/07/16 Вск 17:52:40 #180 №792944 
>>792901
На секундочку - бизнесу нужны эти оптимизации? И да, подумай насчет того чтобы довериться сетевому стеку, на твоем операционном уровне кажется нерациональным что Кб и Мб сообщения могут слаться через один и тот же канал, в действительности проблемы может не быть.
Аноним 10/07/16 Вск 18:02:55 #181 №792946 
>>792944
>На секундочку - бизнесу нужны эти оптимизации?
Бизнесу нужны, слишком много времени занимает.

>довериться сетевому стеку
Тут проблема не в пересылке данных, а в том, что очередь нерационально используется, а доставить данные нужно как можно быстрее.

На примере простой Consumer/Producer;
Queue{
dataObject(2 мб)
dataObject(1 кб)
dataObject(5 мб)
dataObject(256 бит)
}
Соответственно один единственный consumer будет идти по очереди, пересылая данные. Одно дело отправить 1кб, а другое дело 5 мб. Очередь будет дольше разгребаться, что не совсем удобно.

С другой стороны, если очередь будет обрабатываться сразу несколькими воркерами, то я предполагаю существенное ускорение.
[722519] Аноним 10/07/16 Вск 18:35:20 #182 №792961 
>>792942
я какбэ и не претендовал на научную достоверность

просто хотел акцентировать внимание ананаса, что бездумно вкорячивать стримы вместо нативных циклов мягко говоря не стоит
Аноним 10/07/16 Вск 18:47:55 #183 №792971 
8 джоинов, 3 вложенных запроса (одна таблица имеет два форен кея на другую таблицу) в одном селекте.
Ебучий репортинг в ебучей бд, спроектированной так, что на одну data column приходится по 10 id columns и общей схемой запутаннее, чем схема мирового правительства рептилоидов по мнению pol с форчана.
Аноним 10/07/16 Вск 18:48:15 #184 №792972 
Насчет переката - поддержку js-форсера. С js скучно не будет.
http://jquerymy.com/lj/Optdeoptbug_F6FB/2016070816.21.28_thumb.png
https://www.reddit.com/r/javascript/comments/4oxtgk/javascript_developers_be_warned../
Аноним 10/07/16 Вск 18:50:36 #185 №792975 
>>792971
Не знаю на что именно ты ругаешься, но в БД-треде по соседству это и выглядело бы уместней, и конструктивно ответить можно было бы.
Аноним 10/07/16 Вск 18:52:04 #186 №792978 
>>792975
На описанное.
> но в БД-треде по соседству это и выглядело бы уместней, и конструктивно ответить можно было бы.
Когда я последний раз проверял, Java применялась для бэкенда и тырпрайза. Я што-то пропустил?
Аноним 10/07/16 Вск 18:55:31 #187 №792980 
14681661315710.webm
>>792972
> function isUndefined(thing){
> return typeof thing === "undefined";
> }

> for(var i=0; i<100000; i++) console.log(isUndefined(null));
> 12291 false
> 87709 true
Аноним 10/07/16 Вск 18:56:44 #188 №792982 
>>792980
капитулировал с вебм.
Аноним 10/07/16 Вск 18:56:51 #189 №792983 
>>792978
Ругаешься ты на джойны и вложенные запросы - это все имеет отношение к джаве весьма опосредованное.
Аноним 10/07/16 Вск 18:58:57 #190 №792988 
>>792983
> джойны и вложенные запросы
> все имеет отношение к джаве весьма опосредованное
К джаве да. К профессии java-разработчика ни разу.
Аноним 10/07/16 Вск 19:00:59 #191 №792995 
>>792972
- Эй, мужик! Правду говорят, что null это не определено?
- Ну хуй знает, тут так сразу не разберешься. Раз на раз не приходится.
Аноним 10/07/16 Вск 19:24:08 #192 №793018 
14681678484150.png
>2016
>веб на джаве
Аноним 10/07/16 Вск 19:29:08 #193 №793021 
>>792677
> java.lang.StackOverflowError
Хороший сайт, очень сильно помогает мне
Аноним 10/07/16 Вск 19:45:58 #194 №793039 
>>793018
а чем плохо ?
Мимо вкатываюсь в спринг.
Аноним 10/07/16 Вск 19:51:46 #195 №793046 
>>792978
— Здравствуйте, это канал об аниме?
— Да.
— Как мне пропатчить KDE2 под FreeBSD?
Аноним 10/07/16 Вск 20:31:14 #196 №793076 
>>793039
кратко: устарело и переусложнено на фоне скриптовых языков. как забивать гвозди телескопом.
Аноним 10/07/16 Вск 20:32:16 #197 №793079 
>>792946
Ну что, джаваны? Нет идей, как организовать работу?
Аноним 10/07/16 Вск 20:34:31 #198 №793081 
>>792946
Попробуй ExесutоrService для своих целей. Вот примерное решение: http://ideone.com/nWztVG
В строке 9 создается тредпул состоящий из числа доступных процессоров. Это значение можно задать константой, причем значительно больше числа процессоров в системе.
В строке 11 мы заполняем тредпул воркерами. Из-за того, что воркеры крутятся в бесконечном цикле, желательно не создавать их больше чем потоков.

Как работают воркеры:
Вся эта система взлетит только в том случае, если fасtory реализовывает паттерн Prоvidеr, а DаtаSender реализует Cоnsumеr. Fаctory блокирует выполнение до получения следующего результата, а когда результат получен вернет его только одному потоку.
DаtаSender потокобезопасен и блокирует выполнение потока до тех пор, пока данные полностью не будут переданы и канал данных не будет освобожден.

Если же они в эти паттерны не вписываются, то можно допилить их напильником. К примеру, если Factory не потокобезопасен, мы его можем окружить sуnchrоnized-блоком. Если factory к тому же не блокирует поток выполнения, а возвращает к примеру null когда данных нет - то заключить получение данных в бесконечный цикл.
Если DataSender не потокобезопасен, то все плохо, потому что мы не получим выигрыш от многопоточности и все мое решение летит к хуям, потому что как только мы его окружим sуnchrоnized-блоком, все процесы отправки данных будут ждать друг друга чтобы захватить lock.
Если же DataSender потокобезопасен, как например, отправка POST-запроса, то проблем нет.
Если DataSender требует каких-то предварительных действий для выбора канала данных то мы это тоже можем реализовать где угодно в Worker-е.
В идеале было бы создать по 1 воркеру на каждый доступный канал отправки данных.

(P.S. какое-то слово в спамлисте)
Аноним 10/07/16 Вск 20:36:35 #199 №793084 
>>793081
Ща за сигами сгоняю, а то уже что-то нихуя не соображаю.
Аноним 10/07/16 Вск 20:49:05 #200 №793089 
>>793084
Сейчас перечитал твой второй пост, вот комментарии
>В облаке есть n очередей (messages queue).
Идеально будет если у тебя количество потоков будет равно числу n, тобишь на каждую очередь один воркер
>Один поток по статистике: сколько получено сообщений, что там с очередью и так далее.
Создаешь любой класс, который реализует Runnable или Callable и отдаешь его в вышеупомянутый тредпулл.
>Один поток на получение данных и загрузки в очередь.
В этом есть смысл только если obj.get() плохо работает как Producer.
>И несколько потоков (предполагаю, что тут надо перебирать наиболее оптимальные варианты) на инстансы QueueManager, которые будут пушить при первой возможности сообщение в облако.
Эти потоки у меня реализованы в классе Worker, число их тоже вычислить легко, n = количество очередей в MessageQueue.
Аноним 10/07/16 Вск 20:59:18 #201 №793098 
>>792971
Ты не видел ещё, когда все это добро завернуто в курсор, а внутри курсора бродит ещё один курсор, в котором селект, в котором внутренний селект юнион олл селект, мазафака бич.
Не хватало только комментария
> //я ебался и ты теперь ебись
Аноним 10/07/16 Вск 21:03:16 #202 №793101 
>>792988
К профессии джава-разработчика имеет отношение многое - например, психологическая устойчивость - тем не менее, её лучше было бы обсудить на доске про психологию.
Так же как твои джойны и курсоры - в БД-треде.
Аноним 10/07/16 Вск 21:04:28 #203 №793102 
>>793098
> > //я ебался и ты теперь ебись
Заорал.
>>793101
Страдай или уебывай в JS-тред выяснять андефайность null. Там БД нет.
Аноним 10/07/16 Вск 21:05:32 #204 №793105 
>>793089
>Идеально будет если у тебя количество потоков будет равно числу n, тобишь на каждую очередь один воркер
Собственно, так и планирую. Вообще у меня идея, что воркер не должен знать, как работать с очередью в облаке.
У меня сейчас основная загвоздка как раскидать задачи по классам, чтобы god-object не словить.

Итак? Какие задачи
1. Создать очередь в облаке (довольно ебливый процесс, но я уже библиотеку накатал, все работает четко). Тут у меня есть класс QueueManager, который содержит список всех очередей, созданных ранее и делает Queue.push(Data) в одну из очередей из списка.
2. Создать пулл воркеров. Да, надо запилит.
3. Организовать корректную работу со всеми тредами.

На данном этапе я теряюсь как классы разместить.
Соответственно в главном классе я хочу оставить только два вызова.
CloudQueue connect = new CloudQueue(5); //5 количество облачных очередей.
connect.send(message.obj);

В свою очередь CloudQueue должен организовать следующие задачи:
Создать облачную очередь.
Создать внутреннюю очередь.
Создать пулл воркеров.
Начать пушить сообщения в внутренюю очередь и запустить всех доступных воркеров. Но в итоге мой класс CloudQueue превращается в самый настоящий god-class.
Аноним 10/07/16 Вск 21:15:28 #205 №793118 
14681745290070.jpg
Собираюсь зазубрить Оракл от корки до корки.
Рейт my intention.
Аноним 10/07/16 Вск 21:20:31 #206 №793122 
Как же хорошо кодить на жаве. Хоть и сложно, зато сразу все понятно становится, как работает ООП, интерфейсы, объекты, паттерны.
Вот я на пхп когда кодил, там вообще классы чисто декоративные были, как и неймспейсы. Ни типов тебе, ни красивых паттернов с бросанием ошибок.
Удивляюсь, поему пхпшникам вообще на собеседах задают вопросы про сортировку пузырьком, интерфейсам и ООП, многопоточность - это ведь вообще в пхп не используется.
Аноним 10/07/16 Вск 21:22:11 #207 №793124 
>>793105
>2. Создать пулл воркеров. Да, надо запилит.
Если что спрашивай.
>3. Организовать корректную работу со всеми тредами.
Если в тредах потокобезопасные операции, то сами потоки безопасны. Тут еще нужно добавить, что при выключении приложения нужно выключать executorService вызовом метода shutdown().
>Но в итоге мой класс CloudQueue превращается в самый настоящий god-class.
Я в таком случае бы вынес все сложное в статические методы CloudQueueUtils, а в CloudQueue оставил бы только тот код, который бы легко читался - без циклов и ветвлений.
Аноним 10/07/16 Вск 21:25:17 #208 №793129 
14681751171590.png
>>793122
Аноним 10/07/16 Вск 21:43:03 #209 №793144 
>>793124
А что если Cloudqueue в конструкторе вызывать CloudqueueService, который будет внутренней очередью? И ещё добавить создания пула потоков?
В итоге Cloudqueue будет producer к этой очередью и будет срать в неё. Воркеры будут в отдельном классе ебаться с очередью.

Блядь, как-то убого сформулировал. Сейчас попробую написать.
Аноним 10/07/16 Вск 22:33:26 #210 №793196 
>>793144
Блядь, все равно какую-то хуйню написал, собирается, но походу где-то бесконечные циклы и все такое.
http://pastebin.com/wgfNFJ09
Как лучше организовать?
Аноним 10/07/16 Вск 22:40:14 #211 №793201 
>>793196
Да, не совсем понимаю, как сделать очередь видимую для всех воркеров.
Аноним 10/07/16 Вск 22:40:43 #212 №793202 
Господа, добрый вечер.
У меня к вам довольно странноватый вопрос. Насколько глубоко надо знать джаву?
Пару месяцев учу ее, не помню, например, сколько памяти занимают простые типы, до сих пор туплю иногда, что такое статик и где надо пихать this и все в таком духе.
Задачи решаю, тестовые вопросы вроде тоже отвечаю.
Аноним 10/07/16 Вск 22:42:30 #213 №793204 
>>793202
Сходи на собеседование с тетрадочкой и запиши вопросы, на которые ответить не смог. Спроси с интервьювера фидбэк. Чо как маленький.
Аноним 10/07/16 Вск 22:44:09 #214 №793208 
>>793204
Не-не, я говорю о ТРУ-ПРОГРАММИСТОВ.
Понятное дело, что гуру советуют учить с С, или вообще с асм. Я говорю про ГЛУБОКОЕ понимание
Аноним 10/07/16 Вск 23:03:54 #215 №793230 
>>793202
Настолько, чтобы любой код на ней не вызывал у тебя вопросов.
Аноним 10/07/16 Вск 23:10:32 #216 №793237 
>>793202
изучай кресты
жаба очень простой язык для даунов
работая с крестами ты разберешься как работает память, что такое стек, как объекты выделяются в куче, как работают мутексы и вся кое такое говно низкоуровневое

даже после легкого знакомства с крестами жаба покажется тебе простым языком с низким порогом вхождения

останется только вскользь пробежаться по стандартной библиотеке. коллекции там, утил конкаренси и все такое. и ты будешь на собеседованиях лекции читать, а пездюки будут слушать тебя раскрыв рот
Аноним 10/07/16 Вск 23:10:57 #217 №793238 
>>793231
Нодогосподин.
Аноним 10/07/16 Вск 23:16:28 #218 №793246 
>>793201
>>793196
Осознал в чем сложность. Класс Producer имеет метод run(), который заполняет очередь. Только проблема в том, что я не совсем понимаю, как научиться срать в него не снимая штанов.
Аноним 10/07/16 Вск 23:17:49 #219 №793249 
>>793238
он поддерживает уже ES6?

я сам ни разу не юзал, только слышал отзывы знакомых


Аноним 10/07/16 Вск 23:20:30 #220 №793250 
14681820303730.jpg
>>790044 (OP)
Есть кто перекатился с .Net? Интересует:
почему перешли,
как давно,
что ожидали,
что получили,
не жалеете?
Аноним 10/07/16 Вск 23:30:36 #221 №793264 
>>793249
Все что надо поддерживает.
>>793250
Поехавший, на днях зарелизился охуенный .net core для тырпрайза заменять место подле тырпрайза.
Аноним 10/07/16 Вск 23:33:26 #222 №793268 
>>793264
Я прям вижу, как все шлют джаву нахуй.
Аноним 10/07/16 Вск 23:43:33 #223 №793276 
>>793246
У тебя слишком много абстракций, в остальном норм было. Но все-же я неправильно тебе посоветовал запилить бесконечные циклы. Минус такого подхода в том, что нужно добавлять проверку что service не находится в состоянии "выключение". Это неправильно и я это переписал, код ниже. Я создал продюсер и воркер, можешь запустить и проверить как работает. Кроме shutdown у экзекутора еще есть shutdownNow, который шлет всем потокам InterruptedException, это можешь тоже потестить.

http://ideone.com/v4e7Fs
Аноним 10/07/16 Вск 23:45:45 #224 №793279 
>>793268
В мире есть всего три с половиной языка, которые можно слать нахуй без раздумий.

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

Аноним 11/07/16 Пнд 00:07:15 #225 №793302 
бля, я не могу, я все термины читаю и учу по-английски. если на собесе будут спрашивать дебильные вопросы. типа что такое колбек или интерфейс, можно им отвечать по-английски? Я просто хуй знает, как это переводить
The Callback interface is designed to allow for a common, reusable interface to exist for defining APIs that requires a call back in certain situations.

Callback is defined with two generic parameters: the first parameter specifies the type of the object passed in to the call method, with the second parameter specifying the return type of the method.
Аноним 11/07/16 Пнд 00:12:05 #226 №793306 
>>793276
Бля, все конечно заебись, открыл для себя множество охуенных вещей, но я все равно все также не могу решить эту проблему.
Окей, запилил CloudQueue, которая собственно треды поднимает и контролирует все, что нужно. Но вот хоть убей, я не могу понять, как сделать пресловутый CloudQueue.send("message");

Ведь где @override нельзя передавать параметры, а consumer читает из входящего потока, т.е. вообще отдельно. Походу я твой.

К слову, я не совсем понимаю. Там на каждый input создается новый Worker или как?
Аноним 11/07/16 Пнд 00:15:41 #227 №793310 
>>793306
Передавай message в конструктор воркеру, а потом из метода run забирай. В моем примере так и сделано.
>К слову, я не совсем понимаю. Там на каждый input создается новый Worker или как?
Так и есть.
Аноним 11/07/16 Пнд 00:24:03 #228 №793314 
>>793310
>Передавай message в конструктор воркеру, а потом из метода run забирай. В моем примере так и сделано.
Так блин, это же внутри Producer выполняется. Producer нужно все время пересоздавать или его можно каким-то образом использовать повторно?

Я вижу строчку service.submit(new Worker(input)); Только один хуй, она создается внутри метода run, который принимать никакие параметры не может.

Я вижу тут определенную логику, но как-то нащупать не могу. Извиняюсь за глупые вопросы.
Аноним 11/07/16 Пнд 00:33:40 #229 №793322 
>>793314
>Так блин, это же внутри Producer выполняется. Producer нужно все время пересоздавать или его можно каким-то образом использовать повторно?
Ты говоришь, что тебе нужно выполнять CloudQueue.send("message"); Я сделал вывод, что тебе нужно отправлять какие-то данные. Для этого подходит Worker.
А забирать данные нужно с помощью Producer.
>Только один хуй, она создается внутри метода run, который принимать никакие параметры не может.
Ну да, я просто читаю с клавиатуры входные данные. Если у тебя, к примеру, есть возможность получать следующее сообщение с помощью CloudService.getNext(), то можно было бы передавать экземпляр CloudService в конструктор Producer, и потом вызывать его в методе run. Метод run выполняется в отдельном потоке, и ты никак его не изменишь чтобы он принимал параметры, ты только можешь модифицировать Producer таким образом, чтобы он их откуда-то забирал, или из своих собственных полей или из вебсервиса или по rest api. В конце концов ты можешь передавать BlockingQueue в конструктор Producer-у и добавлять новые данные уже непосредственно в BlockingQueue, но такая абстракция как по мне только усложнит твой код.
Аноним 11/07/16 Пнд 00:39:43 #230 №793326 
>>793302
>учу
А надо понимать.
Аноним 11/07/16 Пнд 00:42:07 #231 №793327 
>>793322
Хм. Боюсь спросить, Producer тоже, как и Worker должен пересоздаваться каждый раз при новом сообщении?
Аноним 11/07/16 Пнд 00:42:56 #232 №793332 
>>793327
Хотя нет, не должен.
Аноним 11/07/16 Пнд 00:45:39 #233 №793333 
>>793302
Можно.
Аноним 11/07/16 Пнд 00:48:08 #234 №793334 
Привет, анон. Можно ли как-то в Spring MVC обойтись только xml конфигурацией, без аннотаций?
Аноним 11/07/16 Пнд 00:48:51 #235 №793335 
>>793327
Продюсор скорее для каждого источника данных свой. к примеру, один продюсор для сообщений, полученных из консоли, другой для полученных по jmx итд. Пройдись отладчиком по тому коду что я вбросил, попробуй что-нибудь допилить или выпилить и посмотри что получится. Я спать пошел, завтра отвечу.
Аноним 11/07/16 Пнд 01:00:20 #236 №793337 
>>793279
Поведай же нам об этих трех языках, о Посвещенный!
Аноним 11/07/16 Пнд 01:00:23 #237 №793338 
>>793335
P.S.
>Вообще у меня идея, что воркер не должен знать, как работать с очередью в облаке.
Если до сих пор так хочешь сделать, можно просто выделить интерфейс, и сделать так чтобы воркер умел работать с интерфейсом, а реализацию ему подсовывать уже в конструктор.
Аноним 11/07/16 Пнд 01:02:38 #238 №793339 
>>793338
Ну это уже позже. Сейчас я бы хотел понять, как передать Producer хоть какую-то информацию, первая же идея была BlocingQueue, но ты сказать, что усложнит.
Аноним 11/07/16 Пнд 01:04:09 #239 №793341 
>>793339
У меня мысль только создать действительно класс CloudService, в нем создать очередную BlockingQueue и писать туда по возможности, но это тогда Producer поверх Producer.
Аноним 11/07/16 Пнд 01:34:36 #240 №793352 
>>793338
Не, анон, все равно не понимаю.
Кейс: отправить 10 сообщений hello world воркерам. Другими словами должен быть

CloudQueue, где мы создаем 6 тредов, а Producer получает фьючерс и все такое.
Затем пишем что-то типа цикла
for(int i=0; i<10; ++i)
CloudQueue.send("Message=" +i);

Теоретически, метод send должен обращаться к Producer и говорить ему - отправь вот эту строчку в обработку.

Но как получить этот Producer? Не понимат.
Аноним 11/07/16 Пнд 02:53:10 #241 №793361 
Объясните мне, как добавить картинку в table view, вид в FXML.
http://blog.ngopal.com.np/2011/10/01/tableview-cell-modifiy-in-javafx/
Пытаюсь, как тут делать, но бросает null point exception

Такой код http://ideone.com/ukBX2x (лишнее убрано)
Аноним 11/07/16 Пнд 04:26:44 #242 №793383 
>>793352
Ну их хороших новостей, я научился писать говнокод, вернее что-то там делать с Consumer'ом, однако от этого не легче, ибо концептуально все равно проблемы.
Другими словами, у меня получился один единственный способ. Создать треды, наполнить очередь, запустить Producer; Другими словами все хуйня. http://ideone.com/E7vkrw
Вся надежда на тебя, анон.
Аноним 11/07/16 Пнд 04:50:53 #243 №793386 
>>793383
Или я блядь опять не понимаю концепцию потоков? Прочитал в Javadocs, что треды должны после выполнения сразу же умирать. Другими словами, неужели мне нужно пересоздавать Producer'a каждый раз, когда я хочу отправить сообщение? Столько вопросов и так мало ответов. Пойду уже спать.
Аноним 11/07/16 Пнд 07:32:41 #244 №793406 
>>793383
Анон, Producer не обязателен вообще в этой иерархии. Я его писал для того, чтобы выделить код в отдельную сущность. Ты можешь из любого места вызывать service.submit(new Worker("fdsfgd"));
Если ты все-же хочешь какую-никакую изоляцию, тредпул можно вынести в отдельный класс, оформить его как синглтон и управлять очередью через вызов его методов.
Пример: Singleton.getInstance() - лениво создает синглтон и тредпул
Singleton.getInstance().sendMessage("sa") { service.execute(new Worker("sa")); }
Singleton.getInstance().shutdown() - выключает тредпул
Singleton.getInstance().shutdownNow() - прерывает все выполняемые отправки сообщений.
Singleton.getInstance().addProducer(new Producer(System.in)); - добавляет новый продюсер, который берет данные из System.in. Продюсор уже сам решит когда давать данные в тредпул и когда выключиться.

То, что я описал лишь добавление уровня абстракции к тому, что уже было. Это можно реализовать и как-нибудь по-другому.

Почему синглтон? Концептуально вряд ли у тебя будет в системе более одной очереди отправки сообщений, поэтому более одной очереди создавать не желательно. Еще это удобно тем, что ты можешь получить инстанс из любого потока и из любого участка кода, не нужно ему передавать синглтон чтобы он мог поставить какое-то сообщение в очередь.

>Ну это уже позже. Сейчас я бы хотел понять, как передать Producer хоть какую-то информацию, первая же идея была BlocingQueue, но ты сказать, что усложнит.
Это нужно если ты хочешь чтобы последновательно продюсор отдавал тебе данные. Если же ты хочешь отпарвить только одно сообщение то продюсор не нужен - ты просто создаешь Worker и добавляешь его в пул.
>У меня мысль только создать действительно класс CloudService, в нем создать очередную BlockingQueue и писать туда по возможности, но это тогда Producer поверх Producer.
FixedThreadPoolExecutor внутри себя содержит BlockingQueue. Когда ты создаешь 20 воркеров, но имеешь только 5 потоков, то 15 воркеров попадают в эту BlockingQueue и ждут своей очереди. Тредпулы для того и были введены, чтобы отделить пользователя от работы с очередями, а и сразу дать быольше контроля над потоками.
>Кейс: отправить 10 сообщений hello world воркерам.
for(int i=0; i<10; ++i) {executor.submit(new Worker("Message=" + i); }
Внутри воркера, понятное дело, System.out.println нужно заменить на CloudQueue.send(msg);
>Но как получить этот Producer? Не понимат.
Продюсор в этом случае не нужен. Вот если ты захочешь, чтобы главный поток у тебя занимался какими-то своими задачами, то продюсор нужен чтобы забирать данные в фоне, не мешая главному потоку. Еще продюсор полезен если необходимо забирать данные из нескольких источников. Ты создаешь по продюсеру на каждый источник данных и отправляешь их в тредпул, а сам в основном потоке делаешь другие дела, ну или просто ждешь когда они отработают и затем завершаешь главный поток.
>Прочитал в Javadocs, что треды должны после выполнения сразу же умирать.
Это при работе с потоками напрямую. Если ты работаешь через тредпул, по поток не умирает, а приостанавливается. Когда приходит новая задача, она снова выполняется в этом потоке. Это экономит ресурсы на создание нового треда и его запуск. Т.о. даже если у тебя отработало 100 воркеров на 5 потоках, в это время будет создано только 5 потоков в пуле. Еще одна особенность плюс ExecutorService, если поток умирает в результате Exception, то он его может пересоздать и вернуть в строй. Но это уже знать не нужно.
Аноним 11/07/16 Пнд 10:57:13 #245 №793442 
>>793334
Можно.
Аноним 11/07/16 Пнд 10:59:55 #246 №793445 
>>793383
Макака, ты мне весь тред засрала.
Ты просто тупой - смирись. Вот реально, javascript - это для тебя.
Аноним 11/07/16 Пнд 11:32:33 #247 №793456 
Котаны, доставьте плиз картинку, где зек спрашивает как компилить на мобиле аплеты. плиииз
Аноним 11/07/16 Пнд 12:27:54 #248 №793467 
реально ли вкатится в ее(устроиться в неткряк ккакой нить) после пол года/год андроид разработки?
Аноним 11/07/16 Пнд 12:35:53 #249 №793469 
>>793467
NC-довольно крутой вариант же.
Аноним 11/07/16 Пнд 12:36:18 #250 №793470 
>>793467
нет
Аноним 11/07/16 Пнд 12:45:17 #251 №793475 
>>793467
https://www.youtube.com/watch?v=ZlDjd_ySC0c&t=5
Аноним 11/07/16 Пнд 13:24:51 #252 №793489 
>>793467
Нет. Да и тебе не нужно.
Аноним 11/07/16 Пнд 14:07:07 #253 №793512 
Каким образом буковки передаются методу compare(параметрам String a, String b)?

http://pastebin.com/KKwimnt4
Аноним 11/07/16 Пнд 14:43:30 #254 №793548 
>>793512
первая буковка передается в первый параметр, вторая - во второй.
Аноним 11/07/16 Пнд 14:48:54 #255 №793555 
>>793548
Я ничего не понял, можешь еще раз, но подоступнее?
Аноним 11/07/16 Пнд 14:55:48 #256 №793561 
>>793555
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/util/TreeMap.java#547
Аноним 11/07/16 Пнд 15:18:29 #257 №793577 
>>792850
JMS или подобная технология, если нужно чтобы очередь сохранялась при наебываении приложения
Аноним 11/07/16 Пнд 15:22:21 #258 №793578 
>>792946
JMS решит проблемы.
(JMS)HornetQ или AMQP (RabbitMQ) как уже говорили
Аноним 11/07/16 Пнд 15:57:59 #259 №793582 
>>793489
Чому? ЗП выше в ее же.
Аноним 11/07/16 Пнд 16:21:42 #260 №793599 
>>793548
А третья? Снова в первый?
Аноним 11/07/16 Пнд 16:31:33 #261 №793607 
>>793582
какие зп в ее? только без мск/питера
Аноним 11/07/16 Пнд 16:34:05 #262 №793609 
>>793607
Если честно, то не ебу про другие.
Если говорить про фриланс, то да.
Но вообще, я знаю пару историй, когда всякие банки из европки нанимали фрилансеры. Один анон писал давно, что получает 4к в месяц.
Аноним 11/07/16 Пнд 16:45:31 #263 №793620 
>>793599
Почитай алгоритмы сортировки, сначала bubblesort, потом treesort.
Аноним 11/07/16 Пнд 17:29:40 #264 №793642 
14682473805250.png
Сравнили блядь жопу с пальцем.
AAAAAAAAAGHRRRRRRRR!!!!!!!1111
Аноним 11/07/16 Пнд 18:40:04 #265 №793687 
Что за говно с getKeyCode у KeyEvent? Почему для "б" и "ю" он возвращает нули?
Сап.
Аноним 11/07/16 Пнд 18:46:09 #266 №793689 
14682519696980.gif
14682519697121.gif
Вам гифок принес.
Аноним 11/07/16 Пнд 21:16:12 #267 №793780 
>>793642
Вангую, там надо jsf'ы писать. Понятия не имею, где ещё может встретиться такое сочетание.
Аноним 11/07/16 Пнд 21:17:23 #268 №793781 
>>793689
Блядь, до сих пор не понимаю, как хипсорт работает, пиздос.
Аноним 11/07/16 Пнд 21:26:13 #269 №793790 
>>793781
А напомните, зачем знать что-то о сортировках, кроме пузырьковой (чтобы было), быстрой (факт того, что она сравнительно проста и быстра) и метода sort (и что он является сортировкой слиянием)?
Аноним 11/07/16 Пнд 21:42:39 #270 №793802 
14682625599410.jpg
>>793790
С прикладной точки зрения - незачем. А вообще - пикрилейтед.
Аноним 11/07/16 Пнд 22:22:21 #271 №793840 
>>793790
мы вам перезвоним
Аноним 11/07/16 Пнд 22:27:51 #272 №793849 
>>793840
Меня устраивает текущая работа. К тому же не хочу писать на бинарном коде с таким подходом.
Аноним 11/07/16 Пнд 22:36:02 #273 №793855 
>>793790
Вот для этой хуйни блять.
>>793512
Аноним 11/07/16 Пнд 22:46:05 #274 №793862 
14682663658360.jpg
Как сделать так, чтобы неткрекер взял меня на работу? Как удержаться там первое время - это уже будет другой вопрос.
Нужна недельная экспресс-методика изучения того, чем точно будут интересоваться. Помогите червю-пидору.
Аноним 11/07/16 Пнд 22:49:25 #275 №793866 
>>793855
> Stream.of("afytwz").flatMap(s -> Arrays.stream(s.split(""))).collect(Collectors.toCollection(TreeSet::new)).forEach(System.out::println);
И для чего же?
Аноним 11/07/16 Пнд 22:50:22 #276 №793867 
>>793862
Они уже не берут людей. Слишком много людей для слишком стагнирующего языка. Ну в смысле что рынок насытился и больше не надо и не понадобится.
Аноним 11/07/16 Пнд 23:10:59 #277 №793873 
Что конкретно представляют из себя фреймворки? Можно учить джаву сразу по спрингу например?
Аноним 11/07/16 Пнд 23:14:12 #278 №793874 
>>793873
Новые языки, расширяющие и, зачастую, заменяющие оригиналы для обычных программистов. Если будешь учить Спринг, то джаву учить не надо - на чистой джаве уже никто не пишет. Сам посмотри - во всех вакансиях Spring.
Аноним 11/07/16 Пнд 23:28:01 #279 №793883 
>>793867
Знакомя пизда там работает "кью ей", языков не знает, сидит нихуя не делает.
Говно это.
Аноним 11/07/16 Пнд 23:32:02 #280 №793886 
>>793883
А тестеры нужны. А пизды-"айтишницы" еще больше для разбавления коллектива.
Аноним 11/07/16 Пнд 23:32:37 #281 №793887 
14682691575040.gif
>>793874
>Если будешь учить Спринг, то джаву учить не надо



Аноним 11/07/16 Пнд 23:36:12 #282 №793890 
>>793862

а в чем профит работать в этой хуйне? мне раньше звонили много раз, звали на собеседования, а хуй забивал и говорил что работа не нужна
Аноним 11/07/16 Пнд 23:51:59 #283 №793907 
>>793890
Опыт нужен.
Аноним 12/07/16 Втр 14:26:52 #284 №794254 
Джаваны, ищу работу начинающим программистом. Почему к джуну предъявляются неджунские требования? Откуда у джуна владение JavaEE?
Уж блядь наверное если я имею опыт энтерпрайз-разработки, я не буду искать работу джуном, а минимум мидлом пойду. А если за год программирования я все еще чувствую себя джуном- то сменю профессию, ибо я хуёвый программист.
Кто идет на такие вакансии вообще? Джун на джунскую вакансию им не подходит, мидл сам не пойдет, синьор-помидор давно в Лондоне, он не поедет в Россию за 40 к работать.
Аноним 12/07/16 Втр 14:33:52 #285 №794259 
>>794254
Описание вакансии в 99% случаев пишут всякие уебаны.
Как правило на собеседовании сначала убеждаются что ты в принципе адекватный человек и имеешь представление о джаве. Если ты прошел эту проверку, то на знание всяких ентерпрайзов и спрингов-хуингов закроют глаза. Тем более на джуниора.
Аноним 12/07/16 Втр 14:36:03 #286 №794260 
>>794254
sjw в моем треде, все в машину
Аноним 12/07/16 Втр 14:47:42 #287 №794266 
>>794259
>Здравствуйте, Бахтияр Салимджонович!

>Большое спасибо за Ваш интерес, проявленный к нашей открытой вакансии "Начинающий разработчик Java / Junior Java developer". К сожалению, в настоящий момент мы не готовы сделать Вам это предложение. Мы внимательно ознакомились с Вашим резюме, и, возможно, вернемся к Вашей кандидатуре, когда у нас возникнет такая потребность.
Аноним 12/07/16 Втр 14:52:24 #288 №794271 
>>794266
Я никуда резюме сам никогда не отправлял.
Сами звонят, а раз звонят значит уже решили что мое резюме им подходит.
Аноним 12/07/16 Втр 15:01:14 #289 №794280 
>>794254
Потому что джава без ЕЕ не нужна. Хотя, на собесе из ЕЕ достаточно бегло знать jpa, сервлеты, мавен и томкек как развернуть. Не так уж и сложно.
Аноним 12/07/16 Втр 15:46:16 #290 №794324 
>>794280
Из перечисленного тобой какое-то отношение к ЕЕ имеет только мавен, лол.
Аноним 12/07/16 Втр 16:08:31 #291 №794344 
>>794280
Писали сервак на Java. SE. Зависимости никакой, брат жив.
Аноним 12/07/16 Втр 16:24:02 #292 №794359 
>>794324
Тык само собой, каждый дрочит, как захочет. Но это пишут во всех книгах по ее. Если человек осилил это, то он может быть даже обучаемый.
>>794344
>2к16
Аноним 12/07/16 Втр 18:05:28 #293 №794433 
Короче, посадили на оче-проече старый проект и он ниибацца-интегрирован с эклипсом. Как в этой говнине посмотреть сырцу используемого класса? Нихуя не понятно (в идее было прост на ctrl+левый клик по названию класса)
Аноним 12/07/16 Втр 19:51:23 #294 №794562 
>>794433
Аналогично (или F3 при наведенном курсоре - вроде на маках такая хрень).

Идея, кстати, кал. Мало того, что тормозит (по сравнению с эклипсом) и интерфейс и возможности через жопу, так они еще и лицензируют её только на год или месяц. Заказать на 3 или 4 месяца - непосильная задача.
Аноним 12/07/16 Втр 19:55:36 #295 №794564 
>>794433
В Идее так и научился как в autocompletion вместе с вариантами показывать документацию, соответствующую выбору. Для этого сраного окошка потребовалось что - то редактировать в конфигурационном файле, и всё равно оно какое-то неприбитое.

Иконографику тоже им больные ui-идиотией делали - и публичные и приватные методы сопровождаются иконкой с красным кружочком - путает и бесит.
Аноним 12/07/16 Втр 19:58:44 #296 №794566 
>>794562
А эклипс не может во _все_ (сборщики (кроме анта), vcs, автокомплит и декомпил). Просто дедектор говна.
Аноним 12/07/16 Втр 19:59:37 #297 №794570 
>>794433
Короче, используй ангельский и поиск по справке, если такие вопросы возникают. И изучи хотя бы введении концепцию Workspace. Надеюсь оценишь достоинства Eclipse, у них, кстати, недавно релиз был - neon.
Аноним 12/07/16 Втр 20:01:44 #298 №794572 
>>794566
Может может (особенно в последних релизах) - главное поменьше говна наворачивать - начинать с installer, ставишь eclipse platform, потом поддержку языка в котором разработку ведешь, потом marketplace и дальше что надо - vcs, и прочие плагины.
Аноним 12/07/16 Втр 20:05:45 #299 №794584 
>>794566
Слушай - декомпил и не нужен. В нормальной IDE к библиотекам привязываются исходники (это даже делается еще на уровне сборщиков maven/gradle/...) и дальше идет нормальная работа.
Аноним 12/07/16 Втр 20:12:02 #300 №794604 
Помогите исправить ошибки в DSDT
8363 Error syntax error, unexpected PARSEOP_INTEGER, expecting '('

9609 Error syntax error, unexpected '}', expecting '('

9667 Error syntax error, unexpected '}', expecting '('

11235 Error syntax error, unexpected '}', expecting '('

11254 Error syntax error, unexpected '}', expecting '('

11402 Error syntax error, unexpected '}', expecting '('

11923 Error syntax error, unexpected '}', expecting '('

13105 Error syntax error, unexpected '}', expecting '('

13236 Error syntax error, unexpected '}', expecting '('

13404 Error syntax error, unexpected '}', expecting '('

13416 Error syntax error, unexpected '}', expecting '('

16318 Error syntax error, unexpected $end and premature End-Of-File
Аноним 12/07/16 Втр 21:16:24 #301 №794699 
>>794266
Просто ты бахтияр салимжонович.
Аноним 12/07/16 Втр 21:35:14 #302 №794717 
Кто-нибуть пишет софт для Аптек на яве скрипте?
Аноним 12/07/16 Втр 21:38:13 #303 №794720 
>>794717
Софт для аптек необходим высоконадежный (если перепутать и фармацевт продаст не то и клиент откинет копыта, то будет пиздец), поэтому на яве он не пишется. Пишется на JS.
Аноним 12/07/16 Втр 21:52:19 #304 №794730 
>>794720
На ведроиде хотели заказать переделку с фонгепа на нативный. Приложуха для заказа лекарств из аптек, но для ссаного битрикса нет нормального апи, все через плагинчики. Пусть варятся в своем говне.
Кстати:
>js
>надежность
О да динамическая дрисня такая надежная. Покормил.
Аноним 12/07/16 Втр 22:31:30 #305 №794755 
Прочел тут в треде про команию неткрекер. Оказалось, что они блять стажировку проводят, но надо было подать заявку до 19 июня. Сука. А я только решил вкатиться.
Аноним 12/07/16 Втр 22:37:16 #306 №794760 
>>794755
Там стажировка только по современным языкам.
Аноним 12/07/16 Втр 22:43:39 #307 №794765 
>>794760
Ну я про джаву и говорю.
Аноним 12/07/16 Втр 22:45:28 #308 №794769 
>>794765
Оппост читай.
Аноним 12/07/16 Втр 22:47:12 #309 №794770 
>>794769
Блять, что за микробы ты несешь?
Аноним 12/07/16 Втр 22:50:11 #310 №794775 
>>794770
Сколько минут у тебя опыт коммерческой разработки?
Аноним 12/07/16 Втр 22:50:52 #311 №794777 
>>794775
0
Я же написал, что только вкатываюсь.
Аноним 12/07/16 Втр 22:54:14 #312 №794782 
>>794777
Вот и не спорь.
Аноним 12/07/16 Втр 22:55:52 #313 №794786 
>>794782
О чем ты вообще говоришь?
Я написал, что пропустил стажировку.
Ты мне ответил, что там только современные языки. Я так понимаю, что там нужен опыт?
СТажировка для нулевых.
Аноним 12/07/16 Втр 23:32:12 #314 №794807 
Недавно начал использовать гредл, перейдя с мавена. Насколько годно работает инкрементальная сборка в больших проектах? Почитал красивые картиночки на сайте, полистал документацию, но это все слова. А на деле? Он нормально определяет изменения от переключения веток?
И не бывает ли на практике, что проект валится из-за того, что гредл не пересобрал хуйню, которую надо было пересобрать и из-за этого происходит нападение Степана Файлюры.
Аноним 12/07/16 Втр 23:58:36 #315 №794823 
>>793406
Бля, анон, ты охуенен. Сделал за сегодня все, что хотел. Вообще шикарно всё.

---
Аноны, как в java строить запросы? Есть что-нибудь для SQL, чтобы без напрягов это сделать, а то просто строчку сделать пиздец напряжно.
Надо запрос типа
INSERT INTO test ("item", "item2", "item3") VALUES("v1", "v2", "v3");
Аноним 13/07/16 Срд 00:07:59 #316 №794826 
14683576797460.jpg
>>794823
Попробуй жука, еще захочешь.
Аноним 13/07/16 Срд 00:09:13 #317 №794827 
>>794826
>жука
Что, прости?
Аноним 13/07/16 Срд 00:11:40 #318 №794828 
>>794827
Жука.
http://www.jooq.org/
http://www.jooq.org/doc/3.8/manual/sql-building/sql-statements/insert-statement/insert-values/
Аноним 13/07/16 Срд 00:14:45 #319 №794830 
14683580851550.jpg
>>794807
Ну что же вы, девы-псы девопсы.
Аноним 13/07/16 Срд 00:39:44 #320 №794840 
>>794828
бля пиздос там эти xml конфигурации. Копирую пример, у меня билд maven падает. Охуенно.
Аноним 13/07/16 Срд 00:47:22 #321 №794848 
>>793406
Синглтон, ой фу. Бля, меня чуть не стошнило.
Аноним 13/07/16 Срд 00:48:55 #322 №794849 
>>794848
А что не так?
Аноним 13/07/16 Срд 00:51:10 #323 №794850 
>>794840
> бля пиздос там эти xml конфигурации
Где ты там xml нашел? Там xml сам по себе нужен только для кодогенерации (которую, кстати, можно не использовать). Захуячь в гредл таску по генерации классов и не парься.
> Копирую пример, у меня билд maven падает
Ну охуеть просто. Ты ведь слышал, что в Java есть исключения, которые описывают проблему? :3
> Охуенно.
Охуенность на вашей стороне.
Аноним 13/07/16 Срд 00:51:28 #324 №794851 
>>794848
Одиночка по жизни, плз.
Аноним 13/07/16 Срд 00:55:37 #325 №794853 
>>794849
А то что синглтон - полнейшее говно. Это почти глобальная переменная.
Аноним 13/07/16 Срд 00:58:26 #326 №794854 
>>794850
>гредл
Бля, я пока хочу maven'ом сгенерировать.
Аноним 13/07/16 Срд 01:01:27 #327 №794855 
>>794854
Ну "руками" сгенерируй классы. Создаешь хмл, указывай откуда брать и куда ложить, выполняешь команду по генерации. Все написано же в геттин стартед гайде.
>>794853
> я больше нипишу синглтоны, я пью singleton whiskey, но когда никто не видит использую их вовсю, но тссс
Аноним 13/07/16 Срд 01:09:09 #328 №794858 
>>794854
Ну генерируй - кто тебе мешает? Проследи где _ты_ налажал и исправь ошибку.

Насчет жука есть один ньюанс, про который форсеры умалчивают - для использования с oracle требуется покупка лицензии.
Аноним 13/07/16 Срд 01:10:27 #329 №794860 
>>794858
Бля, у меня нет денег на лицензию, чтобы постгресс ебать. Чо так сложно тут с запросами.
Мне вообще только SQL строчку сгенерировать и всё.
Аноним 13/07/16 Срд 01:10:29 #330 №794861 
>>794858
Но это не проблема для тех кто готов отстегивать ораклу, надо думать.
Аноним 13/07/16 Срд 01:12:11 #331 №794862 
>>794860
Для постгри лицензия не нужна.

В эксплуатации и при рефакторинге оценишь сполна этот "медленный" старт.
Аноним 13/07/16 Срд 01:30:19 #332 №794870 
Бля, он мне каким-то пиздец странными ошибками срет. Что не так?
http://pastebin.com/2FVptxkD -- log
http://pastebin.com/9wqZGaEV -- pom.xml
Аноним 13/07/16 Срд 01:58:37 #333 №794881 
>>794870
Бля, чото в зависимостях потыкал и заработало.
Аноним 13/07/16 Срд 08:36:31 #334 №794940 
>>794858
Нормальный человек по своей воле без внешних факторов не будет использовать оракл вместо базы данных. А если использует, то не по своей, а по воле компании. И если она юзает оракл, то на покупку лицензии обоссанного жука деньги найдутся.
>>794860
> Чо так сложно тут с запросами.
Ты не пробовал учить JS? Язык для тебя.
>>794870
>>794881
> он мне каким-то пиздец странными ошибками срет
> [ERROR] package org.jooq.impl does not exist
> [ERROR] /home/user/gen/target/generated-sources/jooq/org/jooq/util/maven/example/tables/records/AudiodataRecord.java:[12,150] error: cannot find symbol
Ебать ты тупой.
Аноним 13/07/16 Срд 10:14:40 #335 №794975 
14683940808650.png
14683940808661.jpg
Вам консольки принес.
Аноним 13/07/16 Срд 12:08:13 #336 №795022 
14684008933660.png
рейт формочку
Аноним 13/07/16 Срд 12:10:42 #337 №795024 
Тут че все работают, один я чисто в рамках хобби делаю что-то?
Аноним 13/07/16 Срд 12:36:31 #338 №795036 
>>795024
Хобби - удел быдла.
Аноним 13/07/16 Срд 13:30:45 #339 №795078 
>>795036
Молчи там работобыдло.
Аноним 13/07/16 Срд 14:01:56 #340 №795096 
>>795078
Кыш оба два!
Аноним 13/07/16 Срд 14:49:45 #341 №795115 
>>795078
Работа - это тоже удел быдла.
Аноним 13/07/16 Срд 14:58:16 #342 №795117 
Быдло удел быдла для быдла.
Аноним 13/07/16 Срд 16:50:02 #343 №795229 
>>795022
Никогда кстати не понимал, зачем на Java писать формочки. Для винды есть удобный C# c фреймворками, где формочки мышкой клепаются, знай только обработчиков вешай. Для Linux и консолеблядство подойдет.
Аноним 13/07/16 Срд 17:12:00 #344 №795250 
>>795229
> C# формочки (без Gtk костылей) нигде не работают кроме Windows
> НЕ НАДО
А как же мы, элитные пользователи макбуков/iмаков и тд?
Аноним 13/07/16 Срд 17:35:07 #345 №795269 
>>795229
На винду есть Дельфя же.
Аноним 13/07/16 Срд 17:40:42 #346 №795273 
>>795229
>Для Linux и консолеблядство подойдет
Ты один из тех, кто думает, что на линуксе обязательно все через консоль делается и интерфейсов вообще нет?
Аноним 13/07/16 Срд 17:47:36 #347 №795279 
>>795250
>>795229
Более богомерзского языка придумать невозможно.
Аноним 13/07/16 Срд 17:54:26 #348 №795283 
>>795279
JS.
Аноним 13/07/16 Срд 18:33:03 #349 №795318 
>>795283
Спорно. Всё-таки от шарпа у меня гораздо хуже ощущения.
Плюс, TypeScript превращает js в более менее нормальный язык.
Аноним 13/07/16 Срд 18:56:56 #350 №795333 
>>795318
Не. Вот Dart - что-то похожее на язык. А TypeScript все равно гейством отдает.

>>795273
Я один из тех. Приложения без консольного интерфейса под линукс - дерьмо.
Аноним 13/07/16 Срд 19:36:43 #351 №795353 
14684278037870.jpg
Здравствуйте, anon_name
Вы ищете работу на полный рабочий день?
Что больше всего интересует back-end или web?

Че мне отвечать?
Аноним 13/07/16 Срд 19:38:00 #352 №795354 
>>795353
пиши что готов работать забесплатно хоть в чем
Аноним 13/07/16 Срд 19:50:54 #353 №795362 
>>795353
Че за тупои вопрос?
Аноним 13/07/16 Срд 19:52:37 #354 №795365 
>>795362
Мой?
Аноним 13/07/16 Срд 20:46:00 #355 №795404 
>>795353
Сам на легаси сяду, кота на колени посажу.
Аноним 13/07/16 Срд 21:29:36 #356 №795428 
>>795229
но моя формочка откроется и для винды и для мака и любой друго ос.
Аноним 13/07/16 Срд 22:30:26 #357 №795476 
14684382266550.jpg
Аноним 13/07/16 Срд 22:40:16 #358 №795485 
Анон, изучил core джаву, посоветуйте книги для изучения hibernate и spring
Аноним 13/07/16 Срд 22:46:38 #359 №795492 
>>795485
Нахуй нужны хешы?
Аноним 13/07/16 Срд 22:49:24 #360 №795496 
>>795492
По фану прост
Аноним 13/07/16 Срд 22:50:16 #361 №795500 
>>795496
Иди учить JS.
Аноним 13/07/16 Срд 22:51:43 #362 №795502 
>>795485
Как ты вообще что-то выучил, а гуглом так и не научился пользоваться?

У хайбернейта годный референс, читай его. По Спрингу книжек не много, никакой годноты анон тебе не спалит - её попросту нет. Выбери что нравится
Аноним 14/07/16 Чтв 01:27:54 #363 №795553 
Как мне прописать путь до моего файла из контроллера?
System.out.println(this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath());

Вот эта команда из контроллера такой аутпут дает:

/home/dmitry/NetBeansProjects/TPoster/target/TPoster-1.0-SNAPSHOT.jar

Мой файл распложен в папке /TPoster/src/json/token.json

Такие пути из контроллера пишут, что файл не найден:

"../../src/json/token.json"
"../src/json/token.json"
"/src/json/token.json"

Даже том же пакете файл не находит.
Аноним 14/07/16 Чтв 01:28:45 #364 №795554 
>>795115
Хобби - это хобби, а работа программистишкой - это удел школьников и быдла, да.
Аноним 14/07/16 Чтв 07:38:54 #365 №795624 
>>795500
Нахуй мне твоя параша?
Аноним 14/07/16 Чтв 07:49:39 #366 №795627 
Что за сын хуйни и дикого пса форсит жава скрипт итт?
Аноним 14/07/16 Чтв 08:27:46 #367 №795635 
>>795624
Потому что это главный язык будущего, вселенной и всего остального. А джава умирает. Пиздуй отсюда.
>>795627
Ебырь твоей мамаши-шлюхи на спине у джавараша.
Аноним 14/07/16 Чтв 09:33:00 #368 №795647 
> Желающие прекратить терпеть смерть, стагнацию, похороны и пожаловать в будущее на острие прогресса
Пососали у крестов и теперь отрываетесь на миленьких языках. Ясно все с вами.
Аноним 14/07/16 Чтв 09:52:58 #369 №795656 
>>795635
Двачую джава умирает, вчера скоротили.
Аноним 14/07/16 Чтв 09:55:09 #370 №795657 
>>795656
Просто хуёво работал.
Аноним 14/07/16 Чтв 11:22:17 #371 №795694 
>>795485
Spring in action, выкладываю русский перевод: http://rgho.st/86NGlp4Bn
По Hibernate стандарт JPA описан на сайте Оракла, доп. расширения хибернейта не нужны.
Аноним 14/07/16 Чтв 11:24:30 #372 №795695 
>>795554
А кем нужно работать небыдло-интроверту? Серьезно, не раз задумывался и приходил к выводу, что из программирования перекатиться некуда. Разве что совсем в днище вроде сторожа или охранника.
Аноним 14/07/16 Чтв 12:29:57 #373 №795766 
>>795695
Хз бро, художник\музыкант наверн.
Аноним 14/07/16 Чтв 12:52:21 #374 №795785 
>>795553
он у тебя в jar или в war-файл попадает?
Аноним 14/07/16 Чтв 12:57:53 #375 №795793 
>>795766
Ясно, разговор ведется с долбоебом у мамки на шее.
Аноним 14/07/16 Чтв 13:45:08 #376 №795845 
>>795793
Думаешь йоба художник не заработает?
Аноним 14/07/16 Чтв 13:53:25 #377 №795854 
>>795333
>Приложения без консольного интерфейса под линукс - дерьмо
ебать клоун
Аноним 14/07/16 Чтв 14:05:22 #378 №795870 
Объясните, как эту джаву компиляют в нативный код, работающий без JVM? Тот же OpenOffice/LibreOffice, не требует JVM для работы и не содержит ни единого class или jar файла. Но вроде пишут его на джаве.
Аноним 14/07/16 Чтв 14:07:13 #379 №795873 
>>795870
Разные есть. Гугли AOT.
Аноним 14/07/16 Чтв 14:13:56 #380 №795881 
14684948366330.jpg
14684948366381.jpg
>>795873
Гугл говорит, что это аниме.
Аноним 14/07/16 Чтв 14:16:35 #381 №795884 
Или Автоматическая Обработка Текстов?
http://aot.ru/

> 23 марта 2016 года Во вьюверах перешли от java, которая работала только под Firefox, на javascript, который работает почти везде.
Аноним 14/07/16 Чтв 14:19:33 #382 №795890 
>>795881
>>795884
Ты к поиску слово java не можешь добавить?
Аноним 14/07/16 Чтв 16:09:11 #383 №795989 
>>795870
Ну вообще наверно прикрепляют ДжВМ к проекту и все "публикуют". мимонуб
Аноним 14/07/16 Чтв 16:47:19 #384 №796017 
>>795845
Думаю хватит мамкину сиську сосать, прекращай, взрослый уже.
Аноним 14/07/16 Чтв 16:49:12 #385 №796019 
>>796017
Бля.
Аноним 14/07/16 Чтв 17:13:23 #386 №796033 
>>795269
> 2016
> вручную управлять памятью
Аноним 14/07/16 Чтв 17:17:28 #387 №796038 
>>796033
> вручную управлять памятью

Словно что-то плохое.
Мне в жабе люто бешено не хватает ручного аллока/деаллока и размещения объектов на стеке. Ну или по крайней мере как-то лочить запуск мусорного коллектора во время выполнения критических ко времени участков.
Аноним 14/07/16 Чтв 17:38:59 #388 №796054 
>>796038
>не хватает ручного аллока/деаллока и размещения объектов на стеке
Для таких хитровыебанных есть Unsafe и DirectByteBuffer. Толкьо нужно сделать сериаллизацию/десиреализацию структурок в байты и свой аллокатор/деалокатор с этого буфера.
Аноним 14/07/16 Чтв 17:48:52 #389 №796078 
>>796038
Не очень понимаю, как этого может не хватать. Одно дело ты не привык может, но не хватать? Серьезно?
Аноним 14/07/16 Чтв 17:53:37 #390 №796088 
>>796054
Я знаю, но согласись, что это геморно. Я много лет сидел на джаве, а тут год назад случайно переполз в кресты и охуел. Там все это на уровне языка.

А еще размещение обджектов в стеке.
Если есть код какого-то такого вида

for(int i = 0; i < 100_000_000; i++){
Huita kek = new Huita(getRandomData());
kek.someShit();
};

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




Аноним 14/07/16 Чтв 17:54:12 #391 №796091 
>>796078
Не каждый день понятно же. Но иногда надо.
Аноним 14/07/16 Чтв 18:14:51 #392 №796119 
>>796088
Ну и норм же, зачем самому париться? Удалит когда надо.
Аноним 14/07/16 Чтв 18:37:55 #393 №796130 
Буду вкатываться в жаву.
пожелайте мне удачи. Спасибо.
Аноним 14/07/16 Чтв 18:40:31 #394 №796134 
>>796119
у тебя раньше рам закончится и комп пека зависнет прежде чем он решит эту хуиту удалить, особенно если цикл бесконечный в отдельном потоке.
Но с другой стороны грех жаловаться, ведь такую хуйню только обезьяны пишут.
Аноним 14/07/16 Чтв 18:43:13 #395 №796138 
>>796134
потому что достаточно сделать так
Huita kek = null;
for(int i = 0; i < 100_000_000; i++){
kek = new Huita(getRandomData());
kek.someShit();
};
Аноним 14/07/16 Чтв 18:48:22 #396 №796140 
>>796134
>у тебя раньше рам закончится и комп пека зависнет прежде чем он решит эту хуиту удалить

Че блять? Иди учи как gc работает. Поссал на долбоеба.
Аноним 14/07/16 Чтв 18:55:54 #397 №796144 
>>796134
Хуйню какую-то написал. Коллектор за все это время очень хорошо уже оптимизирован, и он лучше любого программиста знает, когда и что нужно удалять.
Аноним 14/07/16 Чтв 18:57:09 #398 №796146 
В какие сроки обычно ожидают выполнение тестового задания - небольшого веб-приложения для джуниора? Написали, что срок неограничен, но... Я чую, что не меньше 2-3 недель потрачу, я же дурачок.
Аноним 14/07/16 Чтв 19:05:48 #399 №796152 
>>796144
ага блять, и поэтому когда я на днях по невнимательности написал такую хуйню (создавал в бесконечной петле рендера временный фреймбуфер для постпроцессинга картинки), то у меня буквально за пару секунд весь RAM (а это ~4гб) улетал в пизду, что приходилось перезапускать все нахуй.
Так что не так уж он и хорош этот мусорщик.

>>796138
все решение проблемы
Аноним 14/07/16 Чтв 19:09:03 #400 №796154 
>>796140
>если цикл бесконечный == бесконечно дохуя
> i < 100_000_000
> 100_000_000 == дохуя
>Иди учи как gc работает
сам иди уеба, в данном случае gc будет чистить после выхода из петли, тоесть никогда
Аноним 14/07/16 Чтв 19:17:42 #401 №796159 
>>796138
Нет. Это ничем по сути не отличается от >>796088
И там и там в хипе будет стопицот объектов на которых нет живых ссылок. И они будут лежать там до тех пор пока жвм не решит что пора запустить гц или память не кончится. И тогда жвм опять таки запустит гц, а если это не поможет - кинет оут оф мемори.

Но в любом случае в момент работы гц произойдет падение ПЕРФОРМАНСА и другие треды, работающие на этой же жвм это тоже почувствуют.

Единственный вариант тут - глубокий рефакторинг хуиты. Чтобы создать ее один раз до цикла, а в цикле только обновлять там данные (и свести их к примитивным типам или байт буфферам, само собой) и вызывать соме щит.
Аноним 14/07/16 Чтв 19:19:49 #402 №796161 
>>796152
>создавал в бесконечной петле
Сборщик удаляет тогда, когда что-то не нужно, если у тебя в бесконечной петле что-то нужное, ясное дело он это удалять не будет и ты получишь OutOfMemoryError, gc тут никак не виноват.
Аноним 14/07/16 Чтв 19:23:23 #403 №796167 
>>796159
хуйню сказал, в первом случае время жизни ссылки == времени жизни всего цикла, во втором == времени потребности в самой ссылке
>>796161
откуда вы беретесь, с хуяли тогда >>796138 этот вариант сработал?
В гугле блять полно ссылок по времени жизни объектов создаваемых в цикле
Аноним 14/07/16 Чтв 19:28:08 #404 №796174 
>>796159
пральна, в пизду ее ленивую инициализацию
будем стопитсот тяжелых объектов на стеке создавать и держать до конца жизни програмы

>и свести их к примитивным типам или байт буфферам, само собой
пердолинг уровня сипетушни, в пизду gc мы же лучше знаем как память оптимизировать
Аноним 14/07/16 Чтв 19:49:44 #405 №796199 
>>796174
>пральна, в пизду ее ленивую инициализацию

Где ты увидел там ленивую инициализацию?

> будем стопитсот тяжелых объектов на стеке создавать и держать до конца жизни програмы

Джава не создает объекты на стеке. Только примитивные типы.
Конечно в случает тяжелых данных можно использовать вариант >>796054. Но если гетРандомДата возвращает всего немного данных, то вариант со стеком более быстрый. Т.к. без стека в общей сложности на хипе будет выделено 100_000_000 * гетРандомДата. конечно, в любой момент цикла может сработать гц и удалить часть из них. Но может и не сработать. А запуститься позже и начать удалять сразу все.


>>796167

> хуйню сказал, в первом случае время жизни ссылки == времени жизни всего цикла

Грубо говоря ссылка это просто переменная с адресом объекта. Сам объект лежит в хипе и может вообще не иметь ссылок и лежать себе, ждать удаления. Ссылки передаются по стеку. Во время итерации цикла ссылки создаются в стеке и удаляются 100_000_000 раз. Объекты никуда не деваются, а ждут своего удаления гарбаг коллектором.
Аноним 14/07/16 Чтв 19:56:45 #406 №796205 
>>795785
не знаю. как проверить, попадает ли?
Аноним 14/07/16 Чтв 19:58:46 #407 №796207 
14685155270000.png
14685155270011.jpg
14685155270012.jpg
14685155270023.jpg
Подскажите нафане, в чем дело? Я уже даже toString ему прикрутил в return, а он не хочет нихуя возвращать.
Аноним 14/07/16 Чтв 20:03:19 #408 №796210 
>>796199
Должен вмешаться.
Gc как правило оперативно запускается при неактивности ссылки и лежать и ждать объекту долго не придется, а вот если ссылка на объект жива то и gc этот объект пропустит (что мы и получим в итоге)
Аноним 14/07/16 Чтв 20:05:53 #409 №796213 
14685159536600.png
>>796207
ньюфаня
Аноним 14/07/16 Чтв 20:08:57 #410 №796215 
>>796207
Это откуда?
Аноним 14/07/16 Чтв 20:09:02 #411 №796216 
14685161426390.png
14685161426401.jpg
>>796213
Согласен, но все равно не работает.
Аноним 14/07/16 Чтв 20:12:36 #412 №796221 
>>795695
Свой бизнес, например. Причем тут "интроверсия"? Программистишке надо гораздо в большей степени общаться с людьми и лизать всем зады, начиная с босса и заканчивая клиентами, эйчаром, секретуткой, манагерами и даже Аллахом, в отличие от бизнесмена.

Аноним 14/07/16 Чтв 20:12:40 #413 №796222 
14685163606780.png
>>796216
ньюфаньюшка
функция которая декларирует что будет что то возвращать, должна всегда это что то возвращать
Аноним 14/07/16 Чтв 20:14:56 #414 №796226 
>>796222
нахуй ты вообще битоебствуешь, если ты основ самого (языка)программирования не понимаешь?
Аноним 14/07/16 Чтв 20:16:06 #415 №796227 
14685165666340.gif
14685165666401.gif
14685165666692.gif
14685165667103.gif
>>796222
Благодарю вас, уважаемый.
Аноним 14/07/16 Чтв 20:16:33 #416 №796229 
>>796216
ну так возвращай стринг билдер.
Аноним 14/07/16 Чтв 20:17:25 #417 №796230 
>>796222
пиздец, этот осел даже кавычки нормально проставить не может.
Аноним 14/07/16 Чтв 20:17:32 #418 №796231 
>>796226
Потому что могу вообще-то, как видишь, не могу, но похуй.
Аноним 14/07/16 Чтв 20:18:16 #419 №796232 
>>796226
И да, статические методы и поля в 95% случаев это рак
не делай так.
Сначала создай инстанцию объекта содержащего метод, а уже потом используй этот метод
Аноним 14/07/16 Чтв 20:18:44 #420 №796233 
14685167245060.gif
>>796230
Как помочь, так нет, а выебываться - так прибежал.
Аноним 14/07/16 Чтв 20:52:39 #421 №796254 
>>796233
Запомни комбинацию и жми её после написания каждого метода и будет тебе счастье:
ctrl + a -> ctrl + shift + f.
Аноним 14/07/16 Чтв 20:58:47 #422 №796257 
>>796222
Двачая, 2х ретанра.
Аноним 14/07/16 Чтв 21:03:09 #423 №796259 
>>796233
ну если ты даун, не могущий в подсказки ИДЕ, то тут уже помочь нечем.
Аноним 14/07/16 Чтв 22:55:57 #424 №796322 
За вечер набежало аж три будущих вкатывателя в джаваскрипт. Один мвц пару недель делает, второй просто даун, а третий вообще в логику не может.

Ребятки, бросайте наш мертвый язык и пиздуйте зарабатывать деньги в JS.
Аноним 14/07/16 Чтв 23:18:28 #425 №796343 
14685275085370.png
>>796322
COBOL Delphi Java не умрет никогда, ибо это серьезный бизнес. Что бы эти хипстеры себе там не выдумывали.
Аноним 14/07/16 Чтв 23:32:20 #426 №796362 
>>796343
Будущее за питоном. Уже в следующем году войдёт в тройку лидеров и постепенно заменит жабу. JS как полноценная замена не подходит, так как узкоспециализирован, а на питоне много чего можно делать. Больше возможностей.
Аноним 14/07/16 Чтв 23:34:30 #427 №796365 
>>796362
Вопрос библиотек, ну и нормальной типизации.
Аноним 14/07/16 Чтв 23:36:25 #428 №796367 
>>796362
Скриптокал ничего заменить не сможет.
Аноним 15/07/16 Птн 00:05:24 #429 №796386 
>>796365
>типизации
оверрейтед говно без задач
Аноним 15/07/16 Птн 00:54:48 #430 №796428 
14685332884480.png
>>796386
Аноним 15/07/16 Птн 00:56:46 #431 №796430 
>>796362
Это тот язык, где вместо двух операторных скобок нужно ставить в каждой строчке тела про пробелу? Ну ну
Аноним 15/07/16 Птн 01:54:41 #432 №796446 
>>795273
Я один из тех, кто в жмупинусе более четырех лет и уже привык все через сосноль делать.
Аноним 15/07/16 Птн 02:49:06 #433 №796461 
>>796446
эй эта хуйня сработает так как надо?

float[] dta = new float[...
for (float dda : dta) {
dda = makeHuita(dda);
}
Аноним 15/07/16 Птн 03:04:34 #434 №796466 
>>796461
Хуй тебе, у массивов нет итератора. Нужно ArrayList делать.
Аноним 15/07/16 Птн 06:57:26 #435 №796496 
14685550469450.png
>>796466
Аноним 15/07/16 Птн 07:01:47 #436 №796498 
14685553077740.png
>>796496
1. В этом коде нет итераторов, а в for ( : ) есть.
2. Даже с итераторами код >>796461 был бы неправильный, ибо итератором элементы можно только читать и удалять, но не изменять.
Аноним 15/07/16 Птн 07:05:09 #437 №796499 
>>796466
Ох уж этот двач, совсем йобу дал уже?
итераторы уже с 1.5 как давно используются

>>796498
а вот тут спасибо за ответ, как раз то что я хотел (услышать) знать.
Аноним 15/07/16 Птн 07:07:22 #438 №796502 
>>796499
эх надо уже собраться да, освоить ебаный JUnit
Аноним 15/07/16 Птн 07:07:27 #439 №796503 
>>796498
>1. В этом коде нет итераторов, а в for ( : ) есть.
Это сдекомпиленный foreach на массиве, не веришь - сам проверь, кукаретик.
>2. Даже с итераторами код >>796461 был бы неправильный, ибо итератором элементы можно только читать и удалять, но не изменять.
Итераторы там нахуй не нужны, нжно вручную перебирать массив но не замети что НЕТ КОКОРАТОРОВ, а затем что запись dda = makeHuita(dda); не добавит новых значений в массив.
sageАноним 15/07/16 Птн 07:23:07 #440 №796510 
>>796503
> Это сдекомпиленный foreach на массиве, не веришь - сам проверь, кукаретик.
Проверил тебе за щеку: http://ideone.com/PTrk0O

>>796499
И тебе тоже. Вот класс Array, давай покажи, где там итератор или отправляйся под шконку:
https://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Array.html

> Итераторы там нахуй не нужны
Я не знаю, нахуя ты там используешь foreach, когда он не нужен.
Аноним 15/07/16 Птн 08:57:41 #441 №796538 
>>796499
Это сахарок.
Аноним 15/07/16 Птн 09:14:59 #442 №796543 
>>796498
ДОКУМЕНТАЦИЯ ДЛЯ ЛОХОВ
@
УЧУ ДЖАВУ ПО КУРСУ ГОЛОВАЧА


http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html
> The for-each construct is also applicable to arrays, where it hides the index variable rather than the iterator.
Аноним 15/07/16 Птн 10:46:16 #443 №796573 
>>796510
какой же ты долбаеб, твоя аватарка тебе идет
Аноним 15/07/16 Птн 12:41:55 #444 №796641 
>Как стало известно, сейчас разработка Java EE в компании Oracle полностью остановлена. Программисты, которые занимались Java EE в штате Oracle, говорят, что их переводят на другие проекты. В сообществе усиливаются дискуссии о том, что необходимо сделать форк. Сама же компания Oracle отказывается чётко прояснить свою позицию и сделать хоть какое-нибудь официальное заявление, несмотря на требования сообщества.
Аноним 15/07/16 Птн 12:43:05 #445 №796642 
>>790063
Твиттер, например.
Аноним 15/07/16 Птн 16:48:36 #446 №796783 
>>795870
Системные требования:
>Microsoft Windows XP, Vista, Windows 7, или Windows 8;
>Pentium-совместимый процессор (Pentium III, Athlon или более современные);
>256 Мб ОЗУ (512 Мб рекомендуемая);
>До 1.5 Гб свободного пространства на жестком диске;
>Разрешение 1024x768 (рекомендуется высокое разрешение), как минимум 256 цветов;
>Java SE Runtime Environment 7.0.
Аноним 15/07/16 Птн 18:03:47 #447 №796855 
>>791394
нахуя ты такой умный заходишь в Java-тред?
Аноним 15/07/16 Птн 19:00:12 #448 №796905 
Посоны, как сбросить триал Idea UE 15 в винде? Я что-то наворотил, теперь она у меня вырубается через минуту. Даже после полной переустановки.
Аноним 15/07/16 Птн 19:45:56 #449 №796939 
14686011564730.jpg
сап посоны. интересуют способы хранения фотографий и доступа к ним во всяких соцсетях. нагуглилось, что можно взять например id изображения из бд, приписать к нему слева нули до десяти цифр (например 0000000001) и это говно разбить по две цифры на папку, соответственно файл 00/00/00/00/01.jpeg нахуй. но что-то подсказывает мне о говености метода (подумой о масштабируемости). еще хотелось бы узнать каким хуем строятся квадратные миниатюры(например 100х100) фотографий. очевидный вариант - вырезать квадрат из центра, но вдруг там не будет видно ебальника? буду рад, анончик, если ты мне пояснишь за современные технологии, используемые для этих целей. вообще очень интересно узнавать как работают соцсети с такими объемами данных, с таким количеством одновременных запросов, да еще и с такой скоростью ответа. буду признателен за инфу. мимоджаваджун стаж 2 мес
Аноним 15/07/16 Птн 19:53:11 #450 №796945 
>>796939
>способы хранения фотографий и доступа к ним во всяких соцсетях
вангую что релятивные базы данных

>но вдруг там не будет видно ебальника?
значит не будет

>если ты мне пояснишь за современные технологии
дохуя серверов

>да еще и с такой скоростью ответа
прокси и отложенная инициализация
Аноним 15/07/16 Птн 19:57:22 #451 №796950 
>>796945
читал, что хранить пикчи в бд не православно, ибо сильно нагружает и увеличивает размер
Аноним 15/07/16 Птн 20:07:22 #452 №796959 
>>796950
>>796939
У меня на работке в одном проекте в базе хранились ссылки на файл на файловом хранилище.
мимо ньюфаг
Аноним 15/07/16 Птн 20:49:09 #453 №796989 
>>796905
Низнаю, иногда ваще софт знает што он пиратский даже после форматирования с:
Аноним 15/07/16 Птн 21:04:20 #454 №797005 
>>796959
>>796950
THIS
Аноним 15/07/16 Птн 21:36:39 #455 №797038 
>>796905
в докуменстЭндСэттингс удали директорию с настройками Идеи.
Аноним 15/07/16 Птн 21:48:06 #456 №797050 
>>797038
У меня виндус 7.
Удалял всё из папки c:\users\user\.idea, c:\users\user\appdata\\jetrains
Один хуй он както узнает, что я жулик
Аноним 15/07/16 Птн 22:49:06 #457 №797102 
Анон, который мне жука рекомендовал, да и вообще все сочувствующие.
Я вот столкнулся с тем, что не совсем понимаю, как организовать работу приложения.
Мой говнокод многопоточный, да. И в этих потоках он подключается к базе данных и систематически вытаскивает\добавляет данные.
Как организовать работу потоков, у меня база данных немного охуела от количества подключений.

И второй вопрос, как срать в базу данных через жука. Там множество примеров типа
insertInto(table, field1, field2, .., fieldn).values(1, 2, 3); А как-нибудь через цикл запилить?
Что-то типа
create.insertInto(table);
for( ... ){
create.fields(...).values(...);
}
create.execute();
Выглядит, как булщит, конечно.

Аноним 15/07/16 Птн 22:55:28 #458 №797107 
>>797102
По поводу количества подключений - используй connection pool-ы. В веб-контейнерах как правило они уже встроенные. В стандэлоун приложениях есть реализации, самая известная, на мой взгляд, c3p0. По поводу жука сказать ничего не могу, может кто другой посоветует.
Аноним 15/07/16 Птн 22:56:39 #459 №797108 
>>797107
>connection pool-ы
Собственно - это первое, что я загуглил, но толком ничего не нашел, к сожалению.
Аноним 15/07/16 Птн 22:57:58 #460 №797112 
>>797108
Как ты получаешь экземпляры Connection в своем приложении?
Аноним 15/07/16 Птн 23:01:11 #461 №797116 
>>796939
Есть большой файл, новые данные дозаписываются в конец.
В бд хранится ссылка на большой файл, offset и длина отдаваемого файла.
Больших файлов может быть несколько.
Аноним 15/07/16 Птн 23:02:20 #462 №797119 
class DB(){
DSLContext create = null;
Connection conn = null;
public DB() throws SQLException {
conn = DriverManager.getConnection(url, userName, password);
create = DSL.using(conn, SQLDialect.POSTGRES);

}
}
Что-то типа такого.
Аноним 15/07/16 Птн 23:31:49 #463 №797157 
>>797119
Олсо, вот хуй знает, как организовать архитектуру приложения. Вернее двух штук.
Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.

Только у меня уже ебучая лапша в коде выходит. Ответ от сервера JSON формат - два типа данных. В итоге if
get(0).getAsJsonObject().get("shit").getAsString. Говно не читаемое получается. Не знаю, как все это организовать бля.
Аноним 16/07/16 Суб 04:01:58 #464 №797319 
Хочу вкатиться в жаву, какие подводные камни?
Аноним 16/07/16 Суб 08:24:12 #465 №797349 
>>797319
Хуй в жопе, а так жаба умирает. Иди JS учи.
Аноним 16/07/16 Суб 09:35:48 #466 №797367 
>>797349
>Хуй в жопе
Это не правда.
>жаба умирает
Эни пруфс?
>JS учи
Не хочу.

ты хуесос. Почему-то захотел тебя оскорбить, не обижайся
Аноним 16/07/16 Суб 10:11:52 #467 №797375 
>>797367
>Эни пруфс?
Иди треды читай.
Аноним 16/07/16 Суб 10:18:02 #468 №797379 
>>797119
Тебе нужен конекшон пул, сейчас у тебя оверхед от того, что каждый раз создается новое соединение. По архитектуре нехуй учить чему-то, с опытом понимание придет само.
Олсо, соединения нужно закрывать, а у тебя в коде чет не вижу такого. (спойлер: когда ты закрываешь соединение из конекшон пула, оно возвращается в пул, а когда ты закрываешь обычное соединение то оно уничтожается, так что закрывать надо в люмом случае, см. try with resources)
Аноним 16/07/16 Суб 10:18:46 #469 №797380 
>>797375
Щас бы брать во внимание мнение чуханов с двача.
Аноним 16/07/16 Суб 10:59:17 #470 №797390 
>>797157
>Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.
MQ, например AMQ.
Аноним 16/07/16 Суб 11:01:38 #471 №797392 
>>797157
Хотя, в твоем случае зачем тебе 2 приложения? В одном в чем проблема сделать?
sageАноним 16/07/16 Суб 12:02:07 #472 №797424 
>>790044 (OP)
Ёбаным жабоиндусам, напоминаю разницу. Зоопарк вопросов:
- где замыкания?
- где свойства?
- где шаблоны? Разработчики Sun вынуждены только облизываться. Даже генерики, введённые в 5-й версии Java — не более, чем syntactic sugar. Дотнетовские генерики это реально поддерживаемые платформой типы, которые расширяются на лету при загрузке, котрые оптимизируются JIT-компилятором. Для Java генерики существуют только в коде и ни JIT, ни загрузчик классов их никогда не видит. Поэтому проблемы боксинга, преобразования типов в runtime просто скрыты от программиста.
- где делегаты/евенты?
- где partial-классы?
- где детерминированное освобождение ресурсов (ключевое слово using + интерфейс IDisposable)?
- где оптимизация JVM для расширений процессоров?
- где аналог linq и в частности удобные мапперы?
- где расширения методов класса?
- где скрытая имплементация интерфейсов?
- где перегрузка параметров функций?
- где нормальное потребление памяти приложением?
- где быстрая работа приложения?
- где нормальные иде, с полноценными дизайнерами?
- где пользовательские value types?
- где методы у инстансов value types?
- где var и анонимные типы
- где перегрузка операторов?
- где оптимизиции хвостовых вызовов? (в свете фунционального хайпа это должно вызывать некоторый батхёрт)
- Где чёткое разделение домены и сборки? Это не учитывая, целый ворох технологий недоступный понимаю жабоиндусов, такие всякие сильверлайты/вин-веб/формочки, впф, XNA, список можно продолжать бесконечно, как впрочем и список ущербности жабы...

Всего, чего нет в жабе, автоматически объявляется хуитой, как только это появляется в жабе, это автоматически становится нехуитой. При этом, требуется сделать вид, что хуитой это называл кто-то другой.
Аноним 16/07/16 Суб 12:29:35 #473 №797436 
>>797157
AMQP
> Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.
>
> Только у меня уже ебучая лапша в коде выходит. Ответ от сервера JSON формат - два типа данных. В итоге if
> get(0).getAsJsonObject().get("shit").getAsString. Говно не читаемое получается. Не знаю, как все это организовать бля.
Хуйню какую-то написал. Напиши нормально что там у тебя и для чего. Алсо если я правильно понял, то ты очередь используешь тупо чтобы асинхронно базарить с базой и нет какой-то мощной масштабируемости. Тогда очередь и отдельное приложение для бд несколько оверкилл - дао/репозитории можно сделать асинхронными (или прислюнявить к датааксессу дополнительный менеджерский слой, который будет управлять дата аксессом, разруливать разные дата сорсы и разруливать асинхронку с обычными дао/репозиториями). Если же у тебя распределенность и масштабируемость во все поля, то тогда да, тебе нужен message layer для обмена информацией между компонентами.
>>797319
Кроме того, что язык умирает, а оракловский JavaEE вообще официально сдох, и язык отправляется вслед за коболом и дельфями, и на рынке все сильнее падает спрос - никаких.
>>797367
Антоний прав, охуевший долбоеб. Пиздуй учить Javascript - главный язык будущего, вселенной и всего остального. Пока ты не всрал годы на то, что уже умирает.
Аноним 16/07/16 Суб 12:49:11 #474 №797449 
>>797424
А где нормальная поддержка любого железа, сисярп-долбоеб? В новом дотнеткоре? Ну как там дела с релизом, вышедшим месяц назад? Все компании мира объявили о переходе на него?
> целый ворох технологий недоступный понимаю жабоиндусов, такие всякие
> сильверлайты
Лол. Сильвер лайт. 2016.
> вин-веб
А что, асп парашу использует кто-то, кроме Microsoft?
> формочки
Для формочек есть главный язык будущего, вселенной и всего остального. Здесь серьезный бузинесс.
> впф
Еще одно формошлепство, только под винду и теперь еще и мертвое. Последний релиз 4 года назад и блог блещет активностью https://blogs.msdn.microsoft.com/wpf/
> XNA
Гейм-девелопмент и прочие юнити это единственное на что годится C#.
> список можно продолжать бесконечно, как впрочем и список ущербности жабы...
А когда твой беззадачный (акромя игор) сишарп будет поддерживать серьезный тырпрайз бизнес и его задачи? Когда научится работать на каждой кофеварке? Никогда? А на хотя бы никсах и маках? Только что? И как поддержка, а? А когда научится поддерживать нормально распределенные транзакции без печати вендор локина?
Основная хуйня твоей параши - в том, что она пиратская версия джавы от обиженки, которая на волне баттхерта еще запилила почти тотальный вендор локин, чтобы заодно как-то поддерживать свою хуйню. Когда ты пишешь тырпрайз на джаве - ты пишешь тырпрайз на джаве и не связан ничем. Используй что хочешь. Когда ты пишешь говно на сисярпе (вне гейм-девелопмента), то ты залочен под инфраструктуру microsoft и винду. Так что уебывай писать десктопные формочки, игоры на юнити и приложения, работающие на одном (1) microsoft windows server.
> Всего, чего нет в жабе, автоматически объявляется хуитой, как только это появляется в жабе, это автоматически становится нехуитой. При этом, требуется сделать вид, что хуитой это называл кто-то другой.
Обоссан.
Аноним 16/07/16 Суб 12:54:58 #475 №797455 
>>797449
Поговорил с пастой - день прошел не зря.
Аноним 16/07/16 Суб 12:59:00 #476 №797456 
>>797455
Именно так.
sageАноним 16/07/16 Суб 13:52:51 #477 №797483 
Есть ли в природе хоть один жавапидорас, который знает что-нибудь кроме джавы? Ну хотя бы ту же Скалку, работающую на jvm. Причем `знает' не в смысле запускал 2 раза и посчитал рекламную хуйню с сайта, а действительно хорошо знает. Работал минимум полгода, знает, решению каких проблем адресован язык, знает, зачем он нужен и какие преимущества имеет перед джавой, хорошо понимает, какие принципы заложены в систему типов и нахуя они вообще туда заложены, знает, как она жутко она фейлит на оптимизации хвостовой рекурсии, знает, как она затирает типы и вызывает методы через рефлексию, знает, почему на уёбищной jvm по-другому не сделать, знает, почему неленивые языки - говно, знает, что такое abstraction penalty и почему любой джаваынтырпрайз адово тормозит, несмотря на превосходные результаты на шотауте, самый лучший мусоросборник и hotspot до которого всему немейнстиму в говне плыть и плыть, знает, почему джава - не язык программирования для нормальных людей, а говно для переквалифицировавшихся таксистов? Нет таких? Ни одного? Только студентота и дрочеры на абстрактные фабрики абстрактных аннотаций виртуальных плагинных шин? Так я и знал. И это программисты. Говно какое-то. Пидоры блядь.
Аноним 16/07/16 Суб 15:23:04 #478 №797557 
>>797424
Ты сахара обожрался что ли?

- Все что снаружи анонимного класса/лямбды/да просто блока кода и есть замыкание, дебил.
- На месте, хочется сахара - используй Lombok
- Пилят, в 10/11 будут. Но так - то и без них жаба обошла .net
- Проблемы разработчиков языка сисярп, тащащих отовсюду что попало, без представления об ортогональности возможностей, нас не волнуют
- Хз что это - см. предыдущий пункт в котором упоминалось как шарп сосет у жабы
- вот здесь https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html
- по поводу VM и опций ты бы вообще не кукарекал.
- Jooq + java8 = аналог
- В котлин дарагой
- Хз что, но звучит как содомия
- Шта? Что вообще код не пишется без этого сахара?
- У грамотных специалистов
- Ну хотя бы работают (со сравнимой скоростью) - деньги приносят. Вам в SOHO не понять.
- Шта? "полноценными дизайнерами?" - клепать круды для малых офисов???
- В 10/11 версии
- Пилят
- В Scala/Clojure/Cotlin/Ceylon/Groovy
- Бинго!!! Маня ты попала в точку. Кажется у .NET есть TCO на уровене VМ, чем жаба не может похвастать. Но как ни странно в проде больше используется ФП языков под JVM одного против F#. Подозрительно, да?
- OSGI? Java9?

Так что либо есть либо пилят (и это необходимо, спору нет). То что не пилят (всяческий пидорский сахар типа partial-классы), это не нужно, да.
Аноним 16/07/16 Суб 15:29:12 #479 №797564 
Знаешь, |c|, по-моему, я схожу с ума...
Дело в том, что иногда по ночам мне кажется, что я яваблядь. Мне хочется выделять память, зарабатывать на доширак, пиздеть про энтерпрайз, сваливать свои проблемы на чужие плечи и писать нечитаемый бессмысленный говнокод.
Я ворочаюсь, страдаю, рычу, а под конец вскакиваю с кровати и хватаю первое, что попалось под руку.
Это может быть тапок, топор или простая поварешка, но в моем воображении она становится огромным прожорливым интерпретатором.
С этим интерпретатором я открываю корпус сервера, ставлю ещё две планки оперативной памяти и с громким боевым кличем выбегаю на улицу. Я бегаю под окнами своих соседей и ору: "Ява не тормозит, тупые нищебляди!! Купите нормальное железо!!"
Но они не покупают... Они привыкли.
И когда я уставший, но довольный, поднимаюсь в квартиру, наоравшись и набегавшись, одна из дверей открывается. Там, лукаво сверкая глазенками, стоит маленький соседский мальчик Женька. Он громко шепчет беззыбым ртом "Клоссплатфолменность!" и ободряюще мигает мне одним глазом.
Я, улыбаясь ему, прохожу мимо, и в душе моей поют заказчики.
А дома я открываю бутылку водки, морщась, выпиваю ее до половины, и ловлю кота. Ругая этого "сраного волосатого индуса", я сажаю его за клавиатуру, и чтобы он не убежал, приматываю его к ней скотчем.
А дальше все просто.
Я стою у окна, пуская скупую быдлокодерскую слезу по своей прыщавой щеке , и мечтаю. Я представляю, что огни домов -- это пламя костров, на которых сжигают крестопидоров, шум машин -- это рев кулеров в серверных, а в мире нет ничего, кроме великого энтерпрайза и нас, яваблядей...
И я жду, что вдруг, вот сейчас, в мою дверь войдет начальник и скажет: "Эй, раб, ты чо так так долго? Давай, быстро дописывай исходник. Похуй, если будет тормозить - разберутся те, кто будет сопровождать! ГА-га-га-га!" И ободряюще хлопнет меня по спине.
И тогда не будет в мире счастливее человека, чем я... Точнее, явабляди.
Что же мне делать, анон? Что же мне делать?
Аноним 16/07/16 Суб 15:33:37 #480 №797570 
>>797564
Но с котом-то потом все будет в порядке?
Аноним 16/07/16 Суб 15:48:43 #481 №797590 
14686733240630.jpg
>>797557
> Cotlin
Ну за чем ты так
Аноним 16/07/16 Суб 16:07:01 #482 №797604 
>>797590
Скот, плз.
Аноним 16/07/16 Суб 16:26:45 #483 №797619 
Мне в тестовом задании сказали собрать проект в мавене. Я правильно понимаю, что ебаться с мавеном можно в конце? Сейчас же могу делать всё остальное? Я просто ньюфаня ньюфань.
Аноним 16/07/16 Суб 16:31:07 #484 №797625 
14686758677790.png
>>797604
Аноним 16/07/16 Суб 16:31:15 #485 №797626 
>>797619
Ну как только ты создаешь новый проэкт в иде, уже надо указать что это мейвн-проэкт, там же своя структура.
Аноним 16/07/16 Суб 16:35:06 #486 №797633 
>>797619
Мы вам даже не перезвоним. JS awaits for your future attention.
Аноним 16/07/16 Суб 16:37:39 #487 №797636 
>>797633
>>797626
Всё, создал мавен-ваадин пружект. Пойду в вов поиграю, один хер я не умею прогать.
Аноним 16/07/16 Суб 16:39:05 #488 №797639 
>>797636
Пиздуй. И в следующий раз иди сразу в JS, там проще, перспективнее и больше денег. И тян будут давать.
Аноним 16/07/16 Суб 16:41:42 #489 №797643 
>>797625
Как не нужно, когда берешь спринг, берешь @Async, и сразу нужно и без всякого экзекьютор оверхеда нужно?
Аноним 16/07/16 Суб 16:45:10 #490 №797645 
>>797643
>берешь спринг
Точняк, уже запускаю на своем телефоне Sprint, погоди сейчас про-коко-грузится.
Аноним 16/07/16 Суб 16:50:34 #491 №797650 
>>797645
По твоему сообщению можно подумать, что ты хотел попасть в ведротред или социотренд эджайлиться в жопу. Но ты зашел не туда.
Аноним 16/07/16 Суб 17:48:05 #492 №797695 
14686804859760.jpg
>>797650
Аноним 16/07/16 Суб 17:50:04 #493 №797696 
Почти год тут не был, успел новый форс пропустить. Это вы конкурентов разгоняете?
Аноним 16/07/16 Суб 17:53:28 #494 №797700 
>>797696
Оракл разогнала или переназначила на другие проекты всех разработчиков, пиливших javaee.
Аноним 16/07/16 Суб 17:55:53 #495 №797701 
>>797700
Потому что нахуй не нужно разделение на se и ee. Будет единый язык.
Аноним 16/07/16 Суб 17:57:24 #496 №797703 
>>797701
ee это не язык.
Аноним 16/07/16 Суб 17:58:00 #497 №797704 
>>797703
Жопочтец.
Аноним 16/07/16 Суб 17:59:23 #498 №797706 
>>797704
> Будет единый язык.
Язык и так один, заехавший.
Аноним 16/07/16 Суб 18:17:33 #499 №797723 
>>797436
>Антоний прав, охуевший долбоеб. Пиздуй учить Javascript - главный язык будущего, вселенной и всего остального. Пока ты не всрал годы на то, что уже умирает.

>Смотри мам, я траль
Аноним 16/07/16 Суб 18:27:36 #500 №797733 
>>797723
> мам, смотри, траливалер :(((
Аноним 16/07/16 Суб 18:37:07 #501 №797744 
Перекат >>797742 (OP)
Перекат >>797742 (OP)
Перекат >>797742 (OP)
Аноним 16/07/16 Суб 18:53:38 #502 №797763 
>>797744
Ну что же тебе так неймется.
Аноним 17/07/16 Вск 00:55:26 #503 №798033 
пишу на жаве. мне норм.
Аноним 17/07/16 Вск 01:57:29 #504 №798087 
ребяты, я вот сижу такой мне делать нехуй вообще, решил выучить яву
правильно из закреплённого поста понял что стоит начать с
+ Java 2. Том 1. Основы Кей Хорстманн
+ Java 2. Том 2. Тонкости программирования Кей Хорстманн

или с чтото другое посоветуете?
если нет на русском книги где всё чётко и ясно, можно на немецком, ибо я его учил всю жизнь
английский не знаю (знания позволяют только смотреть передачи типа фэллона)

для чего оно мне? я пока не решил мне плевать учу что хочу
Аноним 17/07/16 Вск 08:56:59 #505 №798192 
>>792385
Расскажи про лямбда-выражения поподробнее. Это автоматическая генерация анонимного класса — нэ?
Аноним 17/07/16 Вск 10:10:09 #506 №798224 
>>798192
Это Invoke Dynamic
https://www.youtube.com/watch?v=DgshYDTpS9I
Аноним 17/07/16 Вск 14:05:11 #507 №798325 
Сап, джава-господа. Пробую одну вещь, а именно собрать лист ссылок с сайта. Взял себе на пробу сайт, ссылки вытащил.
Но они в разброс. ТО есть, первая новость на сайте почему-то не первая в списке, а где-то в середине.
Понимаю, что теперь мой лист нужно отсортировать. Сделать это в целом просто, ведь в середине каждого стринг в листе есть дата. Но календарь юзать тут не надо. Просто отсортирую по какая меньше-какая больше. Вот код, которым я получаю ссылки.
http://pastebin.com/dRjvtp3i
Вот то, что я получаю.
http://pastebin.com/Qvm5PsD8
Вот то, как выглядит дата:
2016/04/26/
Из неё я буду вытаскивать месяц и число.

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

Спасибо, Анонимусы
Аноним 17/07/16 Вск 17:01:33 #508 №798463 
Че вместо томкэта используете?
Аноним 17/07/16 Вск 19:48:48 #509 №798614 
>>798463
Tomcat
Аноним 17/07/16 Вск 19:50:14 #510 №798615 
14687742141900.png
14687742141911.png
14687742141912.png
14687742141913.png
Анон, дай совет. Нужно сделать десериализацию ответа от сервера. Есть несколько типов ответов.
Соответственно первый ответ - это блоки информации, которые нужно десериализовать.
Последние две - просто метаданные об ошибках\результатах.

К слову, на выходе я должен получить _абсолютно_ такую же json строчку, так как она будет использоваться повторно. Не хотелось бы писать ещё один десериалайзер.

Я пытаюсь использовать Gson, чтобы выполнить эту задачу.

Создал класс
DataModel -> ссылается на Response -> ссылается на Items;
Вот тут собственно и проблема, Gson пытается сделать каст на Stringmap, то есть объект спокойно создается, потом возвращается в Json и все отлично, но доступа к свойствам и метода последнего объекта (Items) я получить не могу, а собственно очень надо. Собственно вторая проблема - как отличать все эти 4 объекта друг от друга. Так как Items могут содержать различного рода свойства. Как видно на первой картинки - вовсе вложенные объекты.

http://ideone.com/jSZ99S --говнокод

Спасибо
Аноним 17/07/16 Вск 21:10:57 #511 №798663 
>>796254
Это где такая комбинация? Не уж то эллипс? Им кто-то пользуется ещё?
Аноним 17/07/16 Вск 21:20:39 #512 №798669 
>>798663
я например, но когда EE освою пойду работать и куплю себе Идею
Аноним 17/07/16 Вск 22:44:43 #513 №798752 
>>798669
>>798663
Идея - кал.
Аноним 17/07/16 Вск 22:45:33 #514 №798754 
>>798752
Пользую кстати из-за необходимости Rubymine. Но когда на жабе надо - только эклипс.
Аноним 17/07/16 Вск 22:46:39 #515 №798756 
>>798752
Спизданул так спизданул
Идея это эклипс только быстрее сильнее выше
Аноним 17/07/16 Вск 23:41:04 #516 №798813 
>>798756
Повторяй себе это почаще. Может с переходом с экспериментального статуса этой фичи https://pavelfatin.com/typing-with-pleasure/ печать будет побыстрее. Но пока даже в этом идея сливает. И я не говорю сейчас про тормоза идеи, когда называю калом. Там плохо все - начиная с сообщениях в джавовских компонентах ui которые не скопировать в буфер, заканчивая идиотским юзабилити.
Аноним 18/07/16 Пнд 02:00:49 #517 №798927 
А это нормально, что я пишу код вообще не задумываясь о теории и даже не смогу ответить, что такое умные слова типа анонимные классы или лямбда (хотя иногда использую по подсказке иде) или диамонд или инвок динамикс?
Просто сажусь и пишу шоб работало, стаковерфлоу гуглю.
Аноним 18/07/16 Пнд 02:12:16 #518 №798932 
>>798927
говнокодишь короче
я вот тоже как ты был еще пол года назад, а сейчас смотрю на свой прошлый код и волосы дыбом.
(говнокодящие макаки не нужны, в лучшем случае за миску риса работать будешь если не поумнеешь)
Аноним 18/07/16 Пнд 03:55:00 #519 №798960 
Перекат >>798959 (OP)
Перекат >>798959 (OP)
Перекат >>798959 (OP)
Аноним 18/07/16 Пнд 08:36:44 #520 №799020 
>>796232
Зато их можно статически импортировать и не писать хуйняНейм.xor
Аноним 19/07/16 Втр 14:09:55 #521 №800110 
>>798752
Это ты кал. Пиши в нетбинсе.
comments powered by Disqus

Отзывы и предложения