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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
262 Кб, 1024x576
151 Кб, 667x877
65 Кб, 369x499
Официальный™ тред Java #27 #703806 В конец треда | Веб
FAQ:

Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ?
A:Худшая инвестиция в твоей жизни. Огромное количество говнокода, оторванные от жизни задачки, 1000 заданий по выводу в консоль какого-то говна.

Q: Посоны, собираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.

Q: Значит, я должен буду всю жизнь сидеть в опенспейсе, конвертируя XML в эксепшны? Ура, мне подходит! С чего начать?
A: Туториалы:
BEGINNER: http://myflex.org/books/java4kids/java4kids.htm
MEDIUM: http://www.tutorialspoint.com/java_technology_tutorials.htm
HARD: http://docs.oracle.com/javase/tutorial/

Книги:
- Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком.
- Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах.
- Thinking in Java (4th Edition): Bruce Eckel - для тех, кто уже умеет в программирование на другом языке, но хочет перекатиться.
- Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает джаву, но хочет перестать писать костыли.
Больше здесь: http://www.proklondike.com/books/java.html

Видео:
https://habrahabr.ru/company/golovachcourses/blog/215275/ : 1000+ часов видео по Java на русском.

Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.

Q: Я не могу в книги. Наткнулся на джавараш, но в самом верхнем вопросе уловил нотки сарказма. С ним все правда плохо?
A: В наших тредах постоянно появляются люди, спрашивающие о джавараше. Громко обьявляют, что начинают заниматься, задают пару тупых вопросов и куда-то пропадают. Похоже, большинство адекватов бросают джавараш из-за дебильных заданий типа "десять сраз скопипасти этот кусок кода". Тем не менее, иногда появляются и люди, говорящие что прошли его целиком, и что дальше задания получше. Короче, хочешь - пробуй, первые десять занятий бесплатно же. Но, как минимум, лучше совмещать с обучением по другим источникам. На самом деле ты просто потратишь свое время на какой-то мусор.

Q: Пока читаю, все понимаю, а сам ничего сделать не могу. Что делать?
A: Практика, больше практики.
Уровня laba1.pas: http://codingbat.com/java http://codehunt.com
Чутка серьезнее: http://programmr.com/zone/java http://codingame.com/puzzles
Рулеточка: http://postimg.org/image/xdfbvgps9/
Олимпиадка: http://codeforces.com
Примеры той-проектов: http://eax.me/programming-language-learning/

Q: Я выучил кор, достаточно ли этого, чтоб взяли на работу?
A: Лол, конечно нет хотя некоторым всё же везёт.
Вот майндмап с джава-технологиями: https://atlas.mindmup.com/2015/10/3d59a040592a0133d02a5d31ebcc5420/java/index.html
Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)

Q: Слышал, SQL знать надо обязательно. Где его учить?
A: Начни с малого: http://www.w3schools.com/sql/default.asp
Затем переходи к: http://www.sql-ex.ru/

Q: Всё это хорошо, но без алгоритмов меня на работу не возьмут.
A: Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI
То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java

Q: Я готов к первому собеседованию.
A: Проверь свои знания здесь: http://www.quizful.net/test
И здесь: http://www.careercup.com/

Q: Вопросы на собеседование.
A: http://jsehelper.blogspot.ru/2016/01/blog-post_59.html : куча вопросов с ответамине всегда правильными
http://becomejavasenior.com/blog/2015/07/01/327-interview-questions-java-developer/

Q: Какие еще ресурсы можно почитать?
A: https://android-arsenal.com/ : android
https://google.github.io/styleguide/javaguide.html : google java style
http://blog.jooq.org/ : Java, SQL, and jOOQ
http://virtualjug.com/podcast/ : подкасты

Q: Где можно пообщаться на java тематику?
A: В этом ITT треде
https://www.reddit.com/r/java : reddit
http://stackoverflow.com/questions/tagged/java : платформа для вопросов и ответов

Список java фреймворков, библиотек и по на любой вкус:
https://github.com/akullpp/awesome-java

Предыдущий тред тонет тут >>692136 (OP)
#2 #703819
Моя кулстори, отвечающая на вопросы в духе "легко ли вкатиться с нуля" и "реально ли начинать, если тебе за 25".
Автор не претендует на абсолютную истину, если вы сможете ПРОСТО ВЗЯТЬ И УСТРОИТЬСЯ - буду за вас только рад.

Здравствуй, ночной.
Знаю, что на двоще всегда было дохуя желающих вкатиться в погроммирование, так что я решил, что моя история может быть кому-то полезна.
Сам я долбоёб 26 лет от роду, пару раз повернувший не туда. Дело в том, что после института (сам я у мамы инженер-математик) мне предложили работу быдлоадмина. Я легко согласился и, разобравшись со своим кругом обязанностей, начал заниматься тем, чем заниматься явно не стоило - играть в игры на рабочем месте, двачевать капчу и смотреть сериалы. Перспектив особых не было, да я и не стремился, наслаждаясь тем, что я нихуя не делаю, а мне за это ещё и платят. Через пару лет до меня дошло, что зп нихуя не растёт, новые обязанности мне никто не предлагает, сам я ничего не делаю и вообще я хуй и дальше так нельзя. Тут я решил, что развиваться именно в администрировании у меня нет никакого желания, вспомнил о том, что в институте мне нравилось кодить и решил пойти в погроммисты. В качестве языка я довольно быстро выбрал джаву: освоить проще, чем плюсы, платят больше, чем за пыху или жабаскрипт, вакансий вроде бы достаточно.
От нехуй делать я даже записался на какие-то курсы, не то, чтобы в этом была реальная необходимость, но я подумал, что корочка каких-то курсов лучше, чем ничего. Выучив кор за несколько месяцев я пошёл искать работу и тут оказалось, что никому я нахуй не нужен в качестве младшего разработчика. Были варианты неоплачиваемых стажировок, но я тогда рассудил лашара, что не хочу бросать стабильную работу ради нестабильных перспектив. В конце концов, я просто забил хуй и отложил поиски в долгий ящик. Ящик оказался не таким уж долгим: в начале прошлого года контору начало колбасит, массовые увольнения стали регулярными, а в середине лета начальство сообразило, что им уже нахуй не нужно столько сисадминов, и в итоге большую часть повыгоняли нахуй. Так, 1 августа прошлого года я оказался в свободном плавании.
Тогда я сообразил, что если сейчас снова устроюсь быдлоадмином - могу так и остаться на этой работе навсегда, время идёт, а моложе я с годами не становлюсь. Отдельная квартира уже была, тянке я наобещал "да норм, пару месяцев поживём на твою зп, а потом и подвернётся что-то".
Достаточно понял, что нихуя ничего не подворачивается, никаких стажировок не видно, а брать к себе за еду никто не хочет, видать кризис сказался. Спустя пару месяцев я познакомился с аноном из /pr/, который оказался настоящим няшей: добавился в скайпике и стал отвечать на разные мои идиотские вопросы по трудоустройству, по резюме, не ленился заглядывать в мой говнокод и говорить, что стоит поправить. Он же подсказал, чтов ДС2 можно устроиться в джава-школу при компании T-Systems, которые готовы около 3 месяцев обучать людей бесплатно и с некоторой вероятностью трудоустраивать после обучения.
Я дождался ближайшей школы, набор в которую начался только в конце октября. Отбор был достаточно жёсткий, тестики, разговорный английский, очень доёбистое техническое собеседование, но я оказался не совсем хуем и поступил. Занятия начались в ноябре и продлились до середины января. Всё это время я пиздец как въёбывал (пожалуй, за эти пару месяцев я потратил на учёбу столько же, сколько за 5 лет в институте), но результаты были неплохими: я освоил Spring (достаточно распространённый фреймворк), Hibernate (либа для ORM), тестирование, логгирование, веб-сервисы, немного EJB, написал небольшой проект (примерно 3к строк кода) - рабочее веб-приложение, сорт оф интернет-магазин.
Потом получилось не особо удачно: в T-Systems меня так и не взяли, как и ещё половину обучавшихся. Я не особо расстроился и решил, что всё это хуйня и что теперь-то я без проблем найду себе работу, но внезапно оказалось, что нихуя подобного. Выяснилось, что на весь ДС2 буквально 3-4 конторы готовы брать людей без опыта и конкуренция к ним, надо думать, нихуёвая. В общем, со всеми этими спрингами и хибернейтами я оказался нинужен. Спустя месяца полтора я ощутил максимум безысходности: шёл 8 месяц без работы, с момента окончания джава-школы меня позвали буквально на 2 собеседования, и оба раза отказали, мол, эх, ты няша, но нам бы мидла с опытом. Ну и тян меня ни разу не упрекнула в том, что я безработное хуйло, но я уже и сам начал гореть, да и вряд ли её сильно радовало столько времени кормить меня и оплачивать жильё а уж её мамка, должно быть, и вовсе сгорела, хотя ни разу ничего мне говорила. В общем, я уже был готов искать работу админом. но тут мне наконец (наконец!) улыбнулась удача.
Дело в том, что с месяц назад одна знакомая тянка (которую тоже не взяли в Т, к слову) позвала меня за компанию на ярмарку вакансий, но в итоге сама заболела и не поехала. Я приехал, побродил среди стендов, позаполнял анкетки, подоёбывался до представителей разных компаний, послушал лекции, да и съебал. Пару недель спустя обо мне внезапно вспомнили и из одной конторы прислали тестовое задание, которое я, разумеется, благополучно сделал. Потом меня позвали на собеседование, которое было, прямо скажем, странным. Собеседовался я на стажёра, требованиями к которому писали буквально базовые навыки, но ебали меня джва с половиной часа, не считая предварительных минут двадцати болтовни с HR, которая заодно проверила английский. Спрашивали вообще всё, начиная с базовых принципов ООП (не на уровне "перечислите", как это обычно бывает, а именно подробно), продолжая кучей примеров на наследование, перегрузку, переопределение, порядок инициализации, многопоточность, коллекции, итераторы, вебсервисы, скопы спринговых бинов, принципы работы хибера, задачки на логику, куда же без них. Ушёл я чувствую себя в край заёбаным и разбитым, но внезапно взлетело и через несколько дней я получил оффер.
Интерновская зп, прямо скажем, далеко не предел мечтаний 24, но хули делать. Через пару месяцев обещают перевод в джуны и увеличение зп в два раза, ну и вообще контора выглядит достаточно перспективной, условия работы приятные, впрочем, там будет видно.
#2 #703819
Моя кулстори, отвечающая на вопросы в духе "легко ли вкатиться с нуля" и "реально ли начинать, если тебе за 25".
Автор не претендует на абсолютную истину, если вы сможете ПРОСТО ВЗЯТЬ И УСТРОИТЬСЯ - буду за вас только рад.

Здравствуй, ночной.
Знаю, что на двоще всегда было дохуя желающих вкатиться в погроммирование, так что я решил, что моя история может быть кому-то полезна.
Сам я долбоёб 26 лет от роду, пару раз повернувший не туда. Дело в том, что после института (сам я у мамы инженер-математик) мне предложили работу быдлоадмина. Я легко согласился и, разобравшись со своим кругом обязанностей, начал заниматься тем, чем заниматься явно не стоило - играть в игры на рабочем месте, двачевать капчу и смотреть сериалы. Перспектив особых не было, да я и не стремился, наслаждаясь тем, что я нихуя не делаю, а мне за это ещё и платят. Через пару лет до меня дошло, что зп нихуя не растёт, новые обязанности мне никто не предлагает, сам я ничего не делаю и вообще я хуй и дальше так нельзя. Тут я решил, что развиваться именно в администрировании у меня нет никакого желания, вспомнил о том, что в институте мне нравилось кодить и решил пойти в погроммисты. В качестве языка я довольно быстро выбрал джаву: освоить проще, чем плюсы, платят больше, чем за пыху или жабаскрипт, вакансий вроде бы достаточно.
От нехуй делать я даже записался на какие-то курсы, не то, чтобы в этом была реальная необходимость, но я подумал, что корочка каких-то курсов лучше, чем ничего. Выучив кор за несколько месяцев я пошёл искать работу и тут оказалось, что никому я нахуй не нужен в качестве младшего разработчика. Были варианты неоплачиваемых стажировок, но я тогда рассудил лашара, что не хочу бросать стабильную работу ради нестабильных перспектив. В конце концов, я просто забил хуй и отложил поиски в долгий ящик. Ящик оказался не таким уж долгим: в начале прошлого года контору начало колбасит, массовые увольнения стали регулярными, а в середине лета начальство сообразило, что им уже нахуй не нужно столько сисадминов, и в итоге большую часть повыгоняли нахуй. Так, 1 августа прошлого года я оказался в свободном плавании.
Тогда я сообразил, что если сейчас снова устроюсь быдлоадмином - могу так и остаться на этой работе навсегда, время идёт, а моложе я с годами не становлюсь. Отдельная квартира уже была, тянке я наобещал "да норм, пару месяцев поживём на твою зп, а потом и подвернётся что-то".
Достаточно понял, что нихуя ничего не подворачивается, никаких стажировок не видно, а брать к себе за еду никто не хочет, видать кризис сказался. Спустя пару месяцев я познакомился с аноном из /pr/, который оказался настоящим няшей: добавился в скайпике и стал отвечать на разные мои идиотские вопросы по трудоустройству, по резюме, не ленился заглядывать в мой говнокод и говорить, что стоит поправить. Он же подсказал, чтов ДС2 можно устроиться в джава-школу при компании T-Systems, которые готовы около 3 месяцев обучать людей бесплатно и с некоторой вероятностью трудоустраивать после обучения.
Я дождался ближайшей школы, набор в которую начался только в конце октября. Отбор был достаточно жёсткий, тестики, разговорный английский, очень доёбистое техническое собеседование, но я оказался не совсем хуем и поступил. Занятия начались в ноябре и продлились до середины января. Всё это время я пиздец как въёбывал (пожалуй, за эти пару месяцев я потратил на учёбу столько же, сколько за 5 лет в институте), но результаты были неплохими: я освоил Spring (достаточно распространённый фреймворк), Hibernate (либа для ORM), тестирование, логгирование, веб-сервисы, немного EJB, написал небольшой проект (примерно 3к строк кода) - рабочее веб-приложение, сорт оф интернет-магазин.
Потом получилось не особо удачно: в T-Systems меня так и не взяли, как и ещё половину обучавшихся. Я не особо расстроился и решил, что всё это хуйня и что теперь-то я без проблем найду себе работу, но внезапно оказалось, что нихуя подобного. Выяснилось, что на весь ДС2 буквально 3-4 конторы готовы брать людей без опыта и конкуренция к ним, надо думать, нихуёвая. В общем, со всеми этими спрингами и хибернейтами я оказался нинужен. Спустя месяца полтора я ощутил максимум безысходности: шёл 8 месяц без работы, с момента окончания джава-школы меня позвали буквально на 2 собеседования, и оба раза отказали, мол, эх, ты няша, но нам бы мидла с опытом. Ну и тян меня ни разу не упрекнула в том, что я безработное хуйло, но я уже и сам начал гореть, да и вряд ли её сильно радовало столько времени кормить меня и оплачивать жильё а уж её мамка, должно быть, и вовсе сгорела, хотя ни разу ничего мне говорила. В общем, я уже был готов искать работу админом. но тут мне наконец (наконец!) улыбнулась удача.
Дело в том, что с месяц назад одна знакомая тянка (которую тоже не взяли в Т, к слову) позвала меня за компанию на ярмарку вакансий, но в итоге сама заболела и не поехала. Я приехал, побродил среди стендов, позаполнял анкетки, подоёбывался до представителей разных компаний, послушал лекции, да и съебал. Пару недель спустя обо мне внезапно вспомнили и из одной конторы прислали тестовое задание, которое я, разумеется, благополучно сделал. Потом меня позвали на собеседование, которое было, прямо скажем, странным. Собеседовался я на стажёра, требованиями к которому писали буквально базовые навыки, но ебали меня джва с половиной часа, не считая предварительных минут двадцати болтовни с HR, которая заодно проверила английский. Спрашивали вообще всё, начиная с базовых принципов ООП (не на уровне "перечислите", как это обычно бывает, а именно подробно), продолжая кучей примеров на наследование, перегрузку, переопределение, порядок инициализации, многопоточность, коллекции, итераторы, вебсервисы, скопы спринговых бинов, принципы работы хибера, задачки на логику, куда же без них. Ушёл я чувствую себя в край заёбаным и разбитым, но внезапно взлетело и через несколько дней я получил оффер.
Интерновская зп, прямо скажем, далеко не предел мечтаний 24, но хули делать. Через пару месяцев обещают перевод в джуны и увеличение зп в два раза, ну и вообще контора выглядит достаточно перспективной, условия работы приятные, впрочем, там будет видно.
#3 #703821
Какие задачи в основном выполняют джуны первые пару месяцев ?
>>703827
#4 #703827
>>703821
Работаю четвертый день, пью чай, заполняю документацию о себе, пью кофе, хожу на стендапы, пью чай, заебываю окружающих вопросами типа "чому soapUI опять какую-то хуйню выдал", хожу на тесты по английскому и семинары на тему того, как охуенно строить карьеру в нашей компании, обедаю, играю с пасанами в кикер, пью чай с печеньками, ковыряю очередной вебсервис, пытаюсь понять, хули я не могу его запустить, читаю /pr/, кофе пью. Разного чая дохуя, кофеварка с кофемолкой, сиропы разные, сливки, печеньки. Сам код еще ни разу не видел, на просьбу его показать отвечают, что потом.
>>703840
#5 #703836
>>703819
как ты меня заебал, ткакая то вниманиеблядь, желаю тебе рака яиц
>>703842
#6 #703840
>>703827
Я по началу думал, что я записал это и забыл.
#7 #703842
>>703836
Лучше б свою кулстори написал.
Заходят в тред ньюфаги и каждый второй с вопросами о том, насколько легко вкатиться, что делать, куда идти. А в ответ истории разной степени охуительности, от "проходишь первые 10 уроков джавараша, а потом просто идёшь и устраиваешься" до "даже и не пытайся".
#8 #703902
Хочу написать интернет магазин на спринге и хибернейте. Сам только джаву кор осилил. Нашел пару книжек по этой теме, подскажите с какой лучше начать:
Java persistence with hibernate
Beginning hibernate
Spring in action.
>>703904
#9 #703904
>>703902
Третья. Хибер сам по себе не так уж сложен, прочитай пару статей и юзай.
>>703911>>714916
#10 #703907
спрошу в этом треде, так как в предыдущем продинамили. в контору одну хочу устроится, местные джависты сказали что юзают jersey, guice, jpa и мне неплохо бы понимать что это когда буду устраиваться к ним. Вроде бы уже со всем познакомился немного, но посоветуйте что можно написать чтобы продемонстрировать что я как бы на минимальном уровне шарю. Сейчас написан только пример работы guice, и jersey+guice.
#11 #703911
>>703904
Спасибо анон, а можешь еще с одним вопросом помочь? Я очень много читаю, но слишком мало пишу код. Просто не понимаю что писать, все примеры в книжках слишком абстрактные, а когда доходит дело до реальных задач, то я просто теряюсь. Как заставить
>>703912>>703926
#12 #703912
>>703911
Себя писать код?
#13 #703920
Двач, в документации написано, что int read(byte[] b) возращает количество считанных байт или -1, если достигнут конец потока. Не проще ли возвращать 0? Или есть случаи, когда возвращается 0, а конец потока не достигнут?
>>703927>>714942
#14 #703921
Двач, в документации написано, что int read(byte[] b) возращает количество считанных байт или -1, если достигнут конец потока. Не проще ли возвращать 0? Или есть случаи, когда возвращается 0, а конец потока не достигнут?
>>705770>>714942
#15 #703922
Двач, в документации написано, что int read(byte[] b) возращает количество считанных байт или -1, если достигнут конец потока. Не проще ли возвращать 0? Или есть случаи, когда возвращается 0, а конец потока не достигнут?
>>704729>>714942
#16 #703926
>>703911
Ну, вот и читай Spring in Action там по ходу как раз показывают, как свой твиттер запилить. Достаточно реальная задача для тебя?
>>703936
#17 #703927
>>703920
А если ты решил считать 0 байтов?
117 Кб, 807x674
#18 #703936
>>703926
Вполне, пойду читать. Спасибо тебе, няша.
#19 #704007
Блять, ебусь как гусь чтобы сделать исполняемый .jar в IDEA. Манифест в /src/ создал, в настройках проектах артефакты настроил, файл строится, но при запуске через консоль пишет поебень типу не нашло главного класса. Что делать, котаны?
>>704008
#20 #704008
>>704007
В манифесте строка Main-Class тоже есть, так что не в этом дело.
>>716558>>716589
#21 #704045
Спрошу ещё раз, пока начал читать спринг для профессионалов

Аноны, прочитал эккеля, смотрел видяшки/читал хабр - разобрался с сервлетами, jsp, jsf, хибером. Думал смогу устроиться джуном, но че то нихуя. 13 просмотров за 2 недели, и ни одного звонка. Думаю че пока учить дальше: jee или spring? Посмотрел hh и вроде как jee никому не высралось, правильно? Что лучше начать читать spring в действии или spring для профессионалов? Или ещё что посоветуете?
>>704075
#22 #704052
Привет, господа. Объясните, когда лучше использовать ElasticSearch?
Один парень на работе говорит, что es лучше юзать при поиске по нескольким полям. Но ведь много кто юзает es и не парится.
И ещё, в некоторых примерах говорится "индексирование записей занимает X часов". Индексирование, насколько я понимаю, это и есть запись?

>Посмотрел hh и вроде как jee никому не высралось, правильно?


Да. Даже на собеседованиях, когда говорят про J2EE, спрашивают только сервлеты.

>spring в действии


Лучше написана, лучше читается, лучше воспринимается, говняная обложка боюсь её читать чтобы не лопнула.

>spring для профессионалов


Хреновый перевод, написана сложно, божественная обложка. Один парень говорит, что разбирается много тонкостей, но это непроверенная инфа.
#23 #704061
>>704052

>Индексирование, насколько я понимаю, это и есть insert?


Fixed
#24 #704075
>>704045

>Аноны, прочитал эккеля, смотрел видяшки/читал хабр - разобрался с сервлетами, jsp, jsf, хибером. Думал смогу устроиться джуном, но че то нихуя. 13 просмотров за 2 недели, и ни одного звонка.


Тебя это удивляет?
>>704248
#25 #704077
>>704052
хмм, щас прочитал главу про ioc, всё очень доходчиво и понятно
>>704083
#26 #704083
>>704077
Ну, тогда читай на здоровье.
В любой момент, если что-то будет непонятно, сможешь перечитать в in action.
>>704095
#27 #704095
>>704083
И, кстати, когда дойдёшь до рестов, советую прочитать в обеих книгах если будешь читать для профессионалов. В in aciton разбирается пара сервисов, с которыми обычно взаимодействуют энтерпрайзные прилаги.
>>704106
#28 #704106
>>704095
ок, спасибо
>>704111
#29 #704111
>>704106
Удачи!
Толкьо что закончил имплементить долгий и сложный таск, настрой поднялся.
#30 #704248
#31 #704279
Помогите разобраться с записью в файл. FileOutputStream ведь может только либо дописывать в конец, либо совсем очищать файл перед началом записи. А что делать, если мне надо, например, изменить пару байт в середине файла или удалить кусок? Записывать весь файл в byte[] и потом работать уже с ним не хочется, особенно если файл довольно большой. Есть ли встроенные средства для решения подобных задач?
>>704286
#32 #704286
>>704279
RandomAccessFile
>>704291
#33 #704291
>>704286
Спасибо, добрый человек
#34 #704341
Анон, вопросик. Мне надо продумать один момент в динамической гуишке. JavaFX.
Сначала пользователь вводит одно число - размерность квадратной матрицы. Вопрос в том, что мне надо вывести диалог ввода каждой из несколько матриц, и количество TextField-ов зависит от количества элементов. Как это все отобразить? То есть как сделать определенное количество TextField и потом пройтись по них?
#35 #704729
>>703922
Передаёшт массив нулевой длины и получаешь 0. Потому что данные в потоке есть, а читать некуда.
#36 #704931
Я не понимаю потоки, вообще, пытался пару раз разобраться но так ничего и не понял.
>>704952
#37 #704952
>>704931
Тогда страдай. Ды даже не конкретизировал какие потоки, а их в джаве трое.
#38 #705118
Аноны, начинаю писать свой "твиттер", но конечно это нихуя не твиттер и там нужен хороший интерактивный фронтенд(от jsp блюю не переставая). Практическую и теоретическую базу для написания бекенда имею(spring, hiber). Бабка с лавки нашептала что жавка неплохо заходит с ангуляром, так вот есть ли какие-нибудь годные книги по интеграции ангуляра и жава. Я прост вообще слабо представляю как происходит взаимодействие(httpRequest\response?). jsp как я понял герерятся на сервере, jstl и прочие штуковины преобразуются в html и выплевываются юзеру.
В общем посоветуй хорошего чтива анон.

я джва года ждал такую шапку, два jvm опу
>>705197
24 Кб, 393x284
#39 #705196
Аноны, я тут изучаю Java по книге Хорстаманна и Корнелла и вот дошел до главы "Апплеты". Где-то читал, что сами апплеты уже давно нахер не всрались. Так ли это? Стоит ли забивать себе мозг этими апплетами? Или всё это пиздёж и апплеты ахуенная вещь?
>>705203
#40 #705197
>>705118
Если хочешь одностраничник на angular, то jsp вообще не нужно. Голый html-каркас со скриптами, которые дергают твой REST на джаве.
Вот туториал по ресту на спринге: https://spring.io/guides/gs/rest-service/
С ангуляром разберешься сам.
#41 #705203
>>705196
Не нужны вообще никому.
Историческая справка: апплеты создавались для того, чтоб занять нишу, позже полностью занятую флешем. Вот уже и флеш умер, а апплеты за каким-то хуем до сих пор в книги пихают.
>>705207
#42 #705207
>>705203
Понятно, спасибо за ответ, а то я совсем зелёный :)
Спросил на "авось пригодятся", ну или может быть потом знание этих апплетов поможет в дальнейшем изучения Java. Пойду-ка я учить потоки и исключительные ситуации.
>>705210
#43 #705210
>>705207
Вот это как раз охуенно важно, учи.
#44 #705230
А есть какие-нибудь свободные psd макеты, из которых я смогу невозбранно вырезать формочки, картинки и прочий дизайн используя их как мне захочется?
>>705253
#45 #705253
>>705230
google://"free site template", тысячи их.
>>705261>>705333
18 Кб, 757x254
#46 #705261
>>705253
Чет не находит.
>>705266>>705268
#47 #705266
>>705261
google://"слабоумие"
#48 #705268
>>705261
Тонко.
#49 #705318
>>704052

>Привет, господа. Объясните, когда лучше использовать ElasticSearch?


Один парень на работе говорит, что es лучше юзать при поиске по нескольким полям. Но ведь много кто юзает es и не парится.
И ещё, в некоторых примерах говорится "индексирование записей занимает X часов". Индексирование, насколько я понимаю, это и есть запись?
Бамп.
>>705414
#50 #705333
>>705253
Там нет инфы по поводу лицензии всего контента.
#51 #705414
>>705318
С чего ты решил что он тебе вообще нужен? Какая задача?
>>705469
#52 #705434
>>703819
Рад что у тебя наконец-то получилось, надеюсь, ты теперь съебешь из моего треда.
Пару месяцев назад из моей команды уволился коллека, перешел на удаленку в спб. Сегодня мне досталась участь мержить его наработки в основную ветку, я там чуть не повесился с его дрисни, откуда такие вообще берутся блять, и как убеждают других что они что-то умеют?
1. Каждый второй файлик отформатирован, даже если в нем нет изменений.
2. При этом длины строк > 150 символов как бы норма у него, главное что спереди пробельчиками выровняно.
3. То, что средой не отформатировано (видать забыл парень) написано как в приходе - нет единого стиля, переносы не используются.
4. Код лапшевидный и непродуманный, какие-то псевдо-глобальные переменные размазанные по проекту, костыльные решения тривиальных задач. Метод
doWork() {
..try {
....init();
....prepare();
....doJob();
....finish();
..} (catch Exception e) {
..logger.error(e);
}
Это просто вершина долбоебизма, просто блять прыгай по этим методам и смотри что они там делают, ломай голову нахуя были приняты какие-то промежуточные решения и запоминай состояние глобальных переменных которые эта ересь меняет.
5. Знание английского - полный ноль, не умеет даже образовывать множественную форму существительных. Но не стесняется этого и активно срет своим суржиком в коментах и коде.
6. При перемещении файлов удаляет их и пересоздает с нуля (абсолютное непонимание принципов работы систем контроля версий)
7. Закоммичены файлы среды разработки и даже билд директори.
8. Но ни одна таска не закоммичена атомарно, нехватающие файлы лежат где-то на 5 ревизий впереди, ни один срез в итоге не компиляется, даже последний.
9. Скрипты сборки написаны явно на СО, некоторые скомпиленные классы оказываются продублированы до трех раз. Либы лежат в корне war а не в WEB-INF/lib, при этом лежат неиспользуемые либы, при этом либы вообще не должны быть внутри war-ника, когда продукт поставляется в ear.
10. Хотел заюзать StringUtils из apache commons, но заюзал из springframework - даже не заметил.

Эта тварь все еще в моем городе, если ты читаешь это строки, падла, знай, что при встрече я тебя на смех подниму за все твои грешки, мразь, так что в офис тебе ообратная дорога закрыта.
#52 #705434
>>703819
Рад что у тебя наконец-то получилось, надеюсь, ты теперь съебешь из моего треда.
Пару месяцев назад из моей команды уволился коллека, перешел на удаленку в спб. Сегодня мне досталась участь мержить его наработки в основную ветку, я там чуть не повесился с его дрисни, откуда такие вообще берутся блять, и как убеждают других что они что-то умеют?
1. Каждый второй файлик отформатирован, даже если в нем нет изменений.
2. При этом длины строк > 150 символов как бы норма у него, главное что спереди пробельчиками выровняно.
3. То, что средой не отформатировано (видать забыл парень) написано как в приходе - нет единого стиля, переносы не используются.
4. Код лапшевидный и непродуманный, какие-то псевдо-глобальные переменные размазанные по проекту, костыльные решения тривиальных задач. Метод
doWork() {
..try {
....init();
....prepare();
....doJob();
....finish();
..} (catch Exception e) {
..logger.error(e);
}
Это просто вершина долбоебизма, просто блять прыгай по этим методам и смотри что они там делают, ломай голову нахуя были приняты какие-то промежуточные решения и запоминай состояние глобальных переменных которые эта ересь меняет.
5. Знание английского - полный ноль, не умеет даже образовывать множественную форму существительных. Но не стесняется этого и активно срет своим суржиком в коментах и коде.
6. При перемещении файлов удаляет их и пересоздает с нуля (абсолютное непонимание принципов работы систем контроля версий)
7. Закоммичены файлы среды разработки и даже билд директори.
8. Но ни одна таска не закоммичена атомарно, нехватающие файлы лежат где-то на 5 ревизий впереди, ни один срез в итоге не компиляется, даже последний.
9. Скрипты сборки написаны явно на СО, некоторые скомпиленные классы оказываются продублированы до трех раз. Либы лежат в корне war а не в WEB-INF/lib, при этом лежат неиспользуемые либы, при этом либы вообще не должны быть внутри war-ника, когда продукт поставляется в ear.
10. Хотел заюзать StringUtils из apache commons, но заюзал из springframework - даже не заметил.

Эта тварь все еще в моем городе, если ты читаешь это строки, падла, знай, что при встрече я тебя на смех подниму за все твои грешки, мразь, так что в офис тебе ообратная дорога закрыта.
>>705524
#53 #705469
>>705414
Задачу поставил заказчик.
Я просто решил поглубже влиться в эту тему и возникли вопросы.
>>705799
#54 #705485
Обращаюсь к батькам с советом. Сейчас прохожу обучение в одной весьма неплохой компании. После обучения, планирую там работать в качестве джуна. Есть варианты идти во фронтенд и работать там с gwt и прочим вебом, либо пойти в бекэнд и прогать серверную часть в связке java+oracle. И вот тут я не знаю, что выбрать. Что будет востребованней, если я решу спустя пару лет сменить место работы? Какое направление интереснее? Буду благодарен за разъяснение.
#55 #705492
>>705485
можешь пойти на хуй
#56 #705493
>>705485
ИМО просто бекенд лучше, так как gwt вроде потихоньку загибается.
#57 #705500
>>705485
gwt ад, беги
>>705530
#58 #705524
>>705434
Поссал тебе за щеку, ущерб.
>>705621
#59 #705530
>>705500
В плане сложности?
>>705531
#60 #705531
>>705530
В плане хуевости, на нем только гугл толковые вещи и пишет, ибо нет больше долбоебов кто поведется на эту парашу
>>706015
#61 #705554
>>705485
Уебывай из Luxoft, мальчик.
>>706011
#62 #705556
>>703806 (OP)

>На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.


Почему так, аноны? Можете пояснить?
>>705599
#63 #705599
>>705556
Тк на джаве пишут веб, десктоп не пишут. Причем веб в больших конторах=> Фриланс не нужен. Можно андроидом заняться, но там странная джава
>>705763
#64 #705621
>>705524
узнал себя?
1245 Кб, 1280x1024
#65 #705667
Поцаны, поцаны - посоветуйте легковесный жава фреймворк со встроенными спринг хибер или подобие. Хочу сделать мм..что-то вроде бота в Eve online - собирает статистику аномалек и смотрит статистику игроков в локали (zkillboard).
Уже сделал бот автопилот на uoPilot - полностью поведением похож на человека - все движения/кликания рандомные, не дерганые.
Есть опыт >2 лет жавы. Spring hibernate. Сейчас сижу без работы.
Как мне видится - в окне приложения какая-то сторонняя программа считывает текст в нужном прямоугольнике -скидывает это в жаву(хз как пока). Жава ебала -в принципе я приебался к ней зря конечно - но хочется углублять свой навык именно в жаве - обращается к БД.
Также работа с api евы - тут не гуглил.

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

В общем требование - легковесность. Как по системным требованиям, так и по коду.

Делаю это ибо нравится и пришел в еву именно ради этого.
>>705698
#66 #705698
>>705667

> spring hibernate


> требование - легковесность


Does not compute.
Посмотри Spark framework или vert.x если надо легковесное решение.
А если хочешь спринг и хибер - то чем spring boot не подходит?
#67 #705708
>>705698
Не обязательно spring hibernate.
Благодарю за ответ. Сам участвовал только в 1 проекте, а дополнительно что-то изучать без практической необходимости не было желания. Ленивый.
#68 #705763
>>705599
а удалёнки много? это ж выгоднее, чем офис содержать по идее
>>706379
#69 #705764
>>705698
Так погуглил - spring boot позволяет меньше настраивать вначале, ибо он сам настраивается исходя из депенденси в пом. Но по сути - это то же самое что и своими руками, только ты хз что происходит.

Чет планирую написать вначале как умею на spring hibernate maven wildfly spring data - максимально тяжеловесно.
А потом переписать на jdbc, возможно EJB(как раз поизучаю) и еще что-нибудь - и охуеть от полученной легковесности. Я ведь охуею, не?
#70 #705770
>>703921
Натурально так. Не думал же ты что доку имбы писали?

В конечном счете, ядро решает сколько байт будет считано. Может и 0 байт быть.
#71 #705799
>>705469
Какую задачу, наркоман? Использовать ES не важно для чего?
>>705804
#72 #705804
>>705799
Какая тебе нахуй разница? Ты можешь просто ответить на поставленные вопросы?
>>705855
#73 #705855
>>705804
Ты долбоеб?

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


Один парень на работе говорит, что компьютер лучше юзать при поиске в интернете. Но ведь много кто юзает компьютер и не парится.
#74 #706011
>>705554
Ты промахнулся.
#75 #706015
>>705531
А так загуглишь вакансии в ДС, и gwt там вполне актуально.
поясните за ведроид #76 #706104
Есть цель - фрилансить или удаленить после пары лет в офисе, будучи ведроид куном, дабы сидеть в своей мухосрани и няшить местных мань.

Поясните за текущие реалии Android фриланса, аноны или адноид фриланс идет на спад и лучше вкатываться в вебмакакинг или энтерпрайз?

Сайтики клепать не очень интересно, а приложения хочется делать.
>>706279
43 Кб, 334x356
#77 #706106
Как сделать, чтобы консоль ждала ввода данных? Суть в том, что при вводе put, get, dump, state - выполняются некоторые методы, после их завершения консоль опять ждет ввода данных, пока не введется команда quit.
>>706109
#78 #706109
>>706106
Все блять, разобрался
36 Кб, 640x471
#79 #706112
Привет анон.
Играюсь с libgdx, столкнулся с негуглимой(для меня) проблемой:
При отрисовке TiledMap двигающейся камерой карту начинает рвать на части между тайлами, пикрелейтед.

Почему так? Как поправить? Куда копать?

код:
https://github.com/desu2/blinker/blob/master/core/src/com/mygdx/game/screens/Blinker.java
>>708155
#80 #706122
>>705698
dropwizard&ebean
#81 #706124
Двач, расскажи за HOUR_OF_DAY
Что это такое?
Пример кода из книги хэд фёрст.
Всё остальное ясно как божий день, а вот почему HOUR OF DAY равняется 16 не могу понять
http://pastebin.com/dVaJ0eeJ
#82 #706125
>>706124
А, блять, понял походу.
это то что в set стоит время 15.40, а 15.40 - это типа четвертый час, а значит 16 часов. верно??
>>706130>>706133
#83 #706130
>>706124
>>706125
нет. всё ещё не понял.
сделал со своим временем, выдало 11.
У меня меж тем уже 3 часа ночи
>>706133
#84 #706133
>>706130
>>706125
>>706124
Блять, простите долбоёба.
Я так понял, что 11 он выдаёт по умолчанию, а я, долбоёб, забыл использовать get(HOUR_OF_DAY)
через него врде всё верно выдает
>>706161
#85 #706161
>>706133
почитай потом про joda time на досуге
#86 #706279
>>706104

Да, пояснили быстра блд!

Почему в оп-посте написано что "На джаве фриланса нет"?

Куча предложений для андроид приложений, например вот тут https://www.weblancer.net/jobs/?category_id=2 треть всех проектов из категории "прикладное программирование" это андроид.
Андроид => Java => Фриланс есть
При этом заявок от фрилансеров оче мало, работать некому.
>>706285>>706286
#87 #706285
>>706279
Хикка дохуя? Сказали - нет, значит нет.
>>706370
#88 #706286
>>706279
спасибо.
мимо пояснибля-Кун
#89 #706370
>>706285

Ну, блять, познай себя, вначале, ёба.
Что тебе ближе: формы клепать, кнопочки, со страницами работать, юзер интерфейс придумывать. И вообще, можешь ли ты в красоту, любишь ли. Если это тебе в кайф - иди во фронтэнд.
Если не любишь это, не можешь - тогда в бэкэнд. Или просто нахуй. Все просто.
>>706371
#90 #706371
>>706370
>>705485
Быстрофикс
#91 #706379
>>705763
Удаленка мимо. Это исключение. В бодишопах, которых большинство из контор нашей реальности, такое очень редко практикуется. К тому же, прежде чем дохуя независимым стать, надо поработать ударно несколько лет, стать годным мидлом, хотя бы. Самостоятельно, а особенно хиккуя, таким не стать. А тут один загуглил "фриланс", и теперь пиздит, что фриланс на джаве есть. Другой - "удаленка", и тоже кудахчет. Я нагуглил, как мамку твою ебали.
Коммандная работа, общение со стороной заказчика, офис, овертаймы, митинги - это реальность джава тырпрайза. Дохуя хекка тут не сможет работать. Но умеренный интроверт - возможно. Если может в общение.
Если ты хочешь сидеть дома, быть дохуя независимым и закрытым - иди в другие технологии\языки. Хуле тут непонятного? Что вы все к джаве прицепились? Джавараша начитались? Есть же то, что идеально подходит под ваши желания.
Языки выбираются под проекты. Джава - для другого. А андроид - это андроид. Он не только на джаве, к тому же.
>>706418
#92 #706418
>>706379

>Коммандная работа, общение со стороной заказчика, офис, овертаймы, митинги - это реальность джава тырпрайза.


Кстати, не понимаю, почему постоянно говорят так, словно это что-то плохое?
>>706516>>706586
#93 #706516
>>706418
Что хорошего в овертайме?
>>707932
#94 #706586
>>706418
Это для обычно-куна норма. А для дру-хикки - ад. Большинство из них, во фриланс хочет же. Это другая среда. Ну дык и подбирай инструмент под нее. Учи php, ruby, javaScript хотя бы. Нет же, давай им именно джаву и именно во фрилансе.
Принимайте реальность, блеать! Хватит фантазировать.
>>706592
#95 #706592
>>706586
Кстати, никогда не понимал стремления хикканов во фриланс. Там же даже чтоб заказ получить, нужно порядочно посоциоблядствовать, не говоря уж о том, что с клиентом на связи надо быть постоянно и клещами вытаскивать требования. Лучше уж сидеть тихо в углу офиса, пиля очередную интеграцию по четко описанному ТЗ.
#96 #706597
Есть несколько вопросов, по архитектуре наверное:
1) Репозиторий использует класс маппер, чтобы конвертировать бизнес-логика-классы в entity-классы. Например repository.save(mapper.mapUserFomEntity(userEntity)); Это нормально? Иначе бизнес-классы или энтити должны знать друг о друге, что недопустимо.
2) Для конверсии маппер вручную инстанциирует классы бизнес логики и энтити, например User user = new UserImpl(); Это нормально, или использовать внедрение зависимостей? Если да, то внедрять класс, являющийся имплементацией а потом вызывать implClass.newInstance()? Либо делать через context.getBean() и настроить контекст возвращать бин, являющийся уже инстанциированным пустым объектом класса implClass? Стоит ли абсолютно везде избегать ручной инстанциации и использовать внедрение?
3) Делать для каждого энтити свой репозитарий? UserRepository, AccountRepository и т.д.?
4) Если на уровне сервиса нужно создать пользователя и создать счет для нового пользователя, нормально ли если UserService обращается к AccountService или лучше избегать такой межсервисной зависимости?
5) Хорошо ли бины-сервисы внедрять как статические объекты?
6) Какие книги почитать про вопросы такого рода?
>>706781>>714930
#97 #706620
>>703806 (OP)
Привет аноны.
Помогите мне додуматься как пройтись по ArrayList вида <Abonnent>. У абоннента есть куча параметров: фио, телефон, адрес и все они предствалены как String.
Хочу сделать чтобы можно было искать по имени (допустим что они все уникальные) и выводить к примеру нужный адрес.
Понятно, что нужен цикл for, но все равно ничего не понятно. Как выудить параметр имя из абонента, чтобы сравнить его с тем что ищем и как потом отобразить адрес.
#98 #706629
>>706620

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


Что мешает запилить методы getName() и getAddress() и использовать их в цикле?
>>707440
#99 #706634
>>706620
У твоего класса должны быть либо геттеры либо паблик поля с параметрами(что не гуд). Вот в цикле извлекай и сравнивай через equals.
Abonent findPhone(ArrayList<Abonent> abonents, String phone){
for(Abonent abonent: abonents) if(abonent.getPhone().equals(phone)) return abonent;
return null;
}
Джавагои, освоившие джаву 8 конечно обосрут, но идите нахуй.
>>707440
#100 #706636
>>706620
Если идти в ногу со временем, то будет что-то типа:
abonents.stream().filter(abonent -> name.equals(abonent.getName())).findFirst();

Получишь Optional<Abonent>
>>706639>>707440
#101 #706639
>>706636
Лучше не забивай ему голову этим, рано пока
53 Кб, 600x600
#102 #706642
Блядь, есть в этом мире нормальный справочник по алгоритмам и структурам данных? Мне не нужен учебник, нужен именно справочник с основными характеристиками и коротким примером реализации, а также оценкой временной сложности. Подскажите, пожалуйста.
>>706656
#103 #706655
maxalgo
>>706656
#105 #706663
>>706656
Спасибо, но немного не то. Нужны только основные алгоритмы и СД, а тут, за исключением нескольких разделов, интересные и нетривиальные для меня штуки, которые не нужны в абсолютном большинстве случаев.
>>706664>>706668
#106 #706664
>>706663
Какие тебе нахуй тогда основные алгоритмы нужны? Поиск подстроки?
>>706667
#107 #706667
>>706664
Уже похуй на алгоритмы, перестал плакать и нашёл всё нужное.
Есть что-то по СД? По-прежнему ищу справочник.
#108 #706668
>>706663
Тогда это посмотри, там больше структурок.
http://algolist.manual.ru
>>706670
#109 #706670
>>706668
Похоже, что заебись. Большое спасибо.
#110 #706781
>>706597
1) >что недопустимо
С чего решил?
2) зависит от первого вопроса, but anyway KISS.
3) yes
4) normalno
5) no
6) hz
#111 #707381
Привет, Аноны!
Месяца два назад я втянулся в программирование.
Всегда хотел это делать, ну вот на 22-м году жизни стал как-то реализовывать свою мечту.
В что-то въезжаю уже, в что-то нет: это явление нормальное, со временем разберусь. Всё равно это хобби, причём без привязки к языку. Просто начал с джавы, не знаю даже почему.
В общем, вкатываюсь сюда со своим будильником. Может, костыли(уверен, что точно есть) или велосипеды. Но всё-таки.

Класс, с которого всё начиналось. В нём весь движ:
http://pastebin.com/UxFAWdDt
Здесь унылый GUI и ActionListener:
http://pastebin.com/tfGdrHmX
Тут устанавливаем время для будильника:
http://pastebin.com/3TjvTn7a
Это выбор файла со звуком(как экспортнуть проект круто - я не знаю, так что в приложенном архиве есть звуки для теста)
http://pastebin.com/aVgmqSb3

В общем, что добавить хочу: время реализовал в AM-PM, так что если будете вводить время, например, 5 часов 00 минут, то пишите в первое окошечко 5, во второе 00.
перед 5 ноль не ставьте. с минутами также, если 5 минут - то пишите 5.
Не исправлял эту штуку, всё-таки проект не для реализации какой-то и даже не для личного пользования.
Будильник реагирует на файлы формата .wav
Нормальный wav, настоящий, а не удаленный ,mp3 и дописанный .wav(знаю умельцев, которые считают, что они так этот файл конвертируют).
А, ну и да, где заметите пустые методы мэйн - не обращайте внимания, они были нужны для теста во время написания этой штуки.

Нормальных фалообменников не знаю, а заводить гитхабы и другие вещи, удобные программистам, с моим уровнем ещё рановато.
Кто не подозревает меня в коварстве, для вас часы-будильник лежат тут:
http://rghost.ru/7FxwfYZxN

Что скажете? Спасибо, Аноны.
#111 #707381
Привет, Аноны!
Месяца два назад я втянулся в программирование.
Всегда хотел это делать, ну вот на 22-м году жизни стал как-то реализовывать свою мечту.
В что-то въезжаю уже, в что-то нет: это явление нормальное, со временем разберусь. Всё равно это хобби, причём без привязки к языку. Просто начал с джавы, не знаю даже почему.
В общем, вкатываюсь сюда со своим будильником. Может, костыли(уверен, что точно есть) или велосипеды. Но всё-таки.

Класс, с которого всё начиналось. В нём весь движ:
http://pastebin.com/UxFAWdDt
Здесь унылый GUI и ActionListener:
http://pastebin.com/tfGdrHmX
Тут устанавливаем время для будильника:
http://pastebin.com/3TjvTn7a
Это выбор файла со звуком(как экспортнуть проект круто - я не знаю, так что в приложенном архиве есть звуки для теста)
http://pastebin.com/aVgmqSb3

В общем, что добавить хочу: время реализовал в AM-PM, так что если будете вводить время, например, 5 часов 00 минут, то пишите в первое окошечко 5, во второе 00.
перед 5 ноль не ставьте. с минутами также, если 5 минут - то пишите 5.
Не исправлял эту штуку, всё-таки проект не для реализации какой-то и даже не для личного пользования.
Будильник реагирует на файлы формата .wav
Нормальный wav, настоящий, а не удаленный ,mp3 и дописанный .wav(знаю умельцев, которые считают, что они так этот файл конвертируют).
А, ну и да, где заметите пустые методы мэйн - не обращайте внимания, они были нужны для теста во время написания этой штуки.

Нормальных фалообменников не знаю, а заводить гитхабы и другие вещи, удобные программистам, с моим уровнем ещё рановато.
Кто не подозревает меня в коварстве, для вас часы-будильник лежат тут:
http://rghost.ru/7FxwfYZxN

Что скажете? Спасибо, Аноны.
>>707403>>707410
#112 #707403
>>707381
Для первого раза - отлично.

Самое сложное в программировании - это придумывание имён переменных и классов. Почитай стандарты по оформлению кода. Не используй однобуквенные имена переменных, за исключением счётчика цикла. Ну и координаты x, y может быть ещё.

Используй возвращаемые значения. Вместо "xxx.ChooseFile();", "File selectedFile = xxx.selecFile();", например.

Про велосипеды. Почитай про DateFormatter. JOptionPane может возвращать введённые текстовые значения, например. Ну и в Java есть стандартный класс таймера, ага.
>>707415
6 Кб, 201x251
#114 #707414
Ребят, есть игорь, написанный на джаве, и он летает на моей пекарне и на большинстве пекарен. Но хотелось бы оптимизировать ее, чтобы летала и на нищепека, но последнего у меня нет, чтобы проверить. Есть ли способ симулировать нищепека, кроме виртуальной машины? И какие есть норм профайлеры? Попробовал VisualVM, чет хуйню напрофайлило, не нашел боттлнек.
#115 #707415
>>707403
Спасибо, Анон! Как раз курю инфу по всем API, связанным с временем.
И про возвращаемые значения тоже.
Буду работать)
#116 #707418
>>707410
Схоронил, спасибо
#117 #707419
>>707414
JMH для бенчмарка кусков кода, например.
#119 #707425
>>707410

>эти примеры


ясно
#120 #707435
>>707414

> какие есть норм профайлеры


Java Mission Control
#121 #707440
>>706629
>>706634
>>706636
Спасибо всем за ответы, запилил геттеры/сеттеры, все норм.
#122 #707618
Братцы, помогите. Чувствую себя полным дебилом. Как работает InitialContext()? На данный момент у меня есть файл context.xml в META-INF, но из него не считывается вообще ничего. Объект с предполагаемым контекстом после InitialContext() вообще пуст.
>>707750
#123 #707631
Алсо, юзаю капли Хилокомод от синдрома сухого глаза, всем рекомендую.
>>707632
#124 #707632
>>707631
не туда
#125 #707742
Ананасы, помогите. Пишу сервер-клиент. На сервер посылаю число и пытаюсь считать с помощью сканера. Если я пишу double a = in.nextDouble(), то выкидывается java.util.InputMismatchException. Но если пишу double a = new Double(in.nextLine()), то все работает. В чем причина?
>>707751
sage #126 #707750
>>707618
Зависит от контейнера. Судя по всему у тебя томкет. Вот можешь отсюда списать:
https://github.com/hdghg/wstest
Работа с контекстом здесь:
https://github.com/hdghg/wstest/blob/master/src/main/webapp/META-INF/context.xml
https://github.com/hdghg/wstest/blob/master/src/main/java/com/mycompany/db/SchemaCreator.java
https://github.com/hdghg/wstest/blob/master/src/main/webapp/WEB-INF/web.xml
Проверял на томкат-7 и java 1.6, на версиях выше тоже должно, по идее, работать.
>>707752
sage #127 #707751
>>707742
а что возвращает nextDouble() и nextLine() у тебя?
>>707752>>707755
#128 #707752
>>707750
>>707751
сажа приклеилась
#129 #707755
>>707751
nextLine() ровно то, что я передаю на сервер. А nextDouble() выкидывает исключение.
>>707799
124 Кб, 911x688
19 Кб, 845x638
#130 #707799
>>707755
Лезь в сурцы и дебажь, если пользуешься идеей то для этого делать ничего не надо:
1. Ставишь курсор на метод который у тебя фейлится (nextDouble()), и нажимаешь F4
2. Дальше ставишь бряку на строчке которая по видимому фейлится (CTRL+F8).
3. запускаешь прогу в отладке (ALT+SHIFT+F9)
4. Воспроизводишь проблему. Когда дойдет бряки, программа встанет на паузу. В это время ты можешь посмотреть значения переменных. Тебе нужно посмотреть что возвращает processFloatToken(next(floatPattern()))
5. Нажимаешь ALT+F8, в верхнее поле вставляешь processFloatToken(next(floatPattern())).
6. Нажимаешь ALT+V или Evaluate
7. Смотришь результат, делаешь выводы.
#131 #707809
Бля, пацаны, жаба, бля, раш, это пиздец
>>707812
#132 #707812
>>707809
Что сказать-то хотел?
#133 #707932
>>706516
Больше денег.
#134 #707965
>>707414
j-profiler
#135 #708020
Короче хотел попробовать подключить впихнуть dao в элементарный веб-сервер, пробовал работать по примерам, но в классе Main ошибка когда указываю на класс StuffDao.
может кто пояснить что не так сделал?
https://github.com/imbaclearic/webexam.git
32 Кб, 341x500
#136 #708142
Что за эту книгу скажете? стоит ли с нее начинать?
>>708156>>708157
#137 #708155
>>706112
Двойная буферизация.
#138 #708156
>>708142
говорят, что всё чтиво под заголовком "for dummies" - говно.
несколько книг из этой серий(не по кодингу), которые были в моих руках, действительно были унылыми. хотя какие-то представления давали, это да.
#139 #708157
>>708142
В шапке есть всё, что тебе надо. Проверенное тысячами, зачем что-то выдумывать?
#140 #708366
Анон, есть ли какие-нибудь фреймворки для работы с сигналами? Что-нибудь аналогичное функциям матлаба для вычисления спектра сигнала, его фильтрования и прочей мишуры.
#141 #708453
Аноны, подскажите как сгенерировать рандомное появление юнитов на линии?
Допустим, есть 2 параметра: длина length и плотность density.
Из них надо расставить юнитов, то есть при плотности 10 и длине 40 будет 4 юнита. Я не могу понять как рандомно раскидать их по линии.
#142 #708478
>>708453
Почему не 5?
#143 #708483
>>708453
Я не особо понял, как у тебя плотность работает? Напиши подробнее.
>>710139
#144 #708485
>>708453
for (int i = 0; i < length / density; i++) {
units.pos = random.nextInt(length);
}

Чем такое не подходит?
>>708486>>710139
#145 #708486
>>708485
Бля, units[ i ].pos = ...
>>710139
#146 #708551
Сап гайс
Телеграмм группа для изучающих Java - telegram.me/javarush
>>708557>>708598
#147 #708557
>>708551
админов раздаете?
>>708561
#148 #708561
>>708557
не знаю, не админ
#149 #708598
>>708551
как же вы заебали со своей говноконторой
>>708649
#150 #708649
>>708598
блять группа ничего общего не имеет с одноимённым сайтом, расслабься
>>708985
#151 #708819
Анон, если просмотрю курс Головача из шапки треда, я могу податься в джуны или этого мало?
>>708989>>709033
#152 #708985
>>708649
просто надо купить уроки и стать джуном через месяц?
#153 #708989
>>708819
не понимаю нахуя смотреть эти курсы, ты читать не умеешь? Во всех курсах, которые я листал и которые хотя бы можно смотреть и не вытекали глаза с ушами (головач к таким не относится, наверное, это самые уебанские видео) было 80% воды, тупо тратится больше времени, чем на книгу.
>>709026
#154 #709026
>>708989
не понимаю нахуя читать эти книги, ты гуглить не умеешь? Во всех книгах, которые я листал и которые хотя бы можно читать и не вытекали глаза (хорстманн к таким не относится, наверное, это самые уебанские книги) было 80% воды, тупо тратится больше времени, чем на статью.
кому-то удобнее воспринимать видео и аудио, кому-то книги, кто-то сразу смотрит код и статьи лекции почему-то в универах ОК, а видео сразу делают их хуевыми, лол
>>709062
#155 #709033
>>708819
Можешь
#156 #709062
>>709026

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


Забавно
>>709318
#157 #709105
У меня бомбит с жабовской документации. В половине случаев приходится или в сорцы лезть, или на сторонних ресурсах смотреть примеры, чтобы понять, что вообще происходит с тем или иным методом.
>>709107
#158 #709107
>>709105
Есть такое дело с ней, да. Документация хороша, но ей сильно не хватает каких-то коммон кейсов на все классы.
#159 #709248
какие есть годные либы навроде гугловской гуавы?
>>709283
sage #161 #709318
>>709062
А если это какой-нибудь Дэн Абрамов или Мейерс?
Или гомология групп?
наверное забавно быть ограниченным дебилом который судить информацию по формату, а не по её качеству, кек
>>709457
#162 #709457
>>709318
да иди смотри головача, отличные курсы, мне же лучше
#163 #709493

>>Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)


есть рабочий линк? 404
>>709517
#164 #709517
>>709493
Линк рабочий. Прокси настроил?
>>709520
#165 #709520
>>709517
через тор пытался
>>709523
#166 #709523
>>709520
теперь зашло, отбой
>>709586
#167 #709586
>>709523
Мы поспим, а ты постой
#168 #709602
Котятки, у меня проблема я тупой
"Перейдите в папку object и выполните команду
javac HelloDate java"
ну и что от меня требуется сделать?
>>709621>>709688
#169 #709621
>>709602
Наверное, нужно сначала научитья пользоваться компуктером, и только потом учить жаву. Подсказка:cmd
>>709680
#170 #709662
Посоветуйте хороший мануал по какому-нибудь вменяемому GUI.
>>710211
#171 #709680
>>709621
Мб тутор посоветуете, было бы действительно неплохо.
инб4: компьютер для самых маленьких
>>709688
#172 #709688
>>709680
Первая ссылка по запросу "командная строка Windows":
http://sonikelf.ru/vvodnaya-statya-po-rabote-v-konsoli-chto-takoe-konsol-komandy-konsoli-i-prochee-takoe-raznoe-cmd/

Кстати, в >>709602 пропущена точка в HelloDate.java
#173 #709767
Анончик, посоветуй литературу по сервлетам.
#174 #709795
Как лучше хранить большие объемы данных в актуальном состоянии к которым постоянном будут обращаться для поиска?
Каждые 1 минуту я получаю дохуя данных до млн строк. Они представляют из себя просто строку на 3-20 символов. Паршу->обрабатываю и добавляю каждую строку в лист. Через минуту операция повторяется и лист обновляется новыми данными добавляет/удаляет (не)имеющиеся. Подход in-memory хранения является обоснованным с точки зрения частого изменения больших объемов данных и поиска, который может происходить когда угодно. Но есть одна большая проблема - вся эта хуйня занимает больше 500мб озу да, это критично и я не знаю как это исправить. Думал насчет БД, но там будет очень медленная обработка данных (поддержание актуальной инфы), которая будет происходить каждую минуту. А больше способов я и не знаю... Ананасы, помогите советом.
#175 #709810
>>709795
но ведь 500 мб озу для джавы немного, может тебе джава не нужна?
#176 #709866
>>709795
Попробуй эту библиотечку, может подойдет. https://habrahabr.ru/post/187234/
Можешь еще попробовать ограничить объем озу jvm сверху, ток будь готов что гц с ума будет сходить.
Если ничего не катит >>683573 (OP)
>>709954
#177 #709890
>>709795
Расскажи подробнее про данные. Какого вида строки? Почему такой маленький размер (до 20 символов) и всегда ли выполняется это условие? По чему идет поиск - по всей строке, случайному куску, началу строки? Нужны все результаты поиска, или n первых, или n случайных? Что известно про поисковые запросы - может их только фиксированное множество? Почему ограничение 500 мегабайт, это же мелочь?
#178 #709924
>>709795
Попробуй Redis с mass insert.
#179 #709946
Анон решил запилить запиленное за сто лет до его рождения примитивное мировое время и запилил.
тот же анон, что пилил будильник постами выше
Зачем я это делаю? я просто познаю API. В данном случае - календарь. Ну и пытаюсь использовать Thread, хотя не всегда получается как надо.
В любом случае нарабатываю опыт.
Кто хочет что-то посоветовать, показываю код:
С этого класса всё началось, в нём же сам механизм часиков:
http://pastebin.com/mCt4d812
А вот и главный класс, в котором сам фрэйм и Actions:
http://pastebin.com/hhyZrqdG
Ну и последний класс, в котором я долгое время тщетно пытался реализовать появление JLabel текста через Thread, но каждый раз получал что-то типа:
сначала выводило верно - Нью-Йорк. Когда кликал на другую кнопку получалось анджелесЛос-.
Так и не понял в чём шутка юмора, видать не реализуют "анимацию текста" через Thread. Гугланул уже по завершении, узнал про AnimatedText.
В любом случае класс остался, через него делаю Label с городом, хотя без него было легче обойтись(возможно).
Вот он:
http://pastebin.com/uPn8NxEN

Те, кто хочет посмотреть на уже готовый проект(а готовый он работает, честно и исправно!)
скачать его можно тут:http://rghost.ru/75MLkvQnp
Не бойся, там ничего нет. Разве не видишь по моему коду, что я и простые вещи с трудом пишу, не говоря уже о вирусах?;)

В общем, кто хочет - комменьте, кто не хочет - проходите мимо.

Спасибо за мнение, Аноны, и за возможность публиковать свои первые шаги тут.
#180 #709954
>>709866
Trove для примитивов, а тут же строки, разве что хранить их как последовательные массивы и хранить начала и концы.
#181 #710139
>>708485
>>708483
>>708486
Спасибо, аноны, примерно так и сделал.
12 Кб, 1897x195
#182 #710149
>>710171
#183 #710171
#184 #710177
Анон теперь задумал сделать стрелочные часы, чтобы двигалась стрелка секундная и минутная.
Файлы циферблата и стрелок будут в png.
Текущие представление о том, как это должно будет работать:
рисуем круг(наверное через графикс, верно? не работал ещё с ним).
Рисуем углы в этот круг.
ставим anchor point в середину круга, к нему привязываем эти палочки-углы.
Если прибавляется секунда - угол наклоняется на один градус.
Минута - тоже.
Час - тоже.
поверх этих палочек-углов привязать png файлы.
верный план?
>>710346
#185 #710211
>>709662
swing documentation
>>710313
#186 #710212
>>710231
#187 #710231
>>710212
кстати, извините за флуд, но почему в наше время все придираются к ";)" или к "))" или к "=)" ?

Я это даже среди взрослых замечал.
ладно школьники это не любят, мол, олдскул и не комильфо.
но взрослые люди-то почему? разве нет сразу осознания, что перед тобой человек твоего поколения?(аськи, агенты etc)
Я так годов с 7х-5х пишу, наверное. привычка.
хотя даже в те годы это были единственные смайлы, которые я использовал(хД терпеть не мог).
#188 #710233
Джаваны, такой вопрос: выходила ли эта книга на русском?
OReilly_Java_Cookbook_3rd_Edition
курю на ингрише без переводчика, но всё же выполнять 2 задачи разом(понимать+переводить) слегка утомляет
#189 #710240
>>710231
Здесь так не принято, сразу видно ньюфага. Появляются ассоциации с вконтактиком, одноклассниками и прочими бытлятниками, и отпадает желание отвечать.
>>710244
#190 #710244
>>710240
Ох, ну пиздец ты зануда. То есть он написал вполне себе нормальный пост, и тут ПИЗДЕЦ СУКА СКОБОЧКА ГЛАЗА КРОВЬЮ НАЛИЛИСЬ ВКОНТАКТИКИ ОДНОКЛАССНИКИ ПИЗДЕЦ БЫДЛО ЕБАНОЕ. Лучше б ты на содержание смотрел, а не на смайлики.
момоолдфаг
>>710250>>710277
#191 #710250
>>710244

> мимоолдфаг


тип подписался олдфагом и ты стал олдфаг?
>>710254
#192 #710254
>>710250
Тип проебал здесь 8 лет. Ну и даун, пиздец, сколько же всего полезного мог сделать за это время.
#193 #710269
>>710231

> ладно школьники это не любят


Так щкольники же и смайлофажат. Им кажется что это круто.
#194 #710277
>>710244
Пост и не читается, если в зону видимости попадают скобки.
Мне-то похуй, я читаю, если по теме. Но в твоих же интересах повысить рейтинг своего поста.
В чужой монастырь со своим уставом не принято входить.
#195 #710278
Алсо, если вконтактите НЕ ставить скобки, завершать предложения точкой и начинать их с большой буквы, тебя посчитают злым и обиженным.
Надо понимать, когда уместно, а когда нет. Это как с пердежом.
>>710280
#196 #710280
>>710278
слушай, пацан :( Ты с олдфагом разговариваешь, так что больше уважения!

Я ещё на ТОМ дваче был, который на so оканчивается!
#197 #710283
openJDK или JDK?
>>710298
#198 #710284
>>710231
Смайлик твой просто очень мило выглядит, если мысленно поменять окончания и закрыть глаза, то можно представить, что это тяночка написала тот пост. Тяночки очень любят такие wink смайлики, как бы такое кокетливое подмигивание. Короче, смайлик к месту это хорошо.
#199 #710298
>>710283
В жопу раз или в жопу раз?
#200 #710307
вот единственный минус АИБ - это всё-таки анонимность.
Какой-то анон начинает срач за другого анона, и все думают, что это один и тот же анон, хотя анонов может уже быть и 3 и 5 и более, а со стороны похоже на срач двух.
>>710391
#201 #710313
>>710211
А что FX не запилили?
#202 #710346
>>710177
Вырисовывай не пнгшками, а пикселями
#203 #710352
>>709946
Анон, в следующий раз пиши название .jar файла латиницей и без пробелов.
#204 #710391
>>710307

>Считать, что на аиб ты отвечаешь конкретному анону.

7 Кб, 744x162
#205 #710416
Вкатился, ёбана
>>710424
#206 #710424
>>710416
Ответьте сразу на вопрос, метод - это функция? Тогда зачем методом называть?
>>710426
#207 #710426
>>710424
в жабе нет функций
>>710435
#208 #710435
>>710426
хорошо, метод - это то что в си, к примеру, назвается функция, так?
>>710437
#209 #710437
>>710435
Нет, функция в стиле си это статический метод.
74 Кб, 856x529
#210 #710490
Нормально ли что JavaFX приложение жрёт 160МБ памяти в 64х системе? рандомпик
>>710499>>710722
#211 #710499
>>710490
мало чет
>>710510
#212 #710510
>>710499
Но это хелло ворд.
>>710577
#213 #710577
>>710510
Он пиздит. Это не Hell word
3 Кб, 256x256
#214 #710699
>>703806 (OP)
сеньоры помидоры, ответьте джуниору на тупой вопрос, я что-то читаю-читаю и не понимаю.

Если у нас есть
HashMap myMap;

и мы пытаемся в каком-то куске сделать что-то вроде
syncronized(myMap)

То как это вообще сработает ? Если к мапе кто-нибудь обратится из другого не синхронайзед куска кода, то он будет ждать пока не освободится ресурс, то есть кто-то кто занял синхронайзед не выйдет оттуда?
Кроме того, я так и не понял, везде пишут что HashMap это не потокобезопасный и все дела? Но правильно я понимаю, если сделать в куске кода
syncronized(myMap)
то все будет окей и типа все будет потокобезопасно ?
#215 #710720
>>710699
Если напишешь блок syncronized(myMap) то обезопасишь себя от concurrentModificationException, тобишь исключит одновременную запись и чтение и ошибку. Если тебе надо многопоточно использовать то проще взять готовый безопасный HashMap из пакета java.util.concurrent
Линк: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html
>>710880
#216 #710722
>>710490
Джява по умолчанию сразу резервирует 100-300 метров памяти, вне зависимости от использования
#217 #710737
>>710699
Ебать у тебя каша в голове.
>>710738
#218 #710738
>>710737
Вполне понятный вопрос, если человек только открыл статью про синхронизацию
#219 #710758
Лень искать какое там слово в спамлисте, залил на пастбин ответ на твой ответ
http://pastebin.com/cLgeZxEF
#220 #710794
Сап, гайз. Подскажите как мне тут инициализировать Graphics, чтобы в окошке написалась строчка. На деле выводится просто окошко.
Http://pastebin.com/4HH2nHp4
(неделяжавануб).
#221 #710805
>>710699

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


Нет. Несинхронайзед код сможет делать с мамой что угодно и когда угодно независимо от того, есть ли кто-то в синхронайзед блоке.

> если сделать в куске кода syncronized(myMap) то все будет окей и типа все будет потокобезопасно ?


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

Кстати, слово synсhrоnized - в спамлисте, а ты пропускаешь в нем h
>>710880
#222 #710848
чем в яве распарсить такое?
article.php?view=flat&page=3&mode=1
надо получить название параметра и значения
view flat
page 3
mode 1
>>710852
#223 #710852
>>710848
Google: Java parse url
Первая ссылка, не благодари.
>>710901>>711024
#224 #710880
>>710720
>>710805
Именно по этому и пропускаю, не знаю как тут устроено это все.
Спасибо!
>>710883
#225 #710883
>>710880

>поэтому


фикс
#226 #710901
>>710852
Ну я нуб еще, не знал, например, что есть сплит.
>>710911
#227 #710911
>>710901
Узнаешь про какой-нибудь stringtokenizer - вообще охуеешь.
#228 #711024
>>710852
а твоя ссылка мне не подошла, вываливается в эксепшн даже если такая строчка например
article.php?view=flat&page=3&&mode=1
>>711029
#229 #711029
>>711024
Охренные посоны делают регулярочки
#230 #711054
Анасы, нужно вывести двумерный массив в javaFx, который в процессе работы проги будет меняться. Как такое реализовать?
Читал экзамплы со gripPane, но там везде используют статику, как потом обратиться к нужному элементу?
#231 #711055
poconi, pomogite najtiElementVMassive
>>711056
#232 #711056
>>711055
na bratan http://ideone.com/iqNA7l
ne blogodori
#233 #711127
За що? Неужели нельзя было во второй кусочек передать ""
Кто этот сплит писал? Почему не предупредил меня об возможном эксепшене?

<code>
public class My2 {
public static void main(String[] args) {
String s="name=";
String[] y = new String[2];
y=s.split("=");
System.out.println(y[0] + y[1]);
}
}
</code>

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
>>711148
#234 #711148
>>711127
А хули он должен был туда что-то класть? Ему дали строку типа "а," и сказали разделить запятыми, он и разделил.
>>711149
#235 #711149
>>711148
Он ее не разделил, а вывалил эксепшн, передал в y[1] что-то за пределами массива a.toCharArray().
>>711163
#236 #711163
>>711149
Ты даун, блять.
>String[] y = new String[2];
>y=s.split("=");
>System.out.println(y[0] + y[1]);
Ты сначала пишешь в y ссылку на пустой массив из 2 элементов, на второй строчке присваиваешь этой переменной тот массив, который вернул метод сплит (он из 1 элемента), а в третьей строке пытаешься вывести второй элемент массива, состоящего из 1 элемента. Естественно ты ошибку получаешь.
Схуяли ты вообще решил, что ты можешь одним "=" сделать поэлементное присваивание?
>>711170
#237 #711170
>>711163
помоему даун тут ты, если я напишу
...
y[0]="";
y[1]="";
y=s.split("=");
System.out.println(y[0] + y[1]);

результат будет тот же.
>>711192
#238 #711192
>>711170

>y[0]="";


>y[1]="";


>y=s.split("=");


>System.out.println(y[0] + y[1]);


>результат будет тот же


Ну конечно он будет тот же. Ты в строке

>y=s.split("=")


Присваиваешь у ссылку на массив из одного элемента, а в следующей хочешь получить первый и второй элементы. Но второго элемента у массива нет, поэтому ты и получаешь исключение. Так понятнее?
#239 #711260
>>710699

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


Если к мапе кто-нибудь обратится из другого не синхронайзед куска кода, то проблемы у него будут только в случае если он делает операцию вида read-write.
Например, код if(ref == null) { ref = "something"; } -- это read-write. Допустим, два треда имеют этот участок кода, только во втором треде присваивается "something_more". Без синхронизации этот код -- источник т.н. race condition, т.е. ситуации, когда состояние данных в результате выполнения конкурентной операции всякий раз определяется практически случайно, исходя из того, какой поток изменил данные последним. Дальнейший код обоих потоков работает, по сути, с неопределённым значением: в этот раз оно то что нужно, а в другой раз -- какая-то хуйня "блядь, какого хуя тут 3, когда я присвоил 2?! ... Сука, ну а щас-то почему 2, а не 3?!!". Поэтому поток выполнения программы становится недетерминированным.
Всё concurrency, в общем-то, вертится вокруг задачи атомизации цепочки read-write.
syncronized -- это блокирующий вид атомизации: потоки выстраиваются в очередь и ждут, пока освободится лок; атомизация достигается за счёт того, что read-write происходит во временных границах лока, и никакой код, синхронизированный этим локом, не может изменить состояние данных в промежутке между этими границами.
Есть неблокирующая атомизация -- алгоритмы и структуры данных, основанные на инструкции Compare And Set (CAS). Её смысл в том, что код, желающий изменить данные, сначала запоминает состояние этих данных, изменяет данные, и пытается записать изменения, вызвав CAS с двумя аргументами: первый -- запомненное состояние данных, второй -- изменённое (обновлённое) состояние данных, которое необходимо записать. Если запомненное состояние совпадает с текущим, то изменения записываются. В противном случае попытка записи считается неудачной, и записывающему предлагается пойти нахуй попытаться ещё раз, если очень нужно. Неблокирующими данный вид алгоритмов назван потому, что при такой организации никого не заставляют принудительно пассивно ждать доступа к данным: вместо этого ожидание активное, вида "do - check (всегда быстро) - do - check ...", вместо "do - wait (потенциально долго) - do - wait ..."
Подробнее и академичнее на эту тему можно прочитать, например, в Википедии: https://en.wikipedia.org/wiki/Non-blocking_algorithm
Я мб где-то утрировал, конечно, но как-то так оно мне видится.
#239 #711260
>>710699

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


Если к мапе кто-нибудь обратится из другого не синхронайзед куска кода, то проблемы у него будут только в случае если он делает операцию вида read-write.
Например, код if(ref == null) { ref = "something"; } -- это read-write. Допустим, два треда имеют этот участок кода, только во втором треде присваивается "something_more". Без синхронизации этот код -- источник т.н. race condition, т.е. ситуации, когда состояние данных в результате выполнения конкурентной операции всякий раз определяется практически случайно, исходя из того, какой поток изменил данные последним. Дальнейший код обоих потоков работает, по сути, с неопределённым значением: в этот раз оно то что нужно, а в другой раз -- какая-то хуйня "блядь, какого хуя тут 3, когда я присвоил 2?! ... Сука, ну а щас-то почему 2, а не 3?!!". Поэтому поток выполнения программы становится недетерминированным.
Всё concurrency, в общем-то, вертится вокруг задачи атомизации цепочки read-write.
syncronized -- это блокирующий вид атомизации: потоки выстраиваются в очередь и ждут, пока освободится лок; атомизация достигается за счёт того, что read-write происходит во временных границах лока, и никакой код, синхронизированный этим локом, не может изменить состояние данных в промежутке между этими границами.
Есть неблокирующая атомизация -- алгоритмы и структуры данных, основанные на инструкции Compare And Set (CAS). Её смысл в том, что код, желающий изменить данные, сначала запоминает состояние этих данных, изменяет данные, и пытается записать изменения, вызвав CAS с двумя аргументами: первый -- запомненное состояние данных, второй -- изменённое (обновлённое) состояние данных, которое необходимо записать. Если запомненное состояние совпадает с текущим, то изменения записываются. В противном случае попытка записи считается неудачной, и записывающему предлагается пойти нахуй попытаться ещё раз, если очень нужно. Неблокирующими данный вид алгоритмов назван потому, что при такой организации никого не заставляют принудительно пассивно ждать доступа к данным: вместо этого ожидание активное, вида "do - check (всегда быстро) - do - check ...", вместо "do - wait (потенциально долго) - do - wait ..."
Подробнее и академичнее на эту тему можно прочитать, например, в Википедии: https://en.wikipedia.org/wiki/Non-blocking_algorithm
Я мб где-то утрировал, конечно, но как-то так оно мне видится.
>>711329>>711332
64 Кб, 700x900
#240 #711317
Что хорошего в джяве помимо libgdx, hibernate и spring?
#241 #711323
>>711317
Groovy
#242 #711329
>>711260
Внесу правки, заодно извиняюсь за неточности.
К первому абзацу хочу добавить, что проблема там будет не только при совмещении read+write. На самом деле, если в одном потоке менять структуру данных, а в другом читать её, и всё это не синхронизировать, то если операция write не атомарна, то читающий поток может получить inconsistent read, т.е. такое состояние структуры данных, над которой уже началась, но ещё не закончилась операция изменения. Так что в этом случае операции read и write нужно синхронизировать / атомизировать.
#243 #711332
>>711260

>Compare And Set (CAS)


Бля, в мире столько всего интересного, а у меня уже шишка не стоит.
#244 #711483
Я немного тупой, обьясните, нужно сперва 3 туториала пройти а потом на книги переключиться?
#245 #711489
>>711317
Ничего. Учи Свифт.
>>711572
#246 #711498
Анон, если ли какие - то туториалы, где мудрость постигается через маленькие проекты?
для начального уровня
на кодакадеми задания для совсем даунов, я уже не могу
#247 #711523
Вы знаете, что вы - черви пидоры, которые не могут составить нормальную шапку?
>>711531
#248 #711531
>>711523
Иди нахуй со своим джаварашем
#249 #711572
>>711489
Чому тогда не kotlin?
#250 #711826
>>703819
Что за тестовое задание было?
#251 #711840
Netbeans или IDEA?
#252 #711843
>>711840
Intellij beans
#253 #711847
>>711840
Jetbrains без вариантов.
>>711871
#254 #711850
>>711840
Бабочка.
#255 #711855
>>711317

> hibernate


> spring


> Хорошее

#256 #711871
>>711847
Мне тут .java или .groovy предлагает file asociations. Че выбирать?
>>712117>>712782
#257 #711883
Посоны, поясните по хардкору за RESTful. Что это за говно и как его писать? Понял, что меня просят написать апи, используя сервер wildfly. Как его настроить? Как парсить XML? Бляя и это задание на джуниора
>>711924
#258 #711924
>>711883
google: Spring REST
#259 #712103
>>703806 (OP)
Сорян за нубский вопрос, как создать массив состоящий из массивов?
#260 #712104
>>712103
в частности ArrayList интересует.
>>712118
#261 #712112
>>712103
Вообщем разобрался сам.
#262 #712117
>>711871
Что хочешь. Можешь вообще ничего не выбрать. Значит лишь то, что по двойному клику на файл будет запускаться идея, чтобы его отобразить.
#263 #712118
>>712103
int[][]
>>712104
ArrayList<ArrayList<Object>>
>>712253
#264 #712253
>>712118
на счет массивов, знал, а за эрэйлист спасиб
#265 #712294
Вопрос по Swing.
Спасите глупую душу новобранца.

Я тут немного балуюсь с формами и вот хочу вставить одну форму в другую, ну тип окошечко в окошечке, но ничего не выходит. Подскажите, ЧЯДНТ. Мысли насчет .add() были, но тоже зафейлил.
http://pastebin.com/3yXTBUiK
>>712302>>712306
#266 #712302
>>712294
Бля, пиздос, вот я тупой, почаны. Просто забыл задать размер.
И над этой хуйней парился около часа.
>>712306
#267 #712306
>>712302
>>712294
Хотя... Вопрос сохраняется. Тут открывается два приложения параллельно. Можно ли сделать так, чтобы вторая форма работала в первой, но не запускалась параллельным окном.
>>713351
#268 #712782
#269 #713347
>>703806 (OP)

>Гон на джавараш


>Окупил обучение через пол года


Что не так с ним по вашему мнению?
>>713409>>713423
#270 #713351
>>712306
Это называется Multiple Document Interface. Тебе нужны JDesktopPane и JInternalFrame. Например: http://www.deitel.com/articles/java_tutorials/20060505/
>>713422
#271 #713409
>>713347
Че ж ты раньше не сказал? Пацаны то и не знали.
Сам по себе критерий времени самоокупаемости говно, так еще и срок какой - пол года! Вложения уровня /pr/ просто.
#272 #713422
>>713351
Seems legit. Спасибо.
#273 #713423
>>713347

>10к за полгода


Треды фасолинки в другом разделе.
sage #274 #713496
>>703806 (OP)
Аноны, что у джуна могут спросить из канкарента?
>>713552
#275 #713547
захуя в новых даже фирмах пользуют Swing/SWT вместо JavaFX например?
>>713553
#276 #713549
начинаю изучать все это дерьмо
и вот с чего в недоумении
читал про j2ee и все пропитано "ну все щас усё модульное и быстра и проста мжно сделать все!"
читаю про спринг то же самое римерно ток еще плюсом "и быстрее чем j2ee!"
глазом задел про play и там опять сука обещают скорость разраотки
так какого хуя тогда на джаве с ее развитием все такое все равно долгое ебаный стыд
>>713554
#277 #713552
>>713496
Как создать поток, как проследить что он завершился, как подождать его завершения, зачем нужны wait, notify, notifyAll. Если на все ответишь начнут копать про потокобезопасные коллекции, семафоры, иммутабельность, тредпуллы, FutureTask. Это уже эдвенсед, на будущее.
#278 #713553
>>713547
свт это надстройка над свингом, потому и свинг. Сам свт считается получше свинга говно.
>>713558
#279 #713554
>>713549
что долгое? Разработка долгая? Всякие методики ведения проектов для того и придуманы чтобы растянуть процесс разработки и срубить побольше бабла с заказчика. Это не относится к фреймворкам вообще никак.
>>713560
#280 #713558
>>713553
а почему не джавафикс? он же новый и все такое, хипста хуиста, цсс
>>713581
#281 #713560
>>713554
сука так и знал что джава это ЗОГ дело
#282 #713581
>>713558
ну бля почему используют EE а не play или spring? Когда-то была причина и выбрали свинг. Не прыгать со старых наработок на новое молодежное у них ума хватило. Фх тоже говно, кстати.
#283 #713590
Аноны, объясните пожалуйста в чем разница между static методами и обычными? Изначально понял, что статический употребляется вначале, т.е staticMethod(variable). Но как оказалось нестатические употребляется так же.
Ещё почему считается хорошим тоном использовать статические методы вместо обычных?
>>713596>>713605
#284 #713596
>>713590
А там где ты это вычитал, не объясняется, чтоли?
Статические методы это аналоги функций в си, они не привязаны к объекту, а значит, из них нельзя обратиться к экземпляру класса, в котором они описаны. Хорошим тоном считается использовать статические методы там, где не нужна привязка к объекту и обычные методы там, где нужна работа с объектом класса, в котором метод описан.
>>713616>>713626
#285 #713603
Комментарий
#286 #713605
>>713590
Если метод не зависит от состояния экземпляров класса (т.е. в методе не используются нестатические свойства и методы класса) и не нужен в иерархии наследования -- делай его статическим.
>>713615>>713616
#287 #713615
>>713605
А зачем? Компилятор его и так девертуализирует и возможно заинлайнит.

Зачем вообще статические методы, кроме фабрик и утилитных-классов?
#288 #713616
>>713596
>>713605
Спасибо, теперь более менее понятней.
#289 #713626
>>713596
Вообще там где я читал, пишут довольно пространственно. То есть static для методов которые не собираешься переписывать, которые не нуждаются в инстансе класса... Вообще часто ли они используются в настоящих проектах, много ли занимают памяти, может ещё какие-то детали связанные с ними есть?
90 Кб, 1920x1080
174 Кб, 1920x1080
#290 #713630
Господа офицеры, на связи погромист с вышкой, который решил вкатиться в жабу-веб/любую жабу. размышлял над идеями для примитивного говнопроекта, который покажет в резюмехе, что я не просто хуй с горы. планировалось использовать html css js hibernate jsf sql ajax и немного еще всякого. пикрил запилил недодизайн. суть проста как число 3 - юзернейм логинится/регистрируется, видит список комнат, в каждую из которых может войти. слева показаны члены онлайн (members online) в текущей комнате. на одном скрине окошко авторизации, на втором как будет выглядеть комната внутри. анон, нормально ли это для говнопроекта к резюме? подумой, дай советов по реализации или обоссы
>>713651
126 Кб, 500x698
#291 #713631
Котаны, а есть еще годные подкасты, уровня разбора полетов? Может на инглише, если разборчивая речь
>>713640
sage #292 #713640
>>713631
А он годный? Просто послушал один раз и чет там "оффтопа" через чур много.
>>713642
#293 #713642
>>713640
Вопрос бы поставлен есть ли. Если есть годнее, делись.
>>713664
#294 #713651
>>713630

>нормально ли это для говнопроекта к резюме?


Нормально. На самом деле по себе могу сказать, что тебе охуенно повезет, если кто-то вообще откроет твой проект: HRы в этом нихуя не понимают, тем людям, на которых тебя спихнут, скорее всего будет лень.

>подумой, дай советов по реализации


Запили всё это на спринге, охуенно будет, базарю.
#295 #713664
>>713642
Открываешь последнюю ссылку оп поста и ищешь пункт - подкасты. Смотришь если нравится, там две ссылки. Я хотел их включить в оп пост, но передумал, потому что у многих проблемы с инглишем и они как дауны дрочат джавараш.
>>713675
391 Кб, 500x750
#296 #713675
>>713664
То что искал, благодарю.
#297 #713753
>>713615
А я ебу, что там компилятор сделает или возможно сделает?
>>713780
#298 #713780
>>713753
ОК, я понял ты любишь преждевременные эякуляции оптимизации.
#299 #713802
>>713615
Затем, что сигнатура функции служит подсказкой другим программистам, как она себя ведет и должна использоваться. Так что, блять, пиши информативные, корректные сигнатуры; если функция де-факто статическая - то пусть она будет статическая, это ж несложно.
Менее важно, конечно, если ты для себя говнокодишь, только приличным людям не показывай.
>>713808
#300 #713806
>>713615
Чтобы метод можно было вызвать без создания экземпляра.
>>713808
#301 #713808
>>713806 >>713802
Зачем вообще статические методы, кроме фабрик и утилитных-классов?
#302 #713811
>>713808
А как же main?
>>713813
#303 #713812
>>713808
Чтобы метод можно было вызвать без создания экземпляра.
>>713813
#304 #713813
>>713808
Дополню: если вы ( >>713812 ) используете их для других целей, у вас видимо проблемы с проектирование (типо костылей)

>>713811
ОК, это третий необхдимый случай
#305 #713814
>>713813
Синглтоны?
И для ведра еще советуют использовать статик методы, но мне кажется это экономия уровня отказа от енамов и сохранении спичек.
sage #306 #713817
>>713813

> Классу необходим метод для работы которого не нужны данные конкретного инстанса


> Не буду делать его статическим чтобы не плодить костылей))) а вызывать буду (new YobaClass()).staticheskiiMetod() или синглтонн ебну типа про))))

>>713820>>713823
sage #307 #713820
>>713817
Два чаю адеквату.
#308 #713823
>>713817
Этот индус порвался...

Если это утилитный-класс/шабрика или сингтон, то это норма.
В ином случае, у тебя макароны, вместо кода (или давай живой пример, когда это нужно)..
#309 #713824
>>713808
Статик методы полезны, когда есть стэйтлесс код.
Например можно сделать интерфейс который будет давать возможность делать универсальный nullчек или сортировку чере статки метод, очень удобно.
>>713839
#310 #713839
>>713824
Извини, ты сейчас утилитный класс (который в C# заменяется экстеншен методами) описал
или я что-то не понял (особенно "чере статки метод")?
>>713847
#311 #713847
>>713839
Нет, не про классы.
Есть некий набор классов который реализуют один интерфейс, у них есть общий метод по умолчанию, он выполняет некую логику, но перед выполнением, проводит внутренние проверки переменных например. Так вот, статическим методом интерфейса можно скрыть эту логику проверки и для всех, кто реализует этот интерфейс она будет не видна . Ну не охуенно ли?
#312 #713854
>>713813
Иди отстоси банан, архитектор.
#313 #713855
>>713847
Это можно делать без статических методов в рамках наследования (Template Method).
>>713857
#314 #713857
>>713855
можно, но в этом случае ты прикрепляешься к наследуемому классу, а через интерфейс обычное расширение.
#315 #713864
>>713847
Что-то мне это сходу напомнило "Constant Interface Antipattern", но там другая мотивация.

Вообще это как-то не явно, а если другой разработчик унаследует твой интерфейс.
Как он узнает, что ему нужно сначала вызвать этот статический-метод?
>>713865
#316 #713865
>>713864
Ему не нужно его вызывать напрямую, он часть логики метода по умолчанию, например может быть.
>>713868
#317 #713868
>>713865

>Метод по умолчанию


>интерфейс


ты про дефолтные методы что-ли?
>>713873
#318 #713873
>>713868
он самый
>>713881
#319 #713881
>>713873

> но перед выполнением, проводит внутренние проверки переменных например


Под этим ты подразумеваешь, что но вызывает другие методы интерфейса (других "переменных" в интерфейсе нет (static поля еще конечно)).

Ну честно, делать "шаблонный метод" на дефолтных методах - это изврат.
И ты даже не сможешь запретить его переопределение (final там запрещен).
>>713912
#320 #713912
#321 #713963
>>713847

> Ну не охуенно ли?


Нет, нихуя не охуенно.
1) Напомню, что разговор о статических методах. Какие переменные ты там проверять собрался? У тебя состояние в статических переменных хранится? Пиздец тебе случится сразу же, как только твое приложение придется заскейлить больше чем на одну машину.
2) "статическим методом интерфейса можно скрыть эту логику проверки и для всех, кто реализует этот интерфейс она будет не видна". Переопределил (случайно) этот дефолтный метод - и снова пиздец тебе, нет больше никакой проверки.
3) Один из классов имплементит еще и другой интерфейс с точно таким же методом. И тебе снова пиздец, потому что ты должен сам реализовать этот же метод и не забыть добавить все проверки из своего интерфейса.
#322 #714071
Анонас, поясги за spring roo vs spring boot
Плюсы, минусы, подводные камни
>>714120>>714273
#323 #714120
>>714071
сорта говна, юзай grails
#324 #714203
Поясняю по хардкору за сорта [говна] статик методов.
1) main, utils, вся хуйня.
2) Иммутабельность и простота понимания кода. Когда внутри метода вызывается статик метод, то ты понимаешь, что, скорее всего, там нет никаких сайд-эффектов и состояние самого объекта не изменилось. Конечно, это не относится к изменению статических полей (читай глобальных переменных), но такие методы должны быть очевидны, либо за это нужно несчадно пиздить арматурой.
3) Статический метод, который возвращает объект анонимного класса. Нужно, чтобы у объекта анонимного класа не было ссылки на объект объемлющего класса.
#325 #714264
Вечный бан
#326 #714268
Ничоси вечный бан сняли.
Неужто пидорнули гопидора модера.
Полгода в бане сидел котаны.

Сашивацте ваши вопросы.
Хуячу на ее6 ее7 осги под фьюз.
>>714296
#327 #714270
Алсо спринг. В основном под джейбосы. Ас и вилдфлай.
Сть книжки
#328 #714273
>>714071
Ру это попытка скопипиздить джейбос фордж. По мне так кривая. Спринг бут - говно. Яваобьявления бинов - говно. Только хмл только хардкор.
Вилдфлай сварм или просто внедренный андертоу - сила.
>>714390
#329 #714296
>>714268
Но модер байтоёб.

> вопросы


Котлин или скала?
>>714382
9 Кб, 576x211
#330 #714302
Буду программистом. Зачем? Бля буду программистом.
>>714321
96 Кб, 1279x981
#331 #714321
>>714302
ууууу кто тут самый кулхацкер
>>715549
#332 #714382
>>714296
Груви
#333 #714390
>>714273
кстате чего все все время гонят на хмл? все в одном месте, шикота жеж ведь
#334 #714397
>>714390
ты иксемельников по 20000 строк не видел
#335 #714403
>>714390
Спрингбутодебилам неприятно, что нужно помнить о дескрипторах развертывания, о конфигах персистентности и прочем типа настроек сервлетов, фильтров и рилмов секурити, что помимо контекста конфигурится в хмл.
Спрингбутодебилам проще перекомпилить свой хеловорд.
О том что хмл + аннотации рулят знают лишь труспрингодрочеры.
В ЕЕ особо альтернативы хмл и нет лол. Хотя cdi работает на аннотацияз и beam.xml уже скорее флажок. Персистентности в хмл, что удобно, ибо датасорсы один фиг лучше делать контейнероуправляемые.
Транзакционность в контейнере и на аннотациях везде. Jms в контейнере.
>>714456
#336 #714407
>>714390
Есть же джава конфиги и автовайринг.
>>714410
#337 #714410
>>714407
Джава конфигурится говно для хеловордов.
Вот когда увидишь проект на 10 к бинов с переборкой в 20 минут, тогда полюбишь хмл, сука
>>714413>>714443
#338 #714413
>>714410
Джава конфиг в любом случае лучше, т. к. есть рантайм проверка + легче рефракторинг проводить. А свое говно оставь себе. У меня все.
>>714418
#339 #714418
>>714413

>маняоправдания хеловордщика


Окай.
Ты поди еще и джетбрейноговном обмазываешься?
>>714430
#340 #714430
>>714418
Ты про статические билдеры на котлине?
>>714482
#341 #714443
>>714410

>кряяя


Какая разница, в сущности, куда 10к бин дефинишнов засуть -- в две-три конфигурации или в один beans.xml?
>>714483
#342 #714456
>>714403
Так Бут для хэлловорлдов и создавался.
#343 #714482
>>714430
Нет я про идею
#344 #714483
>>714443
Ты дебил?
Если деплоить вар или еар ты тоже без перекомпиляции контент будешь перегружать?
>>714499
#345 #714499
>>714483
Мм, ну да, есть такая тема..
#346 #714707
Двач, что скажете за:
http://www.learnjavaonline.org/
>>714714>>714735
#347 #714714
>>714707
Хз, судя по всему совсем основы, ну и знания теории тебе это не даст, а на собеседованиях ее нужно знать.
>>714803
#348 #714735
>>714707
Непонятно на кого рассчитано: для нуба слишком коротко, для перекатывающихся - слишком поверхностно.
Азы синтаксиса освоить можно, но программить там не научишься.
67 Кб, 1195x602
#349 #714781
Поясните, плес дауну, почему
if ("ip".equals("ig")) возвращает true?

Пикрилейтед
>>714784>>714808
#350 #714784
>>714781
Разобрался, отбой.
#351 #714803
>>714714
Можно более детально за теорию, это типа надо знать, ооп, джава кор/адвансед, или как работает JVM, JIT, и вот это все?
>>714815
#352 #714808
>>714781
Скинь ссылку на сайт, где ты это берешь.
>>714841
#353 #714815
>>714803
Ну, меня на интерна спрашивали всякие нюансы вроде организации HashMap, устройство памяти и принципы работы gc, порядок инициализации и всё такое, на подобных сайтах ты ничего такого не узнаешь.
#354 #714841
>>714808
В шапке
Q: Пока читаю, все понимаю, а сам ничего сделать не могу. Что делать?
A: Практика, больше практики.
Уровня laba1.pas: http://codingbat.com/java http://codehunt.com
Чутка серьезнее: http://programmr.com/zone/java http://codingame.com/puzzles
Рулеточка: http://postimg.org/image/xdfbvgps9/
Олимпиадка: http://codeforces.com
Примеры той-проектов: http://eax.me/programming-language-learning/
#355 #714916
>>703904

> Хибер сам по себе не так уж сложен


да и не особо нужен, т.к. у спринга свой ORM есть - Spring Data JPA
>>714965>>715053
#356 #714930
>>706597
1) Репозитории прячешь внутри сервисов,
2) Во-первых в контексте хранятся компоненты системы, энтити и модели туда просто незачем складывать. Во-вторых есть специальные конвертеры, которые за тебя всю рутину сделают - Dozer, Orika.
3) Да
4) Наоборот, так и нужно делать. https://en.wikipedia.org/wiki/SOLID_(object-oriented_design)
5) Нет, в этом просто нет смысла, spring по умолчанию все бины-сервисы создает как синглтоны. К тому же статики очень хреново покрываются тестами.
6) Да хотя бы Spring in Action осиль.
>>714965
#357 #714942
>>714965
#358 #714965
>>714942
>>714930
>>714916
НЕКРОПОСТР
#359 #715053
>>714916
Пукнул на дауна.
Ебанько ты как вообще учил ее?

Слушай папу уебок.
Jpa само по себе подразумевает что ему требуется провайдер. Опенджпа, эклипслинк, хибернейт. В спринге хибернейт по дефолту.
И в частности spring-data-jpa работает именно поверх спринга.
>>715055>>715178
#360 #715055
>>715053
Поверх хибернейта конечно.
#361 #715064
Алсо расскажу тебе про датасорсы и персистенс юниты.
Они бывают контейнерные и аппликешен уровня.
Например. Если ты постоянно работаешь с одной базой, и деплоишь свои бины в сервер приложений, например жбосс или вилдфлай. То можно на уровне самого жбоса подключить драйвер субд как модуль и создать контейнерный датасорс.
Затем в апликухе, создаешь персистенс юнит, который ссылается на дждни ссылку датасорса внутри контейнера. И при деплое персистенс юниты создадутся контейнером.
Но тут надо помнить ято отдавая персистенс юниты и датасорсы контейнеру ты так же передаешь управление транзакциями им м
Потому если ты будешь пытаться в инжекченом энтитиманагере вручную управлять транзакциями то получишь по ебалу эксепшеном.
288 Кб, 825x825
#362 #715070
Охуть короче за полгода что был в бане нубасы тут распезделись.
Потрогали ссаный спрингбут и возомнили себя яваприматами.
Охуели.
#363 #715097
И вообще почему не запилили ЕЕ тред?
Пусть начинающие тут с СЕ и свингами тусуются. А под ЕЕ отдельный тред
>>715112
#364 #715112
>>715097
Пилили же, не взлетел, все здесь остались.
>>715128
#365 #715128
>>715112
Хуево чо уж.
Ну да ладно. Я вернулся :3
>>715173
#366 #715173
>>715128
Полтреда уже успел засрать. Баньте нахуй снова!
>>715199
#367 #715178
>>715053
Дак в этом вся суть спринго-индусов. Думают, что Спринг -- это какая-то альтернатива EE-решениям, а не обёртка над ними.
>>715312
#368 #715199
>>715173
Ну забанят и пох.
Вам же спросить по ее некого будет.
#369 #715206
Захотите узнать про распределеные кеши на кластерах. Чем различаются и когда применятьрепликацию или дистрибьюцию кеша. А вот куй вас. И гуглите сами лол.
>>715270
#370 #715270
>>715206
Расскажи за распределенные кеши на кластерах.
#371 #715279
пчему ентерпрайз-парашу не пишут на петоне и тд? было бы быстро и дешега - как раз для бизнесача
на последующие костыли похуй тк все равно займет меньше времени чем джаба-интерпраз
кто им продал эту идею что все надо лопатить десятилетиями?
>>715282>>715325
#372 #715282
>>715279
Потому что петон это скриптоговно. А jvm это тру хросплатформа. На юниксах, на мейнфреймах.
>>715284
#373 #715284
>>715282
бля точно, я даун
#374 #715312
>>715178
Дядя, ты дурак?
>>715321
#375 #715321
>>715312

>пук


Кажется, этот спринго-индус порвался.
#376 #715325
>>715279
Для этого есть Groovy, который буквально всем лучше Python'а (кроме популярности).
#377 #715390
ИДЕ нужна? А то я через консольку пердолюсь.
#378 #715396
>>715390
Нужна.
#379 #715400
>>715390
Проект на сотню классов дебажить тоже через консольку будешь?
>>715403
#380 #715403
>>715400
Асм/си/крестоблядям норм.
>>715425
#381 #715425
>>715403

> классы


> asm/си


???

> крестоблядям норм


Они просто не слышали про рефакторинг и никогда не смотрят свой код дважды.
>>715429
#382 #715429
>>715425
Большие проекты на Си используют ООП либы. Вообще все компиляторы и трансляторы срут асмом.
>>715432
#383 #715432
>>715429
Это ты вообще к чему написал?
Мы вроде говорил про написание своего кода, а не про использование сторонних библиотек/компиляцию.
>>715483
#384 #715483
>>715432
Я просто выебнуться хотел
#385 #715505
>>703806 (OP)
помогите пожалуйста
есть сжатая строка вида "h3jv2sf" например, нужно её распаковать в строку вида "hhhjvvsf", или же например строка "fe2rt2w", её нужно распаковать в строку вида "feerttt";
подскажите как это сделать, тут нужно использовать регулярные выражения? хотя бы алгоритм подскажите
>>715520>>715548
#386 #715520
>>715505
а число может быть любым или только 1-9?
>>715525
#387 #715525
>>715520
число любым, оно обозначает количество вхождений символа, стоящего перед числом
>>715548>>715577
#388 #715548
>>715505
>>715525
Накидал неэффективную реализацию: pastebin.com/hjqrWsut
>>715597
#389 #715549
>>714321
Еб твою увожаемый, что за разметка.
#390 #715550
>>715390
Посоветуйте тогда мелковесную ИДЕ со всеми плюшками.
>>715552>>716112
#391 #715552
>>715550
Чем тебя IntelliJ IDEA не устраивает?
>>715558
#392 #715558
>>715552
Она платная.
#393 #715562
>>715558
Поставь бесплатную.
33 Кб, 865x150
#394 #715577
>>715525
Как-то так http://pastebin.com/X5n8wXCG

P.S.
В врот я ебал джава стримы, после LINQ это просто какой-то пиздец.
#395 #715581
>>715577
Где можно про стримы почитать, няша?
3 Кб, 829x65
#396 #715595
>>715577
Нихуя тут у вас пердолька.
На пхп это однострок.
>>715628
#397 #715597
>>715548
спасибо. А почему эта реализация не эффективна?
#398 #715605
>>715577
но мы ещё не проходили стримы, как решить эту задачу без них? Хотя бы общий алгоритм
21 Кб, 954x406
#399 #715628
>>715595
Да на любом JVM языке, кроме Java это будет 1-2 строки.

Вот пример на Kotlin (хотя для читабельности лучше разбить).
#400 #715630
>>715558
Нет Бинс норм же? 90 мб подходит.
>>715650>>715744
#401 #715650
>>715630
Нет, не норм, тогда уж лучше эклипс, если так принципиальна лицензия.
#402 #715744
>>715630
Нетбинс норм. Хеловордов писать можно. Джавафх умеет рисовать. Ее умеет хорошо. Спринг не особо. Осги не особо. Груви умеет. Интеграцию с серверами умеет.
Если нужно легкое иде вполне сойдет. Эклипс мощнее конечно.
Идеядебилы идут нахуй
>>715756
#403 #715756
>>715744
Нахуй тебе иде, которая со спрингом и EJB "не особо"? Хэллоуворлды писать?
>>715774
#404 #715774
>>715756
С ЕЕ там нормально изкоробки. Как и в эклипсе.
Можно еще forge пркрутить
#405 #715777
А ну да. Там есть минус один. Но он скорее идет из прошлого. Основная система сборки там ант. И основные типы проектов генерятся под ант.
Но с мавеном и архетипами работает тоже нарм
#406 #715785
Господа, кто-нибудь собеседовался в СБТ? там двухэтапный тест по java, расскажите что к чему.
62 Кб, 591x447
54 Кб, 591x368
#407 #715995
Двач-помогач, спасай, епты бля. Бьюсь уже ждва часа.
Собсно проблема на пиках. Невидимые баттоны, наводишь мышкой - появляются.
Вангую, что проблема из-за paint(Graphics g), но я слишком тупой.
С меня как всегда нихуя нефть.
http://pastebin.com/8nzWPzcw

Вот эта хуйня в main.
JFrame frame = new JFrame();
frame.setSize(600, 800);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.add(panel); //Тот самый класс
frame.setVisible(true);
>>715996
#408 #715996
>>715995
aay lmao
#409 #716037
>>715558
Это ограничение легко обходится.
>>716045
#410 #716045
>>716037
Обойди в 2016.1 пидор
>>716056
18 Кб, 415x483
sage #411 #716056
>>716045
Нет, ты.
>>716109
#412 #716109
>>716056
Жопу вытери ты обосрался.
Выложил скрин с нерелизным билдом 15 и выебывается. Ойвэй
#413 #716112
>>715550
Бери NetBeans, та же Idea, только без привлечения сотен евангиелистов и тысяч рекламы. И даже не думай смотреть в сторону блядского Eclipse, а всем, кто им пользуется, сразу же плюй в лицо.
33 Кб, 419x433
#414 #716115
>>703806 (OP)
Привет тормоза.
>>716117
#415 #716117
>>716115
Привет, дефективный.
#416 #716161
Аноны, вторая попытка вката в яву.
Меня вот что смущает, языку уже более 20 лет. Есть ли смысл вкладываться? Не помрет он к 20му году?
Может в долгосрочной перспективе питон или руби получше будет? Какова вообще вероятность, что компании начнут массовую миграцию с Явы? Насколько это вообще реально? От чего зависит? Вот сидит банк на приложении java, что то (что?) случилось и давай переезжать на питон.

К примеру (только лишь ПРИМЕРУ) пользуется компания windows, хуякс и только платная подписка работает для обновлений - поехали на линукс, хули.
#417 #716163
>>716161
правильно, я бы начинал учить котлин
#418 #716174
>>716161
Что за хипстерские бредни?
20 лет - это плюс, а не минус. Причём, охуенный плюс.

Сейчас джава единственный язык для разработки бизнес-приложений. И ничего другого не предвидится. Да и нужды нет. Хочется экзотики - есть Скала, Кложура и Груви.

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

Питон - практически закончился, несовместимость 2-й и 3-й версий была большой стратегической ошибкой. Не говоря уже о том, что это динамика, и для серьёзных промышленных применений не годится. Руби - это вообще несерьёзно.

Такие дела.
>>716219>>716421
#419 #716219
>>716174
Scala на самом деле очень хороша, но в полной мере познать ее можно только после 3 лет на Java, обмазавшись функциональной теорией (академическими знаниями). В свете этого она гарантированно не займет большую долю рынка, но "JVM-специалист" использовать ее вместо Java время от времени просто обязан.

У Python есть жизнь в Data и прочих Science.
Ruby и Kotlin - игрушки без будущего для модных ребят.
>>716242
#420 #716220
>>716161
Язык не помрет, но в процессе изучения стандартной библиотеки, сотен JSR и десятков middleware с фреймворками вполне можешь помереть ты.
>>716221
#421 #716221
>>716220
Чем же в этом плане Java отличается от другого языка? Ну кроме того, что разработчики Java хотя бы пытаются в дизайн API, в отличии от джсников, пыхарей, пистонщиков, крестоблядей и прочих.
>>716223
#422 #716223
>>716221
Объемом.
Сейчас с 0 проще взять какой-нибудь JS: учишь Angular, Node.js и Lodash - ты в шоколаде, высокооплачиваемый full-stack разработчик, котирующийся на биржах и в офисах.
>>716228
#423 #716228
>>716223

> Объемом


Зависит от задач.
В JS нужно знать хуеву тучу инструментов - npm, bower, gulp, require.js и прочую парашу. В Java - Maven и Gradle, которые в свою очередь лучше всех этих инструментов вместе и каждого в отдельности.
Априори качество JS кода хуже Java. Поэтому вместо небольшого количества хорошо сдизайненных либ мы получаем миллион велосипедных микрозависимостей уровня leftpad без перформанса, тестов и документации.
Вертикально масштабировать Node.JS вообще невозможно - у тебя всегда будет один процесс, один поток и лапша из промайзов. Чтобы вертикально масштабировать контейнеры сервлетов, http-akka/play, vert.x нужно приблизительно нихуя.
Поэтому Java+JS фуллстек разработчик > просто Node+JS фуллстек разработчик.
>>716230
#424 #716230
>>716228
Знать кучу однокнопочных инструментов труда не составляет совершенно, 15 минут на документацию и ты можешь других учить (при наличии мозга ofc).

Качество JS кода покрывается озвученным Lodash, умеешь пользовать - количество факапа стремится к нулю. Ну и Моча всегда на месте, можно даже пьяным свое парное экстремальное программирование применять.

Node не про вертикальное масштабирование, используй микросервисы.
#425 #716242
>>716219
Скала говно.
Бай дизайн.
Для функциональщины есть кложур.

Ну а жс на бэкэнде это вообще лол. Хипсторкам может и пойдет, но в хайлоаде это ебаное говно
>>716243
#426 #716243
>>716242
Хайлоад - это доли процента от всех задач, иди на хуй отсюда, школьник.
>>716255
#427 #716247
утренний вопрос от ньюфага
как перестать писать хелловорлды и начать жить?
>>716249>>716254
#428 #716249
>>716247
Может быть, ты только хэллоуворлды писать и способен. Поигрался - а теперь иди жить в другие сферы.
>>716250>>716251
#429 #716250
>>716249
И не переживай особо, весь Двач в таких "программистах".
#430 #716251
>>716249
спасибо за помощь, выбрасываю комплюктер и завтра же иду быть охранником
>>716252
#431 #716252
>>716251
На свете больше двух профессий.
#432 #716254
>>716247
Учи например вилдфлай и ее7. Как надрочишься пилить круды приходи. Расскажу про некст левел
>>716259
#433 #716255
>>716243
Плюнул в этого.

Хайлоад ынторпрайз - основная задача явы.
>>716256
#434 #716256
>>716255
Оставь свои фантазии на тему Джавы при себе, пожалуйста.
>>716298
#435 #716259
>>716254
ща в процессе спрингоосвоения
внезапно охуел от простоты IoC и не понял почему об этом все так пиздят будто это рокет саенс
в ее немного все пугает, но думаю все равно неизебжно надо будет изучать это дело
проблемс в том что я остро чувствую собственную диванность проводя вечера читая про очередную йобу
>>716263
#436 #716263
>>716259
Сложность в больших проектах.
Когда hot deploy через жопу.
Когда ты не знаешь в каком из десятков BeanPostProcessor какие проперти вставляются и в каком порядке.
Когда имплементишь свой ApplicationContext.
Когда тасуешь бины из профиля в профиль, пытаясь минимизировать граф зависимостей.

Но вот когда пытаешься закастомайзить Spring Security, Spring Data или Spring Boot - вот это реально индусоподелия.
#437 #716298
>>716256
Ебать ты дебил.
Который год пилю ЕЕ под жбосы.
Хайлоаде кластеризация и лоадбалансинг во все поля
>>716536>>716606
#438 #716322
>>716161
норкоман?
Java 1995
Php 1995
Ruby 1995
Python 1991
>>716337
#439 #716337
>>716322
он еще и не думаю что трал
знакомый говорил что думал начать на груви писать но потом псмотрел что ему БОЛЬШЕ ДЕСЯТИ ЛЕТ и передумал
>>716345
242 Кб, 1561x721
#440 #716345
#441 #716421
>>716174
А что насчет Ruby на ебучих рельсах?
>>716478>>716505
#442 #716478
>>716421
Не упоминай это дерьмо всуе.
#443 #716505
>>716421
Уходи в рор тред.
Тут жаба.
Рор наверно говно, никогда не видел на рор что-то серьезнее хипсторских перделок. Но возможно за пределами моего мирка что то есть.
Короче спроси у хипсторов
>>716515
#444 #716515
>>716505
Гитзхаб
#445 #716536
>>716298
Даже если допустить, что ты действительно пилишь что-то высоконагруженное, оно совсем не означает, что основная задача Java - хайлоад. Олсо, оно тем более не означает, что весь web - это хайлоад, и для Node.js там места нет.

Для справки, хайлоад - это когда для тебя критичны мелкие оптимизации, а не какая-то абстрактная баззвордщина в твоей голове.
>>716556
#446 #716556
>>716536
Рорудо.
Хочешь поговорить про оптимизацию нагрузки?
Ну давай поговорим.
На каком уровне?
Jpa? Ejb? Jta?
>>716564
#447 #716558
>>704008
Недавно было. Если через мавен делал проект, то манифест должен быть в созданой мавеном папке resources
>>716585
#448 #716564
>>716556
На любом, начинай.
>>716585
#449 #716585
>>716558
Плагин к мавену настроить надо. Тогда из командной строки работать будет

>>716564
Нет ты, лол. Давай про jpa уровень
>>716595
#450 #716589
>>704008
Нужно полное имя класса с пакетом
#451 #716595
>>716585

>Нет ты, лол.


Чтд, уебывай, школьник.
#452 #716600
>>716161
Банки и прочая хуйня долго не слезут, потомучто им нет смысла внедрять плющки что сть в новомодных темах, их сраное гавно на джаве будет хаватся бизнессом еще долго не зависимо от того насколько он отсталое и не гибкое. Онм сами то нихуя не понимают как можно сделать лучше. Поэтому пили и не грусти.
>>716602>>716605
#453 #716602
>>716600
Основное контингент разрабов там это сраные дедки под 40 лет, которые не то что открыть и почитать о новых технологиях не могут, они бля посрасть то сходить без посторонней помощи не в состоянии.
>>716605
#454 #716605
>>716600
>>716602
Мне твоим жиром квартиру нахуй затопило.
#455 #716606
>>716298
Куда там мля хайлоад, пару лямов вьебали, купили сраное гавно от IBM скейлить инстансы примитивным способом, сами, то энтерпрайз макаки нихуя сделать не могут.
>>716608>>716631
#456 #716608
>>716606
Нормальных макак покупать надо было, бизнесмены хуевы.
>>716613
#457 #716613
>>716608
По кадрам , джава хуже джаваскрипта, зомби армия, которая вроде делала хайлоад судя по резюме, а в итоге городила костыли на безнадежных платформах и писала доки, которые потом выкинули, всеравно нихуя не понять.
>>716617>>716641
#458 #716617
>>716613
По кадрам IT сфера в беспросветном анальном отверстии, все не могут нихуя, но специалисты на рынке присутствуют, просто они хороших условий и соблазнительной зарплаты хотят. Не можете обеспечить - чья тут вина-то?
>>716624>>716630
#459 #716624
>>716617
Для банков и остольного финансового сектора это хуйня, специалисты там никгода не нужны были.
>>716627
#460 #716627
>>716624
Ну а хули тогда кукарекать, что нимогут.
#461 #716628
Охлол.
Нихуя себе как спрингодетей разорвало.
Ее жил, жив и будет жить.
Вот отрелизят ее8 и ваш сосущий спринг станет вообще нинужен.
>>716629
#462 #716629
>>716628
Ты о чем?
>>716632
#463 #716630
>>716617
Смотря на резюме джаваскриптера, и увидев там хайлоад, шанс встреить человека, который реально разбирается в этом, намного выше, чем в ситуации с резюме джава разработчика.
>>716633
#464 #716631
>>716606
Вонь вебсферы чую я.
Имб железо. Ибм Ява 5. Ссаная вебсфера. Бгг.
Хуже нее нет.
Слава Аллаху что я с жбосом все эти годы работаю.
#465 #716632
>>716629
Об

>устаревшие технологии



Это же ты о ее? Да спрингопетух?
>>716634
#466 #716633
>>716630
Плес только не надо тут про охуительный жс рассказывать.
Бакенд на жс - признак долбаеба
>>716635
#467 #716634
>>716632
Не ебу, о чем ты, ссылку на пост хоть дай.
>>716641
#468 #716635
>>716633
Аргументируй.
>>716639>>716641
#469 #716639
>>716635
Да нету никаких аргументов, джава энтерпрайз стандарт, кококо уткнись.
>>716643
#470 #716641
>>716613

>>716634
Линк выше.

>>716635
Нет ты. Расскажи про вертикальное и горизонтальное масштабирование.
Вот только не уровня запустить 50 копий ноды и балансить нжинксом
#471 #716643
>>716639

>кококо.


Ну да так и есть
#472 #716644
>>716641
а чем тебе джава поможет, что там есть такое магическое изкоробки чтобы не юзать лоадбалансер и кучу нод?
>>716654
#473 #716645
>>716641
Да с чего ты взял, что все на свете нужно масштабировать, а вокруг только мир хайлоада, ебанный шизофреник?
>>716654
#474 #716653
>>716641
Ты же наверное опять про платформы говоришь, в которых все за тебя сделали, но факт остается фактом, их покупают а используют на 10-20 процентов? и как вообще их интегрировать в общкю систему никто не знает, но они сильны и написаный на джаве.
>>716663
#475 #716654
>>716644
Лол.
Погугли что такое сервер приложений.
Про человеческое горизонтальное и вертикальное масштабирование.
Про девопс в мире jvm.
Это тебе не ссаная нода.
>>716645
Потому что я считаю что у явы всего 2 нишы. ЕЕ и ведроид. Остальное ее применение - не оптимально. Есть более быстрые языки и вм, которым не нужен прогрев для максимальной производительности
>>716656>>716661
#476 #716656
>>716654
погуглил, просят много денег, чтобы быть таким оптимистом.
>>716668
#477 #716661
>>716654
А у тебя back-end сугубо EE ограничивается?
Ладно, не продолжай, я уже понял, что ты отбитый.
>>716668
#478 #716663
>>716653
Ой только не говори про интеграцию.
,jvm самая развитая в плане интеграции платформа.
Тут и камел, и рест, и ws, и orb и куча иных стандартизированых технологий.
И ключевое слово тут стандарт. Ява промышленный стандарт в интеграции.
>>716666
#479 #716666
>>716663
это да, но только когда покупаешь платформу, они почему-то самое вкусное, как на зло, не поддерживают(платите еще денег, может всучим гавно решение), а свои джава обезьяны кладут на стандарт, что же такое? на бумаге хорошо а на практике гавно какое-то получается.
#480 #716668
>>716656
Гугли про вилдфлай - самая продвинутая на данный момент платформа под ее.
Гугли про Апач караф - самая продвинутая платформа под осги.

>>716661
Ну я ж говорю ты спрингопетух
>>716671
#481 #716671
>>716668
елси ты решил покичится, что в джаве тоже опенсорс силен, то не надо мы уже знаем как это работает.
>>716672
#482 #716672
>>716671
Бгг.
Я вот прошел с жбосом от as4 до eap6.x.
Сейчас все под вилдфлай пилим
>>716673
#483 #716673
>>716672
Удачи, если у вас все так просто со сменой стандартов, то я вам могу только пособолезновать, что вы выбрали не самый легкий путь. Везде, где разрещено что-то еще, моментально от джавы уходят, можешь тролить дальше.
>>716674
#484 #716674
>>716673
Ты меня тралируешь?
Еап на продакшене. Переходить с версии на версию естественно в мире жбоса.
Это не тухлая вебсфера же.
#485 #716676
А вообще все.
Моча опять забанит а то.
Хочу ее тред.
>>716680
#486 #716680
>>716676
Конечно, забанят, нахуй твой джкбос вообще кому-то нужен, унылое тяжелое говно в век микросервисов.
>>716685
#487 #716685
>>716680
А теперь идешь и смотришь сравнение производительности вебсерверов с динамикой.
И видишь что андертоу с джсп дает пососать всему что движется
>>716689
#488 #716689
>>716685
ты то хоть сам лично это проверял и взвешивал все за и против, или будешь мне тыкать опромои от левада центр?
>>716694>>716705
#489 #716694
>>716689
Наркоман чтоле?
>>716700>>716704
#490 #716700
>>716694
не, не наркоман в отлтичии от тебя практик, а не теоретик, все это говно я уже прошел, были у меня ПМы, кто тоде эти гафики сувал, и пробовали это все, но это уже другая история.
#491 #716704
>>716694
забей, тут уже троли подключились.
#492 #716705
>>716689

>от левада центр


проигрунькал
>>716706
#493 #716706
>>716705
я это не писал
#494 #716707
Итак.
Микросервисы.
Основная их задачка отдавать джейсон через рест.
https://www.techempower.com/benchmarks/#section=data-r12&hw=peak&test=json

Что же мы видим?
>>716713>>717583
#495 #716713
>>716707
мы видим, что го все разьебет скоро.
>>716715
#496 #716715
>>716713
Насмешил содомит.
В топ 10 по производительности 7 мест у явы а остальные 3 у с/крестов.
Говно путон и руби где то на уровне похапе.
#497 #716854
Сап. Анон, поясни за StackOverflowException в Gson, что я не так делаю? Выкидывает при вызове toJson(), в выходной файл закидывается только открывающая фигурная скобка.

http://pastebin.com/BbaQpxTu
>>716859
#498 #716859
>>716854
ну ты хотя бы весь стек эксепшена посмотрел лол
там написано что крашится
>>716863
#499 #716863
>>716859
http://pastebin.com/XPgQPtfL
Не сказал бы, что очень информативно.
>>716872
#500 #716867
Подскажите сервис, нормальный по цене, жабовские сервлеты для своих мелких проектов хостить Россия/Европа
#501 #716872
>>716863
Оно у тебя зацикливается похоже.
И вообще зачем тебе typeadapter?
Оно у тебя его пытается создавать в конских количествах
>>716874
#502 #716874
>>716872
String.valueOf(value)
при это value какой то непонятный Path
давай сам Path что ли
>>716877
#503 #716877
>>716874
Так java.nio.file.Path. toString у него возвращает текстовую версию файлового пути.
>>716878
#504 #716878
>>716877
лол
так и используй toString
а valueOf у тебя возвращает текстовое представление обьекта
а там хуита а не строка
>>716885
11 Кб, 506x222
#505 #716885
>>716878
А ты точно на джаве писать умеешь?
>>716891
#506 #716891
>>716895>>716896
#507 #716895
>>716891
Между прочим, String.valueOf null-safe, а Object.toString - нет
#508 #716896
>>716891
Ну анон, ну ни траль. Path переопределяет Object'овский toString, который и используется в String.valueOf, единственное предназначение которого - null-safety. Шо я так пишу, шо Path#toString,
хотя считывать строку "null" как файловый путь - плохая идея, это надо переделать
>>716929
#509 #716910
Я что, зря спринг учу?

мимо ньюфаг
>>716930
#510 #716929
>>716896
Все равно зацикливается.
Видимо у тебя где то циклические ссылки.

Возвращай ридом null хуле
>>716935
#511 #716930
>>716910
Зря, учи Angular.
>>716932>>716945
#512 #716932
>>716930
можно оба, ангуляр со спрингом частенько фигачат
#513 #716935
>>716929
Весь код, который относится к этому, я выложил в тот pastebin. Хоть убей, не вижу никаких циклических ссылок.
>>716937
#514 #716937
>>716935
Гдето Path содержит ссылки на другой Path

Сделай в риде ретурн нулл
>>716939
#515 #716939
>>716937
С чего Path будет содержать ссылки на другой Path, если я указываю Gson-у TypeAdapter для Path'а?
сделаю, сделаю, успокойся
>>716940
#516 #716940
>>716939
Нет, криво выразился. Я сам преобразую Path в строку с помощью TypeAdapter, с чего Gson должен лезть туда и копаться?
>>716944>>716953
#517 #716944
>>716940
https://github.com/google/gson/issues/440

ленивая жопа
за тебя гуглил
>>716947
#518 #716945
>>716930
Но я не знаю и не хочу знать жс.
>>716947
#519 #716947
>>716945
Не знай. Ебашь фронтенд на jsf как ленин завещал.

>>716944
И в той ссылке идет ссылка на http://stackoverflow.com/a/24319892/1411598
Гдt так же рекомендуют null в ретурне
>>716954
#520 #716953
>>716940
Алсо там же написано, что если ты используешь интерфейс, а Path это интерфейс, то используй registerTypeHierarchyAdapter
>>716956
#521 #716954
>>716947
Стоит ли тогда спринг вообще трогать?
>>716958
#522 #716956
>>716953
Вот оно, анон! Спасибо!
Видимо, registerTypeAdapter работает только для инстансов выбранного класса, но не для подклассов. Поэтому Gson брал не мой TypeAdapter, а пытался сам засериализовать муть с циклическими ссылками.
#523 #716958
>>716954
А тебе зачем?
Определись с задачами.
>>716963
#524 #716963
>>716958
В энтерпрайз хочу вкатиться.
>>716965
#525 #716965
>>716963
Вкатывайся.
Вот только начинать сразу со спринга плохая идея.
Там подразумевается что ты уже в курсе что такое сервлеты, персистентность, транзакционность да и вообще много чего.
Начни с ЕЕ чистого.
Лучше со стека редхата.
>>716975
#526 #716975
>>716965

>Начни с ЕЕ чистого. Лучше со стека редхата.


Можешь по-подробнее?
>>716992
#527 #716990
Господа аноны. Как прикрутить jdbc к проекту в нетбинс ?
>>716994
#528 #716992
>>716975
Cdi, ejb, jpa, jta, jax-rs для начала.
Если непонятно то читни гонсалвеса - изучаем яву ее7. Там много лишнего но сама книга норм.
>>717037
#529 #716994
>>716990
Бля. Я бы сказал что через jpa. Но сдается в хеловорде проще вручную конекшенами управлять))
>>716995
#530 #716995
>>716994
Та похуй, мне для курсача, скорее всего ручками и буду.
>>717005
#531 #717005
>>716995
Для курсача сделай красиво. С использованием jpa.
Сначала спроектируй базу.
Тутесть 2 подхода.
1. База уже готовая.
2. Делаешь с нуля.
Если первое то реверсом генеришь энтити классы , по ним генеришь контроллеры и пилишь дао, ну и работаешь с базой.
Во втором случае сначала создаешь ентити классы вручную.
#532 #717008
Хотя я наверно не могу мыслить вне рамок ЕЕ.
Уже сразу полезли в голову фасадные классы для еджбишек и рест контроллеры.

Хуй знает как в СЕ принято работать с базами.

Я привык через jpa и бины
>>717011
#533 #717011
>>717008
Давай объясняй так, как бы ты пхп макаке объяснял.
>>717016
#534 #717016
>>717011
Тебе веб приложение надо или клиентское?

С джавафх/свингом я тебе помогу не больше учебника.
За все годы ни разу не делал чего то сложнее пары кнопочек на фрейме
>>717018
#535 #717018
>>717016
Веб. Вывести таблицу студентов, и сделать сортировку по разным полям + что бы на странице было n строк и соответственно разбитие на страницы.
>>717036
#536 #717036
>>717018
На бакенде у тебя 2 пути.
1 простой.
Проектируешь базу в графическом редакторе субд. Ну там мусклворкбенч или мссклстудио.
Затем в нетбинсе создаешь проект ынтерпрайз придожения.
Затем реверсом генеришь энтити из таблиц.
Затем добавляешь в проект веб приложение. Тип jsf2.2 с primefaces. Генеришь себе странички. В принципе уже будет работать. Потом правишь примафейсовские странички под себя. Добавляешь функционала к уровню бизнеслогики и отображения. Деплоишь в вилдфай. Профит.

2. Посложнее.
Вместо веб приложения на jsf генеришь рест контролеры. Затем обмазываешься js и рисуешь формочки.

3. Вариант для любителей.
Вместо ЕЕ используешь спринг. Спрингруу нагенерит тебе всего говна что я выше описал. Даже сервер прилодений не нужен будет
>>717039>>717207
#537 #717037
>>716992
Спасибо, анон.
>>717065
#538 #717039
>>717036
Спасибо.
>>717042
#539 #717042
>>717039
Пиздец я хуйню написал.
2 пути а сам написал три.
Написал на бакенде а в пунктах и фронт.

КОроче на бакенде выбираешь или спринг или ее. И там и там есть и реверсинг энтити из таблиц, и генерация рест контроллеров.

На фронте или js-ом обмазываешься. Или jsf-ом с либами
>>717049
#540 #717049
>>717042
Еще раз спасибо. Давно вкатился в ынтерпрайз и как так сейчас дела обстоят, какой порог вхождения ?
>>717053
#541 #717053
>>717049
Да.
Ебашу на ЕЕ под джейбосы.
Если честно то все там просто.
Если долго этим заниматься, то деплой и генерация бойлерплейта - почти на автомате.
Основное время занимает как раз таки бизнеслогика
#542 #717065
>>717037
А да.
Если хочешь коротко. То можешь просто почитать туториал оркала
https://docs.oracle.com/javaee/7/tutorial/index.html
Там есть все вкратце.
>>717257
#543 #717207
>>717036
А еще JHipster.
#544 #717257
>>717065
То что нужно, а то спринг трудно давался, какие то бинсы, хмл, конфиги, после jse не очень понятно.
>>717312
#545 #717312
>>717257
Бины пошли из ejb. Причем в ejb3 они стали попроще. С sfsb slsb mbean все равно придется работать. Хотя с аннотациями проще. Хмл в виде дескрипторов развертывания есть и в ее. Но многое уже больше дань традиции. Bean.xml сейчас скорее флаг для активации подсистемы, а используют аннотации. Persistence.xml остается. Web.xml для описания настройки сервлетов/маппинга и фильтров остался. Ну и отдельные компоненты еще используют хмл файлы.
Возможно в ее8 их выкинут из стандарта, возможно сделают жабаконфиг как в спринге
#546 #717322
Перекатывайте тред.
Этот тонет.
И Плес норм оппик
>>717371
#547 #717371
>>717322
Перекати сам, что ты как этот.
#548 #717583
>>716707
Это все великолепно, сфеерический конь в вакуме. Тест пустоты. А самое интересное, это оверхед часть, отличный показатель. Ваш фреймворк гавно, потомучто хелоу ворлд печатает медленно.
#549 #717653
>>717652 (OP)
Перекат
#550 #717654
#551 #720235
Анон, мне нужен твой совет.

Надо красиво спиздеть в резюме про основные ачивменты и решенные сложности в разработке приложения на сервлетах+jdbc+mysql, которое я еще нихуя не разрабатывал. Мордой, по легенде, не занимался.

С меня как обычно.
#552 #726066
Bamp
Тред утонул или удален.
Это копия, сохраненная 7 мая 2016 года.

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

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