М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 8 августа 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

891 Кб, 752x1063

Java. Снова. #37 06 Июл, 23:43 #790044 В конец треда | Веб

Умираем, стагнируем, хороним Java EE, беседуем.

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

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

Желающие прекратить терпеть смерть, стагнацию, похороны и пожаловать в будущее на острие прогресса, где готовые пакеты фреймворков ломаются при обновлении, просто не работают и живут полной жизнью уебывают сюда: https://2ch.hk/pr/res/789035.html (М)

Ответы>>790051>>790052>>790121>>790788>>792385>>792643>>792874>>793250>>797424

06 Июл, 23:47 #2 #790051

>>790044 (OP)
Чому джава-тян не следует конвенции, правильному форматированию, не ставит пробелы?

06 Июл, 23:48 #3 #790052

>>790044 (OP)
Джава умерла. Да здравствует Котлин!

Ответы>>790056

06 Июл, 23:49 #4 #790056

>>790052
ШОК! ЗОМБИ ВЫЕБАЛ ЕОТ И РОДИЛСЯ ЕРОХИН!

Ответы>>790058>>790181

06 Июл, 23:50 #5 #790058

>>790056
Пугачева удивила всех своей диетой: нужен лишь утюг и серпантин...

06 Июл, 23:51 #6 #790059

Джава не нужна, коко, все на жс. Оракл кидает жаву, гугл забил хуй на ведроид и берет свифт. ЭЭЭЭ тырыпрайз перепишется на СКАЛУ

Ответы>>790060>>790063>>790089

06 Июл, 23:52 #7 #790060

>>790059
> ЭЭЭЭ тырыпрайз перепишется на СКАЛУ
Ты че сука, ты че. А как же релизнутый вчера .net core?

Ответы>>790061>>790090

06 Июл, 23:52 #8 #790061

>>790060
Бля точно, шарп же

06 Июл, 23:54 #9 #790063

>>790059
> СКАЛУ
Ее кто-то использует вне тинькова?

Ответы>>790068>>790178>>796642

06 Июл, 23:58 #10 #790068

>>790063
Нихуя вроде

Ответы>>790072

07 Июл, 00:02 #11 #790071

Анончик, как в природе появляются Hadoop макаки?
Разбираюсь с этой поебенью и чет трудно заходит.

Ответы>>790075>>790077>>790092>>790180

07 Июл, 00:02 #12 #790072

>>790068
БЛЯ, АКАДЕМАНЫ, ДАВАЙТЕ ПРИДУМАЕМ ЯЗЫК НА ОСТРИЕ ООП И ФУНКЦИОНАЛЬЩИНЫ И ВСЕ ЭТО СУПЕР ОХУЕННО И ДОХУЯ ВОЗМОЖНОСТЕЙ. ДА, КОНЕЧНО ПРИДЕТСЯ ЧУТЬ ПОУЧИТЬСЯ, ЧТОБЫ ВСЕ ЭТО ИСПОЛЬЗОВАТЬ, НО ЗАТО КАКОЙ ВЫХЛОП! И ВСЕ ЭТО СОВМЕСТИМО С JAVA
@
ДАВАЙТЕ!
@
...
@
БЛЯ, И ЧО ДАЛЬШЕ?

07 Июл, 00:07 #13 #790075

>>790071
Значит, лучше иди в js тред.

Ответы>>790118

31 Кб, 512x512

07 Июл, 00:10 #14 #790077

>>790071
Берешь и Hadoop.

07 Июл, 00:39 #15 #790089

>>790059
>Джава не нужна
Уточнение - не-энтерпрайзная.

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

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

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

> тырыпрайз перепишется на СКАЛУ
Нет

07 Июл, 00:40 #16 #790090

>>790060
.NET это не энтерпрайз, а SOHO и малый-средний бизнес

Ответы>>790105

07 Июл, 00:42 #17 #790092

>>790071
Говно оверхайпнутое, без задач
https://habrahabr.ru/post/303802/

Ответы>>790123

07 Июл, 00:55 #18 #790105

>>790090
> .net core
Теперь тырпрайз. Принимай пополнение.

Ответы>>790124

07 Июл, 01:02 #19 #790118

>>790075
Зачем мне идти в js тред?

291 Кб, 1024x1448

07 Июл, 01:05 #20 #790121

>>790044 (OP)
Опасный бунтарь врывается в тред

Ответы>>790125

07 Июл, 01:05 #21 #790123

>>790092
Самому не по душе. Но прийдется с этим поработать и кластер уже собран.

Ответы>>790128

07 Июл, 01:06 #22 #790124

>>790105
В прошлом треде уже обсуждали. Энтерпрайз - это не когда ты из единственного MS SQL Server кидаешь в браузер формочки лопатой, это когда все немного сложнее.

Ответы>>790129

07 Июл, 01:06 #23 #790125

>>790121
Моча, цп!

07 Июл, 01:07 #24 #790128

>>790123
Поставь на кластер Greenplum и решай задачи.
Hadoop не нужен.

07 Июл, 01:07 #25 #790129

>>790124
> все немного сложнее
Это когда из двух?

Ответы>>790130

07 Июл, 01:08 #26 #790130

>>790129
Из двух - уже ближе к энтерпрайзу, ты верно уловил.
Для этого уже нужен менеджер распределенных транзакций, например. И управление им.

07 Июл, 01:44 #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 Июл, 02:15 #28 #790178

>>790063
В Data Mining / Machine Learning активно применяется, гугли Spark. Но на hh.ru такие вакансии не размещают и макак не берут.

07 Июл, 02:20 #29 #790180

>>790071
> Hadoop
Spark для бедных, чтобы кластеризовать данные, не помещающиеся на одном сервере силами обычных макак. Но учить нужно - это то, что выведет тебя из параши крудошлепства в светлый мир функционалобогов.

07 Июл, 02:20 #30 #790181

>>790056
ПОКА ТЫ ТУТ ЗА СВОЕЙ ДЖАВОЙ СЫЧУЕШЬ, ЕРОХИН-ТО КОТЛИН РАЗРАБАТЫВАЕТ
https://github.com/JetBrains/kotlin/commits/master?author=erokhins

Ответы>>790186

07 Июл, 02:26 #31 #790186

>>790181
ВОН ВАНЬКА-ТО ЕРОХИН В JETBRAINS УСТРОИЛСЯ

166 Кб, 421x468

07 Июл, 02:39 #32 #790193

Реальный коммент: https://javatalks.ru/posts/174196
А вот эта макака (не осилившая Java 8) объясняет, почему быдлокодер лучше "широкого специалиста":
http://www.skipy.ru/philosophy/professionalism.html
Просто эталонный жатник. Еще и с гнилым ЧСВ.

Ответы>>790248

07 Июл, 02:43 #33 #790196

Скорей бы уже весь энтерпрайз перешел на скалу и всех этих жатников с 15-летним опытом выкинули на мороз, как дельфистов-формошлепов (не из них ли ганс_спб?).

Ответы>>790203

07 Июл, 02:56 #34 #790203

>>790196
Почему не на D или Rust?
Подобные тебе старшеклассники-долбоебы обычно за них агитируют.

Ответы>>790204

07 Июл, 03:00 #35 #790204

>>790203
Еще один неосилятор лямбд подгорел?

Ответы>>790213

07 Июл, 03:18 #36 #790213

>>790204
Лямбды - это неплохо. Но обвешивать типичное ОО такими гроздьями статической типизации в изощренных формах как это сделано в Scala - явный перебор.

Ответы>>790221

07 Июл, 03:23 #37 #790216

Пытаюсь разобраться в мавене. Что-то мне непонятно, как в мавен FX добавлять элементы, прямо в XML что-ли прописывать?
И как мне хендлеры к ним добавлять? В примере они тоже прямо в XML написаны. onAction="#handleButtonAction"

Ответы>>790222>>791381

07 Июл, 03:29 #38 #790221

>>790213
Из альтернатив вроде Kotlin, Ceylon и т.д. сейчас только Scala готова к практическому использованию. На ней написаны Spark и Akka.

Ответы>>790239

07 Июл, 03:32 #39 #790222

>>790216
А тебе как надо? Прямо в коде все прописывать?

Ответы>>790231

07 Июл, 04:10 #40 #790231

>>790222
Ну без мавена все в коде прописывалось. А тут как-то нипанятна.

07 Июл, 04:11 #41 #790232

ГОЛУУУБААААЯЯЯ ЛУНАААА
https://www.youtube.com/watch?v=QPHUoX1rW7g

07 Июл, 04:31 #42 #790235

Алсо, в мавене ведь вью уже реализовано в виде xml? Т.е. надо только контроллеры и модель добавить, чтобы получилось mvc?

Ответы>>790250

07 Июл, 05:21 #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.

Ответы>>790243>>791394

07 Июл, 05:55 #44 #790243

>>790239
>Kotlin - это примерно как менять С++ на Go

Можно раскрыть аналогию поподробнее? А то все остальные языки качественно обосрал, а тут как-то жидко вышло.

Ответы>>790246

07 Июл, 06:37 #45 #790246

>>790243
Если очень коротко - то создатели обоих языков "даже не стараются".
Для 1972 года оба из них были бы уже не очень интересны, всё-таки уже был Алгол68.
Изобрести современные языки, которые уступают даже C# - это надо было постараться.
Можно только позавидовать железобетонной репутации Роба Пайка и Кена Томпсона. Если их даже после разработки Go продолжают считать неглупыми людьми, то теперь, вероятно, такое мнение о них сохранится в любом случае, чтоб они не сделали. Даже если повторят любое из достижений лауреатов премии Дарвина — останутся в нашей памяти как неглупые люди.
Если замысел Go еще можно понять - это эксперимент Гугла, который проводится чтоб ответить на вопрос о том, насколько невероятно плохой язык сможет вытянуть поддержка невероятно крупной и невероятно влиятельной корпорации, то смысл Котлина полностью ускользает. Может быть у JetBrains мания величия.

Ответы>>790331

07 Июл, 07:08 #46 #790248

>>790193
найс аватарка

07 Июл, 07:10 #47 #790250

>>790235
Причем здесь мавен, блять?

Ответы>>790251

07 Июл, 07:14 #48 #790251

>>790250
Залей свой говнокод на гитхаб, я тебе мигрирую его на мавен.

07 Июл, 07:26 #49 #790254

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

Ответы>>790267

07 Июл, 08:05 #50 #790262

Пилю интернет-магазин. Вью делать на анте или на гредле?

Ответы>>790268

55 Кб, 764x770

07 Июл, 08:20 #51 #790267

>>790254

07 Июл, 08:21 #52 #790268

>>790262
на make

Ответы>>790271

07 Июл, 08:34 #53 #790271

>>790268
И как быть тогда с автоматической генерацией необходимых библиотек в рантайме?

Ответы>>790273

07 Июл, 08:42 #54 #790273

>>790271
Попробуй рекурсивные сверточные сети. Они сейчас в моде.

Ответы>>790274

30 Кб, 455x301

07 Июл, 08:46 #55 #790274

>>790273

07 Июл, 11:01 #56 #790331

>>790246
>Может быть у JetBrains мания величия.
Так для меня это выглядело всегда первой причиной создания Kotlin'а.

Ответы>>790334

07 Июл, 11:07 #57 #790334

>>790331
Они скоре уловили что нужна New Java 2.0 совместимая в обе стороны на уровне сорцов,
но в тоже время с современными фичами.

Scala/Clojure/Groovy слишком отличаются от Java

Ответы>>790349

07 Июл, 11:41 #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 только пожали плечами.

Ответы>>790400

07 Июл, 12:39 #59 #790400

>>790349
> Dagger
По последним данным поддержку Dagger2 они добавили (так разработчики говорили, сам я не использую)

> Mockito
Там проблема что по умолчанию все класс final.
Пока я знаю два решения;
1) Юзать интерфейсы
2) Powermock
...
?) Обещали аннотацию "open all" (шоб как в джаве было), но что-то ничего про это не слышно

Ответы>>790417

07 Июл, 13:05 #60 #790417

>>790400
Про Dagger это, конечно, очень радостно (хотя я до сих пор не понимаю нахуй он вообще нужен).
Как насчет всех остальных 100500+ джава-библиотек, из которых неизвестно сколько сломаются на ровном месте?

Ответы>>790428>>790429

07 Июл, 13:17 #61 #790428

>>790417
> Dagger
> джава-библиотек
Не путай пожалуйста, Dagger 2 это не только библиотека.
Это плагин для gradle/maven, который встраивается в процесс сборки и на основе анатаций генерирует новый код.

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

Лично я по этому и не юзаю его, что не люблю кодогенерацию.

Ответы>>790595

07 Июл, 13:18 #62 #790429

>>790417
>нахуй он вообще нужен
Зря ты так, пошерсти хотя бы швабру, есть там несколько хороших примеров, как минимум дев мок и убирает отовсюду какой-нибдуь Singleton_100500.getInstance(context)

А другие либы... Ну если что-то ломается, то написать задействованный кусок на джаве. Все андроидовские части нормально работают, rx и dagger тоже. Что еще из популярного - retrofit через оболочку с rx никаких проблем.

Ответы>>790440

07 Июл, 13:31 #63 #790440

>>790429
Ну я и говорю. Для поделок на Андроиде, где библиотек хорошо если пять штук используется - и все одни и те же - нормально. Тем более что любой косяк исправляется выкладыванием в маркет новой версии и автоматическим автообновлением у всех клиентов.

Когда библиотек немного побольше, причем в разных проектах разных - выяснять что ломается что не ломается, а где вообще рыбу заворачивали (а именно высокое качество java-библиотек и есть главная её фишка) - причем, далеко не все выясняется в процессе сборки - и потом это немножко чинить, а потом с хорошей вероятностью перечинивать при обновлениях этой библиотеки - да вы смеетесь штоле. Ладно бы эти рюшечки котлиновские в 2 раза производительность повышали, так ведь хорошо если на 5% - в первую очередь потому что если сайты-визитки не штамповать тысячами (для чего Java брать в принципе не стоит), то время именно написания кода составляет процента 2-3 времени разработки проекта.

Ответы>>790482

07 Июл, 14:45 #64 #790482

>>790440
Выучи новые слова:
reflection, bytecode instrumentation, codegeneration. Пойми их значение в контексте обсуждения. Возвращайся в тред.

Ответы>>790490

07 Июл, 14:52 #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 Июл, 14:53 #66 #790490

>>790482
Нихуя, объясняй.

Ответы>>790526

07 Июл, 15:45 #67 #790526

>>790490
Страхи твои - надуманные. Большинство библиотек реализовано в виде классов у которых можно дергать методы, всё. Интероперабельность с таким кодом у Коtlin проблем не вызывает.

Ответы>>790545

07 Июл, 15:55 #68 #790545

>>790526
>Большинство библиотек реализовано в виде классов у которых можно дергать методы, всё
И на каждой библиотеке сверху написано, относится ли она к большинству? И тестировали ли ее с котлином?

Что насчет JavaEE с CDI повсюду?

Ответы>>790548

07 Июл, 15:57 #69 #790548

>>790545
> Что насчет JavaEE
Она утонула

Ответы>>790559>>791032

4 Кб, 784x42

07 Июл, 16:05 #70 #790557

Бля, давайте код обсуждать.

Ответы>>790593

07 Июл, 16:06 #71 #790559

>>790548
То есть как я и говорил - котлин годится только для андроида. Кроме как для андроида и JavaEE джаву использовать бессмысленно.

Ответы>>790597

07 Июл, 16:37 #72 #790593

>>790557
Нахуя нам твои хеллоуворлды?

Ответы>>790815

07 Июл, 16:39 #73 #790595

>>790428
Не любишь кодогенрерацию? То есть reflection лучше?

Ответы>>790601

07 Июл, 16:41 #74 #790597

>>790559
Почему только для андроида?

Ответы>>790606

07 Июл, 16:44 #75 #790601

>>790595
Нет, лучше это гибкий-расширяемый язык с хорошей поддержкой DSL

Ответы>>790604

07 Июл, 16:45 #76 #790604

>>790601
Что? Причём тут язык? Тебя про dagger спрашивали

Ответы>>790609

07 Июл, 16:47 #77 #790606

>>790597
Потому что для JavaEE он не годится.
Ни для чего кроме Андроида и энтерпрайза джаву использовать не нужно и бессмысленно.

Ответы>>790613>>790753

07 Июл, 16:47 #78 #790609

>>790604
Жилы же мы как-то во времена Dagger 1 который работал и БЕЗ кодогенерации и БЕЗ рефлекшена

Ответы>>790616>>790629

07 Июл, 16:48 #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 Июл, 16:48 #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 Июл, 16:48 #80 #790613

>>790606
Почему это не годится?

Ответы>>790614

07 Июл, 16:48 #81 #790614

>>790613
Потому что CDI.

Ответы>>790617

07 Июл, 16:49 #82 #790616

>>790609
А как по-моему dagger 1 работает? С помощью магии? Это и есть reflection

Ответы>>790623

sage 07 Июл, 16:50 #83 #790617

>>790614
Ясно.

07 Июл, 16:53 #84 #790623

>>790616
> А как по-моему dagger 1 работает?
Я то как-раз знаю как он работает, а с тобой диалог продолжать бессмысленно,
ибо ты решил повыебываться без знаний.

Ответы>>790627

sage 07 Июл, 16:55 #85 #790627

>>790623
> знаю как он работает
Оно и видно.
> диалог продолжать бессмысленно
Слив засчитан.

07 Июл, 16:57 #86 #790629

>>790609
Он, кстати, с ProGuard несовместим был. Ну то есть, его можно было заставить работать, но это был тот ещё квест.

07 Июл, 19:35 #87 #790753

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

Ответы>>790976

07 Июл, 19:56 #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

Ответы>>791207

07 Июл, 20:27 #89 #790815

>>790593
Чтобы ты дал свою оценку.

07 Июл, 22:56 #90 #790976

>>790753
Энжой йо ДжаваЭфИкс

07 Июл, 23:55 #91 #791032

>>790548
А она когда-нибудь была популярной? Весь энтерпрайз на Java SE + Spring.

Ответы>>791147

327 Кб, 962x999

164 Кб, 959x794

08 Июл, 03:19 #92 #791147

>>791032
Что ты знаешь об энтерпрайзе?

Ответы>>791151>>791245

08 Июл, 03:27 #93 #791151

>>791147
Не видел вакансий с Java EE, везде только Spring. А Кобол до сих пор используется, точнее его наследники, SAP ABAP и 1C.

08 Июл, 07:41 #94 #791189

где можно пройти сертификацию от оракла? чет нихуя у них не понятно у партнеров на сайтах - одно блядь обучение а про сертификацию молчат

08 Июл, 08:50 #95 #791207

>>790788
Ок.

08 Июл, 09:49 #96 #791245

>>791147
> энтерпрайз
> сравнивает сложение больших чисел
Магистры хеллоуворлдов подтянулись

Ответы>>791438

17 Кб, 450x450

08 Июл, 09:59 #97 #791252

08 Июл, 10:46 #98 #791291

Смотрите какой саит.
http://www.java-gaming.org/

Ответы>>791319

08 Июл, 11:33 #99 #791319

>>791291
Хватит шарить по сети - слушай что учитель информатики говорит.

Ответы>>791360

08 Июл, 12:28 #100 #791360

>>791319
И-извините.

197 Кб, 1920x900

08 Июл, 12:42 #101 #791364

Ответы>>791385

08 Июл, 13:16 #102 #791381

>>790216
При чем тут мейвн? Это всего лишь сборщик.
>В примере они тоже прямо в XML написаны.
Наверно не в XML, а в fxml, и да, всякие onAction, onKeyReleased и прочее там надо прописывать.

08 Июл, 13:22 #103 #791385

>>791364
Шакальненько.

08 Июл, 13:36 #104 #791394

>>790239
Найс инфа про Скалу, долбоеб. То что ты прочитал какую-то хуйню на реддите или news.ycombinator не даёт тебе права делать какие-либо выводы и дезинформировать людей. Особенно с твоим уровнем интеллекта.
Да, у меня до сих пор бомбит от эффекта Даннинга-Крюгера, хотя я его наблюдаю еще со времён /c.

Ответы>>791437>>796855

08 Июл, 14:52 #105 #791437

>>791394
>То что ты прочитал какую-то хуйню на реддите или news.ycombinator не даёт тебе права делать какие-либо выводы и дезинформировать людей. Особенно с твоим уровнем интеллекта
Что именно ты готов опровергнуть? Не стесняйся.

Ответы>>791439>>791605

08 Июл, 14:54 #106 #791438

>>791245
Нормальный пример для наглядной демонстрации.
А что ты хотел бы сравнить? Качество интеграции с CICS и IMS TM? Здесь тоже COBOL впереди.

08 Июл, 14:55 #107 #791439

>>791437
Мамку твою срал.

Ответы>>791457

08 Июл, 15:18 #108 #791457

>>791439
То есть ты согласен со всем про скалку, но тебе не нравится такой ход событий. И ты решил выразить своё отношение к этому доступным тебе способом.

Ответы>>791458

08 Июл, 15:19 #109 #791458

>>791457
Нет. Просто я мамку твою срал.

Ответы>>791485

08 Июл, 15:50 #110 #791485

>>791458
С чем же ты несогласен в таком случае?

08 Июл, 18:03 #111 #791605

>>791437
Ага, сейчас бы в дискуссию самодовольным дурачком вступить. Все что мне было нужно - выбросить негативные эмоции которые я случайно получил при чтении твоего поста.

Ответы>>791669

08 Июл, 19:13 #112 #791669

>>791605
Хочешь позитивных эмоций? Бери совочек, отправляйся в песочницу страны вечного джаваскрипт-детства, тред рядом.
Работает оно хуево, зато позитив у всех, велосипедов с квадратными колесами пилится 100500+ каждую секунду. Весело, задорно, девки в коротких юбках.

08 Июл, 19:57 #113 #791699

Можно ли в Мавене повесить компиляцию на плагин сборки? Суть: хочу вносить изменения в код и тут же получать джарник по одной кнопке. Отдельно вызывать compile из жизненных циклов и отдельно assembly из плагинов не хотет. Я ньюфаг и, возможно, ещё не понимаю сути Мавена и начал делать что-то не так ещё на предыдущих шагах. Если так, то объясните.

Ответы>>791702

08 Июл, 20:02 #114 #791702

>>791699
Maven - это cli приложение. Какая кнопка, наркоман?

Ответы>>791708

08 Июл, 20:10 #115 #791708

>>791702
Кнопка в эклипсе

Ответы>>791710

08 Июл, 20:13 #116 #791709

Я вот добавил columns and rows в fxml, как мне теперь взять модель этой таблицы, чтобы добавить значения? Table View - таблица.
Обычные примеры с проперти не подходят, нужно именно в коде вальюс добавлять. В таблице есть чекбоксы.

https://ideone.com/zJue4h

08 Июл, 20:16 #117 #791710

>>791708
Ну в эклипсе есть Action (и кнопка): Run External Tool, по идее можно описать запуск Maven с необходимыми аргументами, да ко-всему этому shortcut навесить.

Ответы>>791712

08 Июл, 20:17 #118 #791712

>>791710
Вот пример подобной замороченности
http://www.mkyong.com/maven/integrate-maven-with-eclipse-via-external-tool-configuration/

09 Июл, 12:03 #119 #792069

Каким образом берутся элементы из list и передаются в качестве параметров методу compare()?

http://pastebin.com/j3ESgFfQ

Ответы>>792073

09 Июл, 12:12 #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);
}
}

Ответы>>792342

09 Июл, 18:03 #121 #792342

>>792073
Пиздец какой-то.

Ответы>>792363

09 Июл, 18:47 #122 #792363

>>792342
Тебе что-то непонятно?

Ответы>>792899

857 Кб, 240x228

09 Июл, 19:22 #123 #792385

>>790044 (OP)
>пикрилейтед
>циклы с ифом
>2016
Эх, сейчас бы забыть лямбды и вернуться в 2005...

Ответы>>792462>>798192

09 Июл, 21:53 #124 #792462

>>792385
Как будто лямбды полностью заменяют ифы и циклы.

123 Кб, 337x500

09 Июл, 22:49 #125 #792508

я вам для следующего треда пик принёс

Ответы>>792510

09 Июл, 22:56 #126 #792510

>>792508
Уноси обратно, воспоминания о полутора неделях в континентальной Индии уйдут со мной в могилу.

09 Июл, 23:15 #127 #792517

Анон, мне нужно, чтобы шарящий синьор-помиодор расшифровал некоторые джава-мемы (тип официальное мнение по сабжу с аргументацией)
Spring, GWT vs Vaadin (и почему первый обосрался), Red Hat, Oracle, будущее джавы.

Ответы>>792523

09 Июл, 23:23 #128 #792523

>>792517
Что из перечисленного тебе непонятно?

Ответы>>792524

09 Июл, 23:24 #129 #792524

>>792523
> тип официальное мнение по сабжу с аргументацией
как к ним относиться, очевидно

Ответы>>792529

09 Июл, 23:28 #130 #792529

>>792524
Никак не относится, а учить javascript.

Ответы>>792533

09 Июл, 23:32 #131 #792533

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

Ответы>>792534

09 Июл, 23:34 #132 #792534

>>792533
Ты Федорова пересмотрел?

Ответы>>792535

09 Июл, 23:37 #133 #792535

>>792534
нет.

48 Кб, 499x750

09 Июл, 23:56 #134 #792545

Пацаны!
Почему спринг при попытке получить бин из фабрики бинов, таким вот образом:

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

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

В конфиге бин описан
Что за хуйня?

Ответы>>792547>>792568>>792581

10 Июл, 00:09 #135 #792547

>>792545
пересобери проект

10 Июл, 00:36 #136 #792568

>>792545
так отдебаж, мудило

10 Июл, 01:47 #137 #792581

>>792545
Пиздец - дрочат всякое говно Спринги-Хуинги, а потом ясное дело откуда в проектах всё это мракобесие.

10 Июл, 02:22 #138 #792592

Нужна помощь. Хочу вытащить случайный/следующий элемент из списка и грязно надругаться над ним.

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

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

Да, очень дебильный кейс. Благодарствую.

Ответы>>792593>>792698>>792750

10 Июл, 02:23 #139 #792593

>>792592
Может не ясно выразился. При каждом обращении к функции должен выбираться случайный\следующий объект. Если список подошел к концу, то начать сначала (я про последовательную выборку объектов). Рандом не очень нравится.

Ответы>>792601>>792642

10 Июл, 03:01 #140 #792600

Как мне в манифесте прописать, чтобы jar файл стал executable?

Ответы>>792602

10 Июл, 03:02 #141 #792601

>>792593
http://docs.oracle.com/javase/6/docs/api/java/util/Collections.html#shuffle(java.util.List) ?

10 Июл, 03:04 #142 #792602

>>792600
У вас что, блядь, чебурнет уже запустили и вырубили гугл?
https://docs.oracle.com/javase/tutorial/deployment/jar/appman.html

Ответы>>792604>>792606

10 Июл, 03:05 #143 #792604

>>792602
да нет, просто пообщаться с корешами захотелось

10 Июл, 03:17 #144 #792606

>>792602
блять, нахуй ты мне пишешь, как компилировать проект без ИДЕ, мразь тупая. Я спрашиваю, как сделать, чтобы по клику на главный jar файл приложение запускалось и не только у разработчика.

Ответы>>792625>>792723

10 Июл, 06:02 #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 Июл, 06:03 #146 #792628

Котаны, у вас веб-морда Гитхаба открывается? У меня грузится только текст, весь в кучу, без разметки, и очень долго.
Через проксю загружается моментально.
В России Гитхаб теперь блочат?
Билайн (и провод, и симка - одинаково)

Ответы>>792631>>792633

10 Июл, 06:05 #147 #792631

>>792628
Открывается без проблем на очень хуевом соединении. Ростелеком.

10 Июл, 06:09 #148 #792633

>>792628
Три дня не открывался без прокси. Сейчас на дваче написал - и всё шустро загрузилось без прокси.
Билайн, спасибо. А что за фигня-то была, зачем блочили?

10 Июл, 07:12 #149 #792642

>>792593
>должен выбираться случайный\следующий объект.
так случайный или следующий?

393 Кб, 2592x1944

10 Июл, 07:17 #150 #792643

>>790044 (OP)
Джавабоги, нужна ваша помощь.
Есть в классе метод, надо его вынести за пределы класса и вызывать из класса, откуда мы его убрали.
Как это сделать?

Ответы>>792647

10 Июл, 07:27 #151 #792647

>>792643
1. Создаешь новый класс.
2. Перемещаешь в него свой метод.

Ответы>>792651

10 Июл, 07:39 #152 #792651

>>792647
Я понимаю, что вопрос слишком детский для ынтырпрайз-гуру, но таки:
Как потом связать эти два класса? Как из первого класса обратиться к методу второго?

Ответы>>792655

10 Июл, 07:52 #153 #792655

>>792651
вынесенный метод обзываешь модификаторами public static и затем обращаешься к нему через ИмяКласса.имяМетода():
Helper.doSomething();

Ответы>>792677

10 Июл, 10:34 #154 #792677

>>792655
Ну я вызываю его Кококо кудах = new Кококо();
кудах.гетМани();

Вываливается ошибка:
>Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError

Ответы>>792701>>793021

91 Кб, 400x250

10 Июл, 11:45 #155 #792697

Ну че сидите макаки, джяваиндусы ёбаные? Я про ваш тред долбоёбов недавно узнал. И что же я тут вижу? - пидорас на пидорасе. Оправдываетесь. что за ебаны на пике? это кто-то из местных?

Ответы>>792727

10 Июл, 11:47 #156 #792698

>>792592
Цикл foreach спасет будущего студента Javascript.

10 Июл, 11:52 #157 #792701

>>792677
http://bfy.tw/6frr

Ответы>>792827

10 Июл, 12:57 #158 #792723

>>792606
Пиздуй на процедуры, болезный. Коллега выше именно про устройство манифеста спрашивал.

10 Июл, 12:59 #159 #792727

>>792697
Ты обезьяна мухосранская и индусов то не видела в живую? Пытаешься шовинизмом и айтишными стереотипами компенсировать свою уёбищность? Валяй!

10 Июл, 13:28 #160 #792750

>>792592
На джаваскрипте делается за 5 секунд.

Ответы>>792752

10 Июл, 13:31 #161 #792752

>>792750
Просто джаваскрипт лучше.

10 Июл, 14:48 #162 #792827

>>792701
Спасибо. Оказалось, я вызываю метод из класса, который наследует класс, из которого я вызываю метод.
Разве конплилятор не мог так и написать, а не строить из себя умного и писать заумный код?

Ответы>>792843

10 Июл, 15:14 #163 #792843

>>792827
Иди учить в чем разница между проверяемыми и непроверяемыми исключениями. Алсо интерпретатор тебе твердо и четко написал в чем проблема.

10 Июл, 15:29 #164 #792850

Паттерн Producer/Consumer. Надо реализовать.
Хочу реализовать такое
Producer->[Queue]->{Consumer_1, Consumer_n}
Только я что-то охуел от всевозможных реализаций этого паттерна. Мне просто надо класть объект в очередь, а потом с ним быстро работать. Какой самый безопасный и актуальный вариант?

Ответы>>792851>>792858>>793577

10 Июл, 15:31 #165 #792851

>>792850
Пока что я запилил только на BlockingQueue. Выглядит убого, жду рекомендаций.

Ответы>>792857

10 Июл, 15:35 #166 #792857

>>792851
Почему убого? Разверни мысль.

Ответы>>792901

10 Июл, 15:35 #167 #792858

>>792850
> Мне просто надо класть объект в очередь, а потом с ним быстро работать.
AMQP.

10 Июл, 16:05 #168 #792874

>>790044 (OP)
Как правильнее в Java организовывать циклы? Так:

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

или так:

IntStream.range(0, n).forEach(i -> {
// do some shit
});

Ответы>>792878>>792889>>792913

10 Июл, 16:10 #169 #792878

>>792874
Второй. Используй только их.

Ответы>>792886>>792889

10 Июл, 16:13 #170 #792882

побрызгала кота каплями от блох.
блохи отваливаются.

10 Июл, 16:22 #171 #792886

>>792878
обоснуй
помимо как троллить нубов диковинной формой записи профитов не вижу никаких

Ответы>>792890

10 Июл, 16:27 #172 #792889

>>792874
Не слушай этого >>792878 - действуй по обстоятельствам. Нужен цикл c необычным шагом или сложными условиями выхода/изменения объектов в замыкании, или скажем в теле цикла до кучи лямбд - можно и старый использовать. Или скажем тело цикла простое и есть потребность для
IntStream.range(0, n).parallel().forEach
- переключайся на новый.

Ответы>>792891

10 Июл, 16:28 #173 #792890

>>792886
ну разве что распаралелировать можно при необходимости

10 Июл, 16:29 #174 #792891

>>792889
> Или скажем тело цикла простое и есть потребность для
> IntStream.range(0, n).parallel().forEach
Тонко.

10 Июл, 16:36 #175 #792899

>>792363
Где почитать об этом поподробнее?

10 Июл, 16:40 #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, которые будут пушить при первой возможности сообщение в облако.

Ответы>>792941>>792944

Аноним 10 Июл, 16:50 #177 #792913

>>792874
только что проверил
второй метод чуть менее чем в 66 раз медленнее

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

поэтому сам решай надо ли оно тебе

Ответы>>792942

10 Июл, 17:46 #178 #792941

>>792901
Что-то я в запутался. Не знаю, как это все нормально организовать.

10 Июл, 17:48 #179 #792942

>>792913
У тебя, скорее всего, еще отмерялка не выросла делать бенчмаркинг научно достоверным. Но ты прав - оверхед есть и народ обсуждает этот момент, вот например:
http://blog.takipi.com/benchmark-how-java-8-lambdas-and-streams-can-make-your-code-5-times-slower/

Ответы>>792961

10 Июл, 17:52 #180 #792944

>>792901
На секундочку - бизнесу нужны эти оптимизации? И да, подумай насчет того чтобы довериться сетевому стеку, на твоем операционном уровне кажется нерациональным что Кб и Мб сообщения могут слаться через один и тот же канал, в действительности проблемы может не быть.

Ответы>>792946

10 Июл, 18:02 #181 #792946

>>792944
>На секундочку - бизнесу нужны эти оптимизации?
Бизнесу нужны, слишком много времени занимает.

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

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

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

Ответы>>793079>>793081>>793578

Аноним 10 Июл, 18:35 #182 #792961

>>792942
я какбэ и не претендовал на научную достоверность

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

10 Июл, 18:47 #183 #792971

8 джоинов, 3 вложенных запроса (одна таблица имеет два форен кея на другую таблицу) в одном селекте.
Ебучий репортинг в ебучей бд, спроектированной так, что на одну data column приходится по 10 id columns и общей схемой запутаннее, чем схема мирового правительства рептилоидов по мнению pol с форчана.

Ответы>>792975>>793098

10 Июл, 18:48 #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../

Ответы>>792980>>792995

10 Июл, 18:50 #185 #792975

>>792971
Не знаю на что именно ты ругаешься, но в БД-треде по соседству это и выглядело бы уместней, и конструктивно ответить можно было бы.

Ответы>>792978

10 Июл, 18:52 #186 #792978

>>792975
На описанное.
> но в БД-треде по соседству это и выглядело бы уместней, и конструктивно ответить можно было бы.
Когда я последний раз проверял, Java применялась для бэкенда и тырпрайза. Я што-то пропустил?

Ответы>>792983>>793046

488 Кб, Webm

10 Июл, 18:55 #187 #792980

>>792972
> function isUndefined(thing){
> return typeof thing === "undefined";
> }

> for(var i=0; i<100000; i++) console.log(isUndefined(null));
> 12291 false
> 87709 true

Ответы>>792982

10 Июл, 18:56 #188 #792982

>>792980
капитулировал с вебм.

10 Июл, 18:56 #189 #792983

>>792978
Ругаешься ты на джойны и вложенные запросы - это все имеет отношение к джаве весьма опосредованное.

Ответы>>792988

10 Июл, 18:58 #190 #792988

>>792983
> джойны и вложенные запросы
> все имеет отношение к джаве весьма опосредованное
К джаве да. К профессии java-разработчика ни разу.

Ответы>>793101

10 Июл, 19:00 #191 #792995

>>792972
- Эй, мужик! Правду говорят, что null это не определено?
- Ну хуй знает, тут так сразу не разберешься. Раз на раз не приходится.

57 Кб, 203x196

10 Июл, 19:24 #192 #793018

>2016
>веб на джаве

Ответы>>793039

10 Июл, 19:29 #193 #793021

>>792677
> java.lang.StackOverflowError
Хороший сайт, очень сильно помогает мне

10 Июл, 19:45 #194 #793039

>>793018
а чем плохо ?
Мимо вкатываюсь в спринг.

Ответы>>793076

10 Июл, 19:51 #195 #793046

>>792978
— Здравствуйте, это канал об аниме?
— Да.
— Как мне пропатчить KDE2 под FreeBSD?

10 Июл, 20:31 #196 #793076

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

10 Июл, 20:32 #197 #793079

>>792946
Ну что, джаваны? Нет идей, как организовать работу?

10 Июл, 20:34 #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. какое-то слово в спамлисте)

Ответы>>793084

10 Июл, 20:36 #199 #793084

>>793081
Ща за сигами сгоняю, а то уже что-то нихуя не соображаю.

Ответы>>793089

10 Июл, 20:49 #200 #793089

>>793084
Сейчас перечитал твой второй пост, вот комментарии
>В облаке есть n очередей (messages queue).
Идеально будет если у тебя количество потоков будет равно числу n, тобишь на каждую очередь один воркер
>Один поток по статистике: сколько получено сообщений, что там с очередью и так далее.
Создаешь любой класс, который реализует Runnable или Callable и отдаешь его в вышеупомянутый тредпулл.
>Один поток на получение данных и загрузки в очередь.
В этом есть смысл только если obj.get() плохо работает как Producer.
>И несколько потоков (предполагаю, что тут надо перебирать наиболее оптимальные варианты) на инстансы QueueManager, которые будут пушить при первой возможности сообщение в облако.
Эти потоки у меня реализованы в классе Worker, число их тоже вычислить легко, n = количество очередей в MessageQueue.

Ответы>>793105

10 Июл, 20:59 #201 #793098

>>792971
Ты не видел ещё, когда все это добро завернуто в курсор, а внутри курсора бродит ещё один курсор, в котором селект, в котором внутренний селект юнион олл селект, мазафака бич.
Не хватало только комментария
> //я ебался и ты теперь ебись

Ответы>>793102

10 Июл, 21:03 #202 #793101

>>792988
К профессии джава-разработчика имеет отношение многое - например, психологическая устойчивость - тем не менее, её лучше было бы обсудить на доске про психологию.
Так же как твои джойны и курсоры - в БД-треде.

Ответы>>793102

10 Июл, 21:04 #203 #793102

>>793098
> > //я ебался и ты теперь ебись
Заорал.
>>793101
Страдай или уебывай в JS-тред выяснять андефайность null. Там БД нет.

10 Июл, 21:05 #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.

Ответы>>793124

8 Кб, 228x221

10 Июл, 21:15 #205 #793118

Собираюсь зазубрить Оракл от корки до корки.
Рейт my intention.

10 Июл, 21:20 #206 #793122

Как же хорошо кодить на жаве. Хоть и сложно, зато сразу все понятно становится, как работает ООП, интерфейсы, объекты, паттерны.
Вот я на пхп когда кодил, там вообще классы чисто декоративные были, как и неймспейсы. Ни типов тебе, ни красивых паттернов с бросанием ошибок.
Удивляюсь, поему пхпшникам вообще на собеседах задают вопросы про сортировку пузырьком, интерфейсам и ООП, многопоточность - это ведь вообще в пхп не используется.

Ответы>>793129

10 Июл, 21:22 #207 #793124

>>793105
>2. Создать пулл воркеров. Да, надо запилит.
Если что спрашивай.
>3. Организовать корректную работу со всеми тредами.
Если в тредах потокобезопасные операции, то сами потоки безопасны. Тут еще нужно добавить, что при выключении приложения нужно выключать executorService вызовом метода shutdown().
>Но в итоге мой класс CloudQueue превращается в самый настоящий god-class.
Я в таком случае бы вынес все сложное в статические методы CloudQueueUtils, а в CloudQueue оставил бы только тот код, который бы легко читался - без циклов и ветвлений.

Ответы>>793144

306 Кб, 503x711

10 Июл, 21:25 #208 #793129

>>793122

10 Июл, 21:43 #209 #793144

>>793124
А что если Cloudqueue в конструкторе вызывать CloudqueueService, который будет внутренней очередью? И ещё добавить создания пула потоков?
В итоге Cloudqueue будет producer к этой очередью и будет срать в неё. Воркеры будут в отдельном классе ебаться с очередью.

Блядь, как-то убого сформулировал. Сейчас попробую написать.

Ответы>>793196

10 Июл, 22:33 #210 #793196

>>793144
Блядь, все равно какую-то хуйню написал, собирается, но походу где-то бесконечные циклы и все такое.
http://pastebin.com/wgfNFJ09
Как лучше организовать?

Ответы>>793201>>793246

10 Июл, 22:40 #211 #793201

>>793196
Да, не совсем понимаю, как сделать очередь видимую для всех воркеров.

Ответы>>793246

10 Июл, 22:40 #212 #793202

Господа, добрый вечер.
У меня к вам довольно странноватый вопрос. Насколько глубоко надо знать джаву?
Пару месяцев учу ее, не помню, например, сколько памяти занимают простые типы, до сих пор туплю иногда, что такое статик и где надо пихать this и все в таком духе.
Задачи решаю, тестовые вопросы вроде тоже отвечаю.

Ответы>>793204>>793230>>793237

10 Июл, 22:42 #213 #793204

>>793202
Сходи на собеседование с тетрадочкой и запиши вопросы, на которые ответить не смог. Спроси с интервьювера фидбэк. Чо как маленький.

Ответы>>793208

10 Июл, 22:44 #214 #793208

>>793204
Не-не, я говорю о ТРУ-ПРОГРАММИСТОВ.
Понятное дело, что гуру советуют учить с С, или вообще с асм. Я говорю про ГЛУБОКОЕ понимание

10 Июл, 23:03 #215 #793230

>>793202
Настолько, чтобы любой код на ней не вызывал у тебя вопросов.

10 Июл, 23:10 #216 #793237

>>793202
изучай кресты
жаба очень простой язык для даунов
работая с крестами ты разберешься как работает память, что такое стек, как объекты выделяются в куче, как работают мутексы и вся кое такое говно низкоуровневое

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

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

10 Июл, 23:10 #217 #793238

>>793231
Нодогосподин.

Ответы>>793249

10 Июл, 23:16 #218 #793246

>>793201
>>793196
Осознал в чем сложность. Класс Producer имеет метод run(), который заполняет очередь. Только проблема в том, что я не совсем понимаю, как научиться срать в него не снимая штанов.

Ответы>>793276

10 Июл, 23:17 #219 #793249

>>793238
он поддерживает уже ES6?

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

Ответы>>793264

70 Кб, 915x232

10 Июл, 23:20 #220 #793250

>>790044 (OP)
Есть кто перекатился с .Net? Интересует:
почему перешли,
как давно,
что ожидали,
что получили,
не жалеете?

Ответы>>793264

10 Июл, 23:30 #221 #793264

>>793249
Все что надо поддерживает.
>>793250
Поехавший, на днях зарелизился охуенный .net core для тырпрайза заменять место подле тырпрайза.

Ответы>>793268

10 Июл, 23:33 #222 #793268

>>793264
Я прям вижу, как все шлют джаву нахуй.

Ответы>>793279

10 Июл, 23:43 #223 #793276

>>793246
У тебя слишком много абстракций, в остальном норм было. Но все-же я неправильно тебе посоветовал запилить бесконечные циклы. Минус такого подхода в том, что нужно добавлять проверку что service не находится в состоянии "выключение". Это неправильно и я это переписал, код ниже. Я создал продюсер и воркер, можешь запустить и проверить как работает. Кроме shutdown у экзекутора еще есть shutdownNow, который шлет всем потокам InterruptedException, это можешь тоже потестить.

http://ideone.com/v4e7Fs

Ответы>>793306

10 Июл, 23:45 #224 #793279

>>793268
В мире есть всего три с половиной языка, которые можно слать нахуй без раздумий.

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

Ответы>>793337

11 Июл, 00:07 #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.

Ответы>>793326>>793333

11 Июл, 00:12 #226 #793306

>>793276
Бля, все конечно заебись, открыл для себя множество охуенных вещей, но я все равно все также не могу решить эту проблему.
Окей, запилил CloudQueue, которая собственно треды поднимает и контролирует все, что нужно. Но вот хоть убей, я не могу понять, как сделать пресловутый CloudQueue.send("message");

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

К слову, я не совсем понимаю. Там на каждый input создается новый Worker или как?

Ответы>>793310

11 Июл, 00:15 #227 #793310

>>793306
Передавай message в конструктор воркеру, а потом из метода run забирай. В моем примере так и сделано.
>К слову, я не совсем понимаю. Там на каждый input создается новый Worker или как?
Так и есть.

Ответы>>793314

11 Июл, 00:24 #228 #793314

>>793310
>Передавай message в конструктор воркеру, а потом из метода run забирай. В моем примере так и сделано.
Так блин, это же внутри Producer выполняется. Producer нужно все время пересоздавать или его можно каким-то образом использовать повторно?

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

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

Ответы>>793322

11 Июл, 00:33 #229 #793322

>>793314
>Так блин, это же внутри Producer выполняется. Producer нужно все время пересоздавать или его можно каким-то образом использовать повторно?
Ты говоришь, что тебе нужно выполнять CloudQueue.send("message"); Я сделал вывод, что тебе нужно отправлять какие-то данные. Для этого подходит Worker.
А забирать данные нужно с помощью Producer.
>Только один хуй, она создается внутри метода run, который принимать никакие параметры не может.
Ну да, я просто читаю с клавиатуры входные данные. Если у тебя, к примеру, есть возможность получать следующее сообщение с помощью CloudService.getNext(), то можно было бы передавать экземпляр CloudService в конструктор Producer, и потом вызывать его в методе run. Метод run выполняется в отдельном потоке, и ты никак его не изменишь чтобы он принимал параметры, ты только можешь модифицировать Producer таким образом, чтобы он их откуда-то забирал, или из своих собственных полей или из вебсервиса или по rest api. В конце концов ты можешь передавать BlockingQueue в конструктор Producer-у и добавлять новые данные уже непосредственно в BlockingQueue, но такая абстракция как по мне только усложнит твой код.

Ответы>>793327

11 Июл, 00:39 #230 #793326

>>793302
>учу
А надо понимать.

11 Июл, 00:42 #231 #793327

>>793322
Хм. Боюсь спросить, Producer тоже, как и Worker должен пересоздаваться каждый раз при новом сообщении?

Ответы>>793332>>793335

11 Июл, 00:42 #232 #793332

>>793327
Хотя нет, не должен.

11 Июл, 00:45 #233 #793333

>>793302
Можно.

11 Июл, 00:48 #234 #793334

Привет, анон. Можно ли как-то в Spring MVC обойтись только xml конфигурацией, без аннотаций?

Ответы>>793442

11 Июл, 00:48 #235 #793335

>>793327
Продюсор скорее для каждого источника данных свой. к примеру, один продюсор для сообщений, полученных из консоли, другой для полученных по jmx итд. Пройдись отладчиком по тому коду что я вбросил, попробуй что-нибудь допилить или выпилить и посмотри что получится. Я спать пошел, завтра отвечу.

Ответы>>793338

11 Июл, 01:00 #236 #793337

>>793279
Поведай же нам об этих трех языках, о Посвещенный!

11 Июл, 01:00 #237 #793338

>>793335
P.S.
>Вообще у меня идея, что воркер не должен знать, как работать с очередью в облаке.
Если до сих пор так хочешь сделать, можно просто выделить интерфейс, и сделать так чтобы воркер умел работать с интерфейсом, а реализацию ему подсовывать уже в конструктор.

Ответы>>793339>>793352

11 Июл, 01:02 #238 #793339

>>793338
Ну это уже позже. Сейчас я бы хотел понять, как передать Producer хоть какую-то информацию, первая же идея была BlocingQueue, но ты сказать, что усложнит.

Ответы>>793341

11 Июл, 01:04 #239 #793341

>>793339
У меня мысль только создать действительно класс CloudService, в нем создать очередную BlockingQueue и писать туда по возможности, но это тогда Producer поверх Producer.

11 Июл, 01:34 #240 #793352

>>793338
Не, анон, все равно не понимаю.
Кейс: отправить 10 сообщений hello world воркерам. Другими словами должен быть

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

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

Но как получить этот Producer? Не понимат.

Ответы>>793383

11 Июл, 02:53 #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 Июл, 04:26 #242 #793383

>>793352
Ну их хороших новостей, я научился писать говнокод, вернее что-то там делать с Consumer'ом, однако от этого не легче, ибо концептуально все равно проблемы.
Другими словами, у меня получился один единственный способ. Создать треды, наполнить очередь, запустить Producer; Другими словами все хуйня. http://ideone.com/E7vkrw
Вся надежда на тебя, анон.

Ответы>>793386>>793406>>793445

11 Июл, 04:50 #243 #793386

>>793383
Или я блядь опять не понимаю концепцию потоков? Прочитал в Javadocs, что треды должны после выполнения сразу же умирать. Другими словами, неужели мне нужно пересоздавать Producer'a каждый раз, когда я хочу отправить сообщение? Столько вопросов и так мало ответов. Пойду уже спать.

11 Июл, 07:32 #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:32 #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, то он его может пересоздать и вернуть в строй. Но это уже знать не нужно.

Показать весь текст
Ответы>>794823>>794848

11 Июл, 10:57 #245 #793442

>>793334
Можно.

11 Июл, 10:59 #246 #793445

>>793383
Макака, ты мне весь тред засрала.
Ты просто тупой - смирись. Вот реально, javascript - это для тебя.

11 Июл, 11:32 #247 #793456

Котаны, доставьте плиз картинку, где зек спрашивает как компилить на мобиле аплеты. плиииз

11 Июл, 12:27 #248 #793467

реально ли вкатится в ее(устроиться в неткряк ккакой нить) после пол года/год андроид разработки?

Ответы>>793469>>793470>>793475>>793489

11 Июл, 12:35 #249 #793469

>>793467
NC-довольно крутой вариант же.

11 Июл, 12:36 #250 #793470

>>793467
нет

11 Июл, 12:45 #251 #793475

>>793467
https://www.youtube.com/watch?v=ZlDjd_ySC0c&t=5

11 Июл, 13:24 #252 #793489

>>793467
Нет. Да и тебе не нужно.

Ответы>>793582

11 Июл, 14:07 #253 #793512

Каким образом буковки передаются методу compare(параметрам String a, String b)?

http://pastebin.com/KKwimnt4

Ответы>>793548>>793855

11 Июл, 14:43 #254 #793548

>>793512
первая буковка передается в первый параметр, вторая - во второй.

Ответы>>793555>>793599

11 Июл, 14:48 #255 #793555

>>793548
Я ничего не понял, можешь еще раз, но подоступнее?

Ответы>>793561

11 Июл, 14:55 #256 #793561

>>793555
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/util/TreeMap.java#547

11 Июл, 15:18 #257 #793577

>>792850
JMS или подобная технология, если нужно чтобы очередь сохранялась при наебываении приложения

11 Июл, 15:22 #258 #793578

>>792946
JMS решит проблемы.
(JMS)HornetQ или AMQP (RabbitMQ) как уже говорили

11 Июл, 15:57 #259 #793582

>>793489
Чому? ЗП выше в ее же.

Ответы>>793607

11 Июл, 16:21 #260 #793599

>>793548
А третья? Снова в первый?

Ответы>>793620

11 Июл, 16:31 #261 #793607

>>793582
какие зп в ее? только без мск/питера

Ответы>>793609

11 Июл, 16:34 #262 #793609

>>793607
Если честно, то не ебу про другие.
Если говорить про фриланс, то да.
Но вообще, я знаю пару историй, когда всякие банки из европки нанимали фрилансеры. Один анон писал давно, что получает 4к в месяц.

11 Июл, 16:45 #263 #793620

>>793599
Почитай алгоритмы сортировки, сначала bubblesort, потом treesort.

52 Кб, 765x561

11 Июл, 17:29 #264 #793642

Сравнили блядь жопу с пальцем.
AAAAAAAAAGHRRRRRRRR!!!!!!!1111

Ответы>>793780

11 Июл, 18:40 #265 #793687

Что за говно с getKeyCode у KeyEvent? Почему для "б" и "ю" он возвращает нули?
Сап.

703 Кб, 220x168

90 Кб, 280x214

11 Июл, 18:46 #266 #793689

Вам гифок принес.

Ответы>>793781

11 Июл, 21:16 #267 #793780

>>793642
Вангую, там надо jsf'ы писать. Понятия не имею, где ещё может встретиться такое сочетание.

11 Июл, 21:17 #268 #793781

>>793689
Блядь, до сих пор не понимаю, как хипсорт работает, пиздос.

Ответы>>793790

11 Июл, 21:26 #269 #793790

>>793781
А напомните, зачем знать что-то о сортировках, кроме пузырьковой (чтобы было), быстрой (факт того, что она сравнительно проста и быстра) и метода sort (и что он является сортировкой слиянием)?

Ответы>>793802>>793840>>793855

66 Кб, 400x546

11 Июл, 21:42 #270 #793802

>>793790
С прикладной точки зрения - незачем. А вообще - пикрилейтед.

11 Июл, 22:22 #271 #793840

>>793790
мы вам перезвоним

Ответы>>793849

11 Июл, 22:27 #272 #793849

>>793840
Меня устраивает текущая работа. К тому же не хочу писать на бинарном коде с таким подходом.

11 Июл, 22:36 #273 #793855

>>793790
Вот для этой хуйни блять.
>>793512

Ответы>>793866

9 Кб, 459x273

11 Июл, 22:46 #274 #793862

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

Ответы>>793867>>793890

11 Июл, 22:49 #275 #793866

>>793855
> Stream.of("afytwz").flatMap(s -> Arrays.stream(s.split(""))).collect(Collectors.toCollection(TreeSet::new)).forEach(System.out::println);
И для чего же?

11 Июл, 22:50 #276 #793867

>>793862
Они уже не берут людей. Слишком много людей для слишком стагнирующего языка. Ну в смысле что рынок насытился и больше не надо и не понадобится.

Ответы>>793883

11 Июл, 23:10 #277 #793873

Что конкретно представляют из себя фреймворки? Можно учить джаву сразу по спрингу например?

Ответы>>793874

11 Июл, 23:14 #278 #793874

>>793873
Новые языки, расширяющие и, зачастую, заменяющие оригиналы для обычных программистов. Если будешь учить Спринг, то джаву учить не надо - на чистой джаве уже никто не пишет. Сам посмотри - во всех вакансиях Spring.

Ответы>>793887

11 Июл, 23:28 #279 #793883

>>793867
Знакомя пизда там работает "кью ей", языков не знает, сидит нихуя не делает.
Говно это.

Ответы>>793886

11 Июл, 23:32 #280 #793886

>>793883
А тестеры нужны. А пизды-"айтишницы" еще больше для разбавления коллектива.

1062 Кб, 640x480

11 Июл, 23:32 #281 #793887

>>793874
>Если будешь учить Спринг, то джаву учить не надо

11 Июл, 23:36 #282 #793890

>>793862

а в чем профит работать в этой хуйне? мне раньше звонили много раз, звали на собеседования, а хуй забивал и говорил что работа не нужна

Ответы>>793907

11 Июл, 23:51 #283 #793907

>>793890
Опыт нужен.

12 Июл, 14:26 #284 #794254

Джаваны, ищу работу начинающим программистом. Почему к джуну предъявляются неджунские требования? Откуда у джуна владение JavaEE?
Уж блядь наверное если я имею опыт энтерпрайз-разработки, я не буду искать работу джуном, а минимум мидлом пойду. А если за год программирования я все еще чувствую себя джуном- то сменю профессию, ибо я хуёвый программист.
Кто идет на такие вакансии вообще? Джун на джунскую вакансию им не подходит, мидл сам не пойдет, синьор-помидор давно в Лондоне, он не поедет в Россию за 40 к работать.

Ответы>>794259>>794260>>794280

12 Июл, 14:33 #285 #794259

>>794254
Описание вакансии в 99% случаев пишут всякие уебаны.
Как правило на собеседовании сначала убеждаются что ты в принципе адекватный человек и имеешь представление о джаве. Если ты прошел эту проверку, то на знание всяких ентерпрайзов и спрингов-хуингов закроют глаза. Тем более на джуниора.

Ответы>>794266

12 Июл, 14:36 #286 #794260

>>794254
sjw в моем треде, все в машину

12 Июл, 14:47 #287 #794266

>>794259
>Здравствуйте, Бахтияр Салимджонович!

>Большое спасибо за Ваш интерес, проявленный к нашей открытой вакансии "Начинающий разработчик Java / Junior Java developer". К сожалению, в настоящий момент мы не готовы сделать Вам это предложение. Мы внимательно ознакомились с Вашим резюме, и, возможно, вернемся к Вашей кандидатуре, когда у нас возникнет такая потребность.

Ответы>>794271>>794699

12 Июл, 14:52 #288 #794271

>>794266
Я никуда резюме сам никогда не отправлял.
Сами звонят, а раз звонят значит уже решили что мое резюме им подходит.

12 Июл, 15:01 #289 #794280

>>794254
Потому что джава без ЕЕ не нужна. Хотя, на собесе из ЕЕ достаточно бегло знать jpa, сервлеты, мавен и томкек как развернуть. Не так уж и сложно.

Ответы>>794324>>794344

12 Июл, 15:46 #290 #794324

>>794280
Из перечисленного тобой какое-то отношение к ЕЕ имеет только мавен, лол.

Ответы>>794359

12 Июл, 16:08 #291 #794344

>>794280
Писали сервак на Java. SE. Зависимости никакой, брат жив.

Ответы>>794359

12 Июл, 16:24 #292 #794359

>>794324
Тык само собой, каждый дрочит, как захочет. Но это пишут во всех книгах по ее. Если человек осилил это, то он может быть даже обучаемый.
>>794344
>2к16

12 Июл, 18:05 #293 #794433

Короче, посадили на оче-проече старый проект и он ниибацца-интегрирован с эклипсом. Как в этой говнине посмотреть сырцу используемого класса? Нихуя не понятно (в идее было прост на ctrl+левый клик по названию класса)

Ответы>>794562>>794564>>794570

12 Июл, 19:51 #294 #794562

>>794433
Аналогично (или F3 при наведенном курсоре - вроде на маках такая хрень).

Идея, кстати, кал. Мало того, что тормозит (по сравнению с эклипсом) и интерфейс и возможности через жопу, так они еще и лицензируют её только на год или месяц. Заказать на 3 или 4 месяца - непосильная задача.

Ответы>>794566

12 Июл, 19:55 #295 #794564

>>794433
В Идее так и научился как в autocompletion вместе с вариантами показывать документацию, соответствующую выбору. Для этого сраного окошка потребовалось что - то редактировать в конфигурационном файле, и всё равно оно какое-то неприбитое.

Иконографику тоже им больные ui-идиотией делали - и публичные и приватные методы сопровождаются иконкой с красным кружочком - путает и бесит.

12 Июл, 19:58 #296 #794566

>>794562
А эклипс не может во _все_ (сборщики (кроме анта), vcs, автокомплит и декомпил). Просто дедектор говна.

Ответы>>794572>>794584

12 Июл, 19:59 #297 #794570

>>794433
Короче, используй ангельский и поиск по справке, если такие вопросы возникают. И изучи хотя бы введении концепцию Workspace. Надеюсь оценишь достоинства Eclipse, у них, кстати, недавно релиз был - neon.

12 Июл, 20:01 #298 #794572

>>794566
Может может (особенно в последних релизах) - главное поменьше говна наворачивать - начинать с installer, ставишь eclipse platform, потом поддержку языка в котором разработку ведешь, потом marketplace и дальше что надо - vcs, и прочие плагины.

12 Июл, 20:05 #299 #794584

>>794566
Слушай - декомпил и не нужен. В нормальной IDE к библиотекам привязываются исходники (это даже делается еще на уровне сборщиков maven/gradle/...) и дальше идет нормальная работа.

12 Июл, 20:12 #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 Июл, 21:16 #301 #794699

>>794266
Просто ты бахтияр салимжонович.

12 Июл, 21:35 #302 #794717

Кто-нибуть пишет софт для Аптек на яве скрипте?

Ответы>>794720

12 Июл, 21:38 #303 #794720

>>794717
Софт для аптек необходим высоконадежный (если перепутать и фармацевт продаст не то и клиент откинет копыта, то будет пиздец), поэтому на яве он не пишется. Пишется на JS.

Ответы>>794730

12 Июл, 21:52 #304 #794730

>>794720
На ведроиде хотели заказать переделку с фонгепа на нативный. Приложуха для заказа лекарств из аптек, но для ссаного битрикса нет нормального апи, все через плагинчики. Пусть варятся в своем говне.
Кстати:
>js
>надежность
О да динамическая дрисня такая надежная. Покормил.

12 Июл, 22:31 #305 #794755

Прочел тут в треде про команию неткрекер. Оказалось, что они блять стажировку проводят, но надо было подать заявку до 19 июня. Сука. А я только решил вкатиться.

Ответы>>794760

12 Июл, 22:37 #306 #794760

>>794755
Там стажировка только по современным языкам.

Ответы>>794765

12 Июл, 22:43 #307 #794765

>>794760
Ну я про джаву и говорю.

Ответы>>794769

12 Июл, 22:45 #308 #794769

>>794765
Оппост читай.

Ответы>>794770

12 Июл, 22:47 #309 #794770

>>794769
Блять, что за микробы ты несешь?

Ответы>>794775

12 Июл, 22:50 #310 #794775

>>794770
Сколько минут у тебя опыт коммерческой разработки?

Ответы>>794777

12 Июл, 22:50 #311 #794777

>>794775
0
Я же написал, что только вкатываюсь.

Ответы>>794782

12 Июл, 22:54 #312 #794782

>>794777
Вот и не спорь.

Ответы>>794786

12 Июл, 22:55 #313 #794786

>>794782
О чем ты вообще говоришь?
Я написал, что пропустил стажировку.
Ты мне ответил, что там только современные языки. Я так понимаю, что там нужен опыт?
СТажировка для нулевых.

12 Июл, 23:32 #314 #794807

Недавно начал использовать гредл, перейдя с мавена. Насколько годно работает инкрементальная сборка в больших проектах? Почитал красивые картиночки на сайте, полистал документацию, но это все слова. А на деле? Он нормально определяет изменения от переключения веток?
И не бывает ли на практике, что проект валится из-за того, что гредл не пересобрал хуйню, которую надо было пересобрать и из-за этого происходит нападение Степана Файлюры.

Ответы>>794830

12 Июл, 23:58 #315 #794823

>>793406
Бля, анон, ты охуенен. Сделал за сегодня все, что хотел. Вообще шикарно всё.

---
Аноны, как в java строить запросы? Есть что-нибудь для SQL, чтобы без напрягов это сделать, а то просто строчку сделать пиздец напряжно.
Надо запрос типа
INSERT INTO test ("item", "item2", "item3") VALUES("v1", "v2", "v3");

Ответы>>794826

31 Кб, 512x512

13 Июл, 00:07 #316 #794826

>>794823
Попробуй жука, еще захочешь.

Ответы>>794827

13 Июл, 00:09 #317 #794827

>>794826
>жука
Что, прости?

Ответы>>794828

13 Июл, 00:11 #318 #794828

>>794827
Жука.
http://www.jooq.org/
http://www.jooq.org/doc/3.8/manual/sql-building/sql-statements/insert-statement/insert-values/

Ответы>>794840

41 Кб, 512x385

13 Июл, 00:14 #319 #794830

>>794807
Ну что же вы, девы-псы девопсы.

13 Июл, 00:39 #320 #794840

>>794828
бля пиздос там эти xml конфигурации. Копирую пример, у меня билд maven падает. Охуенно.

Ответы>>794850

13 Июл, 00:47 #321 #794848

>>793406
Синглтон, ой фу. Бля, меня чуть не стошнило.

Ответы>>794849>>794851

13 Июл, 00:48 #322 #794849

>>794848
А что не так?

Ответы>>794853

13 Июл, 00:51 #323 #794850

>>794840
> бля пиздос там эти xml конфигурации
Где ты там xml нашел? Там xml сам по себе нужен только для кодогенерации (которую, кстати, можно не использовать). Захуячь в гредл таску по генерации классов и не парься.
> Копирую пример, у меня билд maven падает
Ну охуеть просто. Ты ведь слышал, что в Java есть исключения, которые описывают проблему? :3
> Охуенно.
Охуенность на вашей стороне.

Ответы>>794854

13 Июл, 00:51 #324 #794851

>>794848
Одиночка по жизни, плз.

13 Июл, 00:55 #325 #794853

>>794849
А то что синглтон - полнейшее говно. Это почти глобальная переменная.

Ответы>>794855

13 Июл, 00:58 #326 #794854

>>794850
>гредл
Бля, я пока хочу maven'ом сгенерировать.

Ответы>>794855>>794858

13 Июл, 01:01 #327 #794855

>>794854
Ну "руками" сгенерируй классы. Создаешь хмл, указывай откуда брать и куда ложить, выполняешь команду по генерации. Все написано же в геттин стартед гайде.
>>794853
> я больше нипишу синглтоны, я пью singleton whiskey, но когда никто не видит использую их вовсю, но тссс

13 Июл, 01:09 #328 #794858

>>794854
Ну генерируй - кто тебе мешает? Проследи где _ты_ налажал и исправь ошибку.

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

Ответы>>794860>>794861>>794940

13 Июл, 01:10 #329 #794860

>>794858
Бля, у меня нет денег на лицензию, чтобы постгресс ебать. Чо так сложно тут с запросами.
Мне вообще только SQL строчку сгенерировать и всё.

Ответы>>794862>>794940

13 Июл, 01:10 #330 #794861

>>794858
Но это не проблема для тех кто готов отстегивать ораклу, надо думать.

13 Июл, 01:12 #331 #794862

>>794860
Для постгри лицензия не нужна.

В эксплуатации и при рефакторинге оценишь сполна этот "медленный" старт.

13 Июл, 01:30 #332 #794870

Бля, он мне каким-то пиздец странными ошибками срет. Что не так?
http://pastebin.com/2FVptxkD -- log
http://pastebin.com/9wqZGaEV -- pom.xml

Ответы>>794881>>794940

13 Июл, 01:58 #333 #794881

>>794870
Бля, чото в зависимостях потыкал и заработало.

Ответы>>794940

13 Июл, 08:36 #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
Ебать ты тупой.

10 Кб, 677x341

0 Кб, 20x20

13 Июл, 10:14 #335 #794975

Вам консольки принес.

23 Кб, 901x533

13 Июл, 12:08 #336 #795022

рейт формочку

Ответы>>795229

13 Июл, 12:10 #337 #795024

Тут че все работают, один я чисто в рамках хобби делаю что-то?

Ответы>>795036

13 Июл, 12:36 #338 #795036

>>795024
Хобби - удел быдла.

Ответы>>795078

13 Июл, 13:30 #339 #795078

>>795036
Молчи там работобыдло.

Ответы>>795096>>795115

13 Июл, 14:01 #340 #795096

>>795078
Кыш оба два!

13 Июл, 14:49 #341 #795115

>>795078
Работа - это тоже удел быдла.

Ответы>>795554

13 Июл, 14:58 #342 #795117

Быдло удел быдла для быдла.

13 Июл, 16:50 #343 #795229

>>795022
Никогда кстати не понимал, зачем на Java писать формочки. Для винды есть удобный C# c фреймворками, где формочки мышкой клепаются, знай только обработчиков вешай. Для Linux и консолеблядство подойдет.

Ответы>>795250>>795269>>795273>>795279>>795428

13 Июл, 17:12 #344 #795250

>>795229
> C# формочки (без Gtk костылей) нигде не работают кроме Windows
> НЕ НАДО
А как же мы, элитные пользователи макбуков/iмаков и тд?

Ответы>>795279

13 Июл, 17:35 #345 #795269

>>795229
На винду есть Дельфя же.

Ответы>>796033

13 Июл, 17:40 #346 #795273

>>795229
>Для Linux и консолеблядство подойдет
Ты один из тех, кто думает, что на линуксе обязательно все через консоль делается и интерфейсов вообще нет?

Ответы>>795333>>796446

13 Июл, 17:47 #347 #795279

>>795250
>>795229
Более богомерзского языка придумать невозможно.

Ответы>>795283

13 Июл, 17:54 #348 #795283

>>795279
JS.

Ответы>>795318

13 Июл, 18:33 #349 #795318

>>795283
Спорно. Всё-таки от шарпа у меня гораздо хуже ощущения.
Плюс, TypeScript превращает js в более менее нормальный язык.

Ответы>>795333

13 Июл, 18:56 #350 #795333

>>795318
Не. Вот Dart - что-то похожее на язык. А TypeScript все равно гейством отдает.

>>795273
Я один из тех. Приложения без консольного интерфейса под линукс - дерьмо.

Ответы>>795854

98 Кб, 600x600

13 Июл, 19:36 #351 #795353

Здравствуйте, anon_name
Вы ищете работу на полный рабочий день?
Что больше всего интересует back-end или web?

Че мне отвечать?

Ответы>>795354>>795362>>795404

13 Июл, 19:38 #352 #795354

>>795353
пиши что готов работать забесплатно хоть в чем

13 Июл, 19:50 #353 #795362

>>795353
Че за тупои вопрос?

Ответы>>795365

13 Июл, 19:52 #354 #795365

>>795362
Мой?

13 Июл, 20:46 #355 #795404

>>795353
Сам на легаси сяду, кота на колени посажу.

13 Июл, 21:29 #356 #795428

>>795229
но моя формочка откроется и для винды и для мака и любой друго ос.

20 Кб, 500x236

13 Июл, 22:30 #357 #795476

13 Июл, 22:40 #358 #795485

Анон, изучил core джаву, посоветуйте книги для изучения hibernate и spring

Ответы>>795492>>795502>>795694

13 Июл, 22:46 #359 #795492

>>795485
Нахуй нужны хешы?

Ответы>>795496

13 Июл, 22:49 #360 #795496

>>795492
По фану прост

Ответы>>795500

13 Июл, 22:50 #361 #795500

>>795496
Иди учить JS.

Ответы>>795624

13 Июл, 22:51 #362 #795502

>>795485
Как ты вообще что-то выучил, а гуглом так и не научился пользоваться?

У хайбернейта годный референс, читай его. По Спрингу книжек не много, никакой годноты анон тебе не спалит - её попросту нет. Выбери что нравится

14 Июл, 01:27 #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"

Даже том же пакете файл не находит.

Ответы>>795785

14 Июл, 01:28 #364 #795554

>>795115
Хобби - это хобби, а работа программистишкой - это удел школьников и быдла, да.

Ответы>>795695

14 Июл, 07:38 #365 #795624

>>795500
Нахуй мне твоя параша?

Ответы>>795635

14 Июл, 07:49 #366 #795627

Что за сын хуйни и дикого пса форсит жава скрипт итт?

Ответы>>795635

14 Июл, 08:27 #367 #795635

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

Ответы>>795656

14 Июл, 09:33 #368 #795647

> Желающие прекратить терпеть смерть, стагнацию, похороны и пожаловать в будущее на острие прогресса
Пососали у крестов и теперь отрываетесь на миленьких языках. Ясно все с вами.

14 Июл, 09:52 #369 #795656

>>795635
Двачую джава умирает, вчера скоротили.

Ответы>>795657

14 Июл, 09:55 #370 #795657

>>795656
Просто хуёво работал.

14 Июл, 11:22 #371 #795694

>>795485
Spring in action, выкладываю русский перевод: http://rgho.st/86NGlp4Bn
По Hibernate стандарт JPA описан на сайте Оракла, доп. расширения хибернейта не нужны.

14 Июл, 11:24 #372 #795695

>>795554
А кем нужно работать небыдло-интроверту? Серьезно, не раз задумывался и приходил к выводу, что из программирования перекатиться некуда. Разве что совсем в днище вроде сторожа или охранника.

Ответы>>795766>>796221

14 Июл, 12:29 #373 #795766

>>795695
Хз бро, художник\музыкант наверн.

Ответы>>795793

14 Июл, 12:52 #374 #795785

>>795553
он у тебя в jar или в war-файл попадает?

Ответы>>796205

14 Июл, 12:57 #375 #795793

>>795766
Ясно, разговор ведется с долбоебом у мамки на шее.

Ответы>>795845

14 Июл, 13:45 #376 #795845

>>795793
Думаешь йоба художник не заработает?

Ответы>>796017

14 Июл, 13:53 #377 #795854

>>795333
>Приложения без консольного интерфейса под линукс - дерьмо
ебать клоун

14 Июл, 14:05 #378 #795870

Объясните, как эту джаву компиляют в нативный код, работающий без JVM? Тот же OpenOffice/LibreOffice, не требует JVM для работы и не содержит ни единого class или jar файла. Но вроде пишут его на джаве.

Ответы>>795873>>795989>>796783

14 Июл, 14:07 #379 #795873

>>795870
Разные есть. Гугли AOT.

Ответы>>795881

240 Кб, 600x400

88 Кб, 750x400

14 Июл, 14:13 #380 #795881

>>795873
Гугл говорит, что это аниме.

Ответы>>795890

14 Июл, 14:16 #381 #795884

Или Автоматическая Обработка Текстов?
http://aot.ru/

> 23 марта 2016 года Во вьюверах перешли от java, которая работала только под Firefox, на javascript, который работает почти везде.

Ответы>>795890

14 Июл, 14:19 #382 #795890

>>795881
>>795884
Ты к поиску слово java не можешь добавить?

14 Июл, 16:09 #383 #795989

>>795870
Ну вообще наверно прикрепляют ДжВМ к проекту и все "публикуют". мимонуб

14 Июл, 16:47 #384 #796017

>>795845
Думаю хватит мамкину сиську сосать, прекращай, взрослый уже.

Ответы>>796019

14 Июл, 16:49 #385 #796019

>>796017
Бля.

14 Июл, 17:13 #386 #796033

>>795269
> 2016
> вручную управлять памятью

Ответы>>796038

14 Июл, 17:17 #387 #796038

>>796033
> вручную управлять памятью

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

Ответы>>796054>>796078

14 Июл, 17:38 #388 #796054

>>796038
>не хватает ручного аллока/деаллока и размещения объектов на стеке
Для таких хитровыебанных есть Unsafe и DirectByteBuffer. Толкьо нужно сделать сериаллизацию/десиреализацию структурок в байты и свой аллокатор/деалокатор с этого буфера.

Ответы>>796088>>796199

14 Июл, 17:48 #389 #796078

>>796038
Не очень понимаю, как этого может не хватать. Одно дело ты не привык может, но не хватать? Серьезно?

Ответы>>796091

14 Июл, 17:53 #390 #796088

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

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

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

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

Ответы>>796119>>796159

14 Июл, 17:54 #391 #796091

>>796078
Не каждый день понятно же. Но иногда надо.

14 Июл, 18:14 #392 #796119

>>796088
Ну и норм же, зачем самому париться? Удалит когда надо.

Ответы>>796134

14 Июл, 18:37 #393 #796130

Буду вкатываться в жаву.
пожелайте мне удачи. Спасибо.

14 Июл, 18:40 #394 #796134

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

Ответы>>796138>>796140>>796144

14 Июл, 18:43 #395 #796138

>>796134
потому что достаточно сделать так
Huita kek = null;
for(int i = 0; i < 100_000_000; i++){
kek = new Huita(getRandomData());
kek.someShit();
};

Ответы>>796152>>796159>>796167

14 Июл, 18:48 #396 #796140

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

Че блять? Иди учи как gc работает. Поссал на долбоеба.

Ответы>>796154

14 Июл, 18:55 #397 #796144

>>796134
Хуйню какую-то написал. Коллектор за все это время очень хорошо уже оптимизирован, и он лучше любого программиста знает, когда и что нужно удалять.

Ответы>>796152

14 Июл, 18:57 #398 #796146

В какие сроки обычно ожидают выполнение тестового задания - небольшого веб-приложения для джуниора? Написали, что срок неограничен, но... Я чую, что не меньше 2-3 недель потрачу, я же дурачок.

14 Июл, 19:05 #399 #796152

>>796144
ага блять, и поэтому когда я на днях по невнимательности написал такую хуйню (создавал в бесконечной петле рендера временный фреймбуфер для постпроцессинга картинки), то у меня буквально за пару секунд весь RAM (а это ~4гб) улетал в пизду, что приходилось перезапускать все нахуй.
Так что не так уж он и хорош этот мусорщик.

>>796138
все решение проблемы

Ответы>>796161

14 Июл, 19:09 #400 #796154

>>796140
>если цикл бесконечный == бесконечно дохуя
> i < 100_000_000
> 100_000_000 == дохуя
>Иди учи как gc работает
сам иди уеба, в данном случае gc будет чистить после выхода из петли, тоесть никогда

14 Июл, 19:17 #401 #796159

>>796138
Нет. Это ничем по сути не отличается от >>796088
И там и там в хипе будет стопицот объектов на которых нет живых ссылок. И они будут лежать там до тех пор пока жвм не решит что пора запустить гц или память не кончится. И тогда жвм опять таки запустит гц, а если это не поможет - кинет оут оф мемори.

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

Единственный вариант тут - глубокий рефакторинг хуиты. Чтобы создать ее один раз до цикла, а в цикле только обновлять там данные (и свести их к примитивным типам или байт буфферам, само собой) и вызывать соме щит.

Ответы>>796167>>796174

14 Июл, 19:19 #402 #796161

>>796152
>создавал в бесконечной петле
Сборщик удаляет тогда, когда что-то не нужно, если у тебя в бесконечной петле что-то нужное, ясное дело он это удалять не будет и ты получишь OutOfMemoryError, gc тут никак не виноват.

Ответы>>796167

14 Июл, 19:23 #403 #796167

>>796159
хуйню сказал, в первом случае время жизни ссылки == времени жизни всего цикла, во втором == времени потребности в самой ссылке
>>796161
откуда вы беретесь, с хуяли тогда >>796138 этот вариант сработал?
В гугле блять полно ссылок по времени жизни объектов создаваемых в цикле

Ответы>>796199

14 Июл, 19:28 #404 #796174

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

>и свести их к примитивным типам или байт буфферам, само собой
пердолинг уровня сипетушни, в пизду gc мы же лучше знаем как память оптимизировать

Ответы>>796199

14 Июл, 19:49 #405 #796199

>>796174
>пральна, в пизду ее ленивую инициализацию

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

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

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

>>796167

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

Грубо говоря ссылка это просто переменная с адресом объекта. Сам объект лежит в хипе и может вообще не иметь ссылок и лежать себе, ждать удаления. Ссылки передаются по стеку. Во время итерации цикла ссылки создаются в стеке и удаляются 100_000_000 раз. Объекты никуда не деваются, а ждут своего удаления гарбаг коллектором.

Ответы>>796210

14 Июл, 19:56 #406 #796205

>>795785
не знаю. как проверить, попадает ли?

41 Кб, 843x683

14 Кб, 598x318

32 Кб, 586x449

49 Кб, 600x449

14 Июл, 19:58 #407 #796207

Подскажите нафане, в чем дело? Я уже даже toString ему прикрутил в return, а он не хочет нихуя возвращать.

Ответы>>796213>>796215

14 Июл, 20:03 #408 #796210

>>796199
Должен вмешаться.
Gc как правило оперативно запускается при неактивности ссылки и лежать и ждать объекту долго не придется, а вот если ссылка на объект жива то и gc этот объект пропустит (что мы и получим в итоге)

36 Кб, 843x683

14 Июл, 20:05 #409 #796213

>>796207
ньюфаня

Ответы>>796216

14 Июл, 20:08 #410 #796215

>>796207
Это откуда?

41 Кб, 846x689

43 Кб, 513x387

14 Июл, 20:09 #411 #796216

>>796213
Согласен, но все равно не работает.

Ответы>>796222>>796229

14 Июл, 20:12 #412 #796221

>>795695
Свой бизнес, например. Причем тут "интроверсия"? Программистишке надо гораздо в большей степени общаться с людьми и лизать всем зады, начиная с босса и заканчивая клиентами, эйчаром, секретуткой, манагерами и даже Аллахом, в отличие от бизнесмена.

48 Кб, 846x689

14 Июл, 20:12 #413 #796222

>>796216
ньюфаньюшка
функция которая декларирует что будет что то возвращать, должна всегда это что то возвращать

Ответы>>796226>>796227>>796230>>796257

14 Июл, 20:14 #414 #796226

>>796222
нахуй ты вообще битоебствуешь, если ты основ самого (языка)программирования не понимаешь?

Ответы>>796231>>796232

319 Кб, 314x314

1435 Кб, 193x135

2006 Кб, 400x225

524 Кб, 150x150

14 Июл, 20:16 #415 #796227

>>796222
Благодарю вас, уважаемый.

14 Июл, 20:16 #416 #796229

>>796216
ну так возвращай стринг билдер.

14 Июл, 20:17 #417 #796230

>>796222
пиздец, этот осел даже кавычки нормально проставить не может.

Ответы>>796233

14 Июл, 20:17 #418 #796231

>>796226
Потому что могу вообще-то, как видишь, не могу, но похуй.

14 Июл, 20:18 #419 #796232

>>796226
И да, статические методы и поля в 95% случаев это рак
не делай так.
Сначала создай инстанцию объекта содержащего метод, а уже потом используй этот метод

Ответы>>799020

736 Кб, 300x300

14 Июл, 20:18 #420 #796233

>>796230
Как помочь, так нет, а выебываться - так прибежал.

Ответы>>796254>>796259

14 Июл, 20:52 #421 #796254

>>796233
Запомни комбинацию и жми её после написания каждого метода и будет тебе счастье:
ctrl + a -> ctrl + shift + f.

Ответы>>798663

14 Июл, 20:58 #422 #796257

>>796222
Двачая, 2х ретанра.

14 Июл, 21:03 #423 #796259

>>796233
ну если ты даун, не могущий в подсказки ИДЕ, то тут уже помочь нечем.

14 Июл, 22:55 #424 #796322

За вечер набежало аж три будущих вкатывателя в джаваскрипт. Один мвц пару недель делает, второй просто даун, а третий вообще в логику не может.

Ребятки, бросайте наш мертвый язык и пиздуйте зарабатывать деньги в JS.

Ответы>>796343

169 Кб, 421x468

14 Июл, 23:18 #425 #796343

>>796322
COBOL Delphi Java не умрет никогда, ибо это серьезный бизнес. Что бы эти хипстеры себе там не выдумывали.

Ответы>>796362

14 Июл, 23:32 #426 #796362

>>796343
Будущее за питоном. Уже в следующем году войдёт в тройку лидеров и постепенно заменит жабу. JS как полноценная замена не подходит, так как узкоспециализирован, а на питоне много чего можно делать. Больше возможностей.

Ответы>>796365>>796367>>796430

14 Июл, 23:34 #427 #796365

>>796362
Вопрос библиотек, ну и нормальной типизации.

Ответы>>796386

14 Июл, 23:36 #428 #796367

>>796362
Скриптокал ничего заменить не сможет.

15 Июл, 00:05 #429 #796386

>>796365
>типизации
оверрейтед говно без задач

Ответы>>796428

40 Кб, 579x462

15 Июл, 00:54 #430 #796428

>>796386

15 Июл, 00:56 #431 #796430

>>796362
Это тот язык, где вместо двух операторных скобок нужно ставить в каждой строчке тела про пробелу? Ну ну

15 Июл, 01:54 #432 #796446

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

Ответы>>796461

15 Июл, 02:49 #433 #796461

>>796446
эй эта хуйня сработает так как надо?

float[] dta = new float[...
for (float dda : dta) {
dda = makeHuita(dda);
}

Ответы>>796466>>796498>>796503

15 Июл, 03:04 #434 #796466

>>796461
Хуй тебе, у массивов нет итератора. Нужно ArrayList делать.

Ответы>>796496>>796499

21 Кб, 489x326

15 Июл, 06:57 #435 #796496

>>796466

Ответы>>796498

173 Кб, 421x468

15 Июл, 07:01 #436 #796498

>>796496
1. В этом коде нет итераторов, а в for ( : ) есть.
2. Даже с итераторами код >>796461 был бы неправильный, ибо итератором элементы можно только читать и удалять, но не изменять.

Ответы>>796499>>796503>>796543

15 Июл, 07:05 #437 #796499

>>796466
Ох уж этот двач, совсем йобу дал уже?
итераторы уже с 1.5 как давно используются

>>796498
а вот тут спасибо за ответ, как раз то что я хотел (услышать) знать.

Ответы>>796502>>796510>>796538

15 Июл, 07:07 #438 #796502

>>796499
эх надо уже собраться да, освоить ебаный JUnit

15 Июл, 07:07 #439 #796503

>>796498
>1. В этом коде нет итераторов, а в for ( : ) есть.
Это сдекомпиленный foreach на массиве, не веришь - сам проверь, кукаретик.
>2. Даже с итераторами код >>796461 был бы неправильный, ибо итератором элементы можно только читать и удалять, но не изменять.
Итераторы там нахуй не нужны, нжно вручную перебирать массив но не замети что НЕТ КОКОРАТОРОВ, а затем что запись dda = makeHuita(dda); не добавит новых значений в массив.

Ответы>>796510

sage 15 Июл, 07:23 #440 #796510

>>796503
> Это сдекомпиленный foreach на массиве, не веришь - сам проверь, кукаретик.
Проверил тебе за щеку: http://ideone.com/PTrk0O

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

> Итераторы там нахуй не нужны
Я не знаю, нахуя ты там используешь foreach, когда он не нужен.

Ответы>>796573

15 Июл, 08:57 #441 #796538

>>796499
Это сахарок.

15 Июл, 09:14 #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 Июл, 10:46 #443 #796573

>>796510
какой же ты долбаеб, твоя аватарка тебе идет

15 Июл, 12:41 #444 #796641

>Как стало известно, сейчас разработка Java EE в компании Oracle полностью остановлена. Программисты, которые занимались Java EE в штате Oracle, говорят, что их переводят на другие проекты. В сообществе усиливаются дискуссии о том, что необходимо сделать форк. Сама же компания Oracle отказывается чётко прояснить свою позицию и сделать хоть какое-нибудь официальное заявление, несмотря на требования сообщества.

15 Июл, 12:43 #445 #796642

>>790063
Твиттер, например.

15 Июл, 16:48 #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 Июл, 18:03 #447 #796855

>>791394
нахуя ты такой умный заходишь в Java-тред?

15 Июл, 19:00 #448 #796905

Посоны, как сбросить триал Idea UE 15 в винде? Я что-то наворотил, теперь она у меня вырубается через минуту. Даже после полной переустановки.

Ответы>>796989>>797038

38 Кб, 480x522

15 Июл, 19:45 #449 #796939

сап посоны. интересуют способы хранения фотографий и доступа к ним во всяких соцсетях. нагуглилось, что можно взять например id изображения из бд, приписать к нему слева нули до десяти цифр (например 0000000001) и это говно разбить по две цифры на папку, соответственно файл 00/00/00/00/01.jpeg нахуй. но что-то подсказывает мне о говености метода (подумой о масштабируемости). еще хотелось бы узнать каким хуем строятся квадратные миниатюры(например 100х100) фотографий. очевидный вариант - вырезать квадрат из центра, но вдруг там не будет видно ебальника? буду рад, анончик, если ты мне пояснишь за современные технологии, используемые для этих целей. вообще очень интересно узнавать как работают соцсети с такими объемами данных, с таким количеством одновременных запросов, да еще и с такой скоростью ответа. буду признателен за инфу. мимоджаваджун стаж 2 мес

Ответы>>796945>>796959>>797116

15 Июл, 19:53 #450 #796945

>>796939
>способы хранения фотографий и доступа к ним во всяких соцсетях
вангую что релятивные базы данных

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

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

>да еще и с такой скоростью ответа
прокси и отложенная инициализация

Ответы>>796950

15 Июл, 19:57 #451 #796950

>>796945
читал, что хранить пикчи в бд не православно, ибо сильно нагружает и увеличивает размер

Ответы>>796959>>797005

15 Июл, 20:07 #452 #796959

>>796950
>>796939
У меня на работке в одном проекте в базе хранились ссылки на файл на файловом хранилище.
мимо ньюфаг

Ответы>>797005

15 Июл, 20:49 #453 #796989

>>796905
Низнаю, иногда ваще софт знает што он пиратский даже после форматирования с:

15 Июл, 21:04 #454 #797005

>>796959
>>796950
THIS

15 Июл, 21:36 #455 #797038

>>796905
в докуменстЭндСэттингс удали директорию с настройками Идеи.

Ответы>>797050

15 Июл, 21:48 #456 #797050

>>797038
У меня виндус 7.
Удалял всё из папки c:\users\user\.idea, c:\users\user\appdata\\jetrains
Один хуй он както узнает, что я жулик

15 Июл, 22:49 #457 #797102

Анон, который мне жука рекомендовал, да и вообще все сочувствующие.
Я вот столкнулся с тем, что не совсем понимаю, как организовать работу приложения.
Мой говнокод многопоточный, да. И в этих потоках он подключается к базе данных и систематически вытаскивает\добавляет данные.
Как организовать работу потоков, у меня база данных немного охуела от количества подключений.

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

Ответы>>797107

15 Июл, 22:55 #458 #797107

>>797102
По поводу количества подключений - используй connection pool-ы. В веб-контейнерах как правило они уже встроенные. В стандэлоун приложениях есть реализации, самая известная, на мой взгляд, c3p0. По поводу жука сказать ничего не могу, может кто другой посоветует.

Ответы>>797108

15 Июл, 22:56 #459 #797108

>>797107
>connection pool-ы
Собственно - это первое, что я загуглил, но толком ничего не нашел, к сожалению.

Ответы>>797112

15 Июл, 22:57 #460 #797112

>>797108
Как ты получаешь экземпляры Connection в своем приложении?

15 Июл, 23:01 #461 #797116

>>796939
Есть большой файл, новые данные дозаписываются в конец.
В бд хранится ссылка на большой файл, offset и длина отдаваемого файла.
Больших файлов может быть несколько.

15 Июл, 23:02 #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);

}
}
Что-то типа такого.

Ответы>>797157>>797379

15 Июл, 23:31 #463 #797157

>>797119
Олсо, вот хуй знает, как организовать архитектуру приложения. Вернее двух штук.
Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.

Только у меня уже ебучая лапша в коде выходит. Ответ от сервера JSON формат - два типа данных. В итоге if
get(0).getAsJsonObject().get("shit").getAsString. Говно не читаемое получается. Не знаю, как все это организовать бля.

Ответы>>797390>>797392>>797436

16 Июл, 04:01 #464 #797319

Хочу вкатиться в жаву, какие подводные камни?

Ответы>>797349>>797436

16 Июл, 08:24 #465 #797349

>>797319
Хуй в жопе, а так жаба умирает. Иди JS учи.

Ответы>>797367

16 Июл, 09:35 #466 #797367

>>797349
>Хуй в жопе
Это не правда.
>жаба умирает
Эни пруфс?
>JS учи
Не хочу.

ты хуесос. Почему-то захотел тебя оскорбить, не обижайся

Ответы>>797375>>797436

16 Июл, 10:11 #467 #797375

>>797367
>Эни пруфс?
Иди треды читай.

Ответы>>797380

16 Июл, 10:18 #468 #797379

>>797119
Тебе нужен конекшон пул, сейчас у тебя оверхед от того, что каждый раз создается новое соединение. По архитектуре нехуй учить чему-то, с опытом понимание придет само.
Олсо, соединения нужно закрывать, а у тебя в коде чет не вижу такого. (спойлер: когда ты закрываешь соединение из конекшон пула, оно возвращается в пул, а когда ты закрываешь обычное соединение то оно уничтожается, так что закрывать надо в люмом случае, см. try with resources)

16 Июл, 10:18 #469 #797380

>>797375
Щас бы брать во внимание мнение чуханов с двача.

16 Июл, 10:59 #470 #797390

>>797157
>Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.
MQ, например AMQ.

16 Июл, 11:01 #471 #797392

>>797157
Хотя, в твоем случае зачем тебе 2 приложения? В одном в чем проблема сделать?

sage 16 Июл, 12:02 #472 #797424

>>790044 (OP)
Ёбаным жабоиндусам, напоминаю разницу. Зоопарк вопросов:
- где замыкания?
- где свойства?
- где шаблоны? Разработчики Sun вынуждены только облизываться. Даже генерики, введённые в 5-й версии Java — не более, чем syntactic sugar. Дотнетовские генерики это реально поддерживаемые платформой типы, которые расширяются на лету при загрузке, котрые оптимизируются JIT-компилятором. Для Java генерики существуют только в коде и ни JIT, ни загрузчик классов их никогда не видит. Поэтому проблемы боксинга, преобразования типов в runtime просто скрыты от программиста.
- где делегаты/евенты?
- где partial-классы?
- где детерминированное освобождение ресурсов (ключевое слово using + интерфейс IDisposable)?
- где оптимизация JVM для расширений процессоров?
- где аналог linq и в частности удобные мапперы?
- где расширения методов класса?
- где скрытая имплементация интерфейсов?
- где перегрузка параметров функций?
- где нормальное потребление памяти приложением?
- где быстрая работа приложения?
- где нормальные иде, с полноценными дизайнерами?
- где пользовательские value types?
- где методы у инстансов value types?
- где var и анонимные типы
- где перегрузка операторов?
- где оптимизиции хвостовых вызовов? (в свете фунционального хайпа это должно вызывать некоторый батхёрт)
- Где чёткое разделение домены и сборки? Это не учитывая, целый ворох технологий недоступный понимаю жабоиндусов, такие всякие сильверлайты/вин-веб/формочки, впф, XNA, список можно продолжать бесконечно, как впрочем и список ущербности жабы...

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

Ответы>>797449>>797557

16 Июл, 12:29 #473 #797436

>>797157
AMQP
> Одно вытягивает данные и отправляет их в очередь, а другая берет их из очереди и пишет в базу.
>
> Только у меня уже ебучая лапша в коде выходит. Ответ от сервера JSON формат - два типа данных. В итоге if
> get(0).getAsJsonObject().get("shit").getAsString. Говно не читаемое получается. Не знаю, как все это организовать бля.
Хуйню какую-то написал. Напиши нормально что там у тебя и для чего. Алсо если я правильно понял, то ты очередь используешь тупо чтобы асинхронно базарить с базой и нет какой-то мощной масштабируемости. Тогда очередь и отдельное приложение для бд несколько оверкилл - дао/репозитории можно сделать асинхронными (или прислюнявить к датааксессу дополнительный менеджерский слой, который будет управлять дата аксессом, разруливать разные дата сорсы и разруливать асинхронку с обычными дао/репозиториями). Если же у тебя распределенность и масштабируемость во все поля, то тогда да, тебе нужен message layer для обмена информацией между компонентами.
>>797319
Кроме того, что язык умирает, а оракловский JavaEE вообще официально сдох, и язык отправляется вслед за коболом и дельфями, и на рынке все сильнее падает спрос - никаких.
>>797367
Антоний прав, охуевший долбоеб. Пиздуй учить Javascript - главный язык будущего, вселенной и всего остального. Пока ты не всрал годы на то, что уже умирает.

Ответы>>797723

16 Июл, 12:49 #474 #797449

>>797424
А где нормальная поддержка любого железа, сисярп-долбоеб? В новом дотнеткоре? Ну как там дела с релизом, вышедшим месяц назад? Все компании мира объявили о переходе на него?
> целый ворох технологий недоступный понимаю жабоиндусов, такие всякие
> сильверлайты
Лол. Сильвер лайт. 2016.
> вин-веб
А что, асп парашу использует кто-то, кроме Microsoft?
> формочки
Для формочек есть главный язык будущего, вселенной и всего остального. Здесь серьезный бузинесс.
> впф
Еще одно формошлепство, только под винду и теперь еще и мертвое. Последний релиз 4 года назад и блог блещет активностью https://blogs.msdn.microsoft.com/wpf/
> XNA
Гейм-девелопмент и прочие юнити это единственное на что годится C#.
> список можно продолжать бесконечно, как впрочем и список ущербности жабы...
А когда твой беззадачный (акромя игор) сишарп будет поддерживать серьезный тырпрайз бизнес и его задачи? Когда научится работать на каждой кофеварке? Никогда? А на хотя бы никсах и маках? Только что? И как поддержка, а? А когда научится поддерживать нормально распределенные транзакции без печати вендор локина?
Основная хуйня твоей параши - в том, что она пиратская версия джавы от обиженки, которая на волне баттхерта еще запилила почти тотальный вендор локин, чтобы заодно как-то поддерживать свою хуйню. Когда ты пишешь тырпрайз на джаве - ты пишешь тырпрайз на джаве и не связан ничем. Используй что хочешь. Когда ты пишешь говно на сисярпе (вне гейм-девелопмента), то ты залочен под инфраструктуру microsoft и винду. Так что уебывай писать десктопные формочки, игоры на юнити и приложения, работающие на одном (1) microsoft windows server.
> Всего, чего нет в жабе, автоматически объявляется хуитой, как только это появляется в жабе, это автоматически становится нехуитой. При этом, требуется сделать вид, что хуитой это называл кто-то другой.
Обоссан.

Ответы>>797455

16 Июл, 12:54 #475 #797455

>>797449
Поговорил с пастой - день прошел не зря.

Ответы>>797456

16 Июл, 12:59 #476 #797456

>>797455
Именно так.

sage 16 Июл, 13:52 #477 #797483

Есть ли в природе хоть один жавапидорас, который знает что-нибудь кроме джавы? Ну хотя бы ту же Скалку, работающую на jvm. Причем `знает' не в смысле запускал 2 раза и посчитал рекламную хуйню с сайта, а действительно хорошо знает. Работал минимум полгода, знает, решению каких проблем адресован язык, знает, зачем он нужен и какие преимущества имеет перед джавой, хорошо понимает, какие принципы заложены в систему типов и нахуя они вообще туда заложены, знает, как она жутко она фейлит на оптимизации хвостовой рекурсии, знает, как она затирает типы и вызывает методы через рефлексию, знает, почему на уёбищной jvm по-другому не сделать, знает, почему неленивые языки - говно, знает, что такое abstraction penalty и почему любой джаваынтырпрайз адово тормозит, несмотря на превосходные результаты на шотауте, самый лучший мусоросборник и hotspot до которого всему немейнстиму в говне плыть и плыть, знает, почему джава - не язык программирования для нормальных людей, а говно для переквалифицировавшихся таксистов? Нет таких? Ни одного? Только студентота и дрочеры на абстрактные фабрики абстрактных аннотаций виртуальных плагинных шин? Так я и знал. И это программисты. Говно какое-то. Пидоры блядь.

16 Июл, 15:23 #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-классы), это не нужно, да.

Ответы>>797590

16 Июл, 15:29 #479 #797564

Знаешь, |c|, по-моему, я схожу с ума...
Дело в том, что иногда по ночам мне кажется, что я яваблядь. Мне хочется выделять память, зарабатывать на доширак, пиздеть про энтерпрайз, сваливать свои проблемы на чужие плечи и писать нечитаемый бессмысленный говнокод.
Я ворочаюсь, страдаю, рычу, а под конец вскакиваю с кровати и хватаю первое, что попалось под руку.
Это может быть тапок, топор или простая поварешка, но в моем воображении она становится огромным прожорливым интерпретатором.
С этим интерпретатором я открываю корпус сервера, ставлю ещё две планки оперативной памяти и с громким боевым кличем выбегаю на улицу. Я бегаю под окнами своих соседей и ору: "Ява не тормозит, тупые нищебляди!! Купите нормальное железо!!"
Но они не покупают... Они привыкли.
И когда я уставший, но довольный, поднимаюсь в квартиру, наоравшись и набегавшись, одна из дверей открывается. Там, лукаво сверкая глазенками, стоит маленький соседский мальчик Женька. Он громко шепчет беззыбым ртом "Клоссплатфолменность!" и ободряюще мигает мне одним глазом.
Я, улыбаясь ему, прохожу мимо, и в душе моей поют заказчики.
А дома я открываю бутылку водки, морщась, выпиваю ее до половины, и ловлю кота. Ругая этого "сраного волосатого индуса", я сажаю его за клавиатуру, и чтобы он не убежал, приматываю его к ней скотчем.
А дальше все просто.
Я стою у окна, пуская скупую быдлокодерскую слезу по своей прыщавой щеке , и мечтаю. Я представляю, что огни домов -- это пламя костров, на которых сжигают крестопидоров, шум машин -- это рев кулеров в серверных, а в мире нет ничего, кроме великого энтерпрайза и нас, яваблядей...
И я жду, что вдруг, вот сейчас, в мою дверь войдет начальник и скажет: "Эй, раб, ты чо так так долго? Давай, быстро дописывай исходник. Похуй, если будет тормозить - разберутся те, кто будет сопровождать! ГА-га-га-га!" И ободряюще хлопнет меня по спине.
И тогда не будет в мире счастливее человека, чем я... Точнее, явабляди.
Что же мне делать, анон? Что же мне делать?

Ответы>>797570

16 Июл, 15:33 #480 #797570

>>797564
Но с котом-то потом все будет в порядке?

18 Кб, 640x619

16 Июл, 15:48 #481 #797590

>>797557
> Cotlin
Ну за чем ты так

Ответы>>797604

16 Июл, 16:07 #482 #797604

>>797590
Скот, плз.

Ответы>>797625

16 Июл, 16:26 #483 #797619

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

Ответы>>797626>>797633

142 Кб, 421x468

16 Июл, 16:31 #484 #797625

>>797604

Ответы>>797643

16 Июл, 16:31 #485 #797626

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

Ответы>>797636

16 Июл, 16:35 #486 #797633

>>797619
Мы вам даже не перезвоним. JS awaits for your future attention.

Ответы>>797636

16 Июл, 16:37 #487 #797636

>>797633
>>797626
Всё, создал мавен-ваадин пружект. Пойду в вов поиграю, один хер я не умею прогать.

Ответы>>797639

16 Июл, 16:39 #488 #797639

>>797636
Пиздуй. И в следующий раз иди сразу в JS, там проще, перспективнее и больше денег. И тян будут давать.

16 Июл, 16:41 #489 #797643

>>797625
Как не нужно, когда берешь спринг, берешь @Async, и сразу нужно и без всякого экзекьютор оверхеда нужно?

Ответы>>797645

16 Июл, 16:45 #490 #797645

>>797643
>берешь спринг
Точняк, уже запускаю на своем телефоне Sprint, погоди сейчас про-коко-грузится.

Ответы>>797650

16 Июл, 16:50 #491 #797650

>>797645
По твоему сообщению можно подумать, что ты хотел попасть в ведротред или социотренд эджайлиться в жопу. Но ты зашел не туда.

Ответы>>797695

56 Кб, 500x556

16 Июл, 17:48 #492 #797695

>>797650

16 Июл, 17:50 #493 #797696

Почти год тут не был, успел новый форс пропустить. Это вы конкурентов разгоняете?

Ответы>>797700

16 Июл, 17:53 #494 #797700

>>797696
Оракл разогнала или переназначила на другие проекты всех разработчиков, пиливших javaee.

Ответы>>797701

16 Июл, 17:55 #495 #797701

>>797700
Потому что нахуй не нужно разделение на se и ee. Будет единый язык.

Ответы>>797703

16 Июл, 17:57 #496 #797703

>>797701
ee это не язык.

Ответы>>797704

16 Июл, 17:58 #497 #797704

>>797703
Жопочтец.

Ответы>>797706

16 Июл, 17:59 #498 #797706

>>797704
> Будет единый язык.
Язык и так один, заехавший.

16 Июл, 18:17 #499 #797723

>>797436
>Антоний прав, охуевший долбоеб. Пиздуй учить Javascript - главный язык будущего, вселенной и всего остального. Пока ты не всрал годы на то, что уже умирает.

>Смотри мам, я траль

Ответы>>797733

16 Июл, 18:27 #500 #797733

>>797723
> мам, смотри, траливалер :(((

16 Июл, 18:37 #501 #797744

Перекат >>797742 (OP)
Перекат >>797742 (OP)
Перекат >>797742 (OP)

Ответы>>797763

16 Июл, 18:53 #502 #797763

>>797744
Ну что же тебе так неймется.

17 Июл, 00:55 #503 #798033

пишу на жаве. мне норм.

17 Июл, 01:57 #504 #798087

ребяты, я вот сижу такой мне делать нехуй вообще, решил выучить яву
правильно из закреплённого поста понял что стоит начать с
+ Java 2. Том 1. Основы Кей Хорстманн
+ Java 2. Том 2. Тонкости программирования Кей Хорстманн

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

для чего оно мне? я пока не решил мне плевать учу что хочу

17 Июл, 08:56 #505 #798192

>>792385
Расскажи про лямбда-выражения поподробнее. Это автоматическая генерация анонимного класса — нэ?

Ответы>>798224

17 Июл, 10:10 #506 #798224

>>798192
Это Invoke Dynamic
https://www.youtube.com/watch?v=DgshYDTpS9I

17 Июл, 14:05 #507 #798325

Сап, джава-господа. Пробую одну вещь, а именно собрать лист ссылок с сайта. Взял себе на пробу сайт, ссылки вытащил.
Но они в разброс. ТО есть, первая новость на сайте почему-то не первая в списке, а где-то в середине.
Понимаю, что теперь мой лист нужно отсортировать. Сделать это в целом просто, ведь в середине каждого стринг в листе есть дата. Но календарь юзать тут не надо. Просто отсортирую по какая меньше-какая больше. Вот код, которым я получаю ссылки.
http://pastebin.com/dRjvtp3i
Вот то, что я получаю.
http://pastebin.com/Qvm5PsD8
Вот то, как выглядит дата:
2016/04/26/
Из неё я буду вытаскивать месяц и число.

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

Спасибо, Анонимусы

17 Июл, 17:01 #508 #798463

Че вместо томкэта используете?

Ответы>>798614

17 Июл, 19:48 #509 #798614

>>798463
Tomcat

11 Кб, 596x345

6 Кб, 586x191

2 Кб, 578x148

2 Кб, 299x88

17 Июл, 19:50 #510 #798615

Анон, дай совет. Нужно сделать десериализацию ответа от сервера. Есть несколько типов ответов.
Соответственно первый ответ - это блоки информации, которые нужно десериализовать.
Последние две - просто метаданные об ошибках\результатах.

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

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

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

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

Спасибо

17 Июл, 21:10 #511 #798663

>>796254
Это где такая комбинация? Не уж то эллипс? Им кто-то пользуется ещё?

Ответы>>798669>>798752

17 Июл, 21:20 #512 #798669

>>798663
я например, но когда EE освою пойду работать и куплю себе Идею

Ответы>>798752

17 Июл, 22:44 #513 #798752

>>798669
>>798663
Идея - кал.

Ответы>>798754>>798756>>800110

17 Июл, 22:45 #514 #798754

>>798752
Пользую кстати из-за необходимости Rubymine. Но когда на жабе надо - только эклипс.

17 Июл, 22:46 #515 #798756

>>798752
Спизданул так спизданул
Идея это эклипс только быстрее сильнее выше

Ответы>>798813

17 Июл, 23:41 #516 #798813

>>798756
Повторяй себе это почаще. Может с переходом с экспериментального статуса этой фичи https://pavelfatin.com/typing-with-pleasure/ печать будет побыстрее. Но пока даже в этом идея сливает. И я не говорю сейчас про тормоза идеи, когда называю калом. Там плохо все - начиная с сообщениях в джавовских компонентах ui которые не скопировать в буфер, заканчивая идиотским юзабилити.

18 Июл, 02:00 #517 #798927

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

Ответы>>798932

18 Июл, 02:12 #518 #798932

>>798927
говнокодишь короче
я вот тоже как ты был еще пол года назад, а сейчас смотрю на свой прошлый код и волосы дыбом.
(говнокодящие макаки не нужны, в лучшем случае за миску риса работать будешь если не поумнеешь)

18 Июл, 03:55 #519 #798960

Перекат >>798959 (OP)
Перекат >>798959 (OP)
Перекат >>798959 (OP)

18 Июл, 08:36 #520 #799020

>>796232
Зато их можно статически импортировать и не писать хуйняНейм.xor

19 Июл, 14:09 #521 #800110

>>798752
Это ты кал. Пиши в нетбинсе.

Тред утонул или удален.
Это копия, сохраненная 8 августа 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion