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

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

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

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

241 Кб, 620x620

Официальный™ тред Java #25 14 Мар, 13:58 #687417 В конец треда | Веб

FAQ:
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

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

Q: В списке книг одно старье. Новее ничего нет?
A: Годноту быдлу не палим. Джава 5 вышла больше десяти лет назад. В шестой и седьмой изменений в синтаксисе минимум. В восьмой было довольно значительное обновление, но а) многие проекты все еще сидят на шестой или седьмой; б) там не такие фундаментальные изменения, чтоб нужно было переучиваться: за пару вечеров лямбды и стримы вполне можно осилить.

Q: Я не могу в книги, но нашел крутую штуку - javarush. Что скажете?
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/
В качестве чтива рекомендую: http://oreilly.com/catalog/sqlhks/chapter/

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

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

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

Ответы>>687612>>688313>>688702>>690472>>690695

14 Мар, 14:18 #2 #687445

побуду хоть первонахом в жава-треде

30 Кб, 427x302

16 Кб, 257x270

14 Мар, 14:26 #3 #687457

написал сегодня генератор имён. Имена выходят глупые, странные, похожие на имена викингов, но фантазии на большее не хватило. Да и делалось скорее для оттачивания/проверки навыков, а не для "души и творчества".
В общем, поехали.
Класс NameGen - класс с основами и всеми фишками, типа рандома. геттеры-сеттеры тоже тут.
http://pastebin.com/6gvvNn4v
класс NameGenRules. Тут у нас уже методы запуска и всё такое. плюс массивы с кусками имён:
http://pastebin.com/9XBEfEuy
И класс с мэйн методом, в котором я решил реализовать экншлистнеры и гуи. Вышло кривовато и не очень красиво, да, зато теперь знаю, что надо бы про ГУИ побольше почитать и больше позаниматься.
вот тут класс(даже комменты на ангельском вставил):
http://pastebin.com/M83qMNE7

В результате вышла милая программка, пикрелейтед.

Расскажи, что думаешь, Анон. Кроме класса с гуем - там я знаю, там много лишнего и криво.

Спасибо за рейт, гайс)

Ответы>>687535>>687538>>687547

14 Мар, 14:44 #4 #687487

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

Ответы>>687508

14 Мар, 15:00 #5 #687508

>>687487
Для мелкосайтов - скриптопараша лучше. Когда же у тебя появляется потребность в кешах внутри приложения, фоновых задачах, а база ложится из-за слишком большого количества коннекшнов (естественно же, в ПХП до сих по коннекшну на реквест открывают), то джава выигрывает.

14 Мар, 15:32 #6 #687535

>>687457
Пиздец, убери это говно отсюда и никому не показывай.

Ответы>>687543

14 Мар, 15:39 #7 #687538

>>687457
божественно

Ответы>>687543

14 Мар, 15:40 #8 #687543

>>687538
Спасибо. хотя сарказмом веет.
>>687535
а что не так? рассказал бы хоть, для того сюда и залил

14 Мар, 15:44 #9 #687547

>>687457
Базарю, анон, у тебя явно склонности к кодерству. Не думал в гугл на стажировку зааплаиться? Очень классная и милая программка ))) Как вариант можно еще в майкрософт в отдел разработки графических интерфейсов пользователя. Очень удачно соблюдены пропорции для графических элементов в твоей программе, юзабилити очень крутой. Удачи, у тебя все получится! )))

Ответы>>687548>>687551

14 Мар, 15:45 #10 #687548

>>687547
XDDD

Ответы>>687559

14 Мар, 15:46 #11 #687551

>>687547
Бля, ну зачем так, я ж кинул, чтоб мне показали мол в верном направлении иду или нет.

Думал, что в /pr атмосфера не как в /b, и что тут не клюют,а помогают или тыкают носом в баги-ошибки.

Ответы>>687564

14 Мар, 15:48 #12 #687556

Бля, мне на вакансии пхп дауна прислали тест на регулярки. (они типа сайты регулярками парсят). Вообще ахуеть, DOM элементы регулярками, когда в жаве есть куча удобных библиотек!

14 Мар, 15:51 #13 #687559

>>687548
А если серьезно, выкатывай только реальную прикладную аппликуху, которая будет выполнять конкретную функцию, или несколько функций. Навскидку, минимум 1к строк кода должно быть, чтобы не стыдно было людям показывать и просить ревью. А ты прочитал вступление и первую главу Шилдта, наваял какую-то... программу, блядь, твое ЧСВ зашкалило, и ты решил выкатить свой талант на всеобщее обозрение. Конечно, здесь тебя за такое обоссут. Сколько тебе лет вообще?

Ответы>>687560>>687564>>687569

14 Мар, 15:52 #14 #687560

>>687559
мань, это не мое говно.

Ответы>>687563

14 Мар, 15:53 #15 #687563

>>687560
Да поебать, он понял, что это ему

14 Мар, 15:53 #16 #687564

>>687559
>>687551

14 Мар, 15:57 #17 #687569

>>687559
22.
вкатился месяц-полтора назад.
Шилдта не читал ещёю
залил не ЧСВ потешить, а понять, верно мыслю или надо повторить основы, так сказать.

Ответы>>687575

14 Мар, 16:02 #18 #687575

>>687569
А что читал? Почитай https://docs.oracle.com/javase/tutorial/java/index.html и копируй стиль оттуда. И рановато ты в гуй полез.

Ответы>>687578

14 Мар, 16:04 #19 #687578

>>687575
читаю head first
прочитал до середины файна, с середины пиздец начался какой-то.
оттуда и почерпнул про гуй и про основные элементы его.
сейчас только head first и Java Api листаю.

Ответы>>687579

14 Мар, 16:09 #20 #687579

>>687578
Так ты задачи решаешь? Это пиздец как важно. Причем нужно стараться копировать стиль автора. Во, вспомнил! Забей короче на всю хуйню и кури только эту книгу ближайшие месяцы: http://math.hws.edu/javanotes/
Там самая необходимая база, без которой никуда, и задачи интересные. И не распыляйся на множество источников, добей книгу от начала и до конца. И уже будешь неплохим кодерком. Такое мое видение.

Ответы>>687587

14 Мар, 16:15 #21 #687587

>>687579
задачи решаю на codingbat, уже достаточно много прорешал. Спасибо за ссылку)

А в headfirst задачи простые пока что, даже слишком.

на кодингбат задачи поинтереснее будут.

в хедфёрсте что-то вроде поработайте компилятором и что выведет код

Спасибо за ссылку)

61 Кб, 800x800

14 Мар, 16:35 #22 #687612

>>687417 (OP)
Походу вкатился в жабу, перезвонили, пригласили. дс-2.

Ответы>>687623>>687624>>687627>>687637>>687647

14 Мар, 16:42 #23 #687623

>>687612
Что знаешь, сколько лет, что в вакансии нужно было?
рассказывай няша

Ответы>>687645

14 Мар, 16:42 #24 #687624

>>687612
Что за контора?

Ответы>>687645

14 Мар, 16:43 #25 #687627

>>687612
Завидоват, сам сейчас сижу, техническое собеседование через 20 минут, страшновато.

Ответы>>687645

12 Кб, 486x253

14 Мар, 16:50 #26 #687637

>>687612
Если интерпрайз (особенно на java), то рано радоваться.
Это такая вещь, которая через полгода убивает у "неокрепших умов" все желание программировать.

Ответы>>687639

14 Мар, 16:51 #27 #687639

>>687637
А что не убивает?

Ответы>>687646

14 Мар, 17:03 #28 #687645

>>687623
22, читал эккеля и немного spring in action. в вакансии было "высшее техническое и желание развиваться в интересной области"
>>687624
данон же
>>687627
удачи братиш, будь уверенней и все ок будет.

Ответы>>687657

14 Мар, 17:03 #29 #687646

>>687639
Логично что НЕ интерпрайз:
• То что можно сделать с нуля
• Где можно быстро увидеть и "потрогать" результат своего труда
• Где к тебе относятся НЕ как к винтику, давая кучу низко-интелектуальных задач
• Где применяются актуальные технологии
• Где можно экспериментировать
• Разрабатывать то чем пользуются простые пользователи, так что можно будет этим хвастаться

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

14 Мар, 17:03 #30 #687647

>>687612
Это ты тот анон, который от безысходности кидал резюме даже в дс? В любом случае, поздравляю!

Ответы>>687671>>687794

14 Мар, 17:11 #31 #687657

>>687645
а у тебя есть высшее техническое? спринг он ЧИТАЛ вообще ахуеть. а делал что?

Ответы>>687671

14 Мар, 17:25 #32 #687671

>>687647
не я, спасиб
>>687657
выпускнота, ничего не делал.

3 Кб, 98x94

14 Мар, 17:39 #33 #687688

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

Ответы>>687813

14 Мар, 17:55 #34 #687711

Повторюсь.Есть что почитать вроде архитектуры Фаулера, только не протухшее?

Ответы>>687815

14 Мар, 18:01 #35 #687724

Trainee Java Developer

We are looking for Junior Java Developer who desire to increase his/her knowledge and succeed with great results working with us.

Required skills :
Technical education (related to computer science) - второй курс
Good knowledge of Java - знаю джава кор
Be familiar with Algorithms and Data Structures - да
Good theoretical knowledge of Databases - нет
Experience with HTML and CSS would be a plus - на лабах делал
Be familiar with Java code conventions - да
Desire to work and study new technologies - да
English Intermediate level or above - B2
Fast-learning person - да

Каковы мои шансы? Стоит подавать резюме?

14 Мар, 18:17 #36 #687744

Джаваны, можно взять день-два перерыва в обучении?
А то кажется невроз уже от переизбытка информации и фрустраций из-за получилось||не получилось

Ответы>>687776

14 Мар, 18:20 #37 #687752

Аноны куда лучше заливать свои проекты, github или bitbucket? Гитхаб вроде как мейнстрим, но на битбакете можно будет скрыть свои говнопроекты от потенциального работодателя(не хочу 100500 аков создавать). VCS до этого не пользовался, вот сейчас вкатываюсь в гит т.к. везде требуют.на самом деле хочу кинуть анонам на ревью свой небольшой проект

Ответы>>687756

14 Мар, 18:22 #38 #687756

>>687752
У меня все публичное на гитхабе, все приватное на битбакете

Ответы>>687762>>687773

14 Мар, 18:24 #39 #687762

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

Это зашквар?
Вообще, каким должно быть портфолио? Как можно больше проектов и задач, даже самых тупых или один ахуенный проджект?

Ответы>>687770>>687811

14 Мар, 18:27 #40 #687770

>>687762
Вообще зашкварненько, но все что не лабы заливай, даже если там будет не самый лучший код, улучшай со временем, пусть видят, что ты развивался. Алсо вот тебе крутой проект успешного ноджс кодера, весь код в index.js
https://github.com/gummesson/is-empty-object/blob/master/index.js

14 Мар, 18:29 #41 #687773

>>687756
А если ты решишь что нибудь из приватоного сделать публичным, перезалив? Битбакет ведь позволяет?

Ответы>>687781

14 Мар, 18:29 #42 #687776

>>687744
Перерывы обязательны, на мой взгляд. Можно вообще на недельку.

14 Мар, 18:30 #43 #687781

>>687773
Одну галочку переключить

14 Мар, 18:36 #44 #687794

>>687647
Не, тот анон с безысходностью - это тот, который как раз сейчас с собеседования вышел. Первые впечатления - ощутил, что я хуй простой и вообще нихуя не знаю. В 2 словах: были вопросы на разные тонкости, стринг буферы разные, цикл жизни сервлетов и jsp, веб, sql и БД, борьба с sql-инъекциями и как именно реализован prepared statement. Еще было про жабаскрипт и css, но на этом я совсем обосрался, так как работал с ними только копипастой и тонкостей нихуя не знаю.
Под конец была оче занятная логическая задача про поезда: дан замкнутый поезд неизвестной длины, определить сколько в нем вагонов. Собственно, можно только перемещаться и включать/выключать свет, изначально освещение в вагонах включено рандомно.

Алсо, пасаны из return on intelligence внезапно вспомнили обо мне и прислали тестовое задание, позже напишу подробнее. Ну и тянка-HR сильно доебывалась, что я на курсы инглиша не хожу.

Ответы>>687807>>687823>>687826

14 Мар, 18:42 #45 #687807

>>687794
Не везет тебе братишь, хотя это как посмотреть. Судя по твоим постам конторы попадаются не самые хуевые и если ты не собираешься писать рутину 24\7 за зарплату, а стать приличным программистом то в такие конторы и надо устраиватся.

60 Кб, 875x880

14 Мар, 18:44 #46 #687811

>>687762
> заливать что-то на гитхаб только для портфолио
> не контрибьютить в чужие проекты и не разрабатывать свои
И себя ты называешь программистом?

Ответы>>687818

14 Мар, 18:44 #47 #687813

>>687688
Ливай тогда оттуда.

14 Мар, 18:45 #48 #687815

>>687711
Фаулер и не протух как бэ. Тебе когда про паттерны GoF советуют, ты тоже нос воротишь?

Ответы>>687885

14 Мар, 18:47 #49 #687818

>>687811
> заливать что-то на гитхаб только для портфолио
Залил свой проект, а потом через год работадатель именно его решил открыть, а там код ньюфани.
> не контрибьютить в чужие проекты
Хотеть, но пока не уметь
>И себя ты называешь программистом?
НАЧИНАЮЩИЙ

14 Мар, 18:48 #50 #687823

>>687794
>дан замкнутый поезд неизвестной длины, определить сколько в нем вагонов. Собственно, можно только перемещаться и включать/выключать свет, изначально освещение в вагонах включено рандомно.
Как решил? Нельзя просто везде включить, потом выключить любой один, начать идти со следующего, дойти по кругу до выключенного - он будет являться концом вагона. Где подвох?

Ответы>>687834>>687836

14 Мар, 18:49 #51 #687826

>>687794
>стринг буферы разные
поподробнее, че там можно спрашивать?

Ответы>>687849

14 Мар, 18:51 #52 #687834

>>687823
> везде включить
Длина же неопределена, вот ты выключишь, а потом окажется, что ты до конца не дошел.

Ответы>>687839

14 Мар, 18:52 #53 #687836

>>687823
>просто везде включить
А вот в этом и подвох, как ты поймёшь, что включил "везде"? То, что тебе попались n светлых вагонов подряд еще ни о чем не говорит.

Ответы>>687839>>687855

14 Мар, 18:53 #54 #687837

Заходят программист, математик и Леночка в вагон…

14 Мар, 18:54 #55 #687839

>>687834
>>687836
Понял, подумаю ещё.

14 Мар, 18:58 #56 #687849

>>687826
String а = "a"+" b"+"c";
Сколько будет создано объектов в памяти? Что произойдет, если стринг заменить на стрингбилдер?

Ответы>>687860>>687874>>687877>>687904

14 Мар, 19:01 #57 #687855

>>687836
Если не заданы условия оптимизации думаю можно так:
Включить в вагоне свет, он будет отправной точкой, продвинуться вперед на 1 вагон и вернуться обратно, проверить свет, потом на два вагона впереди и обратно, если на старте свет выключен, то мы обошли поезд целиком.

Ответы>>687856>>687860>>687861

14 Мар, 19:02 #58 #687856

>>687855
Кто вообще такую хуйню задает?

14 Мар, 19:04 #59 #687860

>>687849
Effective java наверни, там все это будет, насколько знаю из опыта знакомых, любят оттуда вопросы.
>>687855
>проверить свет, потом на два вагона впереди и обратно
Забыл дописать что потом на 3,4 и т.д., пока не будет выключен свет в первом вагоне

Ответы>>687862

14 Мар, 19:04 #60 #687861

>>687855
Угу, я так же решил.

14 Мар, 19:05 #61 #687862

>>687860
Е-мае, забыл еще указать что в каждом следующем вагоне выключаем свет.

Пойду я лучше спать

14 Мар, 19:14 #62 #687874

>>687849
Зависит от версии Java и Hotspot (или вообще хотспот это или другая JVM).

14 Мар, 19:15 #63 #687877

>>687849
>>687849
3, string immutable, но эт изи

Ответы>>687880

14 Мар, 19:17 #64 #687880

>>687877
"a", "b", "c", "abc" же

Ответы>>687884

14 Мар, 19:20 #65 #687884

>>687880
ой да, и "ab" тоже вроде

Ответы>>687887

14 Мар, 19:20 #66 #687885

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

14 Мар, 19:21 #67 #687887

>>687884
Так блять, в этом "вроде" по сути весь вопрос и заключается.

Ответы>>687889>>687895>>687897

14 Мар, 19:23 #68 #687889

>>687887
5, вместе с ab по-любому

14 Мар, 19:25 #69 #687895

>>687887
а что нибудь по сложностям алгоритмов было?

14 Мар, 19:26 #70 #687897

>>687887
Нахуя вообще такое спрашивать?

Ответы>>687900>>687918

14 Мар, 19:27 #71 #687900

>>687897
да норм вопрос, узнать понимаешь ли ты, что такое стринги

Ответы>>687903>>687905

14 Мар, 19:29 #72 #687903

>>687900
Ну не должно это ебать типичного дева, вопросы по языку - да, по алгоритмам - конечно, попросить написать код - само собой. Но с этой хуйней пусть jvm разбирается, главное знать, что не нужно много строк создавать.

12 Кб, 753x228

14 Мар, 19:29 #73 #687904

>>687849
Один. Три константы же сложили. Компилятор не тупой.

Ответы>>687906

14 Мар, 19:30 #74 #687905

>>687900
Ну, тут, скорее, надо знать не что такое стринги, а что они immutable и берутся из пула.

14 Мар, 19:30 #75 #687906

>>687904
А в спецификации прописано, что компилятор должен делать такую оптимизацию?

Ответы>>687908>>687912>>687914

14 Мар, 19:32 #76 #687907

An implementation may choose to perform conversion and concatenation in one step to avoid creating and then discarding an intermediate String object. To increase the performance of repeated string concatenation, a Java compiler may use the StringBuffer class or a similar technique to reduce the number of intermediate String objects that are created by evaluation of an expression.

For primitive types, an implementation may also optimize away the creation of a wrapper object by converting directly from a primitive type to a string.

Ответы>>687909

14 Мар, 19:32 #77 #687908

>>687906
А про стринги почти ничего и не написано.
На то String и final что бы не ограничивать компилятор.

Про интрисики в JDK 9 вы наверное вообще не слышали.

Ответы>>687916

14 Мар, 19:32 #78 #687909

>>687907
> may
> may
> may

14 Мар, 19:34 #79 #687912

>>687906
Всем "стремящимся джунам" советую посмотреть https://www.youtube.com/watch?v=SZFe3m1DV1A

Ответы>>687927

14 Мар, 19:34 #80 #687914

>>687906
Да, написано.
http://docs.oracle.com/javase/specs/jls/se7/html/jls-3.html#jls-3.10.5
>Strings computed by constant expressions (§15.28) are computed at compile time and then treated as if they were literals.

14 Мар, 19:38 #81 #687916

>>687908
>интринсики
Хули ты умничаешь-то? Тебе говорят, блять, что это не прописано в спецификации и все оптимизации типа тех же интринсиков -- это воля разработчиков JVM. Поставь себе другую JVM от Васяна, а не Hotspot -- обязательно там интринсики будут?

Ответы>>687917

14 Мар, 19:39 #82 #687917

>>687916
>Тебе говорят, блять, что это не прописано в спецификации
Пост выше. Это стандарт компилятора, а не JVM.

14 Мар, 19:39 #83 #687918

>>687897
С той же целью, что и "расскажите подробно, как отрабатывает команда put в мапе" - проверить знание тонкостей кора. Знаешь ты про putfornullkey, корзины и связные списки внутри них или для тебя это просто магическая хуйня, где всякие штуки парами лежат.
Алсо, спрашивали про устройство памяти и работу GC, тут я тоже частично обосрался: в общих чертах знал, но на вопросы о более подробном устройстве хипа (я читал, что там с позиции GB ещё как-то память разделена, но детали не запомнил) и о том, как именно GC поступает с объектами, указывающими только друг на друга (я знаю, что он умеет искать перекрёстные ссылки, но КАК он это делает - в душе не ебу) не ответил.
Ещё были вопросы про веб, мол, я на ссылочку нажал, а что там за магия в интернетах происходит, как оно всё отрабатывает и на какой порт стучится. Как jsp преобразуется в сервлет спрашивали.
Про композицию, множественное наследование и это всё, мол, что я буду делать, если мне нужно запихать методы нескольких классов в третий класс.
Был вопрос про 5 принципов объектно-чего-то-там-дизайна, но я про это впервые слышал.

Ответы>>687920

14 Мар, 19:41 #84 #687920

>>687918
А мы точно про джунов говорим?

Ответы>>687921>>687937

14 Мар, 19:43 #85 #687921

>>687920
Т.е. если я знаю, как находятся циклические ссылки (а точнее не находятся), то могу увольняться со своей стажерской должности и идти миддлом?

Ответы>>687926

14 Мар, 19:46 #86 #687926

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

Ответы>>687930>>687932

14 Мар, 19:46 #87 #687927

>>687912
о, спасибо, интересненько

14 Мар, 19:49 #88 #687930

>>687926
ну я читал про это у эккеля где-то вначале, но максимум, что там писалось это то, что gc пытается раскрутить все ссылки до стека, а про сурвайволы и олд генерейшон там не было и слова.

Ответы>>687935

14 Мар, 19:51 #89 #687932

>>687926
>Может у вас в джаве там конечно все иначе и хардкорней, но я не думаю, что джуну нужно знать о настолько тонких подробностях.
Ну всякое говно вроде во сколько там стрингов скомпилится твое выражение и правда немного лишнее, но знать как там внутри устроена хеш-таблица (можно даже без выебонов вроде лоад факторов и "а чому это там суспрес ворнинг стоит") - это вполне вменяемые требования, как мне кажется.

Ответы>>687938

14 Мар, 19:53 #90 #687935

>>687930
>там писалось это то, что gc пытается раскрутить все ссылки до стека
Наоборот. Он начинает со стека (точнее с некоего "корневого множества"). Так что всякие там объекты с только цикличискими вообще не попадут к нему в претенденты на живых.

14 Мар, 19:54 #91 #687937

>>687920
А хуй знает, кстати. Формально у них и джуновских вакансий-то не было, но они сказали, что если норм, то в теории могут и взять джуном.
Это, кстати, те самые, про которых я в прошлом треде писал, я у них ещё в блокноте игру в города пилил на первом собеседовании.
А Return on Intelligence что-то удивили, берут в интернатуру на 4 месяца, зп 20к, после интернатуры могу взят в штат, а могут и не взять.

Ответы>>687941

14 Мар, 19:54 #92 #687938

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

Ответы>>687946

14 Мар, 19:55 #93 #687940

Так сколько объектов-то создастся?

Ответы>>687945

14 Мар, 19:56 #94 #687941

>>687937
> А Return on Intelligence что-то удивили, берут в интернатуру на 4 месяца, зп 20к
С такими ситуациями я знаком, тут можно попытаться договориться уменьшить такой срок хотя бы в 2 раза

Ответы>>687955

14 Мар, 19:57 #95 #687945

>>687940
1

Ответы>>687954

14 Мар, 19:57 #96 #687946

>>687938
Ну просьбы пояснить что-то вроде такого https://ideone.com/3IImWm это совсем долбоебизм, имо.

Ответы>>687947

14 Мар, 19:59 #97 #687947

>>687946
вопрос про автоупаковку, что не так?

Ответы>>687949>>687951

14 Мар, 20:00 #98 #687949

>>687947
Причем тут упаковка?

14 Мар, 20:01 #99 #687951

>>687947
А то, что я даже если буду бухой и неспавший пятеро суток, я не стану сравнивать ссылки на объекты.
И вопрос не про автоупоковку, а про кеширование. Мы вам перезвоним.

14 Мар, 20:03 #100 #687954

>>687945
На самом деле вопрос "сколько объектов создастся (в рантайм"), а не как скомпилируется.

А если он дальше по коду не используется (в условии это не уточняется)?
Какая нибудь хитрожопая реализация JVM может это оптимизировать и выкинет это в рантайме,
в спецификации ведь про такие случаи не говорится.

Ответы>>687958

195 Кб, 1080x1920

180 Кб, 1080x1920

14 Мар, 20:03 #101 #687955

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

Ответы>>687957>>687974

14 Мар, 20:04 #102 #687957

>>687955
Собственно, делается первое задание и одно из второй части на выбор.

14 Мар, 20:04 #103 #687958

>>687954
Так вот этот код в рантайме создаст один объект. На любом компиляторе и любой jvm. Иди выебывайся в какой-нибудь другой тред.

Ответы>>687963

14 Мар, 20:07 #104 #687963

>>687958
Мамой клянешься?

Ответы>>687966

14 Мар, 20:09 #105 #687966

>>687963
Тебе еще раз дать ссылку на спеки или сам найдешь?

Ответы>>687968

14 Мар, 20:10 #106 #687968

>>687966
Там ничего не говорилось про исполнение кода, а только про компиляцию.

Ответы>>687969

14 Мар, 20:11 #107 #687969

>>687968
Исполняется вроде как байт-код, не? А в нем _вообще_нет_твоей_ебаной_конкатенации_. Ты меня утомил.

14 Мар, 20:18 #108 #687974

>>687955
Хорошие задания, мне нравятся. Но не на джуна, на стажера, да.

Ответы>>687976

14 Мар, 20:19 #109 #687976

>>687974
Так да, это на стажера и есть.

14 Мар, 21:50 #110 #688070

Сап. Почему при сравнении двух положительных чисел возвращает false, в при сравнении отрицательных - true?
https://ideone.com/VsOC4C

Ответы>>688074

14 Мар, 21:53 #111 #688074

>>688070
Во-первых ты неверно перепечатал образец: минус в a1.
Во-вторых загляни в метод Integer.valueOf и обрати внимание на границы кеша Integer объектов.

Ответы>>688081

14 Мар, 21:56 #112 #688081

>>688074
Cпасибо. Я просто еще даже не начинал учить. Просто рандомный код скопипастил в редактор и поигрался с числами.

Ответы>>688087

14 Мар, 21:57 #113 #688083

Кстати, если добавить к аргументам что-то вроде -Djava.lang.Integer.IntegerCache.high=9000, то и 128 == 128 станет true.

Ответы>>688092

14 Мар, 21:59 #114 #688087

>>688081
А с int все хорошо работает, кстати, не знаю, откуда я знаю это, лол. С пыхи вкатился.

Ответы>>688180

14 Мар, 22:03 #115 #688092

>>688083
Ну заебись и валхала не нужен.

14 Мар, 22:51 #116 #688168

Пиздец, ананасы, дрочу джавараш, в перерывах почитываю Head First Java. И, знаете, чувствую себя нереально тупым. Вот иной раз читаю что - то и понимаю, что я ровным счётом нихуя не соображаю. Прочту 3 -4 раза одно и то же пока до меня начинает доходить смысл. Сконцентрироваться не могу нихуя толком постоянно что - то отвлекает. Когда дело до заданий доходит постоянно ползаю в лекции подсматривать то что прочёл пару минут назад, алгоритм придумать для меня иной раз совсем непосильная задача. С программированием раньше дела не имел совсем, но так как времени много решил подучить жаву. Может мне не дано, или это у всех так было?

Ответы>>688187>>688191

14 Мар, 23:01 #117 #688180

>>688087
Потому что в случае с int сравниваются значения, а в случае с Integer - ссылки.

Ответы>>688203

14 Мар, 23:09 #118 #688187

>>688168
Это нормально, у всех так было.

14 Мар, 23:11 #119 #688191

>>688168
Заруби себе на носу - для того, чтобы программировать не нужен какой-то божий дар. Только практика и ещё раз практика. Тех, кто тебя убеждает в ином, шли нахуй.

14 Мар, 23:20 #120 #688203

>>688180
То есть Integer это числовой объект, а int это просто тип переменной?

Ответы>>688210>>688212

14 Мар, 23:25 #121 #688210

>>688203
Integer -- ссылочная обёртка над примитивом int.

Ответы>>688281

14 Мар, 23:26 #122 #688212

>>688203
То есть по сути -- да, это объект. А int -- не объект, а примитив.

Ответы>>688281

14 Мар, 23:36 #123 #688228

Насколько в idea хорошая поддержка git, нужна ли мне будет консолеебля или все связанное с git(домохозяйка-левел) можно сделать из иде? Вот ща добавил проект, но хуй проссыш как заигнорить папки, файлы.

Ответы>>688245>>688247>>688258

14 Мар, 23:43 #124 #688245

>>688228
Бери SourceTree - охуенная весчь на маке особенно, полный контроль за репой без консолеебства.
Я с ней просто отключаю все VCS плагины в идее, тк не нужны.

14 Мар, 23:44 #125 #688247

>>688228
>Насколько в idea хорошая поддержка git
Хорошая, если не любишь пердолиться с консолью хотя как можно не любить, можно этого избежать. Пиздато мерждить через него, например.

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

14 Мар, 23:47 #126 #688258

>>688228
Прекрасная, всяко лучше чем в ВС.

мимо-VSеб

14 Мар, 23:55 #127 #688278

Анон, что скажешь про джавараш?

Ответы>>688283

14 Мар, 23:56 #128 #688281

>>688210
>>688212
Спасибки. Ладно, пойду книжку начинать читать.

14 Мар, 23:57 #129 #688283

>>688278
Вы, блять, издеваетесь что ли? Откуда вы такие берётесь вообще?

14 Мар, 23:58 #130 #688285

public static int min(int a, int b)
{
return a < b ? a : b;
}

Что за конструкция такая? Где почитать?
Понимаю, что если а меньше б, то вернуть а, в противном случае б. Так?

Ответы>>688292>>688308

15 Мар, 00:03 #131 #688292

>>688285
https://ru.wikipedia.org/wiki/Тернарная_условная_операция

15 Мар, 00:11 #132 #688308

>>688285
Только погугли статью про тернарные операции (с телефона не скину). Там есть свои подводные камни, иногда приходится использовать if-else

Ответы>>688311

15 Мар, 00:11 #133 #688311

>>688308
А в чем с них профиты?

Ответы>>688314>>688330>>688339

15 Мар, 00:12 #134 #688313

>>687417 (OP)
Ворвался в джаву 3 недели назад на позицию джуниора в дс, не зная ни одного фреймворка и ни одной системы сборки. Оцените хуевость конторы.

Ответы>>688317>>688455

15 Мар, 00:13 #135 #688314

>>688311
Тернарных? Просто запись короче, больше никаких

15 Мар, 00:14 #136 #688317

>>688313
Что платят? Долго учился перед этим?

Ответы>>688321

15 Мар, 00:17 #137 #688321

>>688317
>Что платят?
Ну сказали, так как опыта нет, то будут платить первые 3 месяца 30к.
>Долго учился перед этим?
про алгоритмы и ещё писал скрипты на ней для нагрузочного тестирования.

Ответы>>688323

15 Мар, 00:19 #138 #688323

>>688321
Блять, проебал часть написанного.
Писал, как дебил, одни реализации алгоритмов дома по книге лафора и сенжвика. Больше на ней ничего не делал.

Мистика 15 Мар, 00:22 #139 #688328

В обещм есть в основном треде такая стандартная конструкция:

public final Random random = new Random();

И есть куча остальных тредов, которые использут этот random.

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

Вызывая этот самый random из другого треда начинается лютый пиздец, но если для треда создать свой рандом и использовать его, а не тот из основного треда, то всё работает збс.

Собственно вопрос. КАК БЛЯТЬ ТАКОЕ ВОЗМОЖНО?

Ответы>>688331

15 Мар, 00:23 #140 #688330

>>688311
Краткая запись. Проблема в том, что тернарная операция - суть оператор, и тип значения решается в момент компиляции. То есть если у тебя (true) ? int : double, то независимо от условия тебе вернётся double.
Более того, если ты используешь несколько раз этот оператор (c1? r1 : c2 ? r21 : r22) и один из r1, r21, r22 равен null, а jcnfkmyst - два разных типа (точно не помню какой), то ты словшь null poiter exception когда условия сложаться так, что этот null будет результатом условий. Потому что сгенерированныйкод будет пытаться скастить null и сгенерирует невализный код.

Ответы>>688332

15 Мар, 00:23 #141 #688331

>>688328
т.е. при вызове из других тредов int i= random.nextint(1000), например.

Ответы>>688336

15 Мар, 00:24 #142 #688332

>>688330
Вот https://habrahabr.ru/post/201334/

15 Мар, 00:28 #143 #688336

>>688331
Instances of java.util.Random are threadsafe. However, the concurrent use of the same java.util.Random instance across threads may encounter contention and consequent poor performance. Consider instead using ThreadLocalRandom in multithreaded designs.

Ответы>>688340

15 Мар, 00:29 #144 #688339

>>688311
Тернарный оператор используется для того чтобы инициализировать значения в переменных или выражениях.
Например:
System.out.println("Оп - " + (new Random.nextInt%2==0) ? "няша":"мудак";
Можно делать такое гавно цепочкой.

15 Мар, 00:31 #145 #688340

>>688336
Хуясе.

15 Мар, 00:50 #146 #688352

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

Ответы>>688362

15 Мар, 01:00 #147 #688362

>>688352
А что за проблемы-то были? Лагало?

43 Кб, 1133x549

Business Layer to Data Layer mapping 15 Мар, 04:08 #148 #688446

Пытаюсь реализовать паттерн "репозиторий".
Есть уровень бизнес-логики, есть уровень данных (Hibernate). Общаются они через репозитарий.

Бизнес-логика вызывает Repository.save(object); Репозитарий должен извлекать из бизнес-объектов данные и наполнять этими данными POJO-объекты, которые аннотированы Hibernate'овскими аннотациями.

Это делается для того, чтобы бизнес-логика ничего не знала о том как хранятся данные.
Но возникает проблема как сделать переход между бизнес-объектами и Hibernate-аннотированными объектами.
После опробования разных способов пришёл к тому, что в моем случае проще бизнес-объектам наследовать hibernate-объекты.

Тогда внутри репозитария можно безопасно кастовать аннотированные hibernate-классы на бизнес-объекты. И потом сохранять.

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

Также хотел бы услышать соображения о том как ещё можно сделать переход между бизнес-объектами и Hibernate-объектами. Другие мои идеи включали enum, например (огрубленный код):

//ENUM
enum Selector {
User(BusinessUser.class,POJOUser.class)
//...
}
//Где-то в бизнес-логике
Repository.get(Selector.User.byId(369);
//...
//Внутри репозитария
public Object get(Selector selector) {
return manager.get(selector.getPOJOClass, selector.getId);
}

Но всё это было очень костыльно.

Ответы>>688487>>688512

15 Мар, 04:26 #149 #688455

>>688313
Что, как джуна тебе дают за задания?

15 Мар, 08:44 #150 #688487

>>688446
Помнишь си? Вот ты кастанул лишь указатель(ссылку). От этого каста объект лежащий по тому адресу не перестал быть User. А еще кастовать засраные хибернейтом домены к чему-либо - плохая идея. Там же привалит хуй пойми какое прокси и у тебя будет класс каст эксепшн на каждом шагу.

Ответы>>688494

15 Мар, 09:09 #151 #688494

>>688487
Понял, спасибо.

15 Мар, 09:51 #152 #688512

>>688446
Глянь dozer, orica и прочие бин-мапперы.

Ответы>>688514

15 Мар, 09:52 #153 #688514

>>688512
*orika

15 Мар, 09:53 #154 #688515

Есть ли способы делать криптоконтейнеры? Либы или что?

43 Кб, 676x493

Говнокод сам себя не исправит 15 Мар, 13:18 #155 #688682

Как и в прошлом треде, прошу помощи у настоящих программистов. Есть проект - игра на libGdx, которую я пилю в свободное время. Репозиторий - https://bitbucket.org/dksurname/rolik . Хочу критики по поводу некрасивых (с точки зрения программирования) решений, конструкций и архитектуры. Кода уже довольно много, но качество его таково, что можно тыкать в сорсы наугад и стабильно попадать в говнокод. Большое спасибо анону из прошлого треда, который указал на одно улучшение. Попробовать игру (пока просто по сути - прототип) на баги можно по вышеприведённой ссылке (downloads).

Ответы>>688685>>691394

15 Мар, 13:26 #156 #688685

>>688682
Я не пойму какие библиотеки надо подключать, чтобы развернуть проект в иде?
Алсоу на чем графику делал?

Ответы>>688695>>688698

sage 15 Мар, 13:35 #157 #688695

>>688685
>какие библиотеки надо подключать, чтобы развернуть проект в иде?
Да. Прошу прощения за такое. Короче, проще всего брать пустой libGdx проект и копировать (форкать) в него. Скачиваешь libGdx жарник с их сайта, запускаешь. Нужно добавить галку на FreeType и, вроде tools (ну или потом их в грэдл зависимостями сунуть). Generate -> получаешь пустой проект. В core обычно лежит весь, собственно, код.

Ответы>>688737

sage 15 Мар, 13:37 #158 #688698

>>688685
>на чем графику делал?
Всмысле? libGdx там сам как то её рисует. Глубинные механизмы мне не известны. А спрайты я сам рисовал. Преимущественно в gimp-е.

15 Мар, 13:42 #159 #688702

>>687417 (OP)
Ребята, прохожу курс на курсерии по джаве. И у меня проблема с HashMap.

Ответы>>688703>>688709

15 Мар, 13:42 #160 #688703

>>688702
<pre>
public void buildMap (){
map.clear();
WordGram gKey = new WordGram(myText, 0, myOder);
int ind = 0;
while (myText.length >= ind+myOder){
System.out.println(gKey);
if (!map.containsKey(gKey)){
ArrayList<String> list = getFollowsKeys(gKey);
map.put(gKey, list);

}
if (ind+myOder == myText.length){
break;
}
for (String s : map.get(gKey)){
System.out.println("\t" + s);
}

String s = myText[ind+myOder];
//System.out.println(s);
gKey.shiftAdd(myText[ind+myOder]);
// System.out.println(gKey);
ind +=1;

}
printHashMapInfo();
}
</pre>

Ответы>>688704>>688717

15 Мар, 13:43 #161 #688704

>>688703
Тут же послу добавления ключа проверяю - все хорошо. Уникальные ключи добавляются. их значения тоже. Но когда пытаюсь использовать этот HashMap в коде - выясняется что все ключи заменены, на то которое было добавлено вторым. Как так?

Ответы>>688706

15 Мар, 13:43 #162 #688706

>>688704
Проверял вот этим
<pre/> public void printHashMapInfo () {
System.out.println("map size " + map.size());
for (WordGram wg : map.keySet()){
System.out.println("key " +"\""+ wg +"\""+" :");
for (String s : map.get(wg)){
System.out.println ("\t"+ s);
}
}</pre>

Ответы>>688707

15 Мар, 13:44 #163 #688707

>>688706
И да, как правильно код вставлять? Как гугл подсказал что-то не работает. А обсираться дальше прям не ловко.

Ответы>>688708

15 Мар, 13:46 #164 #688708

>>688707
Никак, используй http://ideone.com

15 Мар, 13:47 #165 #688709

>>688702
оо, обожаю хэш мэп. такой сложный я даже не знаю как это назвать, коллекция?

Ответы>>688710

15 Мар, 13:48 #166 #688710

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

15 Мар, 13:58 #167 #688717

>>688703
Вангую, что не переопределил метод hashCode у класса WordGram. Угадал?

Ответы>>688724>>688736

15 Мар, 14:08 #168 #688724

>>688717
угадал. и equals переопределил. задание было таким.

Ответы>>688731

15 Мар, 14:20 #169 #688731

>>688724
http://ideone.com/Xj9sqM

15 Мар, 14:24 #170 #688736

>>688717
спасибо за подсказку. завтра после работы займусь.

15 Мар, 14:26 #171 #688737

>>688695
это считай минус

Ответы>>688755

15 Мар, 14:42 #172 #688748

Захотел изучать джаву вбил в поиск выскочил курс javarush.ru, я начал, мне вроде нравиться, много простых задач сначала, постепенно добавляется новый материал и оседает старый как усвоенный.
И теперь я хочу спросить и попросить совета - как вообще этот курс, стоит ли продолжать и заплатить за курс, кем я буду когда закончу эти 40 уроков?
Ну и я понимаю что мало кто вообще с этим курсом знаком, но вдруг кто-то может что-то посоветовать.
Понятно что развиваться надо будет и дальше и много, но работать мне нужно уже сейчас что бы не умереть с голоду, смогу ли я это сделать, то есть смогу ли я найти хоть какую нибудь работу с этими знаниями?

Ответы>>688764>>688784

sage 15 Мар, 14:48 #173 #688755

>>688737
Тут не всё однозначно. Чтобы libGdx проект сразу запускался надо очень много всяких сопутствующих файлов. Но даже, если покидать их все в репозиторий, человек, не занимавшийся раньше программированием под андроид, всё равно не сможет его просто клонировать и сразу запустить. Надо будет ставить андроид апи нужной версии и т.п. Это всё мультиплатформенность. Удобнее конечному пользователю = больше геморроя разработчику.
В общем, я изначально рассчитывал, что кто-то просто посмотрит код в src на битбакете. Но, раз уж тебе хочется именно в ide его развернуть - добавил в Downloads архив roli2ch.zip. В нём идеевский проект целиком и без андроида. Надо только запустить, импортировать грэдл и кликнуть таск desktop - other - run.

Ответы>>688763

15 Мар, 14:55 #174 #688763

>>688755
Если твой прект под андроид, почем ты не пиаришь его в андроид треде?

Ответы>>688775

15 Мар, 14:55 #175 #688764

>>688748
>вбил в поиск выскочил курс javarush.ru
>Ну и я понимаю что мало кто вообще с этим курсом знаком

sage 15 Мар, 14:58 #176 #688775

>>688763
А он и не под андроид. Просто движок позволяет делать одновременно и под него и под десктоп. Мультиплатформа. Да и андроидовского там в коде (в core) ровно ничего.

15 Мар, 15:09 #177 #688784

>>688748
Не будешь ты программистом. Понимаешь, в этой профессии очень важны усидчивость, внимание к деталям, способность самостоятельно искать решение проблем. А ты, дебилушка, даже шапку просмотреть не осилил. Для вас, идиоты, специально добавили там вопрос про джавараш. Сложно, блядь, поиском по треду пройтись? Ты, кстати, уже второй такой за два дня существования этого треда, что как бы символизирует уровень аудитории джавараша.

Ответы>>688797>>688800>>688801

15 Мар, 15:22 #178 #688797

>>688784
Ну в принципе спасибо за ответ.

15 Мар, 15:23 #179 #688800

>>688784
Вот усидчивость - это то, что у меня есть. Однажды делала маникюр соседке - она так и сказала, что я такая усидчивая.

15 Мар, 15:24 #180 #688801

>>688784
Кстати шапку я читал давненько уже, этого вопроса не видел, не буду же я перечитывать шапку к каждому треду.

Ответы>>688830

5 Кб, 374x79

15 Мар, 15:51 #181 #688830

>>688801
А Ctrl+F нажать перед тем, как задать вопрос религия не позволяет?

Ответы>>688841

15 Мар, 16:02 #182 #688841

>>688830
Ну после гневного поста так и сделал, тащемто.

15 Мар, 16:03 #183 #688844

Аноны, выкатываю свой первый проект. Прога сохраняет альбомы, диалоги, сообщения, музычку, группы и инфу о вас в файл.
https://bitbucket.org/GlowEffect/java-vksaver/
Все началось с того, что пару тредов назад посоветовали написать качалку фоток с vk.

Ответы>>688860>>688865>>688872

15 Мар, 16:12 #184 #688860

>>688844
А я тот кто придумал, заценим, из того что сразу бросается - VkAPiUtils.PERMISSION. Нейминг enumов такой же как и у обычных классов, то есть Permission. Еще не вижу смысла держать енам в том же классе, зачем тебе дополнительная вложенность, почему не VkPermission.java? Ну и перед toString() анноташку оверрайда добавить.

15 Мар, 16:14 #185 #688865

>>688844
Алсо отформатируй весь проект, там есть места где совсем все поехало, и еще насчет енамов, обычно пишут их в столбик - по одному в строке.

15 Мар, 16:27 #186 #688872

>>688844
Осиль мавен или грейдл. Незачем в репозитории хранить джарки распространенных либ.
Добавь *.iml в гитигнор.
Почему не восьмая джава?
Учи java.util.concurrent. За код типа while(!isStopped()) { Thread.sleep(1000);} должно быть очень стыдно.
За автоформаттер написали уже.

Ответы>>688877

15 Мар, 16:36 #187 #688877

>>688872
1.В мавен умею, просто освоил позже чем начал писать проект. Кстати что лучше мавен или градл?
2. А где форматирование поехало?

Ответы>>688879>>688881>>688891

15 Мар, 16:37 #188 #688879

>>688877
> что лучше мавен или градл?
ANT

15 Мар, 16:39 #189 #688881

>>688877
Ну в файле VkApiUtils например, вообще можно настроить так что бы оно по всему проекту сразу чинило. Мне кажется Gradle, так как он более гибкий чем Maven, но проигрывает в скорости Ant, но ant совсем уже гибкий, но все пишешь в xml.

Ответы>>688913

15 Мар, 16:51 #190 #688891

>>688877
2. Форматирование у тебя непривычное для джавистов, слишком плотное, пробелы неконсистентны. Между методами вставляй пустую строку, пробел между ) и {, пробел вокруг операторов, и т.д. Алсо не пытайся выравнивать названия полей по вертикали: мороки много, переименовал класс в одном месте - в другом форматирование поплыло, запустил автоформаттер - все сбросилось нах. Короче, таким только сишники сейчас занимаются.

1. Ант - говно мамонта. Гредл - дофига гибкий, но с кучей граблей, магии и недокументированных плагинов. Мавен - оптимальный выбор для большинства проектов.

Ответы>>688913

15 Мар, 17:24 #191 #688902

Что такое мавен?

Ответы>>688913

15 Мар, 17:40 #192 #688913

>>688902
Автоматизация сборки, чтобы не нужно было твои 100500 файлов вручную компилировать и слепливать в единый jar + как намекают аноны выше с помощью него можно удобно добавлять библиотеки в проект одним куском xml кода. Все остальное сделает maven.
>>688891
>>688881
Форматирование поправлю(кстати значение enumoв пишеться капсом или тоже как обычное имя переменной? Типа Permissions.DOCS или Permissions.docs?

А по общей архитектуре, кривым решениям есть какие-нибудь замечания?(concurrent тоже учту)

Ответы>>688927>>688934

15 Мар, 17:46 #193 #688925

Слышал, тут не очень многие любят эклипс, почему?

Ответы>>688927>>688933>>688940

15 Мар, 17:47 #194 #688927

>>688913
https://google.github.io/styleguide/javaguide.html#s4.8.1-enum-classes
>>688925
Неудобно, другая структура, некрасивый интерфейс.

15 Мар, 17:48 #195 #688933

>>688925
А как к свингу относитесь?

Ответы>>688936

15 Мар, 17:49 #196 #688934

>>688913
> кстати значение enumoв пишеться капсом или тоже как обычное имя переменной?
Ориентируйся на код JDK, например https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/TimeUnit.html

Вообще, почаще заглядывай в код самой джавы, вдохновляйся.

15 Мар, 17:49 #197 #688936

>>688933
Он умер.

Ответы>>688947

15 Мар, 17:52 #198 #688940

>>688925
А что любят? IDEA?

Ответы>>688945>>688947

15 Мар, 17:56 #199 #688945

>>688940
Офкорс

15 Мар, 17:56 #200 #688947

>>688936
>>688940
Я понял. Чтобы стать разработчиком под платформу ведроид - нужно сначала учить джаву, а потом уже средства разработки под ведро?

Ответы>>688949>>688951>>688952

15 Мар, 17:58 #201 #688949

>>688947
Ясен хер. Я так и делаю. Так и во всех учебниках по андроиду написано.

Ответы>>688955

15 Мар, 17:59 #202 #688951

>>688947
Да не, там все просто, в андроид-студии накидал кнопочек и полей для ввода, хуяк-хуяк и готово.
Тут где-то рядом андроидотред, там подробнее расскажут.

Ответы>>688955

15 Мар, 17:59 #203 #688952

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

Ответы>>688955

2 Кб, 99x103

15 Мар, 18:01 #204 #688955

>>688952
>>688951
>>688949
Ничего себе, адекват на адеквате, в пыхотреде бы сейчас нахуй послали и убили бы за такие вопросы, спасибо.

Ответы>>688964

15 Мар, 18:04 #205 #688964

>>688955
Ну лан, иди нахуй.

15 Мар, 19:09 #206 #689064

В джава программу можно вставлять С или Asm код?

Ответы>>689077

15 Мар, 19:24 #207 #689077

>>689064
офк, jni

Ответы>>689079

15 Мар, 19:25 #208 #689079

>>689077
ну то есть с dll работать, просто код хуйнуть нельзя

Ответы>>689082>>689084

15 Мар, 19:26 #209 #689082

>>689079
можно говорят тебе

15 Мар, 19:27 #210 #689084

>>689079
В самой джаве очевидно нет. Ты наверно слово кросплатформенность не понимаешь.

34 Кб, 460x460

15 Мар, 19:49 #211 #689120

Знающие аноны, поясните за тяжелый энтерпрайс.
Начал изучать JavaEE (ту, которая не спринг) и на меня посыпались какие то модули EJB, сервера приложений и куча вложенных проектов в один (типа модули). Спустя 2 дня мавеном смог все это собрать, задеплоить и запустить, чтобы работало то что я наговнокодил. И чтобы не повторять эти 100500 действий по сборке как шизофреник у меня созрел вопрос - как быть, если я хочу внести поправки в проект? Типа изменил что то на jsp странице, и чтобы не компилировать и собирать весь проект заново, изменения сразу были видны просто перезагрузив страницу в браузере. И то же самое с классами - изменил 2 символа в строке кода и не пришлось заново компилить и деплоить весь проект... Как тут быть? Как это вообще практикуют?

Ответы>>689150>>689300>>689309

15 Мар, 19:59 #212 #689139

Выполнил свой первый системаутпринтлр в идее.
Что означает строчка: Process finished with exit code 0

Ответы>>689140

15 Мар, 20:00 #213 #689140

>>689139
Значит все заебись

Ответы>>689145

15 Мар, 20:01 #214 #689145

>>689140
Фенки.

15 Мар, 20:08 #215 #689150

>>689120
если пользуешься идеей, то запускаешь проект в контейнере и прямо налету можешь подменять классы. Называется это hotswap, если не ошибаюсь. Срабатывает не всегда, ну ты погугли. Насчет JSP, их можно тоже подменять налету редактируя jsp в твоем контейнере. Ты вообще, пробовал? Быстрее проверить было бы или загуглить чем писать пост.

Ответы>>689609

15 Мар, 20:10 #216 #689156

Есть интерфейс Rtriangle, который задает прямоугольный треугольник. Координаты задаются методами getApex.., имеют тип int. Есть метод RtriangleProvider.getRtriangle(), который возвращает треугольник. Нужно написать JUnit тест, который будет проверять является ли треугольник прямоугольным по координатам вершин. Тест должен быть проваленным, если треугольник не является прямоугольным, и проходить без ошибок и комментариев, если треугольник - прямоугольный. Проверяю то, что никакие две точки не совпадают, и то, что какие-то два вектора ортогональны, но решение неправильное. На каких именно данных не работает неизвестно. Может кто подскажет, что я делаю не так? http://pastebin.com/XUPhWzzf

Ответы>>689158>>689380

15 Мар, 20:13 #217 #689158

>>689156
запускаешь в дебаггере, ставишь бряку, смотришь

Ответы>>689163

15 Мар, 20:22 #218 #689163

>>689158
У меня все работает, но тест проверяется автоматической системой и она выдает, что тест неверный.

Ответы>>689171>>689185

15 Мар, 20:27 #219 #689169

Как же нам узнать, что в классе System есть что‐то с именем out? Eclipse помогала мне с этим. После того, как напечатаю слово System и поставлю точку, Eclipse показывала мне все, что есть в этом классе. А как быть с IJStudio?

Ответы>>689170

15 Мар, 20:29 #220 #689170

>>689169
А, нет, работает, отбой вопроса.

Ответы>>689184

15 Мар, 20:30 #221 #689171

>>689163
перепиши тест с assertTrue на assertEquals, добавь побольше проверок в методе вместо одной на конце. Тот факт что ты столкнулся с этой проблемой, сам по себе говорит что тест написан безолаберно. Включи мозг и залей, в следующем ночном билде будет у тебя причина.

15 Мар, 20:42 #222 #689184

>>689170
Пишешь System. и нажимаешь Ctrl+Space для автодополнения.
Пишешь System и нажимешь Ctrl+ЛКМ - тебя перекидывает в исходники System и ты спокойно ищёшь всё, что надо.

15 Мар, 20:43 #223 #689185

>>689163
А к чему такие выебоны? Банальщина вроде http://pastebin.com/P3qHdQ5W не катит? И что за приведение к лонгу?

Ответы>>689187

15 Мар, 20:44 #224 #689187

>>689185
Ой, я проверил, что он _не_квадратный_. Ну да неважно, суть ты понял.

Ответы>>689191

15 Мар, 20:50 #225 #689191

>>689187
Приведение к лонгу потому что может быть 210е9 и -210е9, разность в инт не помещается. Биг интеджер нужен, потому что надо перемножать два больших лонга, в лонг может не поместиться.

Ответы>>689199>>689222

15 Мар, 21:02 #226 #689199

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

Ответы>>689222

15 Мар, 21:27 #227 #689218

тест

15 Мар, 21:34 #228 #689222

>>689199
Так это тест провайдера. Что он действительно выдает, что надо.

>>689191
Ну так что, если не вспоминать про ортогональность, а пойти влоб с теоремой Пифагора как-то так http://pastebin.com/gPBZKepZ - тест твой проходится?

Ответы>>689247

15 Мар, 22:01 #229 #689247

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

15 Мар, 22:25 #230 #689272

Почему класс Main обязательно должен быть паблик, а паблик обязательно должен быть Main?

Ответы>>689296

15 Мар, 23:04 #231 #689295

Жабка синер в треде, спрашивайте ответы

4-5 лет экспириенса

Ответы>>689313

15 Мар, 23:05 #232 #689296

>>689272
Чтобы когда ты запускал свой файл, JVM не искала, какой из методов ей запускать. Должен быть один публичный класс, если ты собираешься запускать свой проект, а не использовать его как библиотеку .По крайней мере я так понял из Эккеля.

Ответы>>689297

15 Мар, 23:08 #233 #689297

>>689296
>>публичный класс
метод конечно.

15 Мар, 23:09 #234 #689300

>>689120

есть такая штука как hot swap, идейка заебись удобно это делает. Зависит конечно какие изменения ты делаешь, в большинстве случаев hot swap отрабатывает.

Ну и + нахуя тебе оракловый стек? EJB? вот это все
Занимайся спрингом лучше. И то и другое ссанина, но со спрингом все же привкус говна не такой сильный :3

Ответы>>689609

15 Мар, 23:21 #235 #689309

>>689120
Как тебе уже сказали, Идея это может сделать за тебя. Чтобы можно было менять на лету html/js/css, артефакт должен быть exploded. Потом просто нажимаешь апдейт ресурсес или типа того.

Ответы>>689609

15 Мар, 23:23 #236 #689313

>>689295
хуи сосешь?

15 Мар, 23:23 #237 #689314

Меня послали из "си" треда сюда >>689271
Суть вопроса: Учу джаву что бы стать программистом на джаве а не парнем который пишет забавные скрипты, один вроде как понимающий в вопросе человек сказал учить ещё и Си так как си+джава это очень круто.
Вопрос насколько эта связка актуальна и востребована?

Ответы>>689315>>689318>>689319

15 Мар, 23:26 #238 #689315

>>689314
Это явно не для энтерпрайза, я не знаю где для джавы нужен соСи, разве что андроид, но это совсем другое.

15 Мар, 23:28 #239 #689318

>>689314
Дай угадаю, он бородат и носит свитер? Это, дружок, byte'o'yobis vulgarius. Вид вымирающий, но все ещё встречающийся.

Ответы>>689328

15 Мар, 23:28 #240 #689319

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

Ответы>>689328

504 Кб, 1214x1080

15 Мар, 23:33 #241 #689326

Хочу сказать, что Java охуенна. Хоть некоторые вещи мне сейчас непонятны, но это намного лучше, чем другие языки, ориентированные на веб. Я получаю удовольствие, когда пишу на Java. Это просто с ума сойти.

Ответы>>689332>>689355

15 Мар, 23:34 #242 #689328

>>689319
Ещё он интересовался почему я не работаю работу, а читаю на рабочем месте.
>>689318
Свитер не носит, почти не бородат. Но работает в должности "технического директора" средненькой конторы.

Ответы>>689341

15 Мар, 23:37 #243 #689332

>>689326
Какие цели джавы, я вот знаю про серверы только, но это ведь не все, верно?
мимо-ньюфаг

Ответы>>689353

15 Мар, 23:42 #244 #689341

>>689328
Короче, связка не слишком популярная. Обычно с таким багажом нужны системные программисты под оптимизации кастомных JVM, разработка и поддержка софта с embedded Java, ну и просто разносторонний специалист, ибо в конторе Java может являться лишь одной из используемых технологий.
Сегодня в рассылке (вроде с линкедина) видел вакансию от Ignite Technologies (Москва) на Java Chief Software Architect with C++ на 100k$ annual. Но это редкая вакансия. На чисто джаву больше, так что и с ней одной будешь сыт и одет, если не даун.
А если ради интереса изучать, то почему бы и нет. Мне вот нравится системное программирование и байтоёбство, иногда с удовольствием почитываю всякие статьи на эту тему.

Ответы>>689356

15 Мар, 23:49 #245 #689353

>>689332
Цели? Любые. Ты выбираешь джаву и знаешь, что все пути для тебя открыты. От ссаного веба до разработки программного обеспечения для банков, от разработки приложений на Ведре до написания своего собственного плеера для винды с сортировкой и эквалайзерами/скинами. И все это - Java. Она как математика - очень обширна. И чтобы выучить все ее примудрости нужно потратить много лет. Да это и не нужно никому, лол. В общем, в ОП-посте есть ссылочки для определения твои технологий, отталкиваясь от области разработки. Мандмап и еще что-то под ней.

Ответы>>689357

15 Мар, 23:50 #246 #689355

>>689326

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

Ответы>>689358

15 Мар, 23:51 #247 #689356

>>689341
удваиваю этого

15 Мар, 23:52 #248 #689357

>>689353
А игры есть смысл на ней пилить, или все же лучше в спп?

Ответы>>689360

15 Мар, 23:53 #249 #689358

>>689355
На вкус и цвет, как говорится.
А что по-твоему охуенно? Scala? Swift? Кресты?

Ответы>>689612

15 Мар, 23:54 #250 #689360

>>689357
Если твоя конечная цель - пилка игор, то лучше учи сисярп + юнити.

Ответы>>689370

16 Мар, 00:08 #251 #689370

>>689360
А разве юнити не говно по сравнению с божественным анриалом?

Ответы>>689371

16 Мар, 00:10 #252 #689371

>>689370
Ну или анриал. Я вообще все это знаю понаслышке, если что. Не шарпист я.

16 Мар, 00:20 #253 #689380

>>689156
nonZero=((ax1!=0||ay1!=0)&&(ax2!=0||ay2!=0)&&(ax3!=0||ay3!=0))
Тут ты перепутал || и &&.
Забота о возможном переполнении это вообще похвально, понимаю твою логику. Но не уверен, что от тебя ждут биг интеджеров. Хотя хз что у них в голове.
Достаточно проверить две пары сторон. Как-то так https://ideone.com/SoOjgd

Ответы>>689394>>689412

16 Мар, 00:32 #254 #689394

>>689380
А не, не перепутал, сори.
Но всё-таки лучше написать
boolean isZeroSideFound = ((ax1 == 0 && ay1 == 0) || (ax2 == 0 || ay2 == 0) || (ax3 == 0 || ay3 == 0));

Ответы>>689396

16 Мар, 00:33 #255 #689396

>>689394
Бля, то есть
boolean isZeroSideFound = ((ax1 == 0 && ay1 == 0) || (ax2 == 0 && ay2 == 0) || (ax3 == 0 && ay3 == 0));

Ответы>>689418

5 Кб, 314x162

4 Кб, 271x167

16 Мар, 00:39 #256 #689402

Поясните, зачем создавать интерфейсную переменную и ссылать её на объект класса LinkedList, который реализует этот интерфейс?
можно же написать LinkedList<String> list = new LinkedList<>();

Ответы>>689405>>689419

16 Мар, 00:40 #257 #689405

>>689402
Ну только такие как ты так и делают. Молодец, продолжай.

Ответы>>689408

16 Мар, 00:41 #258 #689408

>>689405
trolls everywhere

16 Мар, 00:47 #259 #689412

>>689380
Где именно перепутал? Мы для каждого вектора проверяем, что хотя бы одна сторона не равна нулю, поэтому внутри ||. Это должно выполняться для всех векторов, поэтому между скобками &&. Конечно я не сразу про биг интеждер подумал, но чисто теоретически есть варианты, где лонга не хватает. И да, нужно проверять все три пары.

Ответы>>689418

16 Мар, 01:00 #260 #689418

>>689396
>>689412
Без разницы, одно - отрицание другого. Скорее всего я что-то не учел, но что - непонятно.

Ответы>>689426

24 Кб, 361x126

16 Мар, 01:01 #261 #689419

>>689402
Лови спам.

16 Мар, 01:07 #262 #689426

>>689418
Я тут попробовал сравнить найти корректный набор данных, на которых твой тест фейлится (и наоборот) в диапазоне байта, ничего не получилось. Я думаю, что тест твоего теста - говно.

Ответы>>689434>>689437

16 Мар, 01:23 #263 #689433

чем плох JavaFX ? почему его так никто толком и не стал использовать для десктоп?

Ответы>>689445

16 Мар, 01:24 #264 #689434

>>689426
Вообще это задание от Яндекса, может их тест говно, но вряд ли. Можно еще проверить, что triangle не null, но больше идей у меня нет.

Ответы>>689441

16 Мар, 01:28 #265 #689437

>>689426
Ты прав, что надо проверять все три стороны. Обновил код на ideone
>ничего не получилось
Почему не получилось?

Ответы>>689439

16 Мар, 01:34 #266 #689439

>>689437
Не смог таких найти. Тот тест, который я набросал, ни разу не разошелся во мнении с исходным тестом. (хотя я вру: он еще перебирает, но я не думаю, что там _внезапно_ что-то найдется).

Ответы>>689443

16 Мар, 01:37 #267 #689441

>>689434
>Можно еще проверить, что triangle не null
Бесполезно, эксепшн от нулевого указателя тоже зафейлил бы тест.

16 Мар, 01:39 #268 #689443

>>689439
А текст задания то есть? Ты уверен, что треугольники с нулевыми сторонами невализные?

Ответы>>689447

16 Мар, 01:41 #269 #689445

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

Ответы>>689456>>689458

16 Мар, 01:43 #270 #689447

>>689443
Ну очевидно, что если стороны нулевые - это вообще не треугольник.
Сам текст задания:
Вам дан интерфейс
public interface Rtriangle {
int getApexX1();
int getApexY1();
int getApexX2();
int getApexY2();
int getApexX3();
int getApexY3();
}

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

Есть метод, возвращающий прямоугольный треугольник:
public final class RtriangleProvider {
public static Rtriangle getRtriangle() {
...
}
}

Требуется: написать код одного junit (http://junit.org/) теста, проверяющего метод getRtriangle на то, что он действительно возвращает прямоугольный треугольник.

Формат ввода
В тестирующую систему отправьте файл, содержащий ваш юниттест. Не описывайте в решении никакой package, имя основного класса должно быть Testtriangle.

Ниже приведен пример кода, получающего от обёртки треугольник:
import org.junit.Before;
import org.junit.Test;

public class Testtriangle {

@Before
public void setUp() {
Rtriangle triangle = RtriangleProvider.getRtriangle();
}

@Test
public void test() {
}
}

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

16 Мар, 01:52 #271 #689456

>>689445
>А ну и еще есть более лучшие решения для десткопа.
А какие?

16 Мар, 01:53 #272 #689458

>>689445
Лучшие решения для десктопа - это какие, например? Qt, конечно, охуенный, но jambi же никто даже не пытается саппортить.

Ответы>>689464

16 Мар, 01:59 #273 #689464

>>689458
а чтобы чисто на джаве без С++ нет ничего более менее распространенного?

Ответы>>689465

16 Мар, 02:04 #274 #689465

>>689464
Javafx пока ещё жив, swt тоже. Но пользоваться этим говном после qt не очень хочется. Ну и awt со свингом тоже как бы никто не собирается выпиливать.

Ответы>>689474

16 Мар, 02:25 #275 #689474

>>689465
А чем все-таки конкретно так ужасен JavaFx по сравнению QT ? QT наверное памяти жрет меньше раз он на С++, а чем еще? мне небольшое приложение нужно сделать - несколько кнопок, полей, простая анимация какая-нить. С++ не знаю

Ответы>>689478

16 Мар, 02:45 #276 #689478

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

Ответы>>689481

16 Мар, 03:01 #277 #689481

>>689478
я уже попробовал, просто интересно стало почему его так не любят

Ответы>>689482

16 Мар, 03:11 #278 #689482

>>689481
Тебя волнует чужое мнение?

16 Мар, 04:30 #279 #689495

Привет, джависты. Нужна ваша Профессиональная™ помощь. Вопрос вкратце звучит так: как можно в рантайме переопределить метод класса? Чтоб примерно в таком виде:

MyClass myInstance = new MyClass();
myInstance.getFive(); // возвращает 5
MyPatcher.reimplement(MyClass.class, "getFive", 8); // или что-то в этом роде, вместо 8 например можно какой-нибудь Runnable, возвращающий 8
myInstance.getFive(); // теперь возвращает 8
MyClass myNewInstance = new MyClass();
myNewInstance.getFive(); // тоже теперь возвращает 8

с помощью java.lang.reflect.Field можно примерно таким макаром переопределить в рантайме значения полей. А мне нужно то же самое, но уже для методов. (И почему в java.lang.reflect.Method нет метода set или reimplement?..)

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

Ответы>>689496>>689511>>689574>>689774

16 Мар, 04:37 #280 #689496

>>689495
Класс final?

Ответы>>689498

16 Мар, 04:39 #281 #689497

Невероятно заебал спринг и всякое говно типа AspectJ. Сижу в свободное время клепаю всякую хуиту. Например, пишу понемногу проект обширного веб приложения на Spark + Freemarker. Без говноспринга и без EE. Данных немного, все в памяти. Сохраняются в CSV подобное месиво и маппятся при загрузке на сущности с помощью хитровыебанного парсера (без рефлекшена вовсе).

Пример сущности (запись подгружаемого плагина):
Nebula.Plugin.Sync,Sync,UI,{Allows to sync data through Nebula Sync Protocol.},{http://2ch.hk/},{web/sync.ico},0,{0.1},true,tk.anonsoftware.nebula.server.core.sync.SyncPlugin,INSTALLED (М)

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

Ответы>>689521

16 Мар, 04:40 #282 #689498

>>689496
нет, к счастью нет

Ответы>>689499

16 Мар, 04:43 #283 #689499

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

Ответы>>689500

16 Мар, 04:48 #284 #689500

>>689499
просто приложение пользуется именно оригинальным классом, если я там отнаследуюсь - приложение этим наследником пользоваться явно не будет. Или я немного не понял?

Ответы>>689501

16 Мар, 04:50 #285 #689501

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

Ответы>>689503

16 Мар, 04:54 #286 #689503

>>689501
они там помногу штук создаются. В общем, легких путей нет, я так понимаю. А может можно с ClassLoader поиграться? Ну чтобы при попытке создать com.x.y.z.Original он выдавал мой класс, а все остальное - как раньше?

Ответы>>689514>>689515>>689516

16 Мар, 06:44 #287 #689510

Как в intellij для консольной программы послать завершение работы аналогичное "ctrl+c" в командной строке windows?

Ответы>>689587

16 Мар, 06:50 #288 #689511

>>689495
выкинь MyClass, не закладывай костыли в свой продукт.

16 Мар, 06:59 #289 #689514

>>689503
Да, с класлоадером всё можно. Или динамически
http://www.ibm.com/developerworks/java/library/j-dyn0916/index.html
https://community.oracle.com/docs/DOC-983723
Но проще всего заменить в .jar-нике класс на свой.

16 Мар, 07:01 #290 #689515

>>689503

16 Мар, 07:01 #291 #689516

>>689503
http://stackoverflow.com/questions/16355771/can-aspectj-replace-new-x-with-new-subclassofx-in-third-party-library-code

16 Мар, 07:58 #292 #689521

>>689497
> Freemarker
> Сохраняются в CSV
> Локализацию сам написал
Нахуй так жить?

Ответы>>689758

16 Мар, 10:30 #293 #689574

>>689495
Подмени класс на свой. Гугл в помощь.

30 Кб, 780x384

16 Мар, 10:38 #294 #689579

быть джавапрограммистом, это также и отвечать на еженедельный спам.

Ответы>>689594

16 Мар, 11:03 #295 #689587

>>689510
System.exit(0) например.

16 Мар, 11:24 #296 #689594

>>689579
Обосрался с одеждой. Мы вам перезвоним

16 Мар, 11:53 #297 #689609

>>689150
>>689300
>>689309
Спасибо аноны, смог настроить артефакты. Более менее норм, но если делать изменения например на сигнатуру методов (имя, параметры и пр.), то все равно приходится редеплоить весь проект.

> нахуя тебе оракловый стек? EJB? вот это все
Дали тестовое задание в конторке. Как начал в это вникать прихуел от количества лишней хуиты проекте. До этого делал пару проектиков на спринге обмазанный модными фраемворками в 4 строчки, тут же, нужно создавать какой то ЙобаБизнесМодуль модуль, создавать к нему дескрипторы и прочий нагроможденый кал мех

Ответы>>689645>>689646

16 Мар, 11:57 #298 #689612

>>689358
Kotlin

16 Мар, 12:46 #299 #689645

>>689609
ну тащемта раз это требуют значит им это надо.

16 Мар, 12:54 #300 #689646

>>689609
>создавать к нему дескрипторы и прочий нагроможденый кал мех
Ты ебанутый?
В последних версиях EJB просто ставишь аннотацию @Stateless или @Singleton и все.

Ответы>>689649

16 Мар, 12:59 #301 #689649

>>689646
и все попизде, без понимания как это работает один хуй ЕЕ ты не поймешь

16 Мар, 14:33 #302 #689720

Str.substring(a, b)
как работает этот метод?

Ответы>>689734

16 Мар, 14:58 #303 #689734

>>689720
http://ideone.com/YjXVhn
Как-то так.

Ответы>>689735>>689740

16 Мар, 15:00 #304 #689735

>>689734
Сорри за оффтоп, как вставлять код с ideone? Парсер сам подтягивает или тэги какие-то писать?

16 Мар, 15:02 #305 #689740

>>689734
Доставь, пожалуйста, сайтов где я могу искать методы, классы и другую нужную инфу не доебывая анона в тредике.

Ответы>>689743>>689764

16 Мар, 15:04 #306 #689743

>>689740
программирование это не твое, забудь

Ответы>>689748

16 Мар, 15:11 #307 #689748

>>689743
Двачую этого. Я, конечно, всё понимаю, но что тебе мешало вбить в гугл, не знаю, "String java"?
docs.oracle.com

16 Мар, 15:26 #308 #689758

>>689521
Будет летать на пекарне 10+ летней давности. Не говоря уже про Raspberry.

16 Мар, 15:44 #309 #689764

>>689740
rt.jar
Прямо у тебя на компьютере. Или прямо в ide кликни по стрингу.

16 Мар, 15:45 #310 #689765

Сап, джаваны.

Итак, вопрос уровня laba1:
Нужно реализовать систему персональных сообщений. Как это делают белые люди? Знаю про JMS, ActiveMQ и няшнописечные спринговые обвязочки, но знаю крайне поверхностно. Допустим, оно позволяет слать сообщения в каналы вида allo:eba:etoti, можно всю эту радость гонять на вебморду через STOMP. Но, бля, в туториалах захардкожены имена каналов в аннотациях, а мне надо слать конкретным юзерам. Что мне делать? Обзывать каналы айдишниками юзеров(ок, ок, какими-то токенами, генерёнными из айдишников, чтобы типа секурно)? Или подскажете какую-то модную-молодёжную технологию для таких вещей?

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

Ответы>>690254

16 Мар, 15:52 #311 #689774

>>689495
Не уверен, что правильно тебя понял, но посмотри может это? - https://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html

16 Мар, 15:56 #312 #689780

Часто встречаю упоминания о том, что Scanner лучше не импользовать, чому так? Если мне нужно тупо прочитать файл построчно, нахуй мне ебаться с BufferedReader?

Ответы>>689871

16 Мар, 16:04 #313 #689783

Чем отличается Java SE, Java ME и Java EE своими простыми словами?

Ответы>>689786>>689789

16 Мар, 16:08 #314 #689786

>>689783
Язык ничем не отличается. Просто различные обвязы для разных задач. МЕ - мобилы (сдохло). ЕЕ - жырный ынтерпрайз.

Ответы>>689790

16 Мар, 16:11 #315 #689789

>>689783
JavaME - кастрированная хуитка под холодильники. Не нужна.
JavaSE - собственно джава, JVM там, JCL, все дела.
JaveEE - набор спецификаций для ЭНТЕРПРАЙЗНЫХ СЕРВЕРОВ. Вариантов реализации овердохуя. В современном джавамирке ты скорее всего ЭНТЕРПРАЙЗНЫЙ СЕРВЕР не увидишь, но используемые в проекте фреймворки будут реализовывать куски J2EE

А вообще, это всё была сановская маркетинговая хуитка, забудь про неё.

Ответы>>689791>>689827

16 Мар, 16:11 #316 #689790

>>689786
А SE это стандарт?

16 Мар, 16:12 #317 #689791

>>689789
Все, понял, спасибо.

35 Кб, 396x327

16 Мар, 16:33 #318 #689802

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

Ответы>>689804>>689805>>689817>>689834

16 Мар, 16:34 #319 #689804

>>689802
>jaaaaava
Просто напиши при инциализации br = null;
А еще лучше используй try with resources

Ответы>>689808

16 Мар, 16:36 #320 #689805

>>689802
Если ссылка не инициализирована, она не является null. Она просто пустая.

Ответы>>689808

16 Мар, 16:37 #321 #689808

>>689804>>689805
Что-то я даун немного, спасибо.

16 Мар, 16:44 #322 #689814

Вопрос на засыпку, кто-нибудь пользуется типа byte, short, чтобы сэкономить несколько бит памяти, или это все нужно было делать в старые времена, когда машины были слабые?

Ответы>>689827

16 Мар, 16:49 #323 #689817

>>689802
Кстати нет слухов, что в Java N+1 отменят чекед исключения (хотя бы через флаг jvm)?

Ответы>>689819

16 Мар, 16:50 #324 #689819

>>689817
В Kotlin вот уже отменили (с самого начала).

Ответы>>689820>>689824

16 Мар, 16:51 #325 #689820

>>689819
Нахуй нужен котлин, когда есть джава?

Ответы>>689821

16 Мар, 16:52 #326 #689821

>>689820
Нормальные дженерики, более удобные лямбды, куча сахара, null-safety.
Отлично сочетается в одном проекте с самой джавой и позволяет переписывать громоздкие куски в небольшие и читабельные.

Ответы>>689825

16 Мар, 16:56 #327 #689824

>>689819
Это то я знаю, сам уже перекатился.
Мне про java интересно, ведь ChEx это же бред и даже на уровне байткода их нет.

16 Мар, 16:57 #328 #689825

>>689821
>Нормальные дженерики
В статических методах не способных на интеграцию с жавой. Просто побаловаться.

Ответы>>689832

16 Мар, 16:59 #329 #689827

>>689814
Это нужно для Java ME, см. >>689789

Ответы>>689829>>689832

16 Мар, 17:02 #330 #689829

>>689827
Байты не только та мнужны, не надо тут

16 Мар, 17:06 #331 #689832

>>689825
Ты наверное хотел сказать inline методах, в остальных местах там java-совместимые дженерики.

>>689827
Android (с 3.0) к хранит в byte[] картинки, что бы они были в области управляемой кучи.

Ответы>>689896

16 Мар, 17:08 #332 #689834

>>689802
Кстати, стоит ли в таких ситуациях использовать do while? С одной стороны, это логично, с другой - он мне вообще не особо нравится, какой-то он, кхм, не интуитивный что ли.

Ответы>>689835

16 Мар, 17:12 #333 #689835

>>689834
В таких ситуациях следует подумать, не написал ли ты хуйню. У тебя цикл бесконечный. Если line изначально не было null, то оно будет, не меняясь, бесконечно печататься. Ты же не считываешь следующую строку.

Ответы>>689837

16 Мар, 17:15 #334 #689837

>>689835
Очевидно, что в цикле считывается следующая строка, я просто забыл это дописать.

Ответы>>689838

16 Мар, 17:18 #335 #689838

>>689837
Обычно делают так:

while ((line = br.readLine()) != null) {
что-то
}

Ответы>>689854

16 Мар, 17:23 #336 #689854

>>689838
А в общем случае, если мы не файл читаем, а что-то другое делаем, и нам нужно, чтобы цикл выполнился минимум один раз?

Ответы>>689855>>689856

16 Мар, 17:24 #337 #689855

>>689854
Тогда - почему бы и нет? Его, фактически, для этого и сделали.

16 Мар, 17:25 #338 #689856

>>689854
Одноразовый цикл это if.

16 Мар, 17:48 #339 #689871

>>689780
Если построчно то вот ващет решение https://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#readAllLines(java.nio.file.Path, java.nio.charset.Charset)

Ответы>>689876

16 Мар, 17:52 #340 #689876

>>689871
>It is not intended for reading in large files.

Ответы>>689881

16 Мар, 17:54 #341 #689881

>>689876
laba1.txt насколько большой?

16 Мар, 18:12 #342 #689896

>>689832
Они java-совместимые, и по этом они не являются нормальными, точнее они такие к каким мы привыкли, а не обвязанные сишарповскими изъебами.

Ответы>>689912

16 Мар, 18:37 #343 #689912

>>689896
А что ты хочешь?, в C# есть поддержка дженериков на уровне байт-кода, в отличие от java.

Тут и получается что нужные сделанные с нуля свои (несовместимые с java) дженерики.
Но от этого появилась бы куча лишних багов в компиляторе и огромный рантайм.
Они так и планировали, но потому передумали и оставили только в inline.

Ответы>>689921

16 Мар, 18:44 #344 #689919

>К сожалению, мы пока не готовы сделать Вам предложение. Мы могли бы взять Вас на позицию Junior-разработчика, но пока у нас таких позиций нет - на прошлой неделе закрылась последняя.
>Если таковые появятся, я буду держать Вас в курсе.
Мде, программирование в блокноте и определение длины поезда не взлетело. Пиздец, конечно, хочется уже человеком себя почувствовать, когда тебе поступает оффер и ты думаешь, стоит ли идти в эту контору или нет. А на деле на тебя смотрят как на говно и даже если собеседование проходит в стиле "дрочи мой код себе в рот, я знаю, ты любишь отсасывать" ты всё равно думаешь, мол, бля, ну может они меня хоть за еду возьмут, а? Впрочем, это не имеет значения, потому что в конце тебе всё равно проводят вялым по губам. Пойду вскроюсь нахуй тестовое задание в RoI пилить.

Ответы>>689941

16 Мар, 18:46 #345 #689921

>>689912
Ну так зачем говорить о нормальных дженериках? Хотя вообще не понимаю прелести сишарповских, кроме того что можно без проблем сделать new T[100500]; Это же можно сделать через class, только и нужно его выхватить. А вообще такая зависимость от дженериков - от плохих решений.

Ответы>>689955

16 Мар, 19:02 #346 #689941

>>689919
А почему так происходит? Ты мало знаешь? Мало умеешь?

Ответы>>689957

16 Мар, 19:08 #347 #689954

Где можно про gui почитать?

16 Мар, 19:09 #348 #689955

>>689921
нету - значит и не нужно.

16 Мар, 19:11 #349 #689957

>>689941
В том, что джуны не нужны. Зачем брать человека, учить его и платить за это деньги, если можно взять сразу с опытом. Ну и, очевидно, мало знаю.
А вообще - мистика. Аж на позапрошлой неделе был в одной конторе, дали 3 даунские задачи в стиле "сделайте вставку в начало списка", которые я очевидно решил верно хотя бы из-за того, что ошибиться в них нереально. И что? И нихуя, даже не перезвонили. Самому им позвонить, что ли.

Ответы>>689962>>691192

16 Мар, 19:14 #350 #689960

Ананасы, а число "32.0" это int или float?

Ответы>>689961>>689970

16 Мар, 19:15 #351 #689961

>>689960
Ну Integer.parseInt об нее сломается, а вот float и double - нет.

16 Мар, 19:15 #352 #689962

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

Ответы>>689965

16 Мар, 19:17 #353 #689965

>>689962
Тырпрайз.

Ответы>>689987

16 Мар, 19:26 #354 #689970

>>689960
с кавычками строка, без кавычек double

16 Мар, 19:49 #355 #689987

>>689965
А что в этом прайзе вообще есть? Чем вы там занимаетесь все? Я просто себе слово "энтерпрайз" ассоциирую с высокими небоскребами и офисами, которые заполоняют куча одинаковых людей.

Ответы>>690020

16 Мар, 19:57 #356 #689998

В чем разница между | и ||?

Ответы>>690020

16 Мар, 20:23 #357 #690020

>>689998
гуглится
>>689987
тырпрайз считай фреймворк для высоконагруженных приложений.

Ответы>>690114

16 Мар, 20:58 #358 #690071

Надо сгенерировать 100 рандомных чисел и записать их в таблицу, как это сделать? В гуглах только как пихать с бд есть.

Примерно так, но этот говнокод не работает
for (int i = 1; i < 100; i++){
table.setModel(new DefaultTableModel(
new Object[][] {
{i, Math.random()},

},
new String[] {
"kek","lol"
}
));
}

Ответы>>690086>>690088

16 Мар, 21:05 #359 #690086

>>690071
никак

16 Мар, 21:12 #360 #690088

>>690071
Что ты называешь таблицей? Ты короче хуйню какую-то делаешь, ставишь табличку в цикле, вместо того что бы заполнить и вообще.

16 Мар, 21:34 #361 #690114

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

Ответы>>690119>>690173>>690305

16 Мар, 21:39 #362 #690119

>>690114
Проиграл.
Ты там вскрываться не собираешься?

Ответы>>690175

16 Мар, 22:22 #363 #690173

>>690114
это типа оскорбление было

16 Мар, 22:24 #364 #690175

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

Ответы>>690263

JOP 16 Мар, 22:24 #365 #690177

Sup, зкач.
Прочитал почти половину Эккеля, башка уже не переваривает RTTI. Думаю потом вернусь.
Что можно почитать о фреймворкам, какие фреймворки для чего нужны, какие уже устарелы и т.п. Менять буквы в строках на codingbat уже заебало. Хочется начать что-нибудь реальное и учиться уже по ходу. Или надо все-таки сначала Эккеля дочитать?

Ответы>>690182>>690183

16 Мар, 22:30 #366 #690182

>>690177
Читани Spring in Action, нормальная тема.

Ответы>>690188

16 Мар, 22:30 #367 #690183

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

16 Мар, 22:36 #368 #690188

>>690182
>Spring in Action
Спасибо, читану. Спринг, как я понял, универсальный фреймворк для тырпрайза?

Ответы>>690190

16 Мар, 22:38 #369 #690190

>>690188
Что-то около того. Только читани сразу последнее издание.

Ответы>>690194

16 Мар, 22:41 #370 #690194

>>690190
Ок. Что-нибудь еще кроме Эккеля нужно для понимания книги?

Ответы>>690199

16 Мар, 22:47 #371 #690199

>>690194
Зависит от тебя.

Ответы>>690212

16 Мар, 22:58 #372 #690212

>>690199
Реролл!

16 Мар, 23:29 #373 #690254

>>689765
AMQ позволяет очереди динамически создавать, я думаю. Обратиться к конкретной ты сможешь по селектору.
Хотя зачем тебе именно очереди сообщений я не представляю.
Я бы просто при отправке клиентом мессаги скидывал серверу, а другие клиенты периодически опрашивали бы сервак на наличие новых сообщений.
KISS bro!

Ответы>>690257

16 Мар, 23:30 #374 #690257

>>690254
Я бы взял mqtt. Совсем изич.

16 Мар, 23:32 #375 #690263

>>690175
джуниор - думает, что знает
мидл - думает, что не знает
сениор - похуй

17 Мар, 00:00 #376 #690305

>>690114
Двачую этого ПОЗНАВШЕГО ИСТИНУ. В приличных местах за баззворды опыт хайлоад разработки обычно бьют в морду.
А некоторые синиоры с 5 годами на деле макаки которые круды ебашили 5 лет или на багфиксе сидели.

21 Кб, 935x392

17 Мар, 00:16 #377 #690322

Аноны, почему мое число округляется?

Ответы>>690324

17 Мар, 00:18 #378 #690324

>>690322
9/5 - целочисленное значение, так как в делении участвуют два целых числа.
9d/5, например, починит. Или скобки местами поменяй.

Ответы>>690351

17 Мар, 01:05 #379 #690351

>>690324
Намек понял, починил при помощи добавления нулевого остатка. Про "d" пока еще не прочитал.

Ответы>>690352

17 Мар, 01:06 #380 #690352

>>690351
То есть, не нулевого остатка, а нуля после точки, вот.

17 Мар, 01:18 #381 #690360

Слышал, что AWT и Swing тут не любят. А какие у них есть годные альтернативы-то?

Ответы>>690369>>690370>>690499

17 Мар, 01:26 #382 #690369

>>690360

17 Мар, 01:26 #383 #690370

>>690360
А нету альтернатив.

Ответы>>690404

17 Мар, 01:31 #384 #690371

Анон, в шапке ссылка на учебник по SQL битая, подскажи название

Ответы>>690499

Proxy 17 Мар, 01:36 #385 #690376

Поясните за прокси, я совсем запутался.

Вот код: http://pastebin.com/1hWH78n6 (из книжки Хорстманна).

Класс TraceHandler - это обработчик вызова, который определяет, какой метод вызывается + какие-то параметры.

Object proxy = Proxy.newProxyInstance(null, new Class[] { Comparable.class } , handler);
Собственно здесь и создается эта прокси(Класс который она определяет - Comparable, но это же интерфейс, или сюда помещается какой-то рандомный класс, который реализует Comparable? ???).

elements = proxy;
Здесь элементу массива(Object) присваивается объект прокси. Но происходит ли при это cast в Comparable? Или в какой-то абстрактный класс, который реализует Comparable?

Где вообще эти прокси применяются? Сам Хорстманн вот что пишет: You can use a proxy to
create, at runtime, new classes that implement a given set of interfaces. Но когда в рантайме может понадобиться прокси и что вообще такое рантайм в джаве?

Ответы>>690457>>690499

17 Мар, 02:10 #386 #690404

>>690370
Не верю!

Ответы>>690455

17 Мар, 07:22 #387 #690455

>>690404
http://griffon-framework.org/
Есть какой-то гриффон, на котором можно писать графические приложения, попробуй его, потом скажешь норм он или не норм.

17 Мар, 07:24 #388 #690457

>>690376
оставь на потом, рефлексия не особо нужная вещь в жабе. а там, где нужна это делают фреймворки.

74 Кб, 596x380

17 Мар, 08:51 #389 #690472

>>687417 (OP)
Сап двощ, нужно запилить очередь, в которую накидываются входные данные. Когда входные данные помещены в очередь, она возвращает уникальный айди. и 4 потока их асинхронно вытягивает, вычисляет результат и кладет в бд. Можно проверять состояние операции, и если она завершена успешно, вытащить результат из бд по уникальному айдишнику.
Сам уже придумал реализацию, но интересно твое мнение. Какие паттерны/классы из стандартной библиотеки ты бы использовал? Java 1.6

17 Мар, 09:50 #390 #690499

>>690360
JavaFX
>>690371
sql-ex.ru достаточно
>>690376
Вся суть описана в той цитате из Хорстмана, что ты привел. Подаешь на вход список интерфейсов - на выходе получаешь объект, который реализует все их (просто кастишь к любому из них и все сработает).
Рантайм - время, когда программа работает. В компилируемых языках, как Джава, есть ещё compile time (время компиляции).

17 Мар, 10:35 #391 #690531

Как компилить приложухи без консоли, объясните нуфагу.

Ответы>>690536>>690548

17 Мар, 10:38 #392 #690536

>>690531
Но зачем?

Ответы>>690541

17 Мар, 10:42 #393 #690541

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

Ответы>>690542>>690545

17 Мар, 10:44 #394 #690542

>>690541
Так иде тебе на что?

17 Мар, 10:48 #395 #690545

>>690541
> программисты из /б/
Ха-ха.

17 Мар, 10:54 #396 #690548

>>690531
Все просто.
Описываешь сборку проекта в maven/gradle/ant/sbt.
Делаешь git/mercurial/svn/perforce репозиторий для своего проекта.
Сетапишь nexus/artifactory для хранения сбилдженных артефактов.
Настраиваешь jenkins/teamcity, чтоб они автоматически билдили проект по пушу в репозиторий и заливали артефакт в несксус/артифактори. Если веб-приложение - то еще и деплоить само может.
Итого, делаешь изменение, пушишь, а через несколько минут получаешь готовое приложение. Красота!

17 Мар, 11:48 #397 #690572

Котоны, расскажите что Ява умеет делать по-настоящему крутого, что в перспективе сможет полностью убить плюсы.
Знаю, что одно из последних достижений - это сбор статистики вызова методов и их автоматический инлайнинг в рантайме.
Нужно провести исследование и составить заявку в комитет, чтобы в плюсы добавили реальные фичи, а не уродских клонов буст::асио и буст::файлсистэм.
Иначе в скором будущем упадут и наши зарплаты и ваши, т.к. крестобляди перекатятся в Яву и составят вам неслабую конкуренцию.

Ответы>>690578>>690579

17 Мар, 12:14 #398 #690578

>>690572
Ты из какого года? В большинстве областей кресты с явой сравнивать вообще нельзя, никак.

17 Мар, 12:15 #399 #690579

>>690572
> одно из последних достижений - это сбор статистики вызова методов и их автоматический инлайнинг в рантайме.
JIT в сановской джаве с 98-го года.

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

> крестобляди перекатятся в Яву
Ахаха.

Ответы>>690669

17 Мар, 14:24 #400 #690669

>>690579
>Ахаха.
Чё, памятью управлять не надо. С битами, байтами и перформансом трахаться не надо. Да и кому нужна оптимизация производительности на современных и7...
Ну а интрерфейсы 2-3 сотен классов любой зазубрить может.

Что такого есть в Яве, чего не сможет осилить среднестатистический советский проектировщик самолётов инженер или школьник, умеющий решать квадратные уравнения?

Ответы>>690675>>690680>>691126

17 Мар, 14:27 #401 #690675

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

Ответы>>690689

17 Мар, 14:35 #402 #690680

>>690669
> Чё, памятью управлять не надо. С битами, байтами и перформансом трахаться не надо. Да и кому нужна оптимизация производительности на современных и7...
Вот потому крестобляди и не перекатятся на яву.

Ответы>>690689

17 Мар, 14:49 #403 #690689

>>690675
>>690680
То есть вы не можете привести внятных аргументов почему средненький крестопетушок не сможет осилисть Яву?
И вы не боитесь, что тысячи плюсошлюх отнимут у вас работу?

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

>потому крестобляди и не перекатятся на яву
Значит они пойдут таксистами амфетамины и шлюх клиентам вдувать?

Ответы>>690693>>690780

17 Мар, 14:54 #404 #690693

>>690689
> почему средненький крестопетушок не сможет осилисть Яву?
Неправильный вопрос. Очевидно, сможет. Но не захочет. Да и не нужно ему это.

> Значит они пойдут таксистами амфетамины и шлюх клиентам вдувать?
Нет, будут дальше на крестах байты ебать.

149 Кб, 811x656

17 Мар, 14:56 #405 #690695

>>687417 (OP)
Нубейший вопрос, можно?
Как мне откомпилировать и запустить это?
http://tim.hibal.org/strolen/times_ultra_new_roman/times_ultra_new_roman_java.zip
сделал
javac *
в каталоге с распакованными сорцами, появились два файлика .class
Потом пытаюсь выполнить
java Main
И нифига.
Хальп плиз!

Ответы>>690704>>690707

17 Мар, 15:00 #406 #690704

>>690695
Нифига всмысле пустой экран или нифига всмсле ошибка? Если первое, то а что ты ожидал собственно увидеть?

17 Мар, 15:00 #407 #690707

>>690695
java alientextgenerator.Main

Ответы>>690709>>690727

17 Мар, 15:01 #408 #690709

>>690707
Error: Could not find or load main class alientextgenerator.Main

Ответы>>690732>>690744

17 Мар, 15:14 #409 #690727

>>690707
Не шути так, кек.

17 Мар, 15:15 #410 #690732

>>690709
Ты не в той папке вызываешь java. Не лезь в папку с Main.class, будь там, где лежит alientextgenerator.

17 Мар, 15:29 #411 #690744

>>690709
Открываешь код, видишь в первой строке "package alientextgenerator;"

~/tmp> mkdir alientextgenerator
~/tmp> cp .java alientextgenerator
~/tmp> javac alientextgenerator/.java
~/tmp> java alientextgenerator.Main
~/tmp> ls -l
total 56
drwxrwxr-x 2 anon anon 4096 Mar 17 14:22 alientextgenerator/
-rw-rw-r-- 1 anon anon 48007 Mar 17 14:22 C:\Users\Tim\Desktop\example_sentence.png

Ответы>>690748>>690761>>690769

17 Мар, 15:29 #412 #690748

>>690744
Тупая макаба снова съела звездочки

17 Мар, 15:46 #413 #690761

>>690744
Спасибо, анон.

17 Мар, 15:54 #414 #690769

>>690744
Хохол в треде!

57 Кб, 572x600

17 Мар, 16:02 #415 #690778

17 Мар, 16:02 #416 #690780

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

17 Мар, 19:01 #417 #690900

Вы все куда-то перекатились, что ли?

Ответы>>690908

17 Мар, 19:16 #418 #690908

>>690900
Ага, в кресты.

394 Кб, 1200x1758

17 Мар, 19:27 #419 #690915

Что-то треды про java в бамп-лимит скатываются. Это сезонное обострение?

Ответы>>690932>>690936

17 Мар, 19:51 #420 #690932

>>690915
Что за непристойности на пике, лол?
Ответь-ка мне лучше на вопрос.

Есть такой-то код:
Calculator(){
winContent = new JPanel();
GridBagLayout gb = new GridBagLayout();
this.setLayout(gb);

Идея ругается на this, не может решить метод. Хотя в книжке для бегиннеров именно так написано. Хочу как можно лучше понять этот момент. В прошлых штуках тоже рукался, но я их как-то фиксил. Юзаю 8 версию джавы.

Ответы>>690967

17 Мар, 19:56 #421 #690936

>>690915
>notice me, senpai

479 Кб, 1200x1745

17 Мар, 20:33 #422 #690967

>>690932
Может ты не относледовался от какого-то класса(Jframe), и он у тебя метод не видит. Как я могу подсказывать по 3 строчкам, кидай все.

Ответы>>690972>>690984

17 Мар, 20:41 #423 #690972

>>690967
>не относледовался от какого-то класса(Jframe)
Хм, странно, в книжке об этом не говорится. Благодарю.

17 Мар, 20:55 #424 #690984

>>690967
моар

17 Мар, 21:03 #425 #690991

Интересно, тут есть вообще люди, которые используют Java не для вебовских дел? Это пиздец какой-то.

Ответы>>691007>>691025>>691041>>691394>>691767

17 Мар, 21:13 #426 #691007

>>690991
А для чего еще использовать?

Ответы>>691069

17 Мар, 21:21 #427 #691025

>>690991
Есть. 90% времени пишу мапредьюсы, 10% - REST для доступа к результатам.

Ответы>>691069

17 Мар, 21:26 #428 #691041

>>690991
Привет, пишу на JavaME в 2016 году.

Ответы>>691061>>691069>>691090>>691113

17 Мар, 21:37 #429 #691061

>>691041
К нам на первом курсе(1.5 года назад) приходили разрабы игорей для старых телефонов, говорили что работы много, учите джаву.

Ответы>>691080

17 Мар, 21:43 #430 #691069

>>691007
>>691025
>>691041
А что тогда учить-то, чтобы не делать что-то для веба? Ненавижу веб.

Ответы>>691076

17 Мар, 21:48 #431 #691076

>>691069
Учи SOAP и веб покажется сказкой

Ответы>>692002

17 Мар, 21:51 #432 #691080

>>691061
А как ты там разрабатываешь, вот есть у меня старый телефон нокия аша, джава там точно есть, как с ней что-то сделать?

Ответы>>691109>>691113

17 Мар, 21:58 #433 #691090

>>691041
Под что пишешь? Телефоны или что-то другое?
У нас в бодишопе еще год назад был проект на J2ME для автомобильных хед-юнитов, ты не в этой же сфере?

Ответы>>691107

17 Мар, 22:07 #434 #691107

>>691090
http://www.tc65.ru и всякие аналоги. Дрянь, короче. Такое ПО, как у нас, на сях надо писать.

17 Мар, 22:08 #435 #691109

>>691080
Не знаю, я не умею в джаваМЕ

Ответы>>691113

17 Мар, 22:09 #436 #691113

>>691109
Я промахнулся
Это >>691080 сюда >>691041

17 Мар, 22:21 #437 #691126

>>690669
ооп-паттерны
>Чё, памятью управлять не надо.
Ну это пока утечку не получил. А там заглядываешь под капот и громко материшься.

Ответы>>691128

17 Мар, 22:23 #438 #691128

>>691126
Как раз сегодня подвисшее говно в очередях находили, ага.

Ответы>>691133

17 Мар, 22:29 #439 #691133

>>691128
Причем здесь утечка памяти?

Ответы>>691135

17 Мар, 22:33 #440 #691135

>>691133
То, что там некое говно осталось бы навечно. И копилось, копилось, копилось.

Ответы>>691146

17 Мар, 22:45 #441 #691146

>>691135

List<Integer> l = new ArrayList<>();
while (true) l.add(0);

Это тоже по-твоему утечка памяти?

Ответы>>691182

17 Мар, 23:33 #442 #691182

>>691146
Рано или поздно вывалится OutOfMemoryError. Утечкой, конечно, это сложно назвать, т.к. тут намеренно происходит наполнение коллекции без удаления. Утечка -- это когда ресурс, от которого по наступлению некоторого условия, ожидают освобождения занятой памяти, не освобождает её.

Ответы>>691194

17 Мар, 23:43 #443 #691192

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

Затем, что если не брать, то через несколько лет отрасли пизда.

17 Мар, 23:46 #444 #691194

>>691182
Это не утечка памяти - не подменяй понятия.

Ответы>>691197

17 Мар, 23:48 #445 #691197

>>691194
Дай академическое определение утечки в таком случае.

Ответы>>691215

18 Мар, 00:10 #446 #691215

>>691197
https://en.wikipedia.org/wiki/Memory_leak

Ответы>>691249

18 Мар, 00:19 #447 #691221

Работаю неделю на джуниорской должности, еще не оформляли трудовую книжку, даже еще паспорт не спрашивали, каков шанс что меня пидорнут и не заплатят? И как вообще происходит устройство на работу? Когда начнет бежать этот мифический "опыт"?

Ответы>>691227

18 Мар, 00:26 #448 #691227

>>691221
Кто ж его знает какой шанс? Как повезет. Если ты устроился в какую-то шарагу, то это твои проблемы.

18 Мар, 00:58 #449 #691249

>>691215
По этому определению в яве вообще нет мемориликов. Однако формальное отсутствие мемориликов тебе не поможет отслеживать и лечить эти ситуации http://zeroturnaround.com/rebellabs/rjc201/

Ответы>>691255

18 Мар, 01:06 #450 #691255

>>691249
Формально их нет, если это чистая Java без вызова нативного кода или не баг JVM. Ты говоришь о Resurce Leak, частный случай которго - Memory Leak. Утечку ресурсов я тебе легко нарисую.

18 Мар, 08:14 #451 #691362

Как подтвердить свою профпригодность по java, если ты зелень? Слышал, есть какие-то сертификаты. Java ведь промышленно-ориентированный язык, значит, точно должно быть что-то официальное.

Ответы>>691366

18 Мар, 08:33 #452 #691366

>>691362
Есть OCA и OCP. Хорошие сертификаты если хочешь доказать что ты можешь работать компилятором и у тебя много денег.

sage 18 Мар, 09:37 #453 #691394

>>690991
>>688682

Ответы>>691414>>691425

18 Мар, 10:05 #454 #691414

>>691394
Слушай, убери уже сажу, некрасиво же.

Ответы>>691744

18 Мар, 10:45 #455 #691425

>>691394
Это понятно, я для себя программы тоже пишу на Джаве, а вот чтобы деньги на этом зарабатывать в промышленных масштабах есть сисярп. А Джава-то для чего? Для ведроида? Для сокетов ебаных? Холодильнички прошивать?

Ответы>>691432>>691445>>691451

18 Мар, 10:58 #456 #691432

>>691425
Иди в одноклассники, там весь бэкенд на Java.
Вообще у огромной кучи контор бизнес построен на Java (к примеру IBM).

Ответы>>691436

18 Мар, 11:00 #457 #691436

>>691432
>IBM
А что сразу не Гугл?

Ответы>>691464

18 Мар, 11:09 #458 #691445

>>691425
>сисярп
Не все конторы желают быть анальным партнёром майкрософта.

18 Мар, 11:12 #459 #691451

>>691425
Зачем нужен Шарп, если не для вэбовских дел? Формошлепство? На дворе 2016 год так-то.

Ответы>>691456

18 Мар, 11:21 #460 #691456

>>691451
Да пошел ты нахуй, скоро на асме будем для веба писать.

18 Мар, 11:32 #461 #691464

>>691436
Тебе говорят бизнес. Сервера и софт они продают для джава-приблуд, а также курсы по подготовке джаваиндусов.

18 Мар, 11:54 #462 #691479

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

Ответы>>691481

18 Мар, 11:59 #463 #691481

>>691479
И еще хотелось бы реализовать графическое поле, где можно было, к примеру, поставить подпись. Такое можно?

assert 18 Мар, 13:00 #464 #691524

Помогите разобраться с оператором контроля assert.

Вот что пишет Хорстманн:

• Assertion failures are intended to be fatal, unrecoverable errors.
• Assertion checks are turned on only during development and testing.

Что он подразумевает под фатальными, неисправными ошибками?
Во втором пункте он говорит про разработку, то есть код выходит в продакшн без использования assert?

Часто ли вы используете assert в своих программах?

Ответы>>691535>>691540>>691544>>691557

18 Мар, 13:08 #465 #691535

>>691524
Нахуй ты его читаешь? Он недостоин даже печати.

Ответы>>691570>>691572>>691982>>692257

18 Мар, 13:11 #466 #691540

>>691524
Двачую вопрос, сам не использую, но интересно не настолько что бы гуглить:
1) как это выглядит в байт-коде
2) как включаются/отключаются эти ассеты (флаг какой для HostSpot или как)?
3) что там в Android?

18 Мар, 13:13 #467 #691544

>>691524
> под фатальными
То что после них программа умирает.
> в продакшн
Да, assert это отладочный инструмент.

18 Мар, 13:14 #468 #691546

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

Ответы>>691586

18 Мар, 13:23 #469 #691557

>>691524
> Во втором пункте он говорит про разработку, то есть код выходит в продакшн без использования assert?
Да. Код для компилится с флагом, отключающим ассерты, так что их даже в байткоде не будет.

> Часто ли вы используете assert в своих программах?
Ни разу не видел.

18 Мар, 13:25 #470 #691561

Пиздец, позвонил в контору, где собеседование проходил, говорю, я у вас был две недели назад, делал тестовое задание, когда какой-нибудь фидбек будет уже. ОЙ, А ЕЩЁ НЕ ПРОВЕРИЛИ, Я ВОТ ИМ ГОВОРИЛА, ЧТО ЛЮДИ ЗВОНЯТ ПОСТОЯННО, СПРАШИВАЮТ, НО ВРЕМЕНИ НА ПРОВЕРКУ НЕТ, ПОСТАРАЮТСЯ В БЛИЖАЙШЕЕ ВРЕМЯ. Нахуй так жить, там же на проверку одного задания от 2 до 5 минут нужно.

Ответы>>691574

18 Мар, 13:31 #471 #691570

>>691535
Нравится - читаю.

А кого ты посоветуешь?

18 Мар, 13:33 #472 #691572

>>691535
Достоин. Ты пидор.

18 Мар, 13:33 #473 #691574

>>691561
Если есть ещё варианты, то шли такую конторку подальше.

18 Мар, 13:43 #474 #691586

>>691546
Скинул тебе за щеку няша.

https://stepic.org/course/Разработка-веб-сервиса-на-Java-(часть-1)-146/

https://stepic.org/course/Разработка-веб-сервиса-на-Java-(часть-2)-186/

Ответы>>691611>>691622

18 Мар, 13:50 #475 #691599

Реквестирую пикчу-сравнение языков и людей, которые на них пишут.

18 Мар, 13:58 #476 #691611

>>691586
Спасибо, ананас.
Пиздец, я думал, что перекатившись на Java, я перестану лицезреть лица мерзких людей, как это было в PHP, но не тут-то было, опять какие-то жиробасы уродливые, но все-таки лучше сальноволосых девственных истеричных школьников на пыхе.

Ответы>>691618

18 Мар, 14:02 #477 #691616

Реквестирую внятный и короткий гайд по многопоточности нет, не уровня "как запустить поток", нужно запилить простенький пул на 10 потоков.

Ответы>>691621

18 Мар, 14:03 #478 #691618

>>691611
Это курсы от мейл.ру, а сам препод писал сервак для аллодов. Так что выводы делай сам. А еще он шатается, как алкаш.

18 Мар, 14:07 #479 #691621

>>691616
Executors.newFixedThreadPool(10);

Ответы>>691661

18 Мар, 14:07 #480 #691622

>>691586
Если решите смотреть, то рекомендую увел

Ответы>>691626

18 Мар, 14:08 #481 #691626

>>691622
Увеличить скорость. Ненавижу писать с телефона

Ответы>>691647

18 Мар, 14:29 #482 #691647

>>691626
Хорошо, няша, посмотрю.

18 Мар, 14:40 #483 #691661

>>691621
Ох ты ж, и правда работает, никогда бы не подумал, что всё настолько просто, спасибо.

18 Мар, 14:53 #484 #691672

Нужно в соснольном приложении постоянно проверять фолдер на появление новых файлов. Это нормально, что я делаю бесконечный цикл, sleep на 5 секунд, а потом сканирую фолдер на наличие новых файлов? Или у белых людей такие задачи решаются как-то иначе?

Ответы>>691674

18 Мар, 14:58 #485 #691674

>>691672
https://docs.oracle.com/javase/tutorial/essential/io/notification.html
Или так или методами ОС.

Ответы>>691777

sage 18 Мар, 16:10 #486 #691744

>>691414
>некрасиво
В каком смысле? Сажа - такой инструмент, позволяющий не бампать тред, когда это не нужно. Я никакой негативный подтекст в эту галочку не закладываю.

Ответы>>691745

18 Мар, 16:17 #487 #691745

>>691744
Ты, видимо, сюда не раньше 2013 года пришел.

Ответы>>691747

sage 18 Мар, 16:22 #488 #691747

>>691745
Если "сюда" - всмысле на борды, то я со времён Педалика тут.
Если - в pr - таки да, я тут почти не бывал. У вас тут какие то свои традиции по этому поводу? Или у вас тут такая скорость постинга, что треды с сажей тонут до бамплимита?

Ответы>>691766

18 Мар, 17:02 #489 #691766

>>691747
Лол, и если ты сидишь тут со времен Августины, то почему ты не знаешь, что сажа - это выражение отношения к треду.

18 Мар, 17:07 #490 #691767

>>690991
Мне нравится дескопные приложухи на жаве писать. Но ща занят с другим кое-чем. А так ботов пописать, формочки постилизовать - круто же.

18 Мар, 17:32 #491 #691777

>>691674
Спасибо, охуенно.
А как вообще работает WatchService? В смысле, как он получает оповещения о событиях?

Ответы>>691789

18 Мар, 17:57 #492 #691789

>>691777
Я б знал.

18 Мар, 18:19 #493 #691799

>erinnerung
Нахуй ты дойч с инглишем мешаешь?

18 Мар, 18:32 #494 #691811

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

Ответы>>691822

18 Мар, 18:49 #495 #691822

>>691811
Проиграл.

Ответы>>691854

18 Мар, 19:34 #496 #691854

>>691822
Что смешного?

18 Мар, 19:36 #497 #691857

Раньше читал книгу в которой автор на состой странице пояснял за наследование и виртуальные методы всегда используя класс box. У него были параметры он создавал объекты разные и в действии показал как наследование меняет размер коробки. Эта книга была первая в гугле. Напомните название.

Ответы>>691864

18 Мар, 19:44 #498 #691864

>>691857
Философия Java.

Ответы>>691872

18 Мар, 19:49 #499 #691872

>>691864
Вроде не то. Он ещё через слово заметки для тех что знает С++ делал.

18 Мар, 20:39 #500 #691930

Хм, подучиваю тут немного awt+swing, объясните чайнику, что означают термины "компонент" и "контейнер".
Как я это понимаю: контейнер это оболочка для компонента, а компонентом может быть все, что угодно: от кнопки до поля ввода. Правильно?

Ответы>>691934>>691935

18 Мар, 20:40 #501 #691934

>>691930
Да.

18 Мар, 20:41 #502 #691935

>>691930
А нет, не совсем.
Контейнер это оболочка для компонентов.

Ответы>>691937

18 Мар, 20:41 #503 #691937

>>691935
Если на собеседовании так ответить, то это ошибка?

Ответы>>691939

18 Мар, 20:43 #504 #691939

>>691937
На собеседовании у тебя этого не будет.
если всё-таки будет, то вряд ли. Главное чтобы ты понимал истинное назначение. я просто уточнил для тебя. контейнер может оборачивать как один компонент, так и несколько. насчёт контейнер в контейнере хз. мои познания свинга ограничиваются универскими лабами

Ответы>>691951

18 Мар, 20:54 #505 #691951

>>691939
>насчёт контейнер в контейнере хз
Да хоть контернер -> контейнер (button, field) + контейнер (label, button, button);

В пакете карп в пакете, что называется.

18 Мар, 21:14 #506 #691964

чет прочитал главу про программирование графики на Swing первого тома Хорстманна и нихуя не понял про двумерные формы, где он рисовал эллипсы, прямоугольники, линии, окружности
про окрашивание в разные цвета несколько страниц, и про вывод изображения 1.5 страницы, на этом глава закончилась, можно перечитать и попытаться понять ещё раз
скажите, это ведь не критично?

Ответы>>691965>>691969

18 Мар, 21:14 #507 #691965

>>691964
Нет.

Ответы>>691972

18 Мар, 21:18 #508 #691969

>>691964
Если хочешь лучше понимать Swing, палю годноту быдлу:
Иван Портянкин - Swing. Эффектные пользовательские интерфейсы. Там все: от истории разработки до форм любой сложности. Автора хотя бы читать приятно, в сравнении с этим вашим Эккелем.

Ответы>>691982

18 Мар, 21:19 #509 #691972

>>691965
спасибо за ответ
а вообще понадобится мне Swing в 2016?
я слышал как анончики писали, что сейчас ГПИ программируют онли на Spring`e

Ответы>>691975

18 Мар, 21:20 #510 #691975

>>691972
Программируют-то на Спринге, а формы делают при помощи Свинга.

47 Кб, 604x343

18 Мар, 21:32 #511 #691982

>>691535
>>691969

18 Мар, 21:51 #512 #692002

>>691076
Да ты охуел.
мимо SOAP и UDDI девелопер

19 Мар, 00:22 #513 #692137

ПЕРЕКАТ: >>692136 (OP)
ПЕРЕКАТ: >>692136 (OP)
ПЕРЕКАТ: >>692136 (OP)
ПЕРЕКАТ: >>692136 (OP)
ПЕРЕКАТ: >>692136 (OP)

19 Мар, 09:41 #514 #692257

>>691535
Или предлагай свое, или не пизди.

Хорстман годный для нуба, ящитаю. Получше Шилдта намного. Но трудновато все укладывается. Я из Хорстмана дочитывал по некоторым темам. Есть еще годная у него книжка: Java concepts, вроде, называется.
Лучшие книги, чтобы читать, как по мне - Head First начал читать нулевым нубасом, хотел узнать, что такое класс)), охуел от картинок и ебанутых сравнений\объяснений, многабукаф, чтобы добраться до определения чего-то-там. Но потом дочитывал, все разжевано, схематизировано, объяснено. Если тему прочитал с этими комиксами и долбоебскими картинками - понял охуительно все. А примеры кода - просто супер. И очень интересные примеры. Их хочется набрать только затем, чтобы посмотреть, как такая охуительная прога будет работать.
В общем, я эту книжку читать начинал, но не стал продолжать. (Потому, что у меня уже был Харви Дейтель DD) Хотя, очень годно. Рекомендую всем стремящимся, кому необходимо, чтобы ему на пальцах объяснили, и Harvey Deytel - "Java, how to program" По ней занимался. На английском, но язык простой. (Хотя, я могу в английский, в словарь далеко не каждый день заглядываю.) Охуенно все объясняется. Примеры кода - супер. Каждая строчка кода, по-сути, объясняется дальше. Понимаешь все, перенимаешь стиль автора. А он охуенный препод, ящитаю. В конце каждой главы - резюме по теории, читаешь, повторяешь. Потом упражнения - это самая охуительная фишка. Сначала теорию проверяешь, как освоил. Потом задания делаешь, кодишь сидишь. Охуенно! Практически закрепляешь все.
В общем, по-большей части по Дейтелю я и освоил кор. Чего стремящимся анонам и советую.
Желаю тому анону, который рекомендовал Харви Дейтеля итт, многие перекаты назад, тонны добра, счастья, здоровья!

20 Мар, 14:24 #515 #693265

Посоны, нужно ли обычному java-погромисту изучать Кнута или есть более современные книги, содержащие необходимый материал?

Тред утонул или удален.
Это копия, сохраненная 10 апреля 2016 года.

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

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

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion