Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?
А: Нет, не поздно.
Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
Q: Что скажете за джавараш?
Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.
>>1308356 (OP) Занимаюсь энтерпрайзом и вебом. Посоветуйте книгу про архитектуру приложений, после прочтения которой мой скилл вырастет в несколько раз. Читал "Чистый код", "Экстремальное программирование", "Рефакторинг".
Пишу веб сервис на спринге, который дёргает ВК апи. Собственно иногда будет возникать задача сделать несколько тысяч запросов за раз, а у ВК есть частотное ограничение (25 запросов в секунду). Как решить это правильно? Сейчас методы, которые нужно вызвать складываются в очередь, а scheduled task 20 раз в секунду далает poll(), перед этим проверив, не пустой ли массив. И что-то мне подсказывает, что это еботня и решается эта задача не так, хотя этот костыль в принципе нормально отрабатывает.
>>1308360 Зачем запрещать ебанько? Во-первых опенсорс самой вм, во-вторых другие языки на вм двигают инновации и хорошее можно посмотреть и внести в саму джаву.
>>1308742 1. Пункт договориться с вк наверное маловероятен, все только тестится пока.
2. Принять, да. А как правильно реализовать очередь, выполняемую с задержкой? Уж больно этот > методы, которые нужно вызвать складываются в очередь, а scheduled task 20 раз в секунду далает poll(), перед этим проверив, не пустой ли массив. способ мне кажется костыльным. Или я ошибаюсь и это норм считается? Не хочется процессорное время на сервере впустую тратить и вообще совершать столько действий столько раз в секунду, ибо @Scheduled работает все время, когда запущен сервер.
>>1308748 погоди. сколько мегов-гегов не отпавляй, есть ограничение. так? или распредиилять их (потоки) или нет. по другому никак. но поять же. в онлайнах не бывало за стольник или 50 юзеров.
Есть разница? я сижу на линукс, тут опен ждк, не видел уроков под линукс, подойдут ли для меня уроки от тех кто сидит на винде? я пока не могу установить виндовс
>>1308927 Ты в начале пару лет поучись а потом уже про работку думай. Даже после профильного образования тебе там ВНИМАТЕЛЬНО читать штук 5 книг по 1000 страниц. Вот тебе первое задание: 1) Поставить линупс 2) Обмазаться консолью 3) Установить git 4) Вкурить мануал по гиту 5) Зарегистрироваться на гитхабе 6) Вкурить туториал по гитхабу 7) Каждый день зеленить гитхаб говном своим.
Если с этим не справишься за неделю то вайти не для тебя. Свободная касса макдака ждёт!
>>1309101 >Если тебе понадобилась пара лет, чтобы вкатиться на работу, у меня для тебя плохие новости Если анон на 2че такие вопросы задаёт то может и двух не хватит.
>>1308356 (OP) Привет, явики! Я тут хочу в котлиниться, но меня мучаеть один вопрос. Что пишут на Яве? Ну кроме приложух под андроид а ещё меня мучает вопрос, как игры не лагают на джаве? ведь там сборщик мусора и все дела. Что на джаве пишешь ты анон? И почему не использовал другой язык?
>Highload back-end. типа чтоб много пользователей сразу могло юзать веб-приложение? То что код на виртуалке и со сбощиком мусора не делает его медленнее? Как было в твоём опыте?
Поясните за яву, есть какие-нибудь стандарты? ну например, в с++ есть стандарты 99, 14, и т.д, и я беру книгу, ага, вижу она 2016 года затрагивает тот стандарт, а как быть в яве? я что хочу сказать, я нашел, например, старую книгу по яве 7, а яву 7 перестали поддерживать, как быть? не знаю, наверно не смогу выразить то что хотел, ночь, уже начал забывать что хотел то, не знаю стоит ли вообще отправлять этот пост, ну да ладно, если не трудно поясните
Может ли абстрактный класс не иметь абстрактных методов? хочу пиздануть абстрактный класс, чтоб никто не мог создавать еговшни инстанции, или это пиздец и растрельная статья в вашем этом жабном варианте ООП?
Ну допустим может. Короче, есть один абстрактный класс без абстрактных методов с полем representation и методом toString(). Вот:
public abstract class Foo{ static String representation = "?"; Foo(){} public String toString(){ return representation; } }
от него наследует класс Bar:
public class Bar extends Foo{ static representation = "#"; Bar(){} }
Как сделать, чтоб toString() на объектах Bar выдавал "#" ? Нужно ли будет обязательно перегружать toString()? Что-то как-то это ваше ООП больше морочит, нежели позволяет избегать повторения кода.
>>1309485 Серьёзно, как создать такое поведение, чтоб функциональность была в родителе, вроде "дёргай static поле с этим именем", а у детей только менять значения в полях?
>>1308744 Ты тоже можешь стать законодателем, выложи свой код стайл в веб и хвастайся всем. Есть ораклавский, есть гугловский, есть square и тд, может в каких-то тимах свои мутации.
>>1309374 Тут нормально с обратной совместимостью, редко брейкингченджи появляются. Просто в книге с семерйко ты не узнаешь новых фич которые появились в 8, 9, 10, 11 и вот уже почти 12.
>>1309624 А какие там "фичи" появились? Хипстерские СТРЕЛАЧКИ эти? Или уродливое стрим апи, которое к тому же тормозит как не знаю что? Или костыль Optional? Или модули, которые распидорасили половину библиотек?
Пацаны, вкатился на жавураш (не кидайте ссаными тряпками, там курс копейки стоит), есть вариант хотя бы джуном стать по окончании курса? Мимо 24 лвл гуманитарная вышка-кун
>>1310015 короче, чтобы устроится джуном тебе кроме твёрдых знаний core java и прочих алгоритмов нужно знать что такое тдд, уметь писать тесты, уметь хорошо пользоваться spring bootом и чем-нибудь типа хибернейта. это очень дохуя работы, если ты не талантливый. 90%, что ты в одно лицо не осилишь. самый верняковый вариат поиграться в жабараш и потом пиздовать на тренинг в ближайшую галеру, а там уже как пойдёт.
>>1310106 Анончик, подскажи и мне, пожалуйста. Я уже совсем запутался между этим тырпрайзом и вебом на джаве. Я сначала смотрю что-то на ютубе, потом заправляю книгами. Так вот. Нужно ли учить Java EE ? Я осилил кор и прилежащее к нему, а теперь хуй пойму, мне надо сразу в сторону бд, хибера и спринга смотреть, или этот EE огромный изучать ? Там ещё какие-то Java fx и ТД и ТП, на сайте работки к джуниорам везде разные требования, сложно сложить картину того, что нужно. Единственное, что я понял, в половине надо хтмл жс, в половине не надо, как это понять. И что все таки с Java EE?
Аноны, извините заранее за тупой вопрос, только вкатываюсь, но: что не так с наследованием private полей? Получается, сами поля наследуются, а права доступа к ним нет? И объектам класса-наследника нужно со своими же унаследованными private полями взаимодействовать только через левый класс и его функции? Нахуя так зделоли? Можно я буду их вместо private делать protected и не заморачиваться, или есть какой-то смысл именно в такой организации доступа?
>>1310110 Ну ты там по верхам глянь всё, запомни что к чему и для чего, к примеру jsp и jpa и прочее, запили хелоувордов про каждое, загугли и добавь в избранное мануалы по теме, примеры коды и т.д. Если что потом понадобиться первое впечатление уже будет + будешь знать какими мануалами сразу начинать обмазываться
>>1310110 > надо сразу в сторону бд, хибера и спринга смотреть, или этот EE огромный изучать EE отмирает и не нужен, нужны спринг с хибернейтом, это тоже тырпрайз
>>1310114 С появлением модулей инкапсуляция вышла на новый уровень. Теперь всем поебать, что там у тебя, ибо экспортишь только то что захочешь. Ебашь протектеды, если хочется, только про модули не забудь, шоб инкапсуляцию не проебать.
>>1310194 Блять, ладно, я разобрался тщательно почитав доки. Но я нихуя не понимаю как мне сука объединить числа и русские символы, нихуя не ищется что-то вроде 8987913392 П.П. Киров. Как мне эти юнионы делать то Написал что-то такое, но нихуя не работает [0-9][\p{InCyrillic}]+
кинул зип архив со всем проектом (intellij) (гитхаб для слабаков), чел импортировал проект, но геттеры сеттеры и вся хуйня не работает. то есть @Data, @AllArgsConstructor и т.д. над классами стоит, но нихуя не делает. пробовал удалить эту аннотацию и добавить - не помогает. когда я чужой проект с ломбоком так же импортировал, была такая же проблема. как пофиксить?
>>1310265 не помогло( >>1310280 соберет в смысле Build -> Build project? проект maven, все вроде бы скачалось, импорты красным не подсвечиваются. а при сборке не хочет компилить - синтаксические ошибки в местах, где я getField() делал какой-нибудь
Как называется, когда на собеседовании ты уверенно рассказываешь, что в java параметры передаются по ссылке, а в первый же рабочий день обсираешься с этим?
>>1310351 В джаве же все аргументы передаются по значению, просто у ссылочных типов значение - ссылка, я так это понимаю. Сеньерыпомидоры, рассудите [i]Вкатывальщик[/i]
>>1310391 >просто у ссылочных типов значение - ссылка чувак, думашь так случайно получилось, что любимое исключение называется NullPointerException? "ссылки" в жабе - это философская концепция, не более. как и "сообщение", например.
>>1310093 Нужно знать какую-нибудь реляционную СУБД хотя бы на уровне CRUD, а лучше ещё уметь писать хранимые процедуры, триггеры, уметь создавать схему базы (сюда входят знания про нормальные формы) и хуярить select'ы со сложной логикой.
Быть способным запилить простую морду на связке HTML+CSS+JavaScript, уметь как минимум в AJAX, а лучше ещё быть знакомым с Angular или Bootstrap.
Знать основы Java EE и Spring, уметь пилить простые веб-приложения.
Уметь в ant, maven и gradle.
Ну и настраивать всё это хуеплётство на линухах и виндовсах.
>>1310418 Нихуя не понял. Можешь подробнее объяснить? Нуллпойнтер экзепшн любимое исключение потому что чаще всего выбрасывается или в каком смысле? Я прогал всякие коллекции в паскале с помощью ссылок, особой разницы с джавой не заметил - исключение в том случае, если ссылка ни на что не указывает. Алсо сейчас ещё погуглил - почти везде пишут, что в джаве передача по значению всегда идёт, даже приводят примеры кода это поддерживающие
>>1310586 Bootstrap — CSS-фреймворк, который по сути даёт layout в виде сетки и красивые (на самом деле не очень) кнопки/инпуты/селекты/чекбоксы. Angular — фреймворк для разработки SPA. У этих вещей абсолютно разные задачи и сложность освоения. Поэтому фраза "быть знакомым с Angular или Bootstrap" абсурдна. Это всё равно, что сказать "быть знакомым с интегральным исчислением или линейными уравнениями".
>>1310592 Всё ты правильно говоришь. Передача параметров в Java действительно выполняется только по значению, а название исключения NullPointerException просто пришло в наследство из C++, где есть ещё указатели и передача параметров по ссылке. Ууказателей, то есть сущности pointer, в Java нет, но название NPE осталось.
>>1310583 Можешь объяснить, какая разница между спрингом и джава ее? Можно просто учить спринг, не залезая вообще в ее? Спринг может заменить ее, или там одно из другого вытекает, и сначала надо ее, а потом спринг ?
>>1308356 (OP) Здарова бандиты. Посоветуйте хороший декомпилятор для java, нужно пару .jar файлов вскрыть, посмотреть чё внутри. Хочу услышать мнение местных какой лучше брать.
>>1310613 Java EE технически представляет собой набор библиотек, накатываемый поверх Java SE, и позволяющий писать клиент-серверные веб-приложения на Java.
Обе эти технологии существуют в тесной взаимосвязи и развиваются вместе. Spring внутри себя использует сервлеты из Java EE, Spring JPA является реализацией спецификации, введённой в Java EE. С другой стороны, Java EE с развитием понапиздила много идей из спринга. Например, JNDI в поздних версиях был перепилен так, что @Resources стала фактически эквивалентом @Autowired.
В реальной разработке используется и то, и другое, хотя Spring последнее время заметно выигрывает. Но учить всё же лучше, начиная с EE, потом перекатываясь на Spring.
>>1308356 (OP) Сап пограммисты! Вкатился в джаву как год (правда SE), за это время полностью разобрался со свингом, мавеном, гитом, градлом, антом, начал разбираться в паттернах, хибернейтом, спрингом. Усталось нереальная от мониторинга хабра, к примеру открываешь ссылку читаешь какой спринг заебательский и все такое ел бы его если бы был съедобным, открываешь следующую, а там чувак фулл стак говорит нахуй вам фреймворки, изучайте архитектуру. На ютубчиках вообще 3,5 калеки к которым никакого доверия. Отсюда вытикает просьба помочь с выбором литературы, не надо впихивать ютуб каналы и говорить да он круто объясняет, это чушь, пока не разберешься сам, это ерунда, а делать под копирку еще большая ерунда. И так кто чем может помогите просто названиями книг или годных ресурсов, интересует : Angular, Java 8 (Stream), Spring (Core, mvc и т.д.), Hebirnate, PostgreSql, MongoDB, Jetty, Jersy. Тонны нефти каждому откликнувшемуся анончику.
>>1308356 (OP) Сап! Пытаюсь в gui java, но столкнулся с проблемой, что даже не знаю, как ее загуглить. В общем, есть один tabbedPane, а на нем несколько кастомных табов tabComponent из Jpanel с JTextLabel и JButton для закрытия. Проблема в том, что при клике на таб второй раз, после ее выбора появляется богомерзкое выделение(?). Как его убрать?
Посоны, что по тестам и основам тдд почитать для нубасиков? Pragmatic Unit Testing in Java 8 with JUnit нормально? Может Test-Driven Java Development by Viktor Farcic & Alex Garcia?
игра-лабиринт. каждая клетка может быть как стеной, так и проходом, или (уже позже когда-нибудь) проходом с каким-нибудь бафом. Ну вроде кустов или льда или ещё какой хуйни. Карта уровня хранится в текстовом файле, каждый символ задаёт характер клетки. На каждый вид клеток я создаю класс, который наследует от абстрактной клетки. Чтобы потом всё это расширять простым добавлением нового класса, я подумал, что напишу какую-нибудь фабрику, которая при старте бы себя создавала. То есть чисто на рефлекшинах смотрит какие есть классы, которые наследуют абстрактной клетке, дёргала бы их статистическое поле с символом, который характеризует эту клетку на карте, и потом фабрика бы выдавала подходящий объект клетки. как-то так.
>>1310683 Ответ прост, разобраться в синтаксисе и архитектуре высоконагруженных, многопоточных приложений, получать бабки совместимые с неплохой жизнью, после вкатываться в ИИ, в окончании стать богом для расы ИИ.
>>1311005 Годных хохол! Только на волне патриотизма слегка ебанутый! Выпилился с контактека т.к. вражеская технология + обсирает idea (по той же причине)
>>1308356 (OP) Пацаны, такой вопрос. Работал я работал и вот думаю, нужно бабок больше зарабатывать, задач на работе мало. И приняли меня на новую работу 100% удаленка. Со старой работой я не уволился и теперь думаю, мне пизда, и я всё завалю работая на 2 работах? Или вполне можно правильно распределить время и работать на 2-х проэктах подымая денег как Бог? Что думаете об этом? Может кто-то уже сидел на 2-ух стульях?
>>1308864 Ты что пиздоватый? Что ты несёшь кретин? При чем тут Линукс? Поставь себе на Линукс Оракл ЖДК. А если ты на маке будешь сидеть то подойдут тебе уроки? У нас за такие вопросы в опенсейсе опускают нахуй.
Не понимаю. ExecutorService же выполняется в отдельных потоках, отличных от главного. Выполнит сначала первую Future, потом вторую. Или Future не освободит поток до вызова get?
Реально в 30 лет найти работу джуном? Неплохо знаю кор, Немного паттерны и алгоритмы - тут скорее просто про прочитал и не применял нигде, но сортировку от красно-черного дерева отличу. Та же херня с многопоточностью. Конкуренси ин практис довольно хорошо написана. Английский нормальный. По русски ничего не читал даже. Написал на спринге хело ворд. Spring Boot + Security + JPA + MVC + сохранение файлов на диск. Веб формочки там, измненеи данных пользователей, пукнуть трифорсом из БД, + тимлиф. ну такое себе.
>>1311733 Я чесно говоря просто ссу куда то соваться. Ощущение что нихуя не знаю и не умею + чуствую себя стариков, но выгляжу нормуль. Хотя вроде чет написал даже и это говно работает.
>>1311957 Наблюдатель следит за каким то одним событием типо нажатия кнопки и после этого события уже отправляет сигнал что событий случилось. В свинге все на это дерьме.
>>1311846 LoadFileTask что делает? Ну и вероятно 2 таска будут ждать пока сделается 1 таска Потому что у тебя в сингл тред экзекутер а оно кароч пока первая таска не выполниться кладед хуй на вторую. Там Queue ебанное. Ну и наоборот 1 будет ждать второе и будет дед_лок чтобы выполнить последнюю строку, Используй другой экзекутер кароч.
>>1311849 За год и 4 месяца выучил джаву до позиции джуна с таким графиком: первые месяца три по часу в день а то и меньше. Потом месяца два по 2 часа в день стабильно. Потом перерыв в три-четыре месяца а потом оставшееся время по 8-10 часов написание проекта и попутной подготовки к собесу
>>1311990 Ну блять СИНГЛ тред экзекутер. То есть тока 1 поток + очередь с блокировкой. Чтобы задания гарантированно по очереди шли. А у тебя первое задание зависит от второго и наоборот Там в конце ретерн.. А там ну вычисления пошли ты работу загрузил он что то делает. Объект Future блокируется пока эта работа не завершиться и потом становиться доступным.
>>1312023 Определение какое-то говно. Много объектов могут бросать событие и много обработчиков может быть. Не учи паттерны по каким-то блядь околошкольным учебникам. Я думаю что один ко многим здесь это про связи: если вызывается событие на одной кнопке, то изменяются объекты которые слушают это событие, НО ничего не происходит с другой кнопкой которая вызывает это же событие.
>>1312066 Мне кажется, дело в интерфейсах. Во втором случае ints имеет тип Collection, а там remove(Object), единичка пакуется и всё нормально. В первом случае тип не указан явно и кокомпилятор выводит его из контекста, те ints имеет тип List, а там remove(Object) и remove(index). Далее кокомпилятор думает, если я явно не передаю объект, значит мне нужно удалить по индексу. Как-то так. Если я пронёс хуйню, путь помидоры уточнят. Интересно жи.
>>1312060 Бля. Я хуйню писал. Я описывал "издатель-подписчик" и в случае с двумя кнопками больше подходит этот паттерн. Но если касательно этого паттерна то две кнопки изменяют состояние одного Observable и в них неявно вызывается notifyObservers(). Возвращаясь к твоему первому вопросу. Одно наблюдаемое наблюдает может наблюдать много наблюдателей - вот почему там "один ко многим". Что ты имеешь ввиду под "Наблюдатель же может быть зарегистрированным у многих субъектов"?
>>1312022 Нихуя не понял. Есть главный поток. Есть второй экзекютор, который последовательно выполняет таски. Что мешает этому экзекютору последовательно выполнить эти два БУДУЩИХ? Главный тред в это время будет ждать результат
>>1312162 короче смотри, у тебя SingleThreadExecutor ты сабмитишь RenderPageTask RenderPageTask сабмитит два LoadFileTask
очередь получается типа <----RenderPageTask-----LoadFileTask-----LoadFileTask первый таск не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который не может завешиться ибо ждёт заверщения второго и третьего таска, а они не могут выполниться ибо единственный тред занимает RenderPageTask который
>>1312183 Явно то есть открыто с точки зрения наблюдателя. Я имею ввиду то что наблюдатель в этом шаблоне не имеет открытого интерфейса чтобы подписаться на наблюдаемое. Эта логика размещена в интерфейсе наблюдаемого. Поэтому явно(сам добавляет) наблюдатель добавиться не может. Это делается с помощью addObserver() у наблюдаемого. У наблюдателя здесь пассивная роль. Он просто обрабатывает события.
>>1312187 >> это тоже неявно. Схуяли неявно наблюдает? Оно имеет открытый интерфейс и оно знает кого добавляет себе туда.
>>у наблюдаемого много наблюдателей, наблюдатель следит за многими наблюдаемыми. почему это не "многие ко многим"? Я долго думал насчёт этой терминологии. Думаю оно будет один ко многим потому что управляет количеством своих наблюдателей только наблюдаемое. Наблюдатель такого интерфейса не имеет. Мне кажется что лишь из-за этого.
>>1312443 >всё Далеко не всё, но обоссаному галерному крудошлёпу это не объяснили. Обоссаный галерный крудошлёп увидел стрелочки и подумал ТЕПЕРЬ МЫ СКАЛА))) МАМ СМАРИ!11)0 ФП!)) К сожалению, обоссаный галерный крудошлёп слишком туп, чтобы видеть фундаментальную разницу между вонючим суррогатом и настоящим академическим функциональным языком.
>>1312447 >академическим Точно! Зачем нужны все эти tagless final и прочие монады? Анонимные функции завезли? Завезли! автоматический вывод типов есть? Есть! Стримы подвезли? Подвезли! Всякие Akka и Spark можно использовать из Java, т.к. они предоставляют нативный Java API. Не нужно страдать из-за наглухо отбитого синтаксиса Scala, просто ебнутного SBT и кривого плагина для Intellij IDEA, которая пытается пережевать все имплиситы и хоть что-то подсказать разработчику. Сюда еще стоит добавить просто чудовищно медленную компиляцию и жор памяти.
>>1312451 Хорошо, что команда, которая пилит Scala разбегается по местным компаниям и больше не участвует в разработке скалы. Петрашко ушел, Малдер тоже. Еще было пару чуваков, но их даже вспоминать не хочется. Так скоро один Мартин останется.
>>1312452 Тем временем команда Kotlin выпускает релиз за релизом. Если учесть сколько денег вливает Google в этот проект, и насколько сильная команда пилит Kotlin, то неудивительно, что Kotlin уже обгоняет Scala по количеству вакансий, лол.
>>1312447 Ну ты еще расскажи про Твиттер, который с самого открытия ни разу не принес прибыли. И только в этом году отчитался с плюсом, т.к. уволил кучу народа. Зато они на Scala пишут, ага.
Антонидасы, помогите с шифрованием в этой джаве. Суть, есть бд к которой я прикрутил шифрование aesом, проблема в том что аес как и все блядь шифры которые есть в Java.crypto увеличивает исходный размер шифруемой строки например тестовая строка в 15 символов превращается в 50, есть какой-то шифр который оставит размер строки неизменной?
>>1312476 Топ совет. >>1312475 Зачем? Они не просто так становятся больше, это часть безопасности, плюс избегание проблем с кодировками как мне кажется.
>>1312486 Потому что место в бд нерезиновое, у меня полтерабайта данных, после шифрования увеличивается в несколько раз, места всего лишь на терабайт. Мб действительно цезаря-виженера с длиной ключа равной строке, они все одной длины
>>1312499 >действительно цезаря-виженера с длиной ключа равной строке, они все одной длины ты ебанулся, если у тебя в мыслях использовать для каждой строки один и тот же ключ.
сегодня опять решил посмотреть, а что там у жаблов. а у вас пиздец, серость и убогость. хотел ебануть методов внутри методов, как это возможно в божественном питоне, а вот хуй на. пиздец, как вы выживаете-то, пидоры?
>>1312597 А зачем тебе метод в методе? Можно сделать так, но это выглядит не совсем так: void outerMethod(Set<Govno> govna) { Function<Govno, Mocha> transform = (kakaxa) -> { ... }; govna.stream(transform::apply) }
>>1312645 А в Java 9 var динамически или статически типы присваивает?
За наследование темаАноним17/12/18 Пнд 17:40:00#223№1312669
Это ваше ООП набросали же для того, чтоб не дублировать код несколько раз. Хули нужно конструктор явно переписывать, если конструктор родителя уже всё по хардкору разложил на случаи? Что за хуета в вашей Жабе?
>>1312656 статически. в данном случае "var" приказывает компилятору вывести тип. тоесть я не могу сделать var hui = new Grob(20); //эквивалентно Grob hui = ... hui = new Kladbishe(); более того, var это даже не кейворд. например var var = "var"; var = var + "var"; вполне себе компилируется
>>1312677 Повторюсь ещё раз. >Когда ребёнок не знает про super и конструкторы
Если твой максимум - хелловорды, то вали обратно в свой процедурный язык или откуда ты там вылез. Скажу по секрету, выполняются все конструкторы, начиная от родительского класса и по скатыванию до последнего, и это блять охуеть как бывает нужно, ну и узнай что такое super
>>1312684 Блять, нихуя там не выполняется, если не переписать заного конструктор. Что ты мне в глаза ссышь, посмотри ещё раз на пастебин. Пока не создашь конструктор с такой же сигнатурой, можешь хоть в присядку дрочить, а не использовать конструктор родителя. Я тут ору с ваше жабы, чтобы сделать то, что в нормальных языках уже есть, тут надо строчить на пол страницы каждый раз.
>>1312690 >посмотри ещё раз на пастебин Принципиально не смотрю на говнокод процедуродрочеров вроде тебя. Исходил из твоих слов >Хули нужно конструктор явно переписывать, если конструктор родителя уже всё по хардкору разложил на случаи? Повторюсь ещё раз. >Когда ребёнок не знает про super и конструкторы
>>1310888 Но ведь количество работы и здоровья, вложенной в самообразование и дсотижение "совместимых" зп, никак не окупится по деньгам, а дальше останется лишь омерзителный мир СНГшного айти и океан рутины. ИИ вообще не имеет никаких повязок с явой, лол.
джавач, я тут реализую сессии из JSA, не могу придумать как их хранить в контексте. у сессии есть getid(), getLastAccessedTime(), getMaxInactiveInterval(). исходя из этого нужно сделать: 1)быстрый доступ по id 2)быстрое отсечение "устаревших сессий" (типа lastAccess + inactiveInt < now) 3)желательно, чтобы было что-то вроде кеширования, когда часто используемые сессии "лежат ближе"
сейчас храню их в HashMap<String, Session>, где стринг - id сессии. думаю сделать таймер, который каждые n секунд пробегает по этой мапе и удаляет устаревшие сессии.
>>1312805 ну в пистоне таких проблем нет. в принципе ява уёбищна, как и пидоры, сидящие в этом треде. выбирай сторону добра, а не гомосятины, перекатывайся в пистон.
>>1312851 Блят, сложно. То есть как дерево поиска: в корне число N, слева с ластакссессом меньше N, справа - больше и т.д.? Как тогда по ключу быстро находить? Дека это dequeue? В чом смысл?
>>1308356 (OP) Привет. Не бейте сильно, я сейчас тусуюсь на C++/Qt и присматриваюсь к другим языкам (чтоб развиваться). Выбор пал на жабу (но еще смотрю на C#).
Вот не пойму. Для чего жабка нада? Андроид? Серверные приложухи? Я так понял десктоп на жабе не запилить? Я знаю о swing, но он вырвиглазен и тормоз. Вот вы сейчас работаете конкретно где на java?
Требуется открывать в JTextArea большого размера текстовые файлы, что бы не грузить сразу весь(и не заставлять пользователя ждать) я решил вставлять текст из буфера порционно. Для этого на JScrollBar повесил обработчик реализующий AdjustmentListener. У скроллбара есть текущее значение и максимальное, казалось бы, бери первое, дели на второе и при приближении значения к единице вставляй контент, но вот только это значение как я понимаю зависит от размера скролла, т.е оно может значительно варьироваться при прокрутке вниз до упора(от 0.6 до ~0.9). Как в таком случае сделать правильно?
>>1312994 Приведи пример, че ты рвешься-то. Тебе спокойно говорят что по сложившимся кодстайлам, паттернам, идиомам так изголятся не нужно, это не значит что так сделать нельзя, но ты же не делаешь вещи просто потмоу что можешь правда? Потворяюсь, предоставь пример когда такие фичи полезны.
>>1312983 всегда так делаю, когда задачу в методе можно разбить на мелкие подзадачи, но засирать класс приватными методами, которые делают контектсно зависимую хуйню, а тем более плодить горсть ебанутых никому не нужных классов как костылики не особо охото.
>>1312862 если совсем абстрактно, то тебе нужен priority queue. это может быть indexed heap, который может быть как дерево так и как дека реализовано. суть в том, что можно легко вытаскивать элементы с максимальным значением. приоритет будешь считать по lastAccess или какая у тебя там логика. запихиваются в него элементы тоже относительно лекго. круглый профит.
>>1313055 Ну ты можешь объявлять реализацию функциональных интерфейсов внутри метода, вот тебе метод-в-методе. А тот наркоман спрашивал метод-в-методе-в-методе, можно, но зачем.
Пишу уже в который раз. Приятно видеть как залётные вайтивайтишники, работающие за хуйцы с гречкой, пытаются залупнуться на джавабояр, ибо ниасилили. Они ведь только в наш тред залетают и пытаются кукарекнуть, а после чего возвращаются делать лабы по паскалю. Ведь в их днище языках нет интерфейсов и даже нормальных конструкторов, но они упорно продолжают жрать говно. Про всякие фасады и сервисы я уже помолчу.
Как в спринге в тестах указать путь до sql схемы? Схема лежит в папке тест / ресрусес / скл/схема.скл . Может быть где то конфиг надо сделать для тестов? Пробовал @Sql("classpath:/resources/sql/schema.sql) и разные вариации с путем / без. Один хуй файлнотфаундэксепшн.
>>1313072 Но ведь в худшем случае чтобы найти сессию по id придется перелопатить всю queue, или я тебя не так понимаю? Тут на почти каждый запрос HTTP нужно искать активную сессию с id переданным в куках, так что скорость доступа по id очень важна
Сдавал матан и физику, лабы делал на паскале. Делал игори на Unity3d за деньги. Заебало. Вкатываюсь в кровавый интерпрайз Java, обмазываюсь Spring-ом. Вроде JSP нужно знать, но как я понял сейчас все работают с фреймворками и на чистом html, css и javascript не пишут. Это так? Планирую: 1) написать несколько хелоувордов по туториалам на топ3 фрейморках (Vue, React, Angular). 2) разобраться с JavaScript-ом на уровне написать несколько простых браузерных игр. 3) глянуть что там в HTML (с формами и php в вузике лабы делал) 4) глянуть слегка CSS Что анон мне посоветует? На что обратить особое внимание? Чем голову особо не забивать сейчас?
>>1313193 >паттерны Это само собой, уже несколько выучил и стараюсь применять при случае >рефакторинг Тут что имеется ввиду? Скачал книгу про рефакторинг, в избранном рефакторинггуру и англоязычный про это >юниттесты Постоянно использую, но на практике только @Test и @Before Планирую мокитой заняться и спринговые тесты разобрать
>>1313134 создай хешмап для поиска по айди. для поиска по значению lastaccess используй индексированную кучу. да две структуры, но тебе или крестик снять, или на хуй сесть. оба сразу никак.
>>1313094 а чего ещё ожидать от жаба макаки, которая ничего, кроме как пердолить фабрики и ловить нульпоинтерексепш в своей жизни не видел. эпогей карьеры, дальше только стагнация.
Во многих консольных утилитах при отображении информации срдержимое периодически обновляется, например docker container ls. Как такое реализовать на джаве?
>>1313274 тащемта он, как заебёт, может изи в менеджмент\консалтинг перекатиться, с ценным опытом кровавого жаба энтерпрайза-то. а вот что питоноёб будет делать это вопрос
короче, я ору с вашей жабы. хочешь пыриком множественное наследование, соси хуй тебе, пользуйся костыликом из интрефейсов. ладно, ебашим его, имплементируем так парочку методов и ставим модификатор protected, ага. и опять хуй сосать, они должны быть public. ну похуй, конечно, инкапсуляция, хуё-моё, сложившиеся кодстайлы, паттерны, идиомы...
>>1313288 чувак, с появлением модулей ты у себя в пакгейджах можешь хоть цирк с конями устраивать. теперь всем поебать на инкапсуляцию на уровне классов и методов
Петян, начал вкатываться, пишу рогалик. Начал с тестов. Расскажи про тесты, какие сейчас модные на яве? Как можно тестировать методы классов, которые завязаны на объекты других классов. Как можно подставить mock объекты или даже mock методы-заглушки, раз уж полноценных пока ещё нет?
>>1313346 тк ты уже знаком с погромированием, тебе нужно сразу в ооп и ооп-фп ебашить, ибо если ты купишь курсы, а там тебе начнут часами рассказывать про переменные, ссылки, циклы, кондишны и прочие нубовопросы, ты дропнешь нахуй. советую core java 9 for the impatient. 500 страниц годноты с жаба спецификой, нормальные задания. и можешь курс по жаба-фп на степике глянуть. далее советую ебашить на тренинк в ближайшую галеру, там тебе датут индастри специфик знания. а дальше сам соорентируешься. чай не даун
>>1313362 либо, если ты так хочешь залить бабла, залей на что-нидудь нормальное на курсере6-12к рублей. я хуй знает что там есть, но 100% уверен, там есть хардкорные курсы для уже программистов
>>1313346 Оффлайн курсы сосут. Причем, постоянное чтение одних книг тоже сосет. Рекомендую найти на ютубе/курсере/другой платформе курс по основам языка, а дальше, после прохождения, уже искать какие-то проекты и пытаться их реализовать. По мере появления задач, пользуясь гуглом, будешь их решать и импрувить свой скилл. Книги стоит читать, чтобы уравновесить свои знания, но они не дают навыков и занимают много времени. Ах да, для них еще же английский знать надо, куда же без него.
>>1313383 Зачем ему вызывать (не явно) всю родословную вплоть до пробабки, если у него есть свой конструктор, который всё сделает? От тедва и this будет. Но у вас там всё по другому, да? Таки что за механизм и зачем?
>>1313388 хуй поймёшь тебя, до чего ты доебвлся тогда. если тебе мужет класс, бихейвёр которого зависит от стейта суперкласса, тебе нужно задать этот стейт, очевидно же. задание стейта супера происходит либо выцзовом конструктора по умолчанию, который делает дефолтный стейт или явного вызова цепочки конструкторов с параметрами. хуй тут непонятного?
>>1313389 Зачем он выполняется неявно, дёргая непараметризованный конструктор всех родителей? Почему это не оставляют на усмотрение тому, кто пишет код? Твой аргумент про состояние, относительно класса, довольно слабый. Как я понимаю у классов вообще желательно бы не должно быть состояний. Если же про объекты говорить, то большинство интересного с объектами происходит уже после инициализации (как я это понимаю, и это объясняет пустые конструкторы).
Короче, я думаю, что не совсем тебя понял, только начал вникать. Если тебя не затруднит, объясни почему в яве это именно так, и чв каком случае это удобней. Меня же это больше смущает меня, нежели кажется логичным.
>>1313391 чувак, в жабе дефолт int(long) = 0 float(double) = 0.0 Object = null(в том числе BigDecimal || BigInteger || String) boolean = false можно вообще контрукторы не прописывать, с new ты вызовешь всю цепочку по умолчанию. да, по хорошему, стейта не должно быть или быть по минимуму, но это зависит целиком и полностью от тебя(архитекта\дизайнера)
>>1313391 То что это поведение по умолчанию, я уже понял. Мне интересно почему это так и какие плюсы, кроме как шокировать вкатывающихся, это даёт. Ещё интересен сам процесс создания инстанции.
>>1313742 Для одной строки работает, но если до этого был символ \n, то на ту строку уже не сработает. Я думал просто узнавать высоту окна и периодически рисовать картинку, а остаток до высоты заполнять пробелами. Но высоту тоже что-то не так просто найти.
Господа, помогите. Суть такова: юзер может загружать файлы на сервер, и в бд хранится метадата каждого файла. Нужно перед загрузкой нового файла посчитать занимаемый пользователем объем, и если достигнут лимит, отклонить запрос (а-ля дропбокс и т.д.). Вопрос в том, нужно ли использовать локи в данном случае и какие (использую jpa, в таблице файлов есть @Version)?
Блять, рили не могу понять, как мне сука поднимать тайм зону, чтобы было +3? setTimeZone не помогает. Пиздец нахуй. Не понимаю. В какую сторону глядеть? UTF+3 и тому подобное что ли? Это же пиздец, а не решение.
Не очень понимаю, как тебе поможет optimistic locking. Тебе, по сути, нужно защищаться от phantom read, что возможно достичь только при уровне транзакционной изоляции SERIALIZABLE. Тут всё будет уже зависеть от нагрузки на твою богадельню. Если таки попытаться свести всё к оптимистичным блокировкам, то тебе стоит завести какую-нибудь сущность по смыслу вроде UserSpaceProvisioning, связанную 1-to-1 с пользователем, и, потенциально, 1-to-n с метадатами, хранить там сумму и блокироваться оптимистично на изменении этой сущности.
>>1314299 А pessimistic_write стоит использовать? Это мой проект, нагрузки соответственно реальной никакой нет, но и лочить всю таблицу тоже не вариант.
PESSIMISTIC_WRITE что? Что лочить-то будем? Проблема же не в том, что какая-то сущность изменилась (к примеру, один из файлов, уже лежащих в хранилище внезапно вырос на пару гигов, соответственно изменилась метадата). Проблема в том, что на момент коммита твоей транзакции, вливающей новый файл, результат запроса, суммирующего метадаты и выполненного в начале транзакции уже неактуален.
>>1314305 Пессимистик лок (это ведь select for update?) на все файлы пользователя в таблице для суммирования размера, он ведь до коммита действует, другая транзакция не сможет посчитать суммму тех же файлов, пока первая не завершилась.
Полагаю, что можно заставить его так работать. Смотрится как-то странно, конечно - лочить на запись дохрена записей, при том, что записывать их не собираешься вовсе. И да, есть тонкий момент с поддержкой эксклюзивных и логических локов базой. В частности, с mysql (на innodb) это прокатит, а вот постгре легко заинсертит тебе новые записи до твоего коммита и снятия лока. Рассмотри вариант оптимистичной блокировки, описанный выше.
>>1314450 Не понял тебя. Твоя проверка до конца транзакции должна действовать, иначе можно в 2 окна послать 2 файла одновременно и превысить лимит (хоть это и маловероятно, наверное).
КАК ВЫ БЛЯТЬ ХАВАЕТЕ КНИГИ НА АНГЛИЙСКОМ ПО ПРОГРАММИРОВАНИЮ?
Учил англ 11 лет в школе, уровень b1-b2(ослаб сейчас) Открываю спринг 5 в действии, так это пиздец. Почему каждый петух пишет, что надо читать все в оригинале ? Я понимаю там практически каждое второе слово, но чтобы понять сам спринг, саму суть, недостаточно блять учить всю жизнь англ, нужно только родиться в англоязычной стране. Алсо смотрел на ютубе сеньеров уехавших в пендосию, они чуть ли на одном уровне со мной знают англ(20 лвл). Книги вообще, по своей сути, биомусор в 2к19. Так может это все выдумки пидорасов котоыое сидят на своих местах в ойти и боятся что мы их подвинем и придумывают такую хуйню ? Как по мне, надо знать англ на уровне b2, не больше, и просто уметь гуглить. Никакого технического англа. Дискасс
>>1314534 Изучал 11 лет в школе, задрачиваю лингвалео КАЖДЫЙ день минимум час. Со спринг ин экшн 5 я в лучшем случае добавляю в свой словарь 1-2 незнакомых слова со страницы. Книга написана на элементарном английском. Для сравнение попробуй почитать Канкаренси ин практис. Вот это настоящий пиздец. Поэтому твоего бугурта не понял.
>>1314580 >>1314591 Возможно причина в том, что я ещё даже не пробывал, лол. Любую возникшую проблему в джаве я могу спокойно загуглить на англе, открыть ближайший сайт с 3 строками ответа и прилегающем коде и все понять, но читать целую книгу, где идёт 5 страниц текста и потом пример кода, мне кажется не сильно удачной затеей. Я то переведу это в мозгу, но чтобы именно смысл и суть условились и остались в голове - хз, навернон я действительно слабо пока англ знаю
>>1314659 потому что ты должен не переводить в мозгу, а понимать напрямую, без прослойки русского языка а этого можно достичь только постоянным восприятием/генерацией информации на английском, речь, текст, вот это вот всё с переводом канеш проще какие-нибудь хитрые слова понимать, но толковые словари на английском есть, понять смысл неожиданного слова можно, не погружаясь обратно в русский
Анон, поясни по бест практис в Спринге как писать самое банальное казалось бы - конструкторы классов. Согласно этой статье надо делать как если бы DI не существовало бы вообще. https://dzone.com/articles/spring-di-patterns-the-good-the-bad-and-the-ugly Теперь вопрос. Если например есть интерфейс сервиса и сам сервис как писать конструктор того клсса где он будет использоваться
private final ISrivice service;
public ClassName(final IService service){ < - вот тут мы бы при ДИ писали интерфейс по идее, а по той статье что писать? Уже конкретный Service?
>>1314534 Учил жаву с 0 на английском и только на английском. Русске тексты / книги / переводы вызывают блевотный рефлекс. Инбинфо - жава раш и им подобные.
Есть интерфейс - пиши интерфейс. Нет интерфейса - пиши конкретный класс. И да, совершенно необязательно для каждого спринг-бина объявлять интерфейс, как это советуют некоторые популярные Спринг-гуру.
>>1314705 >>1314708 Окей. Спасибо. Интерфейсы так интерфейсы. Я читал что по идее спринг настолько умный что должен сам понимать что куда.
Ну вообще да лепить везде везде прям для всего интрфейсы мне кажется лишнее. Только где и в каком случае они нужны а в каком нет? Для @сервисов по идее всегда пишется интерфейс еще.
>>1314708 Ну ок. Допустим, а если у нас идет несколько имплементаций интерфейса. Например какой нибудь UserDetailService. + Ты пишешь и используешь свой. Использовать конкретный свой класс в конструкторе? Или использовать @qualifier ?
>>1314715 >где и в каком случае они нужны а в каком нет?
Там где есть, или потенциально возможно несколько реализаций. Когда пишут какой-нибудь интерфейс, допустим ClaimsService, и рядом реализацию ClaimsServiceImpl, а внутри неё все методы связаны исключительно с персистенсом этого самого несчастного Claim - это говно какое-то. Понятно, что всё это - исключительно, чтобы удовлетворить хотелки фреймворка, а не потому, что есть потребность в полиморфном поведении.
>>1314745 >как будто работает на электроне, но не на ебаном электроне. Просто ставь в каждом методе Thread.sleep(100) и усе. Будет почти так же работать.
Вы определённо желаете странного, но и его есть у нас. 1. Берём фреймворк Vaadin, ... 2. ... пишем на нём rich-internet-application, чистая java, ничего лишнего. 3. Берём таки электрон, ... 4. ... заталкиваем в оный сервлет-контейнер с нашим приложением. 5. Вуаля, ебала жаба гадюку мы получили десктопное приложение на java, причём с вменяемым интерфейсом.
Есть много прототайп бинов, которые имплементируют один интерфейс, у которого есть String getName() Мне нужно доставать нужный бин по входящей строке name. В какую сторону копать?
>>1315266 Ой вей, так у тебя поинтер потёк, вот ты и пришел сюда в попытках его потушить. Хоть бы не позорился на весь тред про производительность, если сам в говне валяешься.
Как же ахуенно быть джавистом, каждый подзаборный выбляток завидует тебе и твоему языку.
Есть аноны пишущие плагины для Eclipse platform? Надо за пару недель вкатится в тему, что посоветуете? Все матриалы по RCP/Plugin, что сумел найти, сильно устарели.
Аноны, поясните куда лучше податься? Учусь на третьем курсе в профильном вузе правда в мухосраниТомск неплохо знаю Java SE, но нужно двигаться дальше. Не могу выбрать между Android и Java EE. Куда проще джуном вкатиться? Или может вообще заниматься Spring/SpringBoot + Hibernate и пилить всякие веб-сервисы на этом? Недавно прошел стажировку в одной компании, пилили сервис уведомлений для одной фирмы как раз на спринге - (Если сотрудника нет на месте, то ему приходит уведомление на почту через SMTP, не ответил в течении 30 минут - смс, снова не ответил - гг, кидаем его в таблицу с уволенными. Поверх всего этого статистика по различным критериям, типо "Как быстро работник вернулся на рабочее место после смс" и тому подобное). Очень понравилось, даже заплатили 20к за стажировку (лол), но на дальнейшем собеседовании на джуна меня обошли более опытные коллеги, которые тоже со мной стажировались. Загрустил, подумал об андроид разработке, может там проще будет, а то в Энтерпрайзе просто туча фреймворков всяких, без которых ты нахер никому не нужен.
>>1315726 Ну, это я вкратце объяснил. И так пасту накатал. Там на самом деле довольно много всего. Личный кабинет менеджеров по персоналу, за которыми как раз и закреплены простые работники. Связь со всеми другими базами компании.
Ну, а вообще ты прав, по сути это херня, но я и не выставлял это как нечто крутое. Какой дурак даст даже не джунам, а стажёрам норм проект?
Лично для меня основной пользой от этой стажировки стали навыки работы в команде. Одно дело соло сидеть без как такового графика просто писать когда и что хочешь, и совсем другое - работать в команде, по скраму с этими спринтами и митингами, как же херово в первое время было, я два слова связать не могу, а тут на меня 2 мужика пялятся и 2 бабы.
Посоны, вбросьте курсы. Не помню название, но там сначала кор, а потом ее. В одном из недавних тредов первым посом постили , только смыло уже тот тред.
>>1316288 Массив не уменьшается, как и N, я думаю тут имеется в виду, что с каждой итерацией внешнего цикла, внутренний проходит на 1 элемент массива меньше.
>>1314996 Мне нравится возможности защитить код со всех сторон от непредвиденных глупостей. Типизация вся эта, защитное копирование, финальные классы, иммутабельность и.т.п. Еще нравится идея с обратной совместимостью. Экосистема огромная. В итоге - хороший язык для новичка.
>>1308356 (OP) Посоветуйте мануалы, по которым можно быстро разобраться в написании простых веб-приложений на джавовских UI-MVC-фреймворках. Типа React, но для джавы. Приложение будет состоять максимум из нескольких страниц.
Посоветуйте олдфагу (30) - самоучке: год назад штрудировал джава кор, хотел выйти на джуниора с переездом в МСК, потом в жизни случились неприятные события, сейчас вернулся в тему опять, учу CSS-HTML, но вот с переездом уже сложнее. Как вариант, стоит ли смотреть в сторону ведроида? Легче получить первый опыт-заказ-создать портфолио? Ведь насколько я понимаю, сейчас вакансий джуниора даже в ДС почти нет? Или стоит резко разворачиваться и смотреть в сторону JS? Цель одна: деньги.
Возможно тупой вопрос. Но всё-таки. В чём преимущество фабрики (это же она?) перед определением набора конструкторов с разными аргументами в выражениях типа
`LocalDateTIme.of(LocalDate date, LocalTime time)` `LocalDateTime.of(int year, int month, int dayOfMonth, int hour, int minute)` ...
Почему не `new LocalDateTime(LocalDate date, LocalTime time)` ? Я посмотрел реализацию, там примерно то же самое и происходит, создаём Date, создаём Time. Условия про "неизвестно какие объекты подклассов создавать" тут не выполняется.
>>1317344 Читай маны. Правильный синтаксис не java <ИМЯ ФАЙЛА>, а java <ИМЯ КЛАССА> или java -jar <ИМЯ .JAR ФАЙЛА> В твоем случае будет: java HelloWorld Если класс в пакете, то добавляется имя пакета, типа java localhost.console.hello.HelloWorld Серьезные приложения, посложнее хэлловордов (тот же Spring), собираются через Maven/Gradle.
Надо написать парсер для кастомного формата файла, не знаю, как подступиться к этой задаче. Посмотрел опенсорсное решение, там хуева куча проверок, в несколько этапов, интерфейсов и абстрактных фабрик. Мне кажется, можно сделать гораздо проще, но я скорее всего проебу универсальность. С чего начать?
>>1317201 Вакансии есть. Сам учу около 5 месяцев, сейчас на JavaEE. Случайно открыл свое резюме на hh. На следующий день позвонили и пригласили на собеседование. Я пояснил сто еще учусь и не знаю Spring и Hibernate. Так меня стали упрашивать приехать, говорили что сами научат и дадут 2 месяца на вкат.
Есть ли легковесная кроссплатформенная бесплатная быстрая IDE, чтобы были IntelliSense, как у Idea, и дебаггинг? Java 8, опционально тесты и поддержка git.
>>1317547 А вот адепты НИНУЖНО И НИУМЕЕТ подскаличи, в своих тредах не сидится, уже заромбился на рабочем проекте или только вайтивайтишаешь и ничего сложнее хелловорда не писал?
>>1317679 Платформа от SAP для разработки интернет-магазинов. Джуну нормально, потому что в ней используются многие популярные вещи из Java-мира, кроме разве что Hibernate. И есть документация, которая позволит все это быстро освоить. Но через максимум пару лет рекомендую съебывать чтобы не останавливаться в развитии, поскольку функциональность и архитектура со временем меняется слабо. Будешь заниматься одним и тем же от проекта к проекту.
Есть вебгавно на спринг буте. В нем есть момент аплоада файлов. Я хочу вынести этот путь в отдельный класс, тому что этот путь будет использоваться в нескольких разных классах. Как правильно это сделать? Просто как bean? Обозначить как сервис? Конфиг?
Куда у вас в джаве принято класть бизнес-логику на бекенде, разносить по сервисам вида OrderService, CustomerService с анемичными моделями или rich model тоже практикуется?
Подскажите, анонсы. Изучаю с месяц Java по youtube роликам и книгам (Java Head First и еще что-то) и попутно решаю время от времени задачи на сайте w3resource. Все бы ничего, да я в прошлом несколько раз дропал, поэтому на сей раз решил каждую тему прорабатывать, чтобы не забывать по ходу. Я вроде как неплохо врубился в for loop и if statement и тд, но вот есть одно задание (пикрилейтед), которое ну никак не могу осилить, даже решение читается очень трудно. Это нормально, что за месяц я не научился решать подобное? Стоит ли мне решать дальше подобные задачи, или лучше двигаться к следующим концептам(массивы тоже уже более-менее изучил)?
>>1318136 >неплохо врубился в for loop и if statement >никак не могу осилить >решение читается очень трудно А ты не решения читай а делай свой код. Начни с простого к примеру сделать шахматную доску. Ищи много таких задач и дрочи их пока голова на место не встанет. А по задаче твоей тут попробуй разделять решение и искать мелкие подзадачи: 1) Тебе нужно вывести на экран A строк (значит переменная которая считает строки) 2) Количество пробелов в начале каждой строки начинается с B и сперва уменьшается до нуля а потом опять растёт до B (знач у тебя переменная которая пробелы считает) 3) Количество выводимых символов начинается с 1 до C потом опять до 1 (ещё одна переменная) 4) Ну дальше сам.
>>1317707 >VS Code Ну хуууй знает. Для js - огонь, но для java я так и не смог осилить. Решил бахнуть малюсенький проект на spring boot с помощью vscode. Поставил плагинов рекомендованных. Сгенерил начальный проект. Хочу создать энтити hui.pizda.Jigurda. Пришлось ручками создавать пэкэйджи. Потом внутри джавовский файл. Так он ещё и пустой создался! Прописал пэкэйдж, прописал public class Jigurda, добавил аннотацию @Entity. А import её кто прописывать будет? Правильно - я! Ручками! На это моменте закрыл vscode, открыл idea и сделал всё за 10 секунд в почти автоматическом режиме.
>>1317707 Я пробовал VS Code для сисярпа: Изкаробки нет скрытия ненужных файлов Изкаробки нет поддержки сисярпа Автодополнение крайне кривое Автоиндентация работает через жопу Самый главный минус - очень прожорливый. Короче,
Пока остановился на Net Beans, но и там есть некоторые моменты.
>>1318289 Это, скорее, очень легковесная IDE: работа с проектом, поддержка VCS, дэбаг, рефакторинг (убогий, но всё же) и т.п. - всё это из коробки. Текстовые редакторы таким из коробки не занимаются.
Сап читаю spring in action. Автор активно юзает SpEL, в то же время слышал частенько что SpEL нинужон, а точнее сложен с точки зрения понятности-читаймости и дебага. Синьеры-помидоры, поясните, юзаете сами или нет и если да то где конкретно.
>>1318295 >надо обвешиваться плагинами Я к тому, что там все те вещи подразумеваются как обычные. Т.е. для них есть UI и API.
>отожрала чуть больше 1Гб памяти Когда у тебя простейший чатик отжирает столько - это проблема (привет, Слэк!). Когда это IDE - я не вижу причин для беспокойства. Ты же не знаешь, что там под капотом. Может индексы какие, кэши или ещё что-то, что сделает твою работу (ту самую, за которую платят деньги, на которые ты можешь купить ещё одну плашку оперативы) быстрой, легкой и приятной.
>>1318368 Всё, разобрался. Алсо я делаю парсер файлов с https://prnt.sc/ и столкнулся с тем что программа слишком быстрая- если сделать цикл то программа не дожидается пока установится соединение и скачается файл, а бесконечно перезапускает поток, в результате чего получаются одни ошибки и ничего не скачивается, что делать?
Подскажите какой дешевый серв прикупить для размещения небольших веб-хуевин и тг ботов на жабе? Сейчас друг одолжил raspberry1 на 500мб оператувки, неплохая вещь и недорогая. Может есть что большее оптимальное для моих задач? Уровень познания в этом вопросе - около 0
Если у меня в hbiernate/jpa сущность ссылается сама на себя с такими отношениями: @ManyToOne(fetch = EAGER) - родитель @OneToMany(fetch = LAZY) - наследники, он родителей до самого корня вытащит?
Аноны, а стоит вообще книги по джаве читать (полное руководство, для начинающих, библиотека профессиоАНАЛА ну и пр.) или можно просто javadoc'ок обмазаться?
что поизучать? Читал последние месяцы Concurrency In Practice, прочитал больше половины, но чото уже муторно. Может какую-то практическую задачу сделать? Или что ещё можно почитать?
>>1318838 Вот думаю может на бумаге Шилдта прикупить? Или зачем макулатуру дома собирать... Аноны, как думаете с бумаги получше восприятие прочитанного будет? С другой стороны "альтттабаться" между клавиатурой и книгой наверное неудобно будет.
>>1318846 да. Там же нет заданий. Думаю может по базам данных почитать, но там же наверняка только внутреннее устройство и всякие мелкие подробности, мне не нужные
>>1318834 >>1318841 В книге главное это примеры кода, вот их нужно все внимательно разбирать. Если там главы про условные Swing или JavaFX, а ты планируешь потом Spring учить, то можно пропустить лишнее.
>>1318883 Да че то добавил книжку по ООП и Шилдта = 4.5к+ Ахуеть... Вот сижу думаю может лучше наушники себе купить на эти деньги и прочитать 9 электронное вместо 10 бумажного. Пиздос, практчески 3 рубля за страницу, когда обычно по рублю и это еще дешево, в других местах она по 5к...
>Погромисты жмотятся на книги ибо ДОРАХА. Ну так скачайте и распечатайте в ближайшем ксероксе или чё там у вас. Проиграл с >альтабаться Ща бы кодить без двух мониторов. Мне 3 иногда бывает мало на РАБоте, а вы с 1 ноете.
>>1308356 (OP) Фу блядь, ненавижу ооп.. то ли дело лиспы, эх. Жизнь ваша деревенская в жопу коту видалась, => в говно тред никому не нужный тред опять, ох, голова то болит,
>>1318919 >Фу блядь, ненавижу ооп.. Так это же очевидно говно с тонной "абстракций" без какого-либо математического подкрепления, просто попытка спрятать процедурное программирование под ковер. Ясен хуй оно говно, что ты еще хотел. Энивей, java - это хороший путь в clojure А ваще ваши лиспы - тоже говно процедурное.
Правильно ли я сейчас понимаю, что когда мы передаем объект в метод, то жаба его клонирует, но он продолжает ссылаться на первоначальный объект в памяти?
Я не понимаю. Как так получается: создаешь абстрактный класс - потом создаешь ребенка, и можно написать Абстратный абс = этот ребенок. Как так получается?
И второй вопрос, почему, когда я заимплементил интерфейс к конткретному классу, я могу сделать так: Interface impl = new MyClass() ?
>>1319137 После этого всё поймёшь. И на будущее не ленись делать эксперименты с кодом, запускай код из примеров, меняй его. После дрочки такой ты уже будешь знать какой код можно скомпилировать какой нет, и где какие ошибки бывают.
Возникла необходимость вызывать ЖСовские функции из Джавы. Пока решил просто параллельно запускать нодовский сервак с Express.js на борту и дёргать его через RestTemplate. Это нормальный подход?
>>1317547 Ну давай, ещё спиздани что лучше ебаться с ромбовидным наследованием нежели определять абстрактные классы без полей. Джава просто более дружелюбна чем кровавые кресты.
Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?
А: Нет, не поздно.
Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
Q: Что скажете за джавараш?
Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.
https://github.com/qqqlll/Java-Thread/wiki