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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
249 Кб, 811x1181
Официальный™ тред Java #38 #798959 В конец треда | Веб
Шапка треда https://github.com/qqqlll/Java-Thread/wiki

Предыдущий тонет здесь >>790044 (OP)
#2 #798962
>>798932
Во-первых, у меня уже есть хорошо оплачиваемая работа, а кодинг - просто хобби.
Во-вторых, почему ты думаешь, что зубрежка теории и матчасти как-то улучшает код?
>>798966
#3 #798966
>>798962
потому что улучшает, это говорю даже не я, а опыт и не только мой
>>798977
#4 #798968
>>798959 (OP)
Сколько ключевых слов зарезервировано языком, что это за слова, какие из них не используются?

неужели есть на свете такие мудаки которые задают подобные вопросы?
Вспоминать все 50 ключевых слов это пиздец, даже человеческая память так не работает (ну ка перечисли мне минимум 20 парнокопытных, ммм как приятно вспоминать)
>>798970>>798980
#5 #798970
>>798968
Мы вам перезвоним
>>798971
#6 #798971
>>798970
нахуй надо, если тебе в конторе уже на этапе собеседования задают такие вопросы, то лучше сразу из такой конторы бежать
>>798980
#7 #798977
>>798966
вот читаю сейчас документацию Оракл из шапки и ничего нового для себя, не изученного на практике, что бы улучшило код, не вижу. слов больше умных знаю теперь - это да.
>>798979>>798980
#8 #798979
>>798977
ну вот смотри без знания умных слов ты хуй чему научишься
а теперь берешь и гуглишь паттерны проектирования и получаешь ответ на вопрос как хорошо кодить
>>798980>>798999
46 Кб, 429x600
#9 #798980
>>798968
>>798971
>>798977
>>798979
Мелкобуквенный, съеби из моего треда.
>>798981
43 Кб, 540x624
#10 #798981
#11 #798982
Почему вы умираете и стагнируете, поясните. Я не верю в это.
>>799033>>800006
16 Кб, 236x305
#12 #798999
>>798979

>ну вот смотри без знания умных слов ты хуй чему научишься


proofs
>>799011
#13 #799011
>>798999
как можно применять монады и функторы, не понимая что это?
>>800004
#14 #799033
>>798982
Читай прошлые треды.
>>799041
#16 #799245
На spring.io есть гайды, насколько они хороши для ньюфани?
sage #17 #799251
>>798959 (OP)
дибил
#18 #799288
Какие варианты джаваскрипт макаки вообще существуют?
>>799293
#19 #799293
>>799288
фриланс макака
бэкэнд макака
энтерпрайз макака
фуллстэк макака
фуллстэк энтерпрайз макака

Да, учишь джаву - готовь анус к серверным утехам иначе никак
>>799772
#20 #799307
Пацаны, как в последней идее указать чтобы при дебаге открывалось сразу Frames и Variables?
Если через right click, то там указывается лишь одно окно. Может есть где в настройках конфигурация Debug view?
#21 #799461
Читаю Core Java, подхожу к этапам установки jdk, ставлю jdk8u92 далее нужно из корневой папки распаковать src.zip но его нет на месте. Не подскажете почему и где его взять?
32 Кб, 657x348
#22 #799463
>>799461
добавил картинку
>>799511
164 Кб, 1616x784
#23 #799497
И вот еще, на команду java -version консоль выдает результат, а на javac -version ничего
>>799508>>799511
#24 #799508
>>799497
У тебя путь к javac'у не прописан, вот он его найти и не может.
>>799518
#25 #799511
>>799461
>>799463
>>799497
Ты дебил, иди в ЖС тхреаж.
>>799639
#26 #799518
>>799508
Странно, согласно замечаниям по релизу http://www.oracle.com/technetwork/java/javase/jdk-8-readme-2095712.html
Должно быть в поставке

> Source Code (In src.zip) Java programming language source files for all classes that make up the Java core API.


Обычно src.zip был в корне (или помнится можно было скачать отдельно). Ты бы проверил что не затер ничего при распаковке - вот какой то левый каталог Corejavabook видно. В крайнем случае - можешь стащить .tar.gz под какой-нибудь x86 линукс и распаковать tar -zxf - там, по идее, точно такой src.zip.

Кстати, не такой уж дикий вариант
http://stackoverflow.com/questions/22551207/where-can-i-find-java-8-src-zip
>>799536
#27 #799536
>>799518
Спасибо.
#28 #799639
>>799511
Нет, я уже в треде для дебилов.
#29 #799772
>>799293
А мобиломакака к чему относится?
>>800007
#30 #799874
Анон, я только вкатился и пока пишу велосипеды вроде сортировок и т.п.
Куда можно вбросить ссылку на свой говнокод, чтобы мне пояснили: "вот тут лучше сделать вот так, потому что твоя реализация не очень хороша по таким-то причинам"?
В ньюфаг тред или можно прям сюда?
>>799875
#31 #799875
>>799874
можно прям сюда
>>799876
#32 #799876
>>799875
Я небольшой план себе составил и пока иду по нему. Повторюсь, что пока у меня простейшие велосипеды.
Вот это вот сортировка перестановкой (swap):
http://pastebin.com/MtSxPLcw
Я еще только учусь писать комментарии, поэтому если они слишком всратые или ненужные, то тоже напиши об этом, анон.
#33 #799878
>>799876
Блин, еще забыл, что запуск осуществляется с помощью
NewSort.newSort();
Но это вроде не важно, просто как я понял, лучше по максимуму разбивать на объекты все
>>799879
#34 #799879
>>799878
Классы обычно называются именами существительными, а методы глаголами. Комменты как правило выносятся в javadoc-формат, внутри метода коммент ставится только если у тебя в нем производится какая-то магия в конкретной строчке. Желательно еще массив чисел передавать в метод, а возвращать из метода другой массив - не модифицируя старый.
#35 #799880
Спасибо, анон!

>Желательно еще массив чисел передавать в метод, а возвращать из метода другой массив - не модифицируя старый.


А разве это не получается выделение доп. памяти на новый массив?
И тогда сортировка вообще не важна, ибо можно тупо искать каждый раз минимальное число и просто добавлять его в новый массив по порядку
>>799883
#36 #799883
>>799880
Да на память как раз похуй. Преждевременной оптимизацией заниматься не нужно т.к. не факт что ты в какой-то потолок вообще упрешься. Все что нужно стараться делать - это писать понятный код :3. Когда ты сортируешь массив и результат остается в том же массиве - код тяжелее читать т.к. ты со временем будешь возвращаться к этому участку кода и спрашивать себя "а отсортирован ли этот массив?". А если ты отсортировал его строчкой int[] sortedNumbers = sort(numbers);, то ты по имени переменной уже можешь догадаться что массив отсортирован.
В джаве норма создавать новые объекты при трансформации старых. Так во-первых проще читается код, а во-вторых это избавляет от многих ошибок в параллельном программировании, до которого ты рано или поздно тоже дойдешь.
>>799975
#37 #799939
Cкачал ваших хорстманов и эккеля
хули там так много страниц?
#38 #799951
>>799939
Уважаемый.
В этой профессии, внезапно, нужно много читать: книги, туториалы, документацию, статьи. Ты можешь не верить, но частенько и на английском.
Так что "хули" лезешь в эту профессию? Улицы грязные, щебень неразгруженный . Найдёшь, чем заняться.
>>799961
#39 #799958
>>799939
kek, а ту думал почему "why do java programmers wear glass?"
>>800005
#40 #799961
>>799951
Неуважаемый, метнись под шконарь.
>>799984
#41 #799972
>>799876
Естественно всратые - всю эту графоманию можно было бы заменить на
// see. http://reference-on-wikipedia

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

Алсо странный выбор алгоритма.
#42 #799975
>>799883
Видал я битодрочеров. Видал я и тех кто пишет "понятный" код, отрабатывающий десятки секунд, там где должны быть миллисекунды и дохнущий от ООМ.

Код должен быть умным - в соответствии с задачей (и абстракцией над ней), а не подстраиваться ни под машину ни под человека.
>>799988
#43 #799984
>>799961
У тебя Балтика на "спортивки" плеснула, вытри.
>>800031
#44 #799988
>>799975
Истина как известно по середине, но в общем случае код должен быть читаемым.
А подстраивать под машину должен компилятор или JIT.
#45 #799993
>>799939
Такая у нас профессия. Надо много читать и постоянно учиться. Перестаёшь развиваться - вылетаешь с рынка труда, или же всю жизнь сидишь на должности джуна.
>>802378
#46 #800004
>>799011
А как их можно применять даже зная, что это?
>>800041
#47 #800005
>>799958
And why do java programmers wear glass?
>>800017
#48 #800006
>>798982
Ну просто это стабильное состояние жабы. Жаба - она как Россия.
#49 #800007
>>799772
Там только свифт котируется.
#50 #800017
>>800005
because the cant see sharp.
#51 #800031
>>799984
>>799984
Вытер тебе за щекой своим хуйцом.
>>800278>>800285
#52 #800041
>>800004
Большинство применяет их, даже не зная что это так называется.
>>800055
#53 #800055
>>800041
Большинство? Да не пизди. Какие нахуй монады в жабе?
>>805555
#54 #800081
>>798959 (OP)
sup джвач.
оцени поделие.
https://snag.gy/ZJ9I8a.jpg
есть ли какие алгоритмы/ более совершенные способы реализации?
#55 #800100
>>800081
http://pastebin.com/

Не благодари, ты не знал наверн, что есть такие сервисы.
>>800104
#57 #800103
>>800081
Пиздос, ты вообще с нашей планеты?..

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

Как я эту еболу тестами проверочными покрою?
>>800106
#58 #800104
>>800100
ого, вотетада. а так он умеет?
http://www.tutorialspoint.com/codingground.htm
>>800111
#59 #800106
>>800103
ну привет тебе землянин.
тебя наверное не смущает что марсиане не могут написать норм реализацию, да ещё и под юнит-тесты.
щас попробую перепилить. мб и правда отупел
#60 #800111
>>800104
>>800104
Ебать ты долбоеб, не буду объяснять почему, не хочу. Да ты и сам знаешь ответ.
Просто иди на хуй.
>>800114
#61 #800114
>>800111
трипл не пиздит. извини няша :3
переделаю по человечески, скину как надо.
>>800183
#62 #800183
>>800114
ну как то так
http://goo.gl/hu4NFs
>>800199
125 Кб, 400x365
#63 #800199
>>800183
Только не суй больше ссылки в сокращатель, это не прилично.
>>800227
#64 #800227
>>800199
окау
#65 #800236
>>799876
https://www.codewars.com/dashboard
лови, тут тебе и задачки и автотестирование
и после решения показаны варианты решений других макак отсортированных по качеству (как правило сразу видно где код лучше чем у тебя, а где хуже)
#66 #800278
>>800031
Плохие новости: ты промахнулся и ткнул своим стручком своей мамаше в рот.
>>800285
#67 #800285
>>800278
>>800031
Гуляйте, школьники.
#68 #800304
Требования:
Оконченное высшее техническое образование;
Знание J2EE;
Опыт разработки ПО в команде от 3 человек;
Желательно знание GWT;
Желателен опыт работы с Delphi.

Что скажете? Мне что-то даже на собес не хочется идти, хотя согласился.
#69 #800309
>>800304
Говно мамонта будешь дебажить.
>>800343
#70 #800310
>>800304
Я б сходил, я в конце концов спрашивал советы на двачах, а тут как минимум три анона есть, значит это работа в команде.

Опыта с дельфи нет, но это обязательно. Ну на вышку пох на самом деле, это сыкливых сычуш пишут, чтобы их отсеять.
ж2ее эт офк любой жавист должен знать.
>>800317>>805768
#71 #800311
>>800304

>Оконченное высшее техническое образование


Фу быдло.
>>805768
#72 #800317
>>800310

>ж2ее эт офк любой жавист должен знать


В этом-то и проблема. Че повторить? Я просто не ожидал, что так быстро пригласят. Че точно нужно повторить?
>>800319
#73 #800319
>>800317
Да я не знаю, я мимо питонист.
Просто по фану пост хотел запилить.
#74 #800321
Что нужно знать, чтобы устроиться крепким джуном?
>>800322
#75 #800322
>>800321
Дай угадаю, тратишь 6 часов в день на программирование?
>>800326
65 Кб, 604x431
#76 #800326
#77 #800343
>>800309
То есть? Переписывать говно с делфи на джаву?
>>800364>>800515
#78 #800364
>>800343

> Переписывать с одного говна на другое?


Пофиксил тебя, не благодари.
152 Кб, 900x506
#79 #800515
>>800343
Hahahahahahahhahah
#80 #800516
Аноны, где скачать 10-ое издание Хорстаманна Java Core? На русском ещё вроде не вышло, или вышло хз, но мне и на английском подойдёт. В гугле не нашёл, мб вы знаете где качать.
>>800518
#82 #800526
>>800518
Пишет, что страница не найдена. :(
>>800531>>800534
#83 #800531
>>800526
https://goo.gl/KXYX3T
Может вакаба какой нибудь символ съела, хотя у меня все открывается.
>>800535
#85 #800535
>>800531
Это тоже не открывается. Может просто гайд запилишь как ты находишь?
>>800537
#86 #800536
>>800534
О, то что надо! А вторая часть есть?
>>800541
#87 #800537
>>800535
у меня открывается, а я другой анон
#88 #800541
>>800536
(November 14, 2016)
>>800545>>800546
#89 #800545
>>800541
Хера се. Java 8 давно вышла, скоро уже Java 9 будет, а они ещё для восьмой версии двухтомник не выпустили.
>>800547
#90 #800546
>>800541
Всё равно спасибо!
#91 #800547
>>800545
Сам ждал и не дождался, хотя у себя на сайте он обещал весной 2016 выпустить.
#92 #800550
Никто не сталкивался с проблемами при установке android studio на linux? Установлена java 9.1 и ни хрена не работает.
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$PlatformClassLoader

JDK Required: 'tools.jar' seems to be not in Studio classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.

Есть идеи аноны, или мне лучше пойти к пингвинятам с таким вопросом?
#93 #800552
>>800550
JAVA_HOME прописывал?
>>800598
#94 #800556
>>800550

> Установлена java 9.1



-Ты дебил?
-Дебил!
>>800598
#95 #800557
>>800550

>Установлена java 9.1


Ты из будущего пишешь?
>>800560>>800598
#96 #800560
>>800557
Не, так то сборки есть, но это как надо упороться чтобы за полгода до релиза, да еще под Андроид пинать.
>>800598
#97 #800589
>>798959 (OP)
Как легче всего получить из списка [1, 2, 3, 4, 5] список [[1, 2], [3, 4], [5]] ?
#98 #800598
>>800552
Нет, сейчас пытался по вот этому гайду
http://www.cyberciti.biz/faq/linux-unix-set-java_home-path-variable/
не вышло. У меня очень странный адрес который нужно указать
"/usr/lib/jvm/java-1.9.0-openjdk-amd64/bin/java"
И добавить не получается, ругается на ошибку. Пытаюсь сделать.
>>800556
>>800557
>>800560
Опечатался, версия 8.91
>>800734
1 Кб, 180x80
#99 #800606
>>800589
cho eto za huinya blyat'?
Keioin #100 #800608
>>799461
Тоже по этой книги, на новых версиях Java всё не так, как там написано я про расположение
#101 #800609
>>800589
питон тред там ->
>>800610
#102 #800610
>>800609
Я бы с удовольствием, но не могу. Что, правда for писать?
#103 #800613
>>800610
ArrayList
#104 #800614
>>800589
(defn normalize [ls]
__(if (= 0 (mod (count ls) 2))
____ls
____(conj ls nil)))

(partition 2 (normalize [1 2 3 4 5]))
>>800619>>800674
#105 #800615
>>800610
//Object[] array1 = new Object[]{1,2, 3,4, 5};

______public static List<?> getsa(Object[] array1) {

_________List<Object> list = new ArrayList<>();
_________for (int i = 0; i < array1.length-1; i+=2) {
____________list.add(new Object[]{array1, array1[i+1]});
_________}
_________return list;
______}
>>800619
#106 #800619
>>800614
Охуенно, может и стоит переписать все на кложуру.
>>800615
Так значит всторенного в язык ничего нет?
>>800621>>800624
#107 #800621
>>800619

>Так значит всторенного в язык ничего нет?


может и есть какие то манипуляции со списками, но джава это все таки не пайтон где для всего есть какая нибудь магическая кнопка
#108 #800624
>>800619
Нету ничего встроенного, джава немношк не про это.
25 Кб, 984x341
#109 #800626
>>800632
#110 #800632
>>800626
Откуда ж вы лезете. Пиздец как код обговнил утяжелил, да еще функциональшину прицепил которая нахуй в данном контексте не нужна, потому что нигде кроме чем внутри нормального императивного блока кода не используется, зато выебнулся, пиздец пиздец.
Для таких как вы есть басня про велосипедные перчатки.
>>800640
10 Кб, 497x170
#111 #800640
>>800632
Уговорил
>>800654
7 Кб, 740x156
#112 #800654
>>800640
ну ну
>>800660>>800662
#113 #800660
>>800654
У меня одна строка, у тебя - четыре. Зачем ты усложняешь?
10 Кб, 551x224
#114 #800662
>>800654
Exception oriented programing
#115 #800663
есть несколько entity классов. в веб формочке юзер может редактировать и добавлять записи в бд, соответствующие этим классам. если id = null (поле присутствует в каждом классе), то выполняется insert, в противном случае выполняется update.

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

на входе имеем объект некоторого entity класса, на выходе - в случае изменения какой-либо строки в бд вывести значения измененных полей
>>800679
23 Кб, 465x239
#116 #800674
>>800614
Вот как мы делаем это на андроиде
>>800681>>800708
#117 #800679
>>800663
docs.jboss.org/hibernate/orm/5.2/userguide/html_single/Hibernate_User_Guide.html#events

> оптимально ли дать на вход методу Object


Лучше сделать type-safe как Spring Data JPA если знаешь что такое. Создаешь типа CrudServiceFactory у него метод <Entity,Id> CrudService<Entity, Id> create(Class<Entity> entityClass). В CrudService все CRUD операции для одной entity - insert, update, upsert, delete, select.
Можешь проксировать вызовы других сервисов.
>>800689>>800695
#118 #800681
>>800674
а вот это выглядит ахуенно
23 Кб, 480x516
#119 #800689
>>800679
спасибо за ответ. уже смотрел в сторону хибернейт интерсепторов, но на работе сказали лучше избежать такой реализации. по поводу второго пункта погуглю.
#120 #800695
>>800679
хотя в принципе, с интерсепторами то же самое выходит. имеем текущее состояние объекта, имеем новое состояние объекта. основная проблема - привести от Object к нужному классу (это просто), а затем сравнить нужные поля (вот здесь уже посложнее). рассматривал вариант перебрать все инициализированные поля новой записи (переданной юзером, у которой id == null и самим юзером заполнены required колонки), добавить в List названия этих полей, а потом итератором пробежаться по листу, сравнивая значения. наверное, на этом и остановлюсь. еще раз спасибо за рекомендации
>>800704
#121 #800704
>>800695

> а затем сравнить нужные поля (вот здесь уже посложнее)


Сложность только во внешних ключах (получается нужно по каскаду логгировать и другие entity).
Проще для обоих объектов создать Map<String, Object> пропертей. И сравнивать их.
>>800714
#122 #800708
>>800674
А что это за язык? У меня как раз андроид.
>>800712>>800716
#123 #800712
>>800708
Нехлеблин
#124 #800714
>>800704
ага. заодно сейчас нагуглил про org.apache.commons.lang.builder.EqualsBuilder.reflectionEquals(Object, Object), что в разы упрощает задачу. отлично
#125 #800716
>>800720
#126 #800720
>>800716
Давно к нему приглядываюсь и вот опять наткнулся
как дело с рынком обстоит, как сам язык по твоему личному опыту? Стоит таки на этот стул пересаживаться?
>>800732
#127 #800724
много гуглил на тему "вывести количество активных пользователей приложения в данный момент". итого, все варианты сводились к sessionRegistry.getAllPrincipals().size(). при логине счетчик добавляет значение, при логауте - ничего не происходит. плюс нет таймаута сессии. пробовал через redisOperations.keys("spring:session:sessions:expired*").size(), результат тоже некорректный. как все-таки отслеживать логин, логаут, таймаут и возобновление активности сессии залогиненного пользователя? spring boot приложение
>>800752
#128 #800732
>>800720
Загляни лучше в Android тред, здесь его обсуждение может вызвать неконтролируемые разрывы.

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

С вакансиями пока не густо, в основном считается "дополнительным плюсом".
Если ты уже разбираешся в Java, то можно глянуть хотя бы для расширения кругозора.
>>800776
#129 #800734
>>800598
У тебя дебианом пахнет. Попробуй почитать в разделе Configuration https://wiki.debian.org/JavaPackage
>>800745
#130 #800745
>>800734
Да не, обычная бубунту
>>800754
#131 #800752
>>800724
Ну хз, инкременти счетчик при логине и стартуй таймер сессии с коллбеком на декримент. Тысячи способов.
#132 #800754
>>800745
Это наполовину и есть дебиан.
#133 #800776
>>800732

>С вакансиями пока не густо


>сейчас вот убедил начальство начать новый проект на нем



какой хороший способ набить себе цену
>>800804
#134 #800782
Метод на 127 строк - это норм?
>>800794
#135 #800794
>>800782
ну смотря какой метод
+ любой паблик метод можно разложить на несколько приватных
>>800809
33 Кб, 596x439
#136 #800804
>>800776
Job Security Index ни кто не отменял.
Мне же надо кормить четырех детей моей тульпы.
#137 #800809
>>800794
ну там у меня разбивка борд по каталогам идет case "тематика" : return "Хуйня"
>>800814
#138 #800814
>>800809
ну яб тогда лучше паттерном стратегия это сделал
хотя это опять таки от многого зависит
>>800819
#139 #800819
>>800814
как ты это сделаешь паттерном стратегия - это игровой паттерн. или тебе лишь бы паттерны везде прилепить и понтонуться умным словечком?
>>800821>>800825
#140 #800821
>>800819
ты патерн сиулятор педика!
#141 #800825
>>800819

>паттерном стратегия - это игровой паттерн


дурачок что ли?
Это паттерн выбора и применяется везде где последующие действия зависят от начального выбора. Особенно если действий дохуя и они могут в будущем меняться.
>>800878
#142 #800875
как сделать такую конструкцию тернарным оператором?

if(boardCombo.getSelectionModel().getSelectedItem() != null){
boardstr = boardCombo.getSelectionModel().getSelectedItem().toString();
}
else {
boardstr = boardCombo.getPromptText();
}
>>800883>>801167
#143 #800878
>>800825
у меня там одно действие - вернуть строку. Никакого разнообразия действий в зависимости от типа объекта, для чего создан паттерн, у меня нет. бляя, дебилы, где вас учат только.
>>800880
#144 #800880
>>800878

>одно действие


>дохуя строк в методе

#145 #800883
>>800875
что бы тернарным нужно проверять true/false
а у тебя null/!null
>>800889
#146 #800889
>>800883
короче так

boardCombo.getSelectionModel().getSelectedItem().isNull() ? boardstr = boardCombo.getPromptText() : boardstr = boardCombo.getSelectionModel().getSelectedItem().toString();

где isNull() : boolean
метод проверяющий на нуль
#147 #800927
И что мне стопяцот классов на одну строчку теперь создавать, чтобы этот стратеджи использовать?
Пиздец вот так обмажутся своими паттернами и начинают на каждый switch case создавать кучу новых классов, пакетов и утяжелять код вырвиглазовыми "паттернами", которые там абсолютно не к месту совсем, как в той статье в хабре.
>>800936
#148 #800928
>>800889
thanks
#149 #800936
>>800927
читать умеешь?

>хотя это опять таки от многого зависит


ясен хуй что если проект небольшой то такие паттерны никому не нужны
#150 #800938
Для парсера\скраппера с возможностью логиниться и взаимодействовать с сайтом что посоветуете?
очевидный хтмлюнит?
19 Кб, 658x363
#151 #800939
Посоны, помогити, javac распознается, а java нет, я чайник и не знаю че делать.
#152 #800940
>>800939
JAVA_HOME
наверное криво настроен.
переменные у компа почини.
>>800941
52 Кб, 1077x489
#153 #800941
>>800940
Вроде все ж верно.. где я проебался?
>>800942
#154 #800942
>>800941
в реестре указано что у тебя 1.7
#155 #800943
>>800942
я тупой и все равно не понимаю. Версии ведь должны быть одинаковыми.
#157 #800945
>>800939
нахуй ты вообще этим занимаешься?
не проще просто скачать IDE, а он тебе все и настроит за одним махом и даже с консолью пердолиться не придется
14 Кб, 678x345
#158 #800946
>>800942
Потому что Шилдт говорит, что IDE, для петушков. А между тем, у меня получилось.
#159 #800947
>>800946
Шилдт описывает то чем ты не будешь заниматься в продакшене никогда.
н и к о г д а
и
к
о
г
д
а
Ну, разумеется, скомпилить и запустить должен уметь.
#160 #800948
>>800946

>2k16


>писать код блокноте


>на java



тот ли ты язык выбрал?
>>800949
#161 #800949
>>800947
>>800948
У меня был вопрос. Ответа я по сути не получил. Когда мне потребуется в чем-нибудь еще совет, я обязательно к вам обращусь, котятки. Я просто учусь.
#162 #800950

> Ответа я по сути не получил


Выше анон про реестр писал, это и был ответ, мудила.
>>800951
#163 #800951
>>800950
Охуенный ответ. Я сказал "по сути".
#164 #800952
Господи как я люблю этот петушатник
#165 #800961
>>800889
Пишет, что нет такого метода isNull()
>>800965
#166 #800962
>>800939
установить линукс а на винде писать сишарпом.
#167 #800965
>>800961
ты его сам должен же написать в классе откуда вызываешь, метод(как то так)

public boolean isNull(){
___if (%usernameObject% == null)
_______return true;
___else return false;
}
а потом просто его юзаешь

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

public boolean isNull(Object userNameObject){
___if (userNameObject == null)
_______return true;
___else return false;
}

а конструкция с тренарным оператором будет такая

this.isNull(boardCombo.getSelectionModel().getSelectedItem()) ? boardstr = boardCombo.getPromptText() : boardstr = boardCombo.getSelectionModel().getSelectedItem().toString();
#167 #800965
>>800961
ты его сам должен же написать в классе откуда вызываешь, метод(как то так)

public boolean isNull(){
___if (%usernameObject% == null)
_______return true;
___else return false;
}
а потом просто его юзаешь

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

public boolean isNull(Object userNameObject){
___if (userNameObject == null)
_______return true;
___else return false;
}

а конструкция с тренарным оператором будет такая

this.isNull(boardCombo.getSelectionModel().getSelectedItem()) ? boardstr = boardCombo.getPromptText() : boardstr = boardCombo.getSelectionModel().getSelectedItem().toString();
#168 #800985
>>800947
Прочитал 600 стр, исписал дохуя кода, доволин. Другой анон.
#169 #800998
>>800947
Этот джентельмен верно говорит.
Шилдт не годится ни в качестве учебника, ни в качестве справочника.
>>801237
#170 #801012
>>800946

> IDE, для петушков


А ведь в нормальных языках есть REPL :3

Даже в C# обещали завести в новом coreclr
#171 #801021
читаю первый том хорстманна
закончил главу про интерфейсы и внутренние классы
ну про интерфейсы вроде как болиелимение понятно, а вот насчет внутр. классов какая-то каша
это нормально при первом чтении?
бтв, а зачем нужны внутр. классы?
>>801026
#172 #801026
>>801021
Смотри, вот ты видишь что у тебя получился слишком большой класс A.

Ты выделяешь часть логики в отдельный класс B,
но блин замечаешь что B слишком часто ссылается на поля/методы класса A.

У тебя есть два варианта:
0) Суровый рефакторинг, что бы убрать все зависимости
1) Передать экземпляр класса A в конструктор B и сохранить ее
2) Сделать B внутренним классом A.
После этого B будет видеть все поля/методы (и даже приватные) класс A.
Те у него будет НЕявная ссылка на A, но создать B за пределами класса A уже не получится.
#173 #801034
>>800889
final String boardstr = (boardCombo.getSelectionModel().getSelectedItem() == null) ? boardCombo.getPromptText() : boardCombo.getSelectionModel().getSelectedItem().toString();
}
#174 #801116
Я было думал пойти в Java-разработку - есть знакомый, который набирает команду в проект связанный с медициной и big-data. Но почитал эту ветку и вижу что в современной Java нет удобного способа выполнить zip четных и нечетных элементов массива. Не знаю, на сколько мне это часто требуется, но хотелось бы чтобы такие возможности были в языке/стандартной библиотеке. А писать свою slice/zip - мне что-то не позволяет. Так что, пожалуй, буду на Python/Django делать сайты для аптек.
#175 #801118
>>801116
вся суть жс уебков
#176 #801122
>>801116
Хех.
Для бигдаты свои отдельные либы-технологии и очевидно, что они не лежат в коре, который писался для тостеров и микроволновок.
#177 #801138
Где можно почитать про DI и IoC. Прочитал википедию, ничего не понял. Спасайте аноны.
>>801180>>801188
#178 #801143
>>801116

> бросил биг-дата на Java ради удобного затупливания циферок на пистоне


Вся суть
>>801570
#179 #801148
Кто работал с libgdx, подскажите. Даже простой хелло ворлд с пустым render-методом жрет 1% cpu (i7). Отключил continuousRendering, gpu жрать перестало, но cpu все равно загружен. В интернете нашел только одну похожую темку, там у чела на андроиде жрало 10% cpu в idle. Он написал, что очень часто вызывается waitForEvents. Я припоминаю, что в c++-библиотечках делался тупой while (window.pollEvents()) {}. Можно ли здесь поставить делей? Хотя бы для бэкграунда.
#180 #801158
Есть ли способ при вызове split на String в возвращаемое значение вставлять и разделитель?
#181 #801159
>>801148
window.pollEvents() блокирует поток? Если нет, то поищи другие методы, которые блокируют поток выполнения до тех пор, пока не появляется что вернуть. Если и такого нет, можешь поставить Thread.sleep(1000) в цикле чтоб поток спал 1 секунду.
>>801190
#182 #801160
>>801148

> с пустым render-методом жрет 1% cpu (i7)


Ты программист или домохозяйка?

Нахрена производительность в %CPU меряешь, тебе же дали VisualVM и еще кучу приблуд.
Можешь хоть железные счетчики считать и GPU команды мерить.
>>801190
#183 #801165
>>801158
Нет. Нахуя? Напиши сам.
>>801168
#184 #801167
>>800875
Ты лучше читабельность улучши, тернарный оператор это слабый сахарок.

SelectedItem selectedItem = boardCombo.getSelectionModel().getSelectedItem();
if ( selectedItem != null ) {
boardstr = selectedItem.toString();
} else {
boardstr = boardCombo.getPromptText();
}
sage #185 #801168
>>801165
Бля, мне лень. Мне надо строку посплитать по числам, регэксп [0-9]+.
>>801172
#186 #801170
>>801158
System.out.println(String.join(", ", "op hui".split(" ") ));
>>801173
#187 #801172
>>801168
А на дваче писать не лень. Маладец.
>>801173
sage #188 #801173
>>801170
Регэксп.

>>801172
Нахуй ты-то пишешь тогда в ответ?
>>801175
#189 #801175
>>801173
держи
String regex = "[0-9]+";
System.out.println(String.join(", ", "op hui".split(regex)));
>>801177
sage #190 #801177
>>801175
Не пиши сюда тоже.
>>801178
#191 #801178
>>801177
написал тебе за щеку.
#192 #801180
>>801138
Бамп вопросу.
#193 #801188
>>801138
Не пиши нам и не бампай - мы сами напишем когда надо будет.
>>801199
8 Кб, 474x204
#194 #801190
>>801159
>>801160
Походу я баг нашел, пацаны.
Вот эта кака сидит в mainLoop() библиотеки LWJGL, на которой работает libgdx. Получается, нельзя поставить frameRate = 0. Он всегда ресетнется до 30.
>>801194
#195 #801194
>>801190
Я думаю это намеренно, что бы никто не ставил нулевой fps.
>>801197
#196 #801197
>>801194
Ну как минимум в том, что переставляют сразу в 30, а не в 1.
>>801207
#197 #801199
>>801188
Но мне сейчас нужно, анон. Подскажи если знаешь.
>>801211>>801227
#198 #801207
>>801197
если сам задашь 1 то все норм будет
>>801233
#199 #801211
>>801199
жди
>>801225
#200 #801214
>>801158
Ну это же легко должны быть, напишите всё за меня, я не погромист.
#201 #801225
>>801211
От мелкобуквенного пидара я больше и не ждал.
#202 #801227
>>801199
Это и есть IoC, если ты не понял шутки.
Народное название: "Принцип Голливуда" - не звоните мне, я вам сам перезвоню. Слова агента/продюссера, управляющего жизненным циклом старлетки.
13 Кб, 435x244
#203 #801233
>>801207
Задал. С 1% упало до 0.4%. Дебаггер показывает, что mainLoop() проходит раз в секунду. Получается, что-то еще грузит. И что-то в этом треде.

Может такое быть, что native методы не отображаются?
>>801288
#204 #801237
>>800998

>Шилдт не годится ни в качестве учебника, ни в качестве справочника



Ты забыл написать почему.
Так почему же?
>>801239>>801621
#205 #801239
>>801237
потому что сраный битоеб уделяет внимание тому чему не надо (на джаве)
>>801379
#206 #801265
Если для запуска джава байткода нужна виртуальная машина, то как он запускается на утюгах?
>>801287
#207 #801287
>>801265
Очевидно что на утюге работает виртуальная машина
вон вспомни те же приложения для мобил начала 2000 - ничто иное как уже мертвая java ME. А вообще утюги и прочую бытовуху программируют на Си
>>801290
4 Кб, 570x67
#208 #801288
>>801233
Походу нашел. Гляньте, как они паузу между фреймами реализовали. То есть, если надо отождать 1000 мс, они вызывают Thread.sleep(1) 1000 раз, сссука.
Это у вас обычное дело в джаве?
>>801297>>801300
#209 #801290
>>801287
А для каждого процессора заново пишут jvm? И она в такую урезанную память влезает? Сколько их уже написали?
>>801297
#210 #801297
>>801290

>А для каждого процессора заново пишут jvm?


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

>И она в такую урезанную память влезает?


В мобилы начала 2000ых же влезала

> Сколько их уже написали?


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

>>801288
ну это же не без повода сделано
и не забывай - в джаве всем насрать на память и процессор
>>801304
#211 #801300
>>801288
фпс должен быть плавающим sleepDurations.avg() не видишь чтоле?
если ты поставишь фиксированно то у тебя картинка будет лагать
>>801328
#212 #801304
>>801297

>В мобилы начала 2000ых же влезала


Они мощнее всяких микропроцесоров.

>Дурачок что ли? Если уж то используются нормальные платы по типу разбери пай (только еще урезаннее в пиздец), так что если на утюге работает джава значит на нем и линкусы работают


>Оракл говорит что дохуя, но думаю пиздят,


Нихуя не понял. Но ты сам себе противоречишь.
>>801305
#213 #801305
>>801304
я тебе о том, что никто не устанавливает джаву на микропроцессоры
и если на утюге работает джава, то в утюге установлен явно не микропроцессор, а микропека
>>801311>>801649
#214 #801311
>>801305
А мощности какие тогда там?
>>801314
#215 #801314
>>801311
а мне откуда знать, но очевидно что достаточные что бы jvm работала
>>801320
#216 #801320
>>801314
скорее всего какое то говно на arm с парой сотней мб памяти, стоимость такого пару долларов
#217 #801328
>>801300
Короче на винде стандартный резолюшн таймеров - 10 мс. И если вызвать Thread.sleep(1000), будет 100 проверок каждые 10 мс. Thread.sleep(1) cделан для большей аккуратности.
А sleepDurations юзается для учета реально затраченного времени. 1 мс поспал + время на свитч контекста = реальное время. И получится, что за 1000 мс Thread.sleep(1) вызовется меньше 1000 раз.
По крайней мере я так понял.
Учитывая, что мне не нужна такая точность, чутка перепишу метод.
>>801357
#218 #801357
>>801328
Хуле ты не на юнити пишешь, если жаба такое говно?
>>801365
#219 #801365
>>801357
Юнити и сисярп ище большее говно
#220 #801379
>>801239
Как же меня это заебало.
Уже третий подряд учебник поливают говном. Тот хуйня, этот хуйня...
Что не хуйня то?
>>801444>>805772
#221 #801444
>>801379
Двухтомник Хорстманна норм для вкатывающихся. Эти хороши http://www.e-reading.club/bookreader.php/134637/Herlihy,_Shavit_-_The_art_of_multiprocessor_programming.pdf
да и concurrent programming от Дага Ли. Джошуа Блох - прямо Дао от жабы какое - то.

А Шилдт - говно, да.
>>801507
#222 #801475
Есть ли способ при вызове split на String в возвращаемое значение вставлять и разделитель?
#223 #801478
Анон, а есть ли какая-нибудь в Java путевая библиотека, чтобы работать с https соединением? Надо get/post запросы, парсить ответ. Есть рекомендации? Желательно, чтобы с примерами.
#224 #801490
>>801478
java.net.URL
#225 #801507
>>801444
Двухтомник Хорстмана для абсолютно нулячего пойдёт?
>>801562
#226 #801548
>>801478
Apache Http
Unirest
Retrofit
к этому парсер какой хочешь - Gson, Jackson, Apache Json
>>801866
#227 #801562
>>801507
Для такого случая javascript есть. Особенно в последней редакции, где к прототипному программированию добавили классы.
#228 #801567
>>801116
Нет ты не понимаешь, зачем мне копаться в простынях статикодрисни, если я могу писать компактный и красивый код на зипах, как какой-нибудь Питер Норвиг.
>>801598
#229 #801570
>>801143
Нет ты не понимаешь, зачем мне копаться в простынях статикодрисни, если я могу писать компактный и красивый код на зипах, как какой-нибудь Питер Норвиг.
>>801598
#230 #801598
>>801567
>>801570

> статикодрисни


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

> как какой-нибудь Питер Норвиг


Маня, он в первую очередь специалист по ИИ и прочим компьютерным наукам, а потом уже кодер на каком угодно языке.
Инфраструктура языка > синтаксис языка. Какая разница насколько короче твой забагованный велосипед, если подключив либу, ты сэкономишь тысячи и миллионы строк? Я про бигдату если что - тут джяву и пистон сравнивать не приходится.
sage #231 #801610
Есть ли способ при вызове split на String в возвращаемое значение вставлять и разделитель?
#232 #801621
>>801237
Остынь, анон.
Я не претендую на роль несущего истину ни в первой, ни в последней инстанции.

В качестве справочника Шилдт не годится из-за жуткого обилия воды.

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

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

У философии Java ужасные примеры кода. Прям пособие по тому, как не стоит называть переменные, etc. Но отличное, последовательное изложение. У Хорстманна часто ничего не разжеванно и копипаста из документации - зато без воды.

Так-то, ещё раз говорю, остынь и читай то, что считаешь нужным. Хоть Head First Java, хоть JavaRush, если тебе это приносит пользу.
>>801650
28 Кб, 188x234
#233 #801639
БЛЯТЬ БЛЯТЬ БЛЯТЬ
че делать?! я уже ахуел...
дайте материалов бо битоёбству(ну там типо бит заменить определенный на числе, итп), и... молю тебя анон! какую-нить книгу по математике для недоношенных даунов которые хотят писать алгоритмы на жабе, на подобии - реализация логарифмов / линейная алгебра / матан /элементарная математика тоже приветствуется.
У меня через месяц начинается основная учеба в моем мухосранском вузике(не на погромиста), и я хочу научиться хоть чему то.
если ТЫ обладаешь лишним временем, и желанием помочь мне в этом, то возможно я смогу писать код, а значит помочь ТЕБЕ.

п.с. на пике то что заставляет меня страдать и срать кровью.
>>801658>>801676
#235 #801650
>>801621
Я и не кипятился, вроде. Блин, аж неловко стало.

Хорстман полному нубу покатит?
>>801663
#236 #801658
>>801639
Есть эта книга в бумажке.

Итак, пойми: "придумывать"проектировать и даже реализовывать алгоритмы приходится не слишком часто в продакшене.

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

В любом случае, алгоритмы важная часть, но главная твоя цель - зарабатывать себе на хлеб? Тогда дрочи Java Core(если не уже), выбирай себе pet-project и пиши код.

Лично я бы посоветовал тебе начать с:
Хаггарти, ДМ для программистов
МакКоннел, Алгоритмы
>>801668
#237 #801663
>>801650
Первой книгой, которую я купил, была именно книга Хорстманна.

Не жалею ничуть. Она где-то на 7.5/10. Если хочешь моего совета, то вот как тебе стоит поступить.

Читаешь Хорстманна выборочно, главы:
1-5) полностью
6) пропусти часть про вложенные классы
11) полностью
12) пробуешь, не пошло - не парься.

Теперь ты приступаешь к Философия Java. Тут, друг, тебе читать подряд. Что могу подсказать:
1) Тут это считается зашкваром, но можешь после прочтения главы смотреть Головача лекцию на эту же тему.
2) По коллекциям есть отличные статьи на хабре, гугли "коллекции в картинках", как дойдешь.
3) Ты все равно поймёшь все не сразу. Не отчаивайся и удачи.
>>801692
121 Кб, 1326x424
#238 #801668
>>801658

>понимать графики


окей, я это видел в библиотеке от книжки. попробую.

>core


освоил кроме поточности.

>pet-project


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

> advices*


пик: то что я читаю, в основном.
попробую добавить/заменить
>>801696>>801704
#239 #801676
>>801639
Зорич матан
#240 #801692
>>801663
Спасибо.
А ко второму тому Хорастмана когда приступать?
>>801703
#241 #801696
>>801668
Какие-то у тебя слишко уж разные книжки. И для дэбилов, и слишком простые.

Как я читал:
Дискретная математика, Хаггарти
Зорич, 1-й том
Курант и Роббинс, что такое математикатам тебе на первых страницах поясняют за системы счисления

После этого читаешь уже Сэджвика, сильным и полным уверенности.
>>801716
#242 #801703
>>801692
Если ты новичок, то не скоро.
Я купил сразу два тома, но второй пригодился мне от силы раз десять.
Глянь сразу, что там полезного и пока отложи.
#243 #801704
>>801668
Если ты есть в телеграмме/слаке и хочешь задать вопросы, напиши свой ник сюда или каким-нибудь другим образом установи связь со мной.
>>801712
#244 #801712
>>801704
для слака как я помню нужен ящик.
A`^ya.sich2ANUSyandecA*xPUNCTUMrfGhu
>>801910
#245 #801716
>>801696
ok. начну так.

> зорич


начну читать.

> СИ


за СИ я вкурсе. даже могу в вычисления столбиком (зашквар наверное).
#246 #801866
>>801478
Вот этот >>801548 всё норм сказал. Я сам всегда юзал Apache Http, но сейчас пытаюсь перекатиться на использование этого
http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html
Хотя по привычке всё равно первым делом в мвн репе ищу апач.

Единственное, если ответ будет приходить html, то я в своё время использовал парсер JSoup.
>>802428
#247 #801910
>>801712
Выслал тебе инвайт.
>>802294
#248 #802260
Не совсем в тему, но всё же:
в командной строке не могу создать подкаталог с помощью mkdir. Пишет "отказано в доступе".
Отчего сие?
>>802284
#249 #802284
>>802260
Отбой, разобрался.
#250 #802294
>>801910
я хз конечно, но не дошло до ящика =\.
>>802357
#251 #802357
>>802294
Стою на асфальте я в лыжи обутый, то ли - лыжи не те, то ли я - ебанутый.
Только начал пользоваться слакой, отправил тебе инвайт ещё раз.

И да, анончики, если кому-то интересна эта затея: ламповый интерактивный чатик без рака - скидывайте мыльца, заинвайчу.
>>802361
#252 #802361
>>802357
Думаю ещё продублировать конфу в телеграмме, чтобы не было срача телеграмм/слак.
>>802367
#253 #802367
>>802361
Так-с, джентмены, вот ссылка на телеграмм.

https://telegram.me/joinchat/Bbfo5gazm-Pw8o8WWkgm8Q
>>802389>>802391
#254 #802378
>>799993

>Перестаёшь развиваться - вылетаешь с рынка


Ты очень хорошо описал историю Жабы после покупки Ораклом.
#255 #802389
>>802367
Не робит же
#257 #802428
>>801866

>JSoup


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

Есть такой код http://pastebin.com/C4VYL7Jd
Беда в том, что там происходит М А Г И Я. Я сделал парочку заметок в коде, а в частности о том, что после return statement вы вдруг идем вверх по коду и начинаем выполнять функцию foo() снова.
Все константы определены, как
private static final int
Вызывающая функция имеет следующую структуру

switch(foo()){
case AUTH_SUCCESS:
///....
break
}

Я немного уже охуел тут.
>>802574>>802588
#258 #802521
В джаве obj.getProp() инлайнится? Можно ли использовать в цикле?
>>802528>>802529
#259 #802528
>>802521
Ты дебил, нет? Ты наговнокодить успеешь всякого столько, что этот вопрос тебя совершенно не должен ебать. Скажем так, в последнюю очередь. Буквально. Но если все же потребуется узнать - 35 байткодов - предел для включения инлайининга, а вообще, параметр -XX:MaxInlineSize=35 здесь
http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

Еще полезно https://github.com/AdoptOpenJDK/jitwatch -но, повторюсь, тебе это не надо. Этим занимаются хлопцы которые пишут HFT на жабе, тебе как крестоебу переменувшемуся, нужно довериться жабе и получать удовольствие.
#260 #802529
>>802521
Вот как подобное битодрочество делается на коленке:
https://github.com/brettwooldridge/HikariCP/wiki/Down-the-Rabbit-Hole
Опять же, не стоит вскрывать эту тему. Вы молодые, шутливые, вам все легко. Это не то.
34 Кб, 960x540
#261 #802542
Анончик, помоги пожалуйста найти в чем ошибка. Не самым лучшим образом шарю в многопоточности, никак не пойму где подвох.
http://pastebin.com/vpUxSNzq
>>802544>>802575
16 Кб, 551x240
#262 #802544
4 Кб, 450x142
#263 #802549
23 Кб, 656x166
#264 #802556
>>802544

> Двойная проверка


Пришлось картинкой ответить, из-за блокировщика спама
>>802568
#265 #802568
>>802556
Я посмотрел в вики по твоей ссылке. Но так и не понял разницы между заданием и кодом в вики. За тем исключением что в вики переменные объявляются. Это все ошибки чтоли в задаче?
#266 #802574
>>802428

>после return statement


После какого? У тебя их там 5. Нормально опиши проблему. В дебагере пройдись и напиши по какому ветвлению идет код.
>>802735
#267 #802575
>>802542
удали sуnchronized у метода и все ок будет.
#268 #802588
>>802428
Какой-то уебанский код.
>>802735
20 Кб, 710x353
#269 #802590
Анончик, не гони ссаными тряпками нуба. Решил учить джаву и начал с джавараш (знаю что не самое лучшее, но книжки у меня хуево заходят, а тут типа МАТИВАЦИЯ). И есть целая пачка задачек (6-7), которые я решил, но меня посылают нахуй с таким решение, подскажи что не так в частном примере. Пикрил мой код.
Вводить с клавиатуры числа и считать их сумму, пока пользователь не введёт слово «сумма». Вывести на экран полученную сумму.
#270 #802604
>>802590

>break


Признак плохого программиста, особенно в обычном цикле.
>>802605>>805498
#271 #802605
>>802604
Я и есть плохой программист (на самом деле даже не программист пока что). Я делал через булевую переменную и давал ей false вместо break. Но меня посылали нахуй енивей.
57 Кб, 1920x1080
#272 #802607
>>802590
Как хорошо, что даже в 2016 до сих пор находятся нюфаги,
начинающие вкатывание в IT с джавы.
Четким пацанчиками меньше конкурентции.

Ты точно не был в последних трех тредах джабы в /pr
>>802608
#273 #802608
>>802607
Я ни в каких не был :С
#274 #802613
Гляньте прожект. Он не доделан, т.к. нужно уезжать на заработки. Там постараюсь доделать, поэтому сырым выгрузил, чтобы не пропало.
https://github.com/toppestkek/TwitterPoster
#275 #802617
>>802590
throws Exception wtf blya?
>>802622
#276 #802620
>>802590

>break


кекнул, ты сам понимаешь, зачем туда это ляпнул? советую начать с жс, руби, питона, пхп, а лучше хаскеля.
>>802622>>802627
#277 #802622
>>802617
Это джаварашевское.
>>802620
Выйти из цикла?
>>802625>>802629
#278 #802623
>>802590

>while(true)


тут я вообще прихуел с такого цикла. что именно у тебя тру? oO
>>802627
#279 #802625
>>802622
бля, ты гонишь, задача решается через if else. Если вводимое значение равно "сумма", ниче не делать, иначе считать сумму.
>>802627
21 Кб, 697x362
#280 #802627
>>802620
>>802623
>>802625
Ты даун или тролишь?

>что именно у тебя тру


Просто булевое значение для бесконечного цикла.

>решается через if else


У меня и так if else, ты код читал вообще?

Переделал, но разницы никакой.
>>802633>>802745
#281 #802629
>>802622

>Это джаварашевское.


Обработай IOException.
>>802732
#282 #802633
>>802627
даун здесь только ты, не нужно начинать делать задачки на джаве, если ты не понимаешь основ программирования. иди в пхп тред, там хороший старт для нубов, есть задачки. рили, мне нет смысла писать решение за тебя, ты все равно ничего не поймешь, т.к. у тебя даже основ для такой задачки простой нет.
#283 #802650
>>802544
Еще один мамкин оптимизатор нарисовался. Если уж так не терпится синглтон использовать да еще с отложенным созданием - делай через enum http://stackoverflow.com/a/26285591 и не еби мозги ни себе ни добрым донам.
#284 #802732
>>802629
Не умею :С
>>802901
#285 #802735
>>802574
Как оказалось - нужно просто return foo(); а не просто вызов foo() делать.
>>802588
Не спорю. Я пока что затрудняюсь логику нормально описать. Буду рад рекомендациям, как организовать её.
Workflow:
1. Получаю данные формы (hidden, action)
2.Дописываю свои данные и отправляю их на action (post)
3. Иду за редиректом.
3.1 Если в url редиректа есть ключевое слово authorize, то ищу каптчу в странице
3.1.1. Если есть каптчта, что ввожу её, нахожу action формы и отправляю данные опять.
3.1.2. Если нет каптчи, то сообщаю, что данные неверные.
3.2. Если в url есть ключевое слово "__q_hash", то ищу в странице regexp'ом нужный мне url и открываю его GET запросом.
3.3. Если в url есть ключевое слово "authcheck", то опять же получаю данные с клавиатуры, отправляю их POST запросом к action формы. Потом обычно иду к пункту 3.2.
3.4. Если в url есть ключевое слово access_token, то вытаскиваю url и возвращаю его в сосноль.

Ветвление пиздец, я не знаю, как это грамотно описать, так как вычленить ничего из функционала не получается. Иногда приходится чистить куки, данные, все это должно циклично работать с учетом ошибок. Код хоть и уебанский, но пока что работает.
>>803575
75 Кб, 1282x362
#286 #802745
>>802627
Держи болезный.
>>802749>>802906
#287 #802749
>>802794
#288 #802794
>>802749
Што?
#289 #802853
Как в ебанной IntelleJ IDEA отключить автоматическую установку второй скобки? Заебала.
>>802934>>803146
#290 #802901
>>802732
PEZDAC
13 Кб, 542x292
#291 #802906
>>802964
#292 #802934
>>802853
Она тебя еще кавычками заебет. Переходи на Eclipseю
>>803050
133 Кб, 636x960
#293 #802962

>2016


>нет unsigned типов

#294 #802964
>>802906
шг 2
#295 #803023
Как в IntelleJ IDEA запустить прогу из нескольких классов, записанных в одном файле? Или обязательно нужно создавать под каждый класс отдельный файл?
>>803034
#296 #803034
>>803023
Глупый вопрос, но мейн ты прописал?
>>803054
#297 #803042
Пацаны, иду на второй этап собеседования на халявные j2ee курсы в аутсорс компанию.

К чему быть готовым? Может у кого есть опыт? компания белорашкинское отделение iTechArt
>>803055
#298 #803050
>>802934
А за что тогда я бабосы заплатил?
>>803059>>805775
#299 #803054
>>803034
Да, конечно. Но идея требует разнести все классы по разным файлам.
>>803448
#300 #803055
>>803042

>j2ee


Лучше на курсы Кобола.
Всё равно через 10-20 лет вас скорее всего заставят переписать это говно на Кобол. Так что не упусти возможность обогнать своих будущих коллег, пока они застрянут в прошлом, ты будешь изучать модный перспективный язык!
>>803057>>803451
#301 #803057
>>803055
Я и рельсы учу паралельно. Но жава это вариант начать зарабатывать бешаные грошы.

Алсо, по существу плес.
>>803087
#302 #803059
>>803050
Ну извиняй, у тебя хотя бы выбор был. Я плачу этим клоунам за IDE под свой язык лишь потому что альтернатив нормальных нет.
>>805785
#303 #803087
>>803057

>Я и рельсы учу паралельно.


Да, ты сменишь изрядно поседевших (к настоящему моменту), но пока ещё не впавших в старческий маразм хипстаров из 90-х, как раз когда они окончательно выйдут на пенсию. Должен же кто-то будет поддерживать всё это легаси.
>>803088
#304 #803088
>>803087

>из 90-х


Из 2000-х, но суть та же. быстрофикс
#305 #803109
Почему по контрлшифтинтеру в сигнатуре метода IDEA вместо
void pidor() {
}
делает мне
void pidor()
{
}
A?A?A?A?A?
>>803133
#306 #803133
>>803109
Кто-то решил поигратсья с твоими настройками видать.
#307 #803146
>>802853
Ctrl+Shift+Enter юзай, вангую
понравится - еще просить будешь
>>803158
#308 #803158
>>803146
Чёт кроме как открыть редактор кода для активного класса в отдельном окне эта комбинация больше нихуя не делаетю
>>803186
#309 #803161
Как разлочить 10+ лвлы на жавараше не вливая бабло?
>>803402
#310 #803186
>>803158
Бля, а что ты хотел от идеи-то? Жми тогда Ctl+Shit-TAB
#311 #803296
Не понимаю, читал где-то что null не может быть равен самому себе. При этом если я ставлю строке значение null, а потом делаю проверку на строка равна null, то у меня выводится тру.
чому так?
>>803499>>803517
#312 #803297
Caused by: org.jsoup.HttpStatusException: HTTP error fetching URL. Status=403, URL=http://api.4chan.org/a/catalog.json

Чому урл не парсит, он существует.

String json = Jsoup.connect(url).ignoreContentType(true).execute().body();
>>803298
#313 #803298
>>803297
403 Forbidden
Защита от ботов.
>>803305
#314 #803305
>>803298
как же каталог парсить? или мне прям брать и циклом по всем страницам 10 теперь проходить?
>>803312
#315 #803312
>>803305
https://github.com/4chan/4chan-API

>Do not make more than one request per second.


Если ты делаешь два запроса в секунду, на второй приходит 403.
На самом деле непонятно почему. Оно же открытое, даже без ключей.
>>803321
#316 #803321
>>803312
да, оно только по такой ссылке парсится https://a.4cdn.org/a/catalog.json
#317 #803333
>>798959 (OP)
Братва, посоветуйте книжек по:
1) Паттернам программирования на жаве
2) Сервлетам, томкату и вебу
Я дурачек, гуглил, ниче не нашел
>>803345
#318 #803345
>>803333
Да ты и вправду дурачек:

>гуглить книжки по томкату.


Иди вона луче гугли Ноду.
>>803516
#319 #803391
getName

Path getName(int index)

Returns a name element of this path as a Path object.

The index parameter is the index of the name element to return. The element that is closest to the root in the directory hierarchy has index 0. The element that is farthest from the root has index count-1.

Parameters:
index - the index of the element
Returns:
the name element
Че там за индекс?
>>803444
#320 #803402
>>803161
Зачем? Там же говно.
>>803432
#321 #803432
>>803402
А есть где не говно?
Мне просто нравится их аддон к IDEA, сделал задачку, получил + к ЧСВ.

Есть какой-то лучше ресурс с норм задачками для набивания руки по колекциям и прочим хуйням?
>>803447
#322 #803444
>>803391
Это уровень вложенности директорий.
59 Кб, 400x400
#323 #803447
>>803432

> сделал задачку, получил + к ЧСВ.

#324 #803448
>>803054
Используй внутренние классы - один класс внутри другого
#325 #803451
>>803055

> 10-20 лет


Тогда все будут писать на Rust, Haskell, Clojure, Elixir
>>803458
#326 #803458
>>803451

>Rust


Байтоёбство ради байтоёбства.

>Haskell


Очень узкий спектр задач, проще текущего сотрудника обучить хаскелю, чем искать уже знающего.

>Clojure


Хипстерскач хуета без будущего в стиле раби.

>Elixir


Хипстерскач хуета без будущего в стиле раби х2.
>>803467>>803481
#327 #803467
>>803458
Kotlin?
>>803483
#328 #803481
>>803458
сиранул с этого павина
#329 #803483
>>803467
Пока непонятно. Может взлететь, а может оказаться забытым через год.
#330 #803499
>>803296
Тебе в js тред просто. Ничего ты не один такой, там тебе все объяснят.
#331 #803516
>>803345
Ну бля дай инфу, пацан, че ті не как брат.
>>803527
#332 #803517
>>803296
потому что формально ты не проверяешь null == null.
ты проверяешь line == null
>>803930
#333 #803518
Java - умирающая параша без будущего. Загнется через 2 года и будет заменена свифтом
>>803521>>803599
#334 #803520
Любому нормальному пацану на руби/питоне башляют больше чем жавамакаке
#335 #803521
>>803518
одни петушатся про .net
другие про свифт, третьи еще про какую то парашу
а тем временем даже кобол все еще жив
>>803524>>803550
11 Кб, 644x247
#336 #803522
Кто-нибуть подскажите за эту конструкцию.

http://pastebin.com/G3iekCgF
>>803621
#337 #803524
>>803521
Жив у дидов которые пердолили его с 70-х. Молодого пацана туда уже не возьмут. Скоро в говноконторках эти коболы заменят на говноджаву, а в нормальных пацанских компаниях говноджаву на свифт/руби/го. Смекаешь, Вася?
>>803550
#338 #803527
>>803516
толька тебе - гугіль
#339 #803550
>>803521
А в Россиюшке его кто-то когда-то использовал? На Западе-то да, жив.
>>803524

>Жив у дидов которые пердолили его с 70-х. Молодого пацана туда уже не возьмут.


Возьмут, т. к. деды выходят на пенсию.

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


Переписали бы десятилетия назад, если бы это было так просто.
>>803559
#340 #803551
Характерно, что это тред единственный, где регулярно начинают обсуждать Кобол.
>>803554
#341 #803554
>>803551
Тред о наследнике кобола, вот и обсуждают.
#342 #803555
Дякую тобi Боже, шо я не жаваблядь!
#343 #803559
>>803550
Я вот гражданин ес например и как раз вчера наткнулся на вакансию программиста cobol +jcl+db2 в одной ит мегакорпорации за дохуя шеклей.
Хотя я не настолько упорот что бы туда идти, хоть и предлагают даже всему научить лол и еще за это платить, но как представлю что пришлось бы рыться в океане кода написанного во времена когда еще даже не существовало понятия как качество кода, со всеми этими точками и goto, без документации и даже без возможности проконсультироваться с автором который давно уже в гробу, то в дрожь бросает, нахуй надо.
#344 #803575
>>802735
Ну вы чего? Сказали, что говно код, а рекомендаций никаких.
#345 #803598
Посоны, есть что-нибудь в стандартной библиотеке для парсинга большого xml нода за нодой?
Что-то вроде:
XmlFileHandler h = new XmlFileHandler("bigfile.xml");
while (!h.eof()) {
h.nextItem();
}
Естественно без загрузки его всего в память.
>>803614
#346 #803599
>>803518
Аналитика от школьника детектед. И десятой доли возможностей платформы не знает, а пытается делать предсказания на основе количества строк в хеллоувордах и лабах.
>>803610
#347 #803610
>>803599

>возможностей платформы


>джява


ну давай, расскажи нам последние достижения индусов в области набивания текста латиницей

асинк/эвейты вам там хоть завезли, бедолагам, или всё приходится с java.util.concurrent пердолица?
>>803611>>803616
#348 #803611
>>803610
А eventы то зачем?
#349 #803614
>>803598
Вопрос - пиздец сложный, попытаемся на него ответить. Сами мы конечно не справимся, но попытаться можем - если что анонасы помогут. Гуглим java standard library javadoc version XX открываем

https://docs.oracle.com/javase/7/docs/api

ищем по "xml" и находим пакет org.xml.sax
Похоже что надо, на всякий случай переходим на Description пакета:
https://docs.oracle.com/javase/7/docs/api/org/xml/sax/package-summary.html#package_description
Читаем про реализацию.

Есть еще вариант
http://stackoverflow.com/a/1319330
Но то как я его нашел - это слишком сложно чтобы описывать здесь
>>803619
#350 #803616
>>803610
Ну как и ожидалось - налегаешь на побрякушки. Ну держи
1) http://blog.paralleluniverse.co/2014/08/12/noasync/
2) RxJava
Это на уровне библиотек и/или байт-код интроспекции
3) Scala c async/await в стиле сисярповском, т/е с минимальным синтаксическим оверхедом
4) В Kotlin пилят и это будет решение, которое закроет твой вопрос окончательно.

А теперь ты скажи - какой аналог есть для https://github.com/AdoptOpenJDK/jitwatch ?

Это я как раз про то что не только способ красиво записать код определяет успех.
>>803653
#351 #803619
>>803614
Нашел еще stax, вроде попроще.
#352 #803621
>>803522
Устаревний способ обойти все файлы, к которым есть доступ на запись и вывести их имена. Можно проще:

public class App {
public static void main(String[] args) throws IOException {
Files.find(Paths.get("."), Integer.MAX_VALUE, (p, a) -> Files.isWritable(p))
.forEach(p -> System.out.println(
(Files.isDirectory(p) ? "DIR " : " ") + p.getFileName()));
}
}
#353 #803653
>>803616

>В Kotlin пилят и это будет решение, которое закроет твой вопрос окончательно.


В смысле все станут писать на Котлине, а Java умрёт?
>>803677
#354 #803677
>>803653
Милый, жаба всегда подсасывала как язык и лидировала как платформа - jit компилятор, интеграция со смежными стандартами (xml, распределенные вычисления), вопросы безопасности и конечно, библиотеки и инструментарий. C выходом Kotlin появляется шанс утереть нос школьникам и на этом фронте. Не такой заумный как скала, скажем так - туповатый как и жаба по современным требованиям, как раз для энтерпрайза. При этом код почище получается.
>>803727>>803776
#355 #803727
>>803677
Не думаю что много проектов перекатятся на котлин. Тырпрайз это легаси, так что будут на спринге/ее все делать.
6 Кб, 315x137
#356 #803764
А я ведь просто хотел написать парсер аргументов командной строки.
>>803780>>803833
#357 #803776
>>803677

>ява


>распределенные вычисления


мдее, через костыли сериализаторы/десериалзаторы так что невозможно линейно отмасштабироваться даже на 2 узла

>вопросы безопасности


ох лол, очнись, жяба из года в год хакаеся всё новыми эксплойтами

не говоря уже о том, что жвм - самая хуёвая виртмашина евер, о каких преимуществах платформы ты рассказываешь, кроме 100500 попненсорц быдлиотек, написанных Раджешами?
>>803882
#358 #803780
>>803764
В курсе что у них общий базовый класс?
#359 #803833
>>803764
Если всё равно юзаешь антипаттерн, то хуле не throws Error и все?
#360 #803834
точнее эксепшон*
#361 #803882
>>803776
Ох дурень, ладно уж поясню за
1 пункт - эти маня-спекуляции даже комментировать нет смысла
2 пункт - хакаются апплеты - не нужное в общем говно из 90х И про безопасностью я имел в виду не только песочницу, но и разграничение прав доступа, policy - вот это все.
3 пункт - опять бред. Чем она хуевая, маня?
>>803889
#362 #803889
>>803882
жаба может и говно морально устаревшая, но jvm так то самая эпичная виртуальная машина
>>803892
#363 #803892
>>803889
Абаснуй
>>803897
#364 #803897
>>803892
Обосновал тебе за щеку.
#365 #803902
Чем JVM лучше CLR?
>>803926>>804185
#366 #803926
>>803902
кроссплатформенностью?
>>804070
#367 #803930
>>803517
но я написал if null == null и это сравнение вывело тру.
#368 #803947
AbstractDelegatingThreadRegistrarSingleton
AsyncRemoteInvocationStreamSingleton
AbstractAnnotatedParameterNameConstantsFactory
DecoratingParameterNameHolderFactoryProxy
AbstractComposablePointcutMapException
#369 #803948
AbstractScheduledPreparedStatementWeaver
DefaultNamespaceAccessorSingleton
DynamicNavigationNotificationSingleton
ComposablePlaceholderTranslationBean
AbstractStandardVelocityEditorException
#370 #803949
AbstractNestedAtomTransactionFactoryProxy
AbstractDisposableVelocityPropertiesSingleton
AbstractSimpleNavigationErrorFactoryProxy
DisposableParameterNameReporterImpl
HierarchicalHessianLifecycleFactoryProxy
>>803964
#371 #803964
>>803949
че сказать хотел, болезный?
>>803969>>803995
#372 #803969
>>803964
это петушок из js треда бесится.
#373 #803995
>>803964
джява из май фэйвалит плягламминг лянгвидж
#374 #804035
Как убрать из шапки раздела?

> В: Хочу стать программистом, какой язык учить?


> О: Английский + Java

>>804064
#375 #804064
>>804035
Моча не послушоит.
>>804565
#376 #804068
Как ваадином нарисовать html страничку для web-приложения? Я правильно понимаю, что нужна эта самая cтраничка, которую я буду править с помощью jsp? Или одна из jsp и будет первичным отображением? Короче дайте гайд по веб для тупиц.
#377 #804070
>>803926
из какого года пишешь?
>>804165
#378 #804165
>>804070
из 2016
давай расскажи мне как ты запускал сишарп высеры на юниксах
>>804213
#379 #804185
>>803902
JITом.
>>804222
#380 #804213
>>804215
#381 #804215
>>804213

> моно


> дохуя пердолинга


> краш на краше крашем погоняет


ахуенная кросплатформенность
>>804218>>804232
#382 #804218
>>804215
Подтверждаю. Даун прочитал в рекламных буклетах заявленную кроссплатформенность и поставил галочку - типа есть.
>>804232
#383 #804222
>>804185
Ага, щаз. Читай маня http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.110.2984&rep=rep1&type=pdf

>CONCLUSIONS


We have demonstrated that there is little performance dif-
ference between the JVM and the CLR, for standard object-
oriented style programs.

Что до

>The feature of the CLR that gives it an advantage over the


JVM is its ability to handle other language paradigms than
just modern object-oriented style.
То даже с такими компромиссами в мире больше проектов, использующих языки ФП под жабу (В основном Scala, но иногда и Clojure). Наверное потому что эти ньюансы интересны только теоретикам и разработчикам компиляторов / VM, но не бизнесу, который выбирает Java.
#384 #804232
>>804215
>>804218
Отлично запускаю на Mono всё, что не требует WPF и прочих Windows-only фреймворков. Зависимости нет, брат жив.
>>804237
#385 #804237
>>804232
Examples & Hello worlds?
>>804340
#386 #804240
Поясните за использование синглетона при синхронизации тредов plox. Он защищает от использования одного и того же объекта класса двумя тредами?
>>804252
#387 #804252
>>804240
синглетон антипаттерн

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



неоч, он защищает от возможности существовать нескольким версиям одного и того же объекта одного и того же класса, в разных потоках, правда в синглетоне это достигается драконовским путем - невозможностью существования нескольким инстанциям одного и того же класса вообще. а в ооп это плохо
>>804274
#388 #804274
>>804252
т.е. если класс сделан синглетоном, то нельзя сделать два объекта этого класса/две инстанции, а методы этого объекта могут вызываться разными тредами с разными параметрами и возвращаемыми значениями?
>>804287>>804291
#389 #804287
>>804274
т.е. чем городить синглтон луч сделать класс со статическими методами.
>>804290
#390 #804290
>>804287
но зачем мне делать статические методы, если я хочу сделать несколько тредов, вызывающих эти методы и в каждый метод каждым тредом передаются разные параметры и значения будут разные же.
>>804294
#391 #804291
>>804274
Класс со статическими методами тоже лучше не использовать если это не библиотечный класс (как например java.Math)
Просто понимаешь суть ООП в том что есть объекты со строго определенной функциональностью (разделяй и властвуй короче) и эти объекты между собой общаются, те мы имеем дохуя локальных состояний.
Так что если ты хочешь в нескольких потоках работать с инстанцией какого то класса, то лучше делать это через механизмы синхронизации которые в джаве очень даже неплохо (это мало сказанно) реализованы.
>>805778
#392 #804294
>>804290
тогда просто создавай несколько инстанций класса и работай с ними в разных потоках по своему.
#393 #804308
Зеленый нуб в треде. Взяли на полудистанционную стажировку по жабе, буду учить.
А хейтеры пусть сосут хуяку ^^
#394 #804340
>>804237
Нет. Игру (фреймворк MonoGame; про Unity3d как-то даже и говорить нечего).
>>804365
#395 #804365
>>804340
ахуеть просто, значит теперь что бы была мультиплатформенность нужно СПЕЦИАЛЬНЫЕ фреймворки использовать
>>804389
#396 #804384
Java is dead, иди в JS thread.
#397 #804389
>>804365
Нет, специальные фреймворки нужно использовать, чтобы писать что-то сложнее хеллоуворлда. Хеллоуворлды и так кроссплатформенны.
10 Кб, 521x249
#398 #804390
Знатоки жавы, объясните мне.

Почему при передаче в метод всё нормально сжирается, а при присваивании требует явное приведение? А?А?А?А?А?

java.util.List<java.lang.Integer> cannot be converted to java.util.Collection<T>
>>804397
#399 #804397
>>804390
Потмоу что нельзя коллекции Number'ов присвоить список Integer'ов. Так как в этом случае нельзя туда будет пихнуть Double, а такая возможность быть должна, так как коллекция принимает ЛЮБОГО потомка Number.
Просвещайся: http://stackoverflow.com/questions/5763750/why-we-cant-do-listparent-mylist-arraylistchild
>>804398
#400 #804398
>>804397

>Потмоу что нельзя коллекции Number'ов присвоить список Integer'ов.



Даунич, при передаче в метод идет присваивание.
Integer потомок Number. Ебанашка, иди нахуй со своим ответом. Это не ответ.

Суть в том, что даже если extends Integer все равно не будет кастить неявно.

Вопрос, почему спецификация языка разрешает кастить в одном случае, а в другом нет.
>>804431
#401 #804431
>>804398
потому что эта такая фича коллекций - они то сожрут все если >>804398

>при передаче в метод идет присваивание


Штоблять
>>804452
5 Кб, 377x96
#402 #804452
>>804431
Короче понятно. Жава не умеет выделять тип дженерика из сигнатуры статического метода.

Для неё это просто буковка T
#403 #804457
>>804452
Лол, чувак ты только об этом узнал? В джаве нет нормальных дженериков и не будет.
>>804490
#404 #804459
>>804452
generics в жабе это синтаксический сахар
#405 #804490
>>804457
Не факт.
>>804452

>Для неё это просто буковка T


Это скорее ты, тупая обезьяна, смешиваешь без различия Generic type c wildcard Upper bounded type ограничением
>>804495
#406 #804495
>>804490
Что значит "не факт"? С этими дженериками можно кое-как жить, они не такие продвинутые как сишарповские и тд. Но лучше они не станут, так как в общем-то уже куча обходных путей и НИНУЖНО. Хотя вот в котлине замутили костыль, позволяющий в инлайняшихся методах расширить функционал дженериков.
>>804502
#408 #804503
>>804502

> public static <any T> Node<T> flatten(Node<T> node) {


Ась? ) Какой - то any... Новые сложности для жаба-макак.
#409 #804564
Че скажете за Сбертех?
#410 #804565
>>804064
И дебил-оп форсит аниме, вместо нормальной шапки.
ExecutorService.jpg #411 #804568
Анон, подскажи как быть.
У меня есть main-thread, который срет в newFixedThreadPool задачи. Соотвественно, задачи могут быть выполнены\не выполнены. Хотелось бы наладить контроль ошибок.

Другими словами, как только в каком-то треде случается ошибка, то он должен сообщить об этом и наполнение очереди должно прекратиться. Как такого добиться?

Или мне проще контролировать возможность ошибки ещё до попадание её в пул тасков?
>>804646>>804664
#412 #804646
>>804568
передавай в треды сам ExecutorService, и если в них произошла ошибка то вызывай executorService.shutdown()
как вариант
10 Кб, 396x304
#413 #804663
А напомните зачем в 2016 maven, когда gradle?
#414 #804664
>>804663
потому что градля тормоз ебучий
сам активно пользуюсь gradle и бугурчу

>>804568
есть как отписал анон выше способ через ExecutorServic, если нужен mmmaximum контроль или ты как я велосипедостроитель то можешь своего обсерватора написать
http://www.tutorialspoint.com/design_pattern/observer_pattern.htm
>>804679
#415 #804670
>>804663
Маленький еще, чтобы понять.
>>804679
#416 #804679
>>804664
При хелловорлде медленнее, но поди используй мавен в крупных проектах (в которых еще и куча сабпроектов). Сначала настрой сборку и сопутствующие таски как потрiбно, а потом страдай при каждом запуске без нормальной инкрементальной сборки.
>>804670

> пук в лужу

>>804691
#417 #804691
>>804679
О чем с тобой говорить, если ты не в состоянии документацию прочесть?

https://maven-incremental-build.java.net/site/usage.html

http://stackoverflow.com/questions/8918165/does-maven-support-incremental-builds
>>804695
#418 #804695
>>804691
О чем с тобой говорить, если ты не в состоянии даже сообщение собеседника прочесть?

> Сначала настрой сборку и сопутствующие таски


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


> без нормальной инкрементальной сборки


Потом туда же полную интеграцию с CI прикрутишь для полной автоматизации и реализации любых необходимых действий, вплоть до кодогенерации говнеца и автокоммита каждую ночь.
Петушок.
>>804717
#419 #804717
>>804695
Ясно, я пытался общаться с дебилом. Приходи после процедур.
>>805506
#420 #804788
Мда, использовать синглетон оказалось неправильным шагом.
>>804820
#421 #804820
>>804788
синглетон - антипаттер
хотя джява из них состоит так что норм
139 Кб, 605x756
#422 #804830
как бы фонт сайз у твиттора поменять?
#423 #805036
Котаны поясните про конструктор с дженериками.

Есть класс один класс.
Ему надо в конструктор передавать List
Но этот List может быть с разными типами.

Как это офрмить с помощью дженериков?
#424 #805044
>>805036
Например обьявляю я класс Class<T>

У него конструктор
public Class(List<T> initdata)

Как затем в конструкторе выполнить инициализацию полей в классе в зависимости от типа T
>>805051>>805109
#425 #805045
>>805036
public class Xyita<T> {
____public Xyita(List<T> list) {
____...
____}
}
>>805050
#426 #805050
>>805045
Ну я так и делаю
Но в случае разных типов нужно разные вычисления делать.
Например если T = Class1 то одно
если T = Class2 то другое
#427 #805051
>>805044
А никак, передавай для этого класс итемов в листе, с джавовскими дженериками ты его не достаенешь, ну разве что если гарантировано в коллекции что-то есть ты сможешь провернуть фортель с list.get(0).class. Но лучше в конструктор передавать Class<T> (в джаве есть класс для классов) и дальше isAssignable или еще как чекать.
>>805055
#428 #805055
>>805051
Ну у меня список точно не пустой.
а как сравнить init.get(0).getClass() с классом?
Какой то метод есть?
63 Кб, 828x434
#429 #805056
>>805050
Ну короч это будет хуйня.
#430 #805060
>>805056
А через
init.get(0).getClass().getName().equals(Сдфыы2.class.getClass().getName()) прокатит?
>>805092
#431 #805072
>>805056
Даже если так сделать.
То как потом с итератором работать?
К полям класса доступ не получить?
>>805092
#432 #805080
>>805056
что за шрифт?
>>805092
#433 #805086
Господа, скиньте еще раз задачку на змейку от жавараша, хочу сделать.
#434 #805092
>>805060
Ну да, но isAsignable шире будут и потомки учитываться, но если ты хочешь конкретное равенство то лучше так: Integer.class.equals(clazz);
>>805072
Все получится, нужно будет или кастануть всю коллекцию к List<Xuita> или каждый раз кастить результат iterator.next() к нудному классу.
>>805080
Хз, стандартный какой-то не знаю где посмотреть, это вообще Android Studio на маке.
#435 #805095
>>805050
Я бы сделал интерфейс или общий класс E :< T1, T2, T3, и все вычисления выразил бы в нём.
И возвращал бы List<T extends E>
0.5 лет в Java, ни разу не программировал больших проектов
#436 #805104
>>805036
Решай, будет ли ограничение типа инвариантным или контр/ко-вариантным.
http://stackoverflow.com/questions/2723397/what-is-pecs-producer-extends-consumer-super
Алсо было бы интересно узнать зачем вообще дженерики понадобились.
>>805126>>805146
#437 #805105
>>805050

>Но в случае разных типов нужно разные вычисления делать


Это про динамический полиморфизм, когда есть разные реализации интерфейсов, да?
#438 #805109
>>805044
-public Class(List<T> initdata)
+public Class(List<T> initdata, Class<T> clazz) {
... clazz.newInstance()
}

Это если есть конструктор без аргументов и желание обмазаться дженериками...
#439 #805120
>>805056
Если тебе надо работать с числами, то T extends Number и юзай блядь общие методы намбера, даун ты конченый.

Про полиморфизм почитай.
>>805146>>805186
#440 #805126
>>805104
Для типобезопасности? Чтобы на этапе компиляции тебе компилятор по рукам надавал когда ты передаёшь List<Hui> в метод с параметром List<Pizda>.
>>805147>>805312
#441 #805146
>>805104
Ну потому чтор компилятор не дает сделать два конструктора с с одинаковой сигнатурой.
А Class(List<Hui>) и Class(List<Pizda>) он считает именно таковыми.

>>805120
Разумеется List различных классов с разными полями и не имеющие общего родителя или унаследующие общий интерфейс.
Интерфейс там совсем не нужен ибо классы совсем не одинаковы.
Наследовать от пустого абстрактного класса тоже хуйня какая то беззадачная
>>805201
#442 #805147
>>805126
Скорее чтобы не создавать абстрактную фабрику классов лол
#443 #805165
Джависты, поясните за JavaBeans, ибо я не ебу что это. Какой-то анон тут как-то сказал, что это не надо учить, потому что JavaBeans не нужен, хотя на википедии написано что-то умное по этому поводу, и почему-то кажется, что это важно вещь.
>>805175
#444 #805171
>>805036
В продолжение специальной олимпиады
public static <T> List<?> apply(List<T> elements) {
List<Integer> resultOfInts = elements.stream() .filter(e -> e instanceof Integer).map(i -> (Integer)i + 1).collect(Collectors.toList());
List<String> resultOfStrings = elements.stream() .filter(e -> e instanceof String).map(s -> s + "2").collect(Collectors.toList());
return (resultOfInts.isEmpty() ? resultOfStrings : resultOfInts);
}
#445 #805175
>>805165
это несколько правил по написанию модельных классов с геттерами и сеттерами.
>>805243
#446 #805186
>>805120
Папка твой даун, я чуваку пример показал, а ты сразу плеваться.
#447 #805201
>>805146

>List различных классов с разными полями и не имеющие общего родителя


Хуйня какая-то, зачем эта хуйня нужна если у них ничего общего нет между собой? Разве что это метод, работающий со структурой данных напрямую типа length, first, last, etc, но тогда и сам тип не нужен.
>>805204
#448 #805204
>>805201
Класс которому передается лист из других классов нужен для визуализации этих классов.
Не плодить же 100500 классов для каждого входного класса?
#449 #805243
>>805175
То есть это хорошая нужная штука?
>>805315
#450 #805312
>>805126
Ты бы описал все же конкретнее задачу-то.
Потому что лучше и проще всего типобезопасность решается контрактами 'extends', 'implements'.
#451 #805315
>>805243
Для какого-нибудь Model Driven Development, так вообще обязательная. А в общей практике - оно протухло, как народ понял что никакого рынка компонент не получится.
>>805316
#452 #805316
>>805315
А как же весенные фабрики бобов и бобы предприятий с острова Ява?
>>805338
#453 #805338
>>805316
Эта партия протухла, ожидайте новую, с острова Котлин.
>>805365
#454 #805365
>>805338
Ерохины уже энный проект на Спринге закрывают с восьмизначным бюджетом, а сычуши из реактивных мозгов все читают свои мантры.
>>805400>>805486
#455 #805400
>>805365

>Спринге


>восьмизначным


Разбудил соседей. Эй, макак, нам тут CRM надо сделать за 15к в месяц, приступай, а то на выходных работать будешь.
>>805486
#456 #805486
>>805400
>>805365
Когда я уже доучусь до того уровня, чтобы понимать такой юмор. :(
#457 #805498
>>802604

>>break


>Признак плохого программиста, особенно в обычном цикле.


А чего так?

Я так понимаю, хороший программист сделал бы так, или я ошибаюсь?

boolean loop = true;
while (loop) {
if (условие) {
...
loop = false;
} else { ... }
}

Я правильно понимаю? И всё-таки, анончики, поясните за break. Чем он плох?
>>805542>>805552
#458 #805506
>>804717

> кукареку дебил :((((


Слив засчитан.
#459 #805536
вопрос по hibernate native sql. надо проверить существует ли запись с данным ид или нет. пробовал через
Object record = sessionFactory.getCurrentSession().createQuery("select * from hzhz where id=xzxz").uniqueResult();
и соответственно если record == null, то запись не существует. проблема в том, что нихуя не работает. вставлял костыль вместо uniqueResult() писал list(). тогда проверяем лист на isEmpty() - через эту хуйню работает, но хочется без листов. подскажите. гуглить по native sql это пиздец гемор (пробовал)
#460 #805542
>>805498

> сделал бы так, или я ошибаюсь?


Нет конечно, смотри и учись:

try {
___while (loop) {
______if (условие) {
...
_________throw new Exception();
______} else { ... }
___}
} catch (Exception e) {
}
>>805552>>805564
#461 #805552
>>805542
>>805498
Может я конечно хуй, но использовать маркеры явно больший быдлокод чем break.

Какой-то даун выше всрал идею, что break быдлокод.

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

Соответственно вместо кода

while (условие) {
___...
___if(условие2) break;
___...
___if(условие3) break;
}

нужно пилить быдлокод

while (условие && маркер) {
___...
___if(условие2) маркер=false;
___if(маркер) {
______...
______if(условие3) маркер=false;
___}
}
#461 #805552
>>805542
>>805498
Может я конечно хуй, но использовать маркеры явно больший быдлокод чем break.

Какой-то даун выше всрал идею, что break быдлокод.

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

Соответственно вместо кода

while (условие) {
___...
___if(условие2) break;
___...
___if(условие3) break;
}

нужно пилить быдлокод

while (условие && маркер) {
___...
___if(условие2) маркер=false;
___if(маркер) {
______...
______if(условие3) маркер=false;
___}
}
>>805570
#463 #805564
>>805542
Странно, что ты не посоветовал мне перекатиться в Haskell.
#464 #805570
>>805552
Чего ты хочешь от обезьяны, которая только кидаться какашками способна?
60 Кб, 400x427
#465 #805576
Сап, Java-программач, подкиньте пожалуйста годного материала по новым фичам в Java 8 (изучал по книге Хорстманна для Java 7), а то я обсерился, когда увидел подобную конструкцию:

long startsWithB =
stringCollection
.stream()
.filter((s) -> s.startsWith("b"))
.count();

Уверен, что анона есть такой материал.
#466 #805578
>>805576
Java8
Полностью обновлено с учетом
версии Java SE 8 (JDK 8)
Полное руководство
Девятое издание
Исчерпывающее и незаменимое учебное пособие по написанию,
компилированию и выполнению современных программ на Java
Герберт Шилдт
>>805581>>805617
146 Кб, 619x801
#467 #805581
>>805578>>805576
Чет строчка проебалась. Короче вот. На инглише вроде ещё свежее есть.
>>805583>>805617
#468 #805583
>>805581
Хорстманн сука в осенью второй том своей книги выпускает по Java 8, а Java 9 выходит через полгода, пиздец короче.
>>805619
#469 #805617
>>805576
Лучшая книга по 8 джаве - Java 8 in action. Анонарий в тренде посоветовал, я навернул 2/3, пока время было (работку менял) и у меня без перерыва сперма текла из члена при чтении. Очень проникся всей хуйней - behavior parametrization, функциональными интерфейсами, лямбдами, стрим апи и прочей няшной хуйней. Рекомендую. Да и вообще от manning книги дюже непоганы.

> я обсерился, когда увидел подобную конструкцию:


Тут секрета нет:
БЕРЕШЬ
@
И ЧИТАЕШЬ КОНСТРУКЦИЮ НА АНГЛИЙСКОМ ЯЗЫКЕ
@
КАК ПРОЧИТАЛ, ТАК И РАБОТАЕТ

>>805578
>>805581
Говнина ебучая.
#470 #805619
>>805583
Сейчас меня некоторые могут попытаться обоссать.
Шилдтохорстманы сорта одного манятеоретика, имеющего довольно далекое отношение к реальности.
#471 #805696
Блядь, почему пробник ваадина не работает в эклипсе? Ничего не активно.
#472 #805713
Что почитать про java io?
>>805725
#473 #805725
>>805713
io прошлый век, уже nio.2 вышел.
>>805726
#474 #805726
>>805725

>io прошлый век, уже nio.2 вышел.


Мне для андроида ведь
>>805734
#475 #805734
>>805726
Беда. Вообще, неплохо описано в Boyarsky & Selikoff - Oracle Certified Programmer. До этой книжки я и сам io не знал толком. Может и чето-другое анон посоветует.
#476 #805768
>>800310

>ж2ее эт офк любой жавист должен знать


да ладно?
джун должен знать как работать с JMS, EJB, JSP, JNDI
Из всего J2ee этого обычно знают только JPA(потому что хибернейт) и то кусочек
>>800311

>Фу быдло.


Пиздец, просто пиздец. Съеби отсюда грязь

тех лид кун
>>805809
#477 #805770
>>801148
я работал, ограничивай FPS
#478 #805772
>>801379
учебники хуебники
нет ничего лучше чем документация от разработчиков джава
читай первоисточник, читай исходные коды java и библиотек
на анлийском! учи английский, если не знаешь
#479 #805775
>>803050
ебать лох
#480 #805778
>>804291
ты сейчас описал классический случай каноничности кода в ущерб производительности, поздравляю
#481 #805782
>>804663
поймешь когда в какой-то хитрожопой либе не будет плагина под гредл, а под мавен будет
>>805790
#482 #805785
>>803059

>этим клоунам


Oни создали Kotlin, он пахаронит жабу ЕЕ. кокок.
хотя она и так уже умерла
#483 #805786
>>805036
Палю годноту
List<Object>
#484 #805790
>>805782
Дякую Боже что я не в тырпрайзе.
#485 #805794
>>804663
По ому что локальный мавен сделать легко копированием, а грабля привязана к ос, на которой стоит.
>>806281
326 Кб, 843x418
#486 #805809
>>805768
Кстати, есть тут суровые JavaEE девелоперы?

Что вы думаете про это видео https://www.youtube.com/watch?v=TSAlj04_tkA

Я вот android разработчик и никогда не писал тырпрайз, но интуитивно согласен.
#487 #805818
Проверка на подключение к сети?
#488 #805824
>>805809

>и никогда не писал тырпрайз


4 года в энтерпрайз разработке и 2 в поддержке
если кратко:
1. Энтерпрайз(E) - это охуительно сложно, потому что ты винтик в оконной ручке на атомной электростанции.
2. E - это очень просто, потому что оконная ручка может держаться на 2х из 4х винтиков.
3. E - это беспрерывный процесс, который нельзя просто взять и поменять/остановить/перезапустить.
4. Будучи винтиком - ты ощущаешь свою причастность к работе атомной станции и гордишься этим.
5. В E нет места размышлениям java или kotlin или scala. В E - "у нас перегрелся генератор на 2м реакторе блядь!! все сорвались быстро и починили нахуй! 1млн бабла в секунду теряем ебанавротнахуй!!!" после починки, делаешь так чтобы не повторилось - уже вдумчиво.

примерно так
#489 #805831
>>805809
Кекс задвигает что джава годится не только для тырпрайза, но и для рядовых задач. Более того, он утверждает, что те задачи, для которых традиционно применялись enterprise решения на самом деле легко решаются на легковесных платформах типа jetty. Главное, в чем он прав это то, что не стоит переусложнять простые решения. Но тут же он начинает говорить про ант, нестандартное расположение исходников в проекте и статические импорты, пытаясь изобразить "функциональный код". Получается довольно скверно, спасает только что кода по 10 строчек в каждом классе.
Ну и не нужно забывать, что для защиты своей точки зрения он приводит обыкновенный недокруд. Если бы для его задачи нужно было что-то посложнее, стоило бы выбрать толковый стек и делать на нем. И накакого анта в 2016.
#490 #805884
Надо ли джуну знать EE или SE достаточно?
#491 #805899
>>805884
надо
#492 #805902
>>805809
Тырпрайз. Если твой стартап или продукт небольших или средних масштабов - это милая фея пульсирующая всеми красками жизни, то тырпрайз - это когда она сдохла, превратилась в зомбимутанта и на ней выросло пол тонны раковых клеток. Тырпрайз это уёбищные невоспроизводимые братские могилы застывших человеколет программистишек пущенных в расход. И смысл всего этого людоедского жертвоприношения лишь в том, чтоб заработать владельцам очередную яхту. Очень увлекательная работа, ощущаешь свою значимость по полной.
#493 #805904
>>805884

>Надо ли джуну знать EE или SE достаточно?


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

И что значит знать SE или EE? уметь скачивать дистр с oracle.com?
Джун должен суметь понять что от него требуется сделать в конкретной задаче и с помощью сеньора или ваще сам он это должен сделать.
>>805907
#494 #805907
>>805904
Ты чё дерзишь, чучундра епта. Мне тебе ебло разбить, корзиноид?
>>805942
#495 #805937
>>805884
Достаточно SE, даже ME, если сделаешь машину времени и отправишься в 2000.
#496 #805942
>>805907
глядите ка - боевой претендент на вакансию
тебе перезвонят
>>805966
#497 #805966
>>805942
Я щитаю надо брать.
#498 #806042
Что означает "опыт работы с Git" в объявлениях вакансий? Заливка на github с использованием git-плагина для eclipse считается за опыт?
>>806047
#499 #806047
>>806042
думаю это намек на наличие портфолио или опыт работы с другими
>>806048
#500 #806048
>>806047
Как же хорошо что у меня много коммитов в опенсорс проекты.
>>806051
#501 #806051
>>806048
ну это важно на самом деле, профиль на гитхабе например может оч сильно повлиять на решение при рекрутации
>>806052
#502 #806052
>>806051
Отлично! Но ведь чтобы была инфа о твоих ПРах, их нужно делать постоянно, иначе они будут удаляться. Не?
>>806055>>806066
#503 #806055
>>806052
Она будет удаляться*
#504 #806066
>>806052
Можешь скинуть ссылку на проекты в которые ты коммитил и кратко описать как вкатился, за что взялся?
>>806068
#505 #806068
>>806066
Залез на багтрекер, нашёл баг, нашёл причину, зафиксил, сделал пр и всё.
>>806077
#506 #806077
>>806068
Понял, спасибо
#507 #806100
myFirstArray = Math.random (*100);
Я как то неправильно пишу?
#508 #806101
>>806100
myFirstArray = Math.random (*100);
fastfix
>>806105>>806106
#509 #806105
>>806100
>>806101

>myFirstArray = Math.random (*100);

>>806106
#510 #806106
>>806100
>>806101
>>806105
Я заебался, там I в квадратных скобках
>>806113
#511 #806113
>>806106
залей все на пестбин
>>806126
#512 #806126
>>806138
#513 #806138
>>806126
Ты сообщения конпелятора читаешь вообще? Или хотя бы видишь, что IDE тебе красненьким подчеркивает?
>>806145
#514 #806145
>>806138
Ругается на строку с применением рандома. Уже закрыл, что то в роде illegal start of expression
>>806156
#515 #806156
>>806145
Ну читай дальше, слепошара
>>806165
#516 #806165
>>806156
Выебнулся, молодец
>>806169>>806173
#517 #806169
>>806165
До чего же мы дошли, что умение читать уже признается выебонами?
Хватить дрочиться в консолечку. Поставь себе идею и начинай уже писать код
>>806173
#518 #806173
>>806169
А это чтоле тот самый консоле-дрочила?

>>806165
Алё, лошара, хватит понты гнуть - не твоё это, уж если не можешь читать сообщения в консоли, то ставь IDE тогда. Авось легче пойдет нет - не пойдет, сомневаюсь что - то
>>806185
#519 #806182
Жаба охуенна. Пытаюсь что-то найти — получаю либо простейшие helloworld'ы, либо EnterpriseRobustScalableBeanFactory.

А найти я хочу всего-то пример RESTful-приложения с тестами и значениямы, берущимися из application.properties или еще какого-нибудь файла конфигурации.

Сейчас сделал примитивнейшее приложение на spring-boot и прописал в классе контроллера поле с аннотацией @Value — при обычном запуске туда попадает то, что нужно, а при запуске тестов там null.
#520 #806185
>>806173
Просто скажите, что я делаю не так
>>806187
#521 #806187
>>806182
Ну хоть бин контроллера создается в тестовом контексте?
docs.spring.io/spring/docs/current/spring-framework-reference/html/integration-testing.html#__testpropertysource

>>806185
Люди не хотят учить даже арифметику, но в консолечку попердолиться - это самое-то.
Проверь имена переменных. Убери скобки. Проверь тип арифметического выражения
#522 #806193
>>806187
Так я сюда тоже не сразу пришел. Проблема именно с рандомом, мне кажется оформление не правильное. Менял переменные, скобки, типы переменных(потому что в описании рандом работает с double), пересобирал. Сама строчка оформлена как надо? С рандомом в яве я первый раз работаю
>>806197
#523 #806196
>>806187
@TestPropertySource тут ни при чем, application.properties в самом тестовом классе явно виден.

>Ну хоть бин контроллера создается в тестовом контексте?


Хороший вопрос, спасибо. Я создавал контроллер через MockMvcBuilders.standaloneSetup(new MyController());
Похоже, надо создавать через MockMvcBuilders.webAppContextSetup, осталось найти как создать контекст для передачи.
>>806200
#524 #806197
>>806193
>>806187
Лол, просто название массива не поменял, вот он и не понимал чего я хочу.
>>806200
#525 #806200
>>806196

> создать контекст для передачи


Просто autowired на его

>>806197
Там еще есть ошибки.
>>806202>>806204
#526 #806202
>>806200
Нету. Поменял имя массива и тип элементов в массиве, ошибок нет.
>>806203
#527 #806203
>>806202
А как же "астериск сто"?
Ну молодец что почти сам допер. Пиздуй дальше писать.
975 Кб, 500x281
#528 #806204
>>806200
Ехала абстракция через абстракцию. Уже сколько лет зарабатываю жабомакакингом, а до сих пор не понимаю, когда этот autowired уместен.
Спасибо, теперь все работает как надо.
>>806207
#529 #806207
>>806204
Значит ты не понимаешь DI/IOC.

> Уже сколько лет зарабатываю жабомакакингом


Вся суть.
>>806209>>806232
361 Кб, 500x656
#530 #806209
>>806207

>Значит ты не понимаешь DI/IOC.


Если точнее, я не понимаю жабий DI/IoC.

>Вся суть.


Ага. Но к счастью, основная моя работа — быть фронтендобогом, а для жабозадач отлично подходит подход пикрелейтед.
>>806302
#531 #806210
Какие подводные камни использования Quasar Fibers?
>>806249
#532 #806232
>>806207
Нет, ты. Для IoC, DI spring-макакинг не обязателен.
>>806302
#533 #806249
>>806210
Ну ты, батя, первопроходцем будешь.

Работа с jvm через агента (усложняется деплой и админство, конфликты с другими агентами - ?), требуется опыт написания программ с кооперативной многопоточностью, кроме, того он contagious и в смысле архитектуры (ну это понятно), и в том смысле что для масштабируемости, очевидно потребуется nonblocking io, а например все развитые jdbc драйверы ориентированы на классический io. Но как - то с теми же БД выкручиваются: https://blog.jooq.org/2015/06/16/querying-your-database-from-millions-of-fibers-rather-than-thousands-of-threads/

Была еще какая - то мысля, кажется, более интересная, чем наблюдения выше, но что-то вылетела из головы, пока писал ).

Хотя судя по видяшке - это все весело
http://zeroturnaround.com/rebellabs/what-are-fibers-and-why-you-should-care/
79 Кб, 1015x703
#534 #806265
Порекот?
#535 #806277
http://pastebin.com/iz8nZGx4
Если кто то посмотрит, и ткнет чего в моем коде не хватает, буду рад. Строчка выбора периода чисел выглядит ужасно, но лучше решения я не нашел.
#536 #806281
>>805794

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


Што? Ты наркомант? К чему gradle привязан? И в gradle есть враппер, благодаря которому локальный дистрибутив даже устанавливать не надо - запускаешь gradlew build и все молча исправляется все.
>>806182
Туда ли ты зашла, абстрактная фасолина? JS тред дальше по коридору.
#537 #806282
>>806277

> public class Matrix


> {


И сразу ctrl+w.

https://www.youtube.com/watch?v=Y7uKmQS__jc
>>806288>>806302
#538 #806288
>>806282
Ты имеешь в виду, что по правилам лучше скобку ставить на строчке названия? Нас в школе учили что так типа приятнее читать код. Хорошо, исправлю все остальные. Это все?
>>806297>>806302
#539 #806297
>>806288

> по правилам лучше


> лучше


Нет, сука, не лучше. Это тебе не php. ЕДИНСТВЕННО. БЛЯТЬ. ПРАВИЛЬНО.
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html пиздуй читать, молиться, дрочить и впитывать. Пока 10 раз не прочитаешь и не напишешь изложение, сочинение и стихи по прочитанному не возвращайся.

> Это все?


Ты ведь знаешь значение сочетания клавиш ctrl+w. Это ВСЁ.

А лучше удали JDK нахуй после такого преступления и шпионажа в пользу Microsoft.
>>806302>>806305
#540 #806302
>>806209
>>806232

> жабий DI/IoC


> spring-макакинг не обязателен


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

> фронтендобог


> не копипастить с SO


Ну супертолсто.

>>806282
>>806288
>>806297

> Спорить о кодстайле по пунктам, которые целиком берет на себя IDE


Я так понимаю, сонсолепидор вернулся. Тебя на сайте джетбрейнс забанили, уеба?
>>806315
#541 #806305
>>806297
Какой еще шпионаж, ты о чем? Ладно ладно, оформление говно, хорошо. Прочитаю, запомню, буду дальше делать. Ты по коду то скажи, не по оформлению а по факту. Меня ооочень смущает строчка выбора диапазона рандомных чисел, уверен можно сделать по другому, но как - не догадался.
#542 #806315
>>806302

> > Спорить о кодстайле по пунктам, которые целиком берет на себя IDE


Ты из секты отрицателей java code conventions с нулевым опытом коммерческой разработки? [Роскомнадзор] себя об что-нибудь, только JDK удали перед этим.

Конвенцию отрицать, охуеть. php петушье набежало.
#543 #806324
>>806315
корпоративная крыса без мозгов заехали, только посмотрите
>>806328
#544 #806328
>>806324
>>806315

Ребята, а может все таки мне что нибудь посоветуйте? Гляньте мой код пожалуйста.
>>806332
#545 #806332
>>806328
ну ты вставил код, а чего именно то от анона ждешь?
Это твое чего в моем коде не хватает слишком абстрактное, откуда мне знать чего там не хватает, если я не знаю что должно быть на выходе.
>>806379
#546 #806360
>>806315
Хуя ты долбоеб, даже мой пост прочесть не может. Кого ебут эти скобки, если, нажав пару кнопочек в IDE, ты отформатируешь код как надо, особенно, если поставишь хорошие плагины? Есть вещи важнее - те что не автоматизируются IDE, но выявляются на код ревью. Сам хуле молится на чужие положняки, вцепился в них как в Библию да лишь бы спиздануть чего-нибудь.
#547 #806379
>>806332
Ну, например код с выборкой диапазона, может ты видишь что можешь сделать по другому?
#548 #806420
>>806277

>}System.out.println();


проиграл.
>>806441
#549 #806441
>>806420
А как бы ты сделал?
>>806454
#550 #806453
>>806277
все норм, код только отформатируй автоформаттером и почитай правильное именование переменных, методов, классов
>>806503
#551 #806454
>>806441
}
out.println();
>>806463
#552 #806463
>>806454
А вот и любители статическим импортов и глобальных переменных подкатили.
#553 #806503
>>806453
Но вот эта структура r.nextInt(c-z+1)+z; выглядит просто пздц, это же тот самый говно/быдло/индусский код. Нет решения получше?
>>806601
#554 #806601
>>806503
Перекотите тред позязя
#555 #806646
Хочу сделать монитор буфера обмена, но в примере, который я нагуглил все работает пока поток висит в Thread.sleep(10000L); Как сделать чтобы мониторился буфер постоянно и без зависания потока? вторым потоком? Подскажи куда гуглить, анон, сам я чот не допру.
>>806649
#556 #806649
>>806646
покажи код
>>806650
#557 #806650
>>806649
http://pastebin.com/rRKaNALT
В примере написали что слипают поток для теста, а как для норм работы делать не пояснили, а для меня это самое главная проблема оказалась.
>>806662
#558 #806662
>>806650
В главном потоке ты создаешь листенер, который следит за буфером обмена. Он уже крутится в отдельном thread-е, и это правильное архитектурное решение. Все что тебе нужно это не завершать main thread. Тебе в любом случае нужно держать mian thread активным пока ты хочешь обрабатывать данные из буфера, вопрос только в том, как избежать автоматического завершения main thread. Самый простой способ это ждать от пользователя нажатия клавиши enter. Для этого замени Thread.sleep на
new BufferedReader(new InputStreamReader(System.in)).readLine()
>>806664
#559 #806664
>>806662
Спасибочки за разъяснение.
#560 #806686
>>806182

>а при запуске тестов там null


удивительное рядом, а хули оно там должно быть?
Перекат #561 #806731
Перекат >>806729 (OP)
Перекат >>806729 (OP)
Перекат >>806729 (OP)
Перекат >>806729 (OP)
Перекат >>806729 (OP)
#562 #810027
>>798959 (OP)
Сап, сосоны. Подскажите нубу чем subscribeOn отличается от observeOn в javaRX?
#563 #810665
rебята, посоветуйте какой-нибудь пак для веб-приложения что-то типо http://www.ibm.com/developerworks/ru/library/j-appfuse/index.html
для создания простого приложения для такси, для себя, недавно начал изучать джаву. Просто не знаю в какую сторону гуглить
#564 #814497
Посоны, поясните нюфагу. Начал осваивать джаву, выбрал ее рандомно, типа популярно, все дела.
Но когда дело дошло до моей хотелки по использованию драйвера устройства, я обосрался. Неужели Джава не может в драйвера?
#565 #818587
Аноны , подскажите , начал учить java по книге Хорстманна (2014 года) , в ней нету практики , а задачи из вашей шапки на github ниочем , где можно найти задания разделенные на уровни от новичка до шарящего , очень нужно ибо топчусь на одном месте
107 Кб, 910x1461
#566 #821999
>>798959 (OP)
>>798959 (OP)
НУ ЧТО ЗА ХУNТА ТО?!
суть такова: хочу решить задачу... не могу пройти 3 тест,и соответственно все последующие.
поставил мелкие значения специально для "ideone".

https://stepic.org/lesson//Управляющие-конструкции-условные-операторы-и-циклы-12762/step/10?course=Java--Базовый-курс&unit=3110

для тех кто не зареган, пикиточены
>>822000
#567 #822000
>>822200
#568 #822200
>>822000
>>822000
NU YOBANA VSE SDOHLI 4tol'?!
Тред утонул или удален.
Это копия, сохраненная 20 августа 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски