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

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

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

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

57 Кб, 800x494
Java thread #76 /java/ /java/ 12 ноя, 21:12 1294482 В конец треда | Веб

Прошлый >>1287973 (OP)

Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?

А: Нет, не поздно.

Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?

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

Q: Хули все книги на английском?

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

Q: Что скажете за джавараш?

Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.

https://github.com/qqqlll/Java-Thread/wiki

Ответы294926295378295548295857295897296864

2 12 ноя, 21:15 2 1294490

Смотрите что нашел. Это же золото:
https://coursehunters.net/course/ekspert-programmist-java-1-3-uroven

Ответы297976

3 12 ноя, 22:02 3 1294520

Аноны, есть "сервак", который раз в 2 секунды сохраняет в бд определенные данные (через executeBatch()). Связь через стандартный jdbc. Вопрос такой: что лучше, открыть коннекшн один раз в начале и держать его открытым до завершения работы или каждый раз при обращении к бд открывать/закрывать его?
не бросайтесь тряпками, я только начинаю
про пул коннекшонов знаю, но как эффективнее будет без него?

Ответы294534294553

4 12 ноя, 22:13 4 1294534

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

Ответы294546

sage 5 12 ноя, 22:38 5 1294542

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

Ответы294582

6 12 ноя, 22:40 6 1294543

> java
> 2018

Ответы294579

7 12 ноя, 22:52 7 1294546

>>1294534
понял, большое спасибо

8 12 ноя, 22:54 8 1294549

>>1294385
Люди говорят, что Шилдт - скучный и нечитабельный.
Я это очень давно слышал и не раз.
Сам я его не читал за ненадобностью.

Вот, и тут, например, пишут, что Хорстман лучше:
https://www.reddit.com/r/java/comments/7oip71/book_choice_schildt_vs_horstmann/

Тут ещё многое зависит от того, что ты уже знаешь/умеешь, и от личных склонностей. Выбери сам.

Ответы294558294587

9 12 ноя, 22:58 9 1294553

>>1294520
Соединение с БД в общем случае _не_ нужно явно держать открытым (в прикладном коде).
Если надо реюзить - это должен делать сервер приложений или контейнер, используя коннекшн пул, а не программист руками.

10 12 ноя, 23:05 10 1294558

>>1294549
Люди говорят что Head First понятный. Пусть идут нахуй.

Ответы294565294608294969

11 12 ноя, 23:12 11 1294565

>>1294558
Те, кто читает Head First - не читают ни Шилдта, ни Хорстмана.

У Хорстмана очень хороши книги "for the impatient" - скала, джава.
И он давно занимается именно джавой.
А Шилдт - просто преподаватель. У него и по С++ книги есть и по C#.

Загугли horstmann books и schildt books для понимания.

12 12 ноя, 23:47 12 1294579

>>1294543
А вот и дежурный смузихлёб, я спокоен.

1,4 Мб, mp4,
400x228, 0:33
13 12 ноя, 23:53 13 1294582

>>1294542
Ну так давай гугли вопросы готовься, паскуда тварь!

Ответы294615

14 13 ноя, 00:11 14 1294587

>>1294549
гляну обе а там решу спасибо большое анон

15 13 ноя, 00:53 15 1294608

>>1294558
В чем проблемес с первой головой? Там вообще примеры как для даунов, т.е для меня, когда я начинал, плюс "шутейки" от автора проскакивают. Читался оче легко когда начинал.

16 13 ноя, 01:04 16 1294614

стоит ли производить вычисления (SUM, AVG и т.д.) в репозитории или самому считать в сервисе, используя циклы?

Ответы294623

17 13 ноя, 01:04 17 1294615

>>1294582
Мне интересно, хуету типа стринг пула всё еще спрашивают долбоебы?

Ответы294618294622295096

18 13 ноя, 01:22 18 1294618

>>1294615
Меня спрашивали когда ходил на собес, немного прихуел с того нахуя им оно надо.

19 13 ноя, 01:31 19 1294622

>>1294615
Я тебе больше скажу, мне это недавно в работе пригодилось.

Ответы294757

20 13 ноя, 01:33 20 1294623

>>1294614
Либо в запросах, либо лямбды

21 13 ноя, 01:55 21 1294625

Начал читать Core Java SE 9 for the Impatient. То, что нужно, посоны, спасибо за наводку.

22 13 ноя, 02:57 22 1294654

>Accordingly, You confirm:
>- You are not listed on the United States Department of Treasury lists of Specially Designated Nationals and Blocked Persons, Specially Designated Terrorists, and Specially Designated Narcotic Traffickers, nor are You listed on the United States Department of Commerce Table of Denial Orders.

Посоны, а вас при приёме на галеру, проверяли по санкционным спискам?

23 13 ноя, 10:31 23 1294733

Изучаешь сервлеты
а
Читая коменты под очередной статьёй на хабре видишь совет не ебать себе мозг этой хуйнёй и сразу пиздовать в спринг
а
Изучаешь спринг
а
Сложна
а
Психуешь и возвращаешься
а
Ахуеваешь с простоты

Ответы294859

24 13 ноя, 11:47 24 1294756

Анон, смотри:

Я создаю степень десятки:
double result = Math.pow(10,half);
double же обязателен, потому-что компилятор, пидр, не хочет int.

Далее, я хочу разделить BigInteger на этот result

bi = sum.divide(result);

но компилятор посылает меня, потому-что не хочет делить на добл!

Окей, пытаюсь привести к int:
int i = (int) double;

Компилятор вымазывает все красным.

Почему?

Сам код - здесь: https://ideone.com/05ySYV

Ответы294758

25 13 ноя, 11:50 25 1294757

>>1294622
Вот расскажи реально как. Я делал эксперименты десятками тысяч строк в цикле, которым форсил intern(), но так и не придумал условия, когда это будет иметь большую разницу.

Ответы297013

17 Кб, 480x360
26 13 ноя, 11:53 26 1294758

>>1294756
>int i = (int) double;

Ответы294766

27 13 ноя, 12:04 27 1294766

>>1294758
А. Стоп. Очепятка.
Но даже так, сраный BigInteger не хочет делится даже на int!

Ответы294768

28 13 ноя, 12:05 28 1294768

>>1294766
Случайно отправил.

А. Стоп. Очепятка.
Но даже так, сраный BigInteger не хочет делится даже на int!

Как его делить-то тогда? Пример брал отсюда и действовал по аналогии.
http://pr0java.blogspot.com/2015/05/biginteger-bigdecimal_70.html

Ответы294794

29 13 ноя, 12:51 29 1294794

>>1294768
https://ideone.com/ZvCKhS
Я шарпист сам, может хуйня, но это вообще первые две строчки которые я написал на джаве. Ну и я не понимаю чего ты добиться пытаешься к тому-же.

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

Ну и гуглить ты не умеешь.

Ответы294798294814

30 13 ноя, 13:05 30 1294798

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

Ответы294814

31 13 ноя, 13:32 31 1294814

>>1294794
>>1294798
1.Ну как бэ ясно должно быть, что сие - не коммерческий продукт или тестовое задание. Так что, я и учусь.
2.Т.е. я не могу переопределять значения переменной типа BigInteger? Стало быть, если я хочу использовать какой-нить цикл, то мне нужно будет создавать и уничтожать переменные?

Ответы294854294887

32 13 ноя, 14:40 32 1294854

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

Короче, в этом конретном случае метод divide() класса BigInteger принимает значение Bigint, а ты пытался передать туда int.

Насколько помню в жабе нет перегрузки операторов, следственно ты можешь сделать свой метод вроде IntToBigInt(int a) и возвращать из него BigInteger со значением a, например.

Ответы294883

33 13 ноя, 14:48 33 1294859

>>1294733
Всё так.

Алсо, можно использовать и сервлеты и спринг в одном приложении. Т.к. спринг нормально прикручивается к Java EE серверу.

А Java EE сервер с IOC-контейнером типа того, что в спринге люди юзали ещё до появления спринга, в начале нулевых (Caucho Resin). И по сей день юзают.

Ответы296990

34 13 ноя, 15:42 34 1294883

>>1294854
>чтобы записать интовые значения в BigInteger тебе нужно сначала их преобразовать к BigInteger
Т.е. бигинтерег можно складывать/умножать/делить только с другим бигинтегер? Бля. Збс.

>Насколько помню в жабе нет перегрузки операторов, следственно ты можешь сделать свой метод вроде IntToBigInt(int a) и возвращать из него BigInteger со значением a, например.
В смысле, написать свою функцию с преобразованием?

Ответы294885

25 Кб, 1152x201
35 13 ноя, 15:47 35 1294885

>>1294883
разве так сложно открыть доки?

Ответы294888

36 13 ноя, 15:53 36 1294887

>>1294814
BigInteger работает с помощью строк, а значит, что как и строки являестя immutale.

Ответы294888

37 13 ноя, 15:59 37 1294888

>>1294885
Я открываю, читаю и нихуя не понимаю. Сейчас я смог прикинуть то, что мне сказали и понял, что у этого класса есть метод для преобразования.
И да, прошу подтвердить или опровергнуть: получается, что BigInteger и BigDecimal - это единственные классы, которые используются для хранения значений? Ну т.е. класс-обертка - это ж ведь не полноценный класс, так?

>>1294887
Как так?
Я же могу изменить его значение, через математическую операцию:
rev = bi.add(rev);

?

Ответы294889294890

38 13 ноя, 16:05 38 1294889

>>1294888
>BigInteger и BigDecimal - это единственные классы, которые используются для хранения значений?
Нет, есть ещё Integer, Double... да куча их

>Ну т.е. класс-обертка - это ж ведь не полноценный класс, так?
Слово "обёртка" просто указывает на назначение этого класса. Никаких отличий с другими классами нет.

>Как так?
Ну мог бы загуглить для начала, что такое immutable классы. В кратце - вместо того чтобы изменять значение метод создаст новую переменную BigInteger с новым значением и присвоит ссылку на неё твоей переменной, а старую ссылку сделает null.
могу где-то проебаться с immutable, лучше загугли

Ответы294904

39 13 ноя, 16:13 39 1294890

>>1294888
Можешь, но скорее всего для хранения очень длинных чисел внутри bigint на самом деле строка. То что ты привел в пример, это создание нового Biginteger на основе старого, примерно как со строками, на самом деле ты ничего не меняешь в уже существующей переменной.

мимо тот самый шарпер

Ответы294892294902294904

40 13 ноя, 16:18 40 1294892

>>1294890
Чуть проебался, ты не меняешь нечего в уже существующем значении, а просто на его основе создаёшь новое, на которое будет ссылаться ссылочка rev, при этом старое значение из rev просто уничтожается.

Ответы294904

41 13 ноя, 16:36 41 1294902

>>1294890
>внутри bigint на самом деле строка
Можешь посмотреть исходники.
Я не смотрел, но, думаю, что там массив байтов, а не строка (в джаве это разные вещи).

Ответы294904

42 13 ноя, 16:37 42 1294904

>>1294889
>Слово "обёртка" просто указывает на назначение этого класса. Никаких отличий с другими классами нет.
Т.е. BigInteger и BigDecimal - тоже классы обертки? Просто я не встречал их в стандартных списках классов-оберток и подумал, что они как-то особняком стоят.

>Ну мог бы загуглить для начала, что такое immutable классы
Загуглил.
>Неизменяемый объект - это такой объект, чье внешнее видимое состояние не может измениться после его создания.

>>1294892
>>1294890
Окей. Как я понял: есть ячейка памяти (ну или группа). В них инфа. На это все ведет ссылка. Если это immutable, то информация в ячейках не меняется, а просто создается новое, с той же ссылкой, а потом приходит сборщик мусора и удаляет старое значение.
Ну т.е. immutable - это значение по ссылке (как и полагается объекту), а не по значению (как с примитивами)?

>>1294902
Так массив - это просто неразрывная цепочка байтов. Как может быть массив байтов?

Ответы294914

43 13 ноя, 16:49 43 1294914

>>1294904
> тоже классы обертки?
Ну раз ты так решил, то может скажешь мне что они оборачивают? Вот Integer оборачивает примитив int, Double - double... А что оборачивает BigInteger?

Ответы294915294922

44 13 ноя, 16:51 44 1294915

>>1294914
твою мамку

45 13 ноя, 16:53 45 1294916

Поясните пожайлуста, как происходит переход от бесконечного изучения, всей кор-хуйни, которую хуй знает где и как применить, которую изучаешь так долго по толстым книгам, что забываешь о чем там писал хуев автор 200 страниц назад. Блядь что я не так делаю? Какой надо код писать, в книгах его писать не учат. Как бля вкатится в ебаный джава джун? Если у него должен быть опыт 3 года кодинга хуй пойми чего - ava 8+
JUnit, Gradle (Groovy), Jenkins, FindBugs, JaCoCo;
Spring Core, Spring JDBC, Spring MVC, Spring Boot, Hystrix;
REST, JSON, Swagger;
PostgreSQL (Jooq, Flyway), Hazelcast, ElasticSearch, Kafka;
BitBucket (Git), Jira, Confluence;
Ansible, Zabbix, Grafana, Kibana, Zipkin;

Я читаю и читаю, книги по кроу, а когда захожу на хх.ру, у меня опускаются руки. Пиздос.

Ответы294923294930295064

46 13 ноя, 16:58 46 1294922

>>1294914
>Integer оборачивает примитив int
Это не называется "оборачивать".
Это называется "боксинг".

47 13 ноя, 16:59 47 1294923

>>1294916
Пусть меня поправят, если это не так, но думаю, что на джуна минимум половину твоего списка можно выкинуть.

Ответы294929

48 13 ноя, 17:02 48 1294926

>>1294482 (OP)
Как распарсить JSON с глубокой вложенностью в объект без вложенности, содержащий все поля json'а?

Ответы295159

49 13 ноя, 17:05 49 1294929

>>1294923
Остальную половину ты знаешь?

50 13 ноя, 17:05 50 1294930

>>1294916
Ты перечислил хуеву тучу всяких баззвордов.
Большинство из которых не имеет никакого отношения к умению программировать.

"Кор" - это сам язык программирования джава + стандартная библиотека (то, что входит в состав JDK). Всё остальное сделано из этого.

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

> как происходит переход
Надо писать программы. И читать программы.

Ответы294936

51 13 ноя, 17:08 51 1294936

>>1294930
>Надо писать программы.
Какие? И как этому научиться?

Ответы294942294944

52 13 ноя, 17:17 52 1294942

>>1294936
Любые.

Смотри, что делают другие, и пробуй сам.

Вот это вот посмотри, и поищи что-то с подобными названиями:
https://scanlibs.com/izuchaem-java-na-primerah-i-zadachah/

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

Ответы294946

53 13 ноя, 17:18 53 1294944

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

Ответы294962295009

54 13 ноя, 17:19 54 1294946

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

55 13 ноя, 17:20 55 1294948

>жаба
>высокий порог вхождения.
Уахахахаххахах.

Ответы294954

56 13 ноя, 17:20 56 1294951

Анон, как тестировать Spring Security?

57 13 ноя, 17:23 57 1294954

>>1294948
Сынок, токсичные пидорасы идут в /бэ.

58 13 ноя, 17:33 58 1294962

>>1294944
Пример книги есть?

Ответы294964

59 13 ноя, 17:37 59 1294964

>>1294962
https://www.amazon.com/Murachs-Java-Servlets-JSP-Murach/dp/1890774782
я читал эту, годная книга

60 13 ноя, 17:43 60 1294969

>>1294558
Head First по жабке одна из самых охуительно написанных книг.
Это именно учебник с объяснением и рассказом на пальцах + задания для самостоятельной работы. Написана очень хорошо и толково, особенно для тех кто только начинает программировать.

А Шилдт и Хорстман это высушенный в урюк reference book без задачи научить читателя чему-либо. Официальные туторы Оракл и то намного лучше объясняют чем эти телефонные справочники.

Ответы294975

61 13 ноя, 17:54 61 1294975

>>1294969
Ну не знаю, мне Шилдт зашел. Он не так уж и сухо объясняет, примеры приводит. При объяснении того же ООП, например.

62 13 ноя, 18:01 62 1294976

А что про Яков Файна думаете?

Ответы294977

63 13 ноя, 18:05 63 1294977

>>1294976
Жид

Ответы294981

64 13 ноя, 18:10 64 1294981

>>1294977
А про его 24 hr Java trainer книгу?

65 13 ноя, 18:27 65 1294985

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

Ответы294989294991

66 13 ноя, 18:34 66 1294989

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

Ответы294995

67 13 ноя, 18:34 67 1294991

>>1294985
Тут люди дальше кора не ушли, о чем ты.

Ответы294992

68 13 ноя, 18:39 68 1294992

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

Ответы294996

69 13 ноя, 18:40 69 1294995

>>1294989
Объясни тогда что такое замыкания, с примером если можно.

Ответы294997295006

17 Кб, 300x494
70 13 ноя, 18:42 70 1294996

>>1294992

Ответы295000

192 Кб, 512x512
71 13 ноя, 18:49 71 1294997

>>1294995
Замыкание (англ. closure) в программировании — функция первого класса, в теле которой присутствуют ссылки на переменные, объявленные вне тела этой функции в окружающем коде и не являющиеся её параметрами. Говоря другим языком, замыкание — функция, которая ссылается на свободные переменные в своей области видимости.

Ответы295000

72 13 ноя, 18:53 72 1295000

>>1294997
>>1294996
Суть треда.

73 13 ноя, 19:17 73 1295004

А чем занимаются джуны на работе?

Ответы295062

74 13 ноя, 19:20 74 1295006

>>1294995
>что такое замыкания

Если знаешь немного ООП, то представь это как некий класс.
В этом классе есть внутренние переменные (поля).
И есть метод doSomething(...) - аналог нужной тебе функции.
Этот метод имеет изнутри доступ ко всем полям класса (это контекст этой функции).
И к своим параметрам.
И может что-то делать со всем этим.

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

Частый случай применения замыканий - возвращение функции из другой функции, и возвращённая функция имеет доступ к переменным в том месте, где она была создана, в том числе, к параметрам исходной функции.
Т.е., как будто из функции вернули объект класса, в котором эти переменные запомнились.

Вот тебе классический пример замыкания на Груви:
https://groovyconsole.appspot.com/script/5075549181444096

Выбери там edit in console и там уже можно запускать.
Потом перепиши на джаве (код будет почти такой же).

Ответы295030

75 13 ноя, 19:27 75 1295009

>>1294944
И куда идти с этим всем? У тебя самого как было в плане начинания и вкатывания?

Ответы295026

76 13 ноя, 19:50 76 1295026

>>1295009
>И куда идти с этим всем?
Я не он, но отвечу.

Это - и есть самый охуенный вопрос.
Потому, что есть куча примеров, когда люди с низкой квалификацией успешно работают в хороших местах, и наоборот.

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

Если же тебя интересовало, куда идти со знанием сервлетов-jdbc-jsp и прочего Java EE, ответ - куда угодно. Это используется везде буквально, где речь идёт о джава бекэнде. А Спринг - это альтернативная технология, по идее - то же самое. И доучиться (даже не пере-учиться) - не так сложно.

77 13 ноя, 19:56 77 1295030

>>1295006
А вот ровно тот же самый пример, но не с лямбдами/замыканиями, а с классами:

https://groovyconsole.appspot.com/script/5081059658039296

То же самое совершенно, но более многословно.
Но, и более явно и понятно, что откуда берётся.

Ответы295040

78 13 ноя, 20:10 78 1295040

>>1295030
Сложновато, я совсем тупой видимо, но спасибо.
Пытаюсь вот это понять, но не понимаю, тоже:
public class TestLambdaWaitNotify {
private static Runnable getMktNewsRunnable(Object whoToNotify){
// returning a closure
return () -> {
try{
for (int i=0; i<10;i++){
Thread.sleep (1000); // sleep for 1 second
System.out.println("The market is improving " + i);
}
synchronized(whoToNotify){
whoToNotify.notify(); // send notification to parent
}
}catch(InterruptedException e ){
System.out.println(Thread.currentThread().getName()
+ e.toString());
}
};
}
public static void main(String args[]){
TestLambdaWaitNotify thisInstance = new TestLambdaWaitNotify();
Runnable mktNewsRunnable = getMktNewsRunnable(thisInstance);
Thread marketNews = new Thread(mktNewsRunnable,"");
marketNews.start();
synchronized (thisInstance) {
try{
thisInstance.wait(20000); // wait for up to 20 sec
} catch (InterruptedException e){
e.printStackTrace();
}
}
System.out.println(
"The main method of TestLambdaWaitNotify is finished");
}
}

78 13 ноя, 20:10 78 1295040

>>1295030
Сложновато, я совсем тупой видимо, но спасибо.
Пытаюсь вот это понять, но не понимаю, тоже:
public class TestLambdaWaitNotify {
private static Runnable getMktNewsRunnable(Object whoToNotify){
// returning a closure
return () -> {
try{
for (int i=0; i<10;i++){
Thread.sleep (1000); // sleep for 1 second
System.out.println("The market is improving " + i);
}
synchronized(whoToNotify){
whoToNotify.notify(); // send notification to parent
}
}catch(InterruptedException e ){
System.out.println(Thread.currentThread().getName()
+ e.toString());
}
};
}
public static void main(String args[]){
TestLambdaWaitNotify thisInstance = new TestLambdaWaitNotify();
Runnable mktNewsRunnable = getMktNewsRunnable(thisInstance);
Thread marketNews = new Thread(mktNewsRunnable,"");
marketNews.start();
synchronized (thisInstance) {
try{
thisInstance.wait(20000); // wait for up to 20 sec
} catch (InterruptedException e){
e.printStackTrace();
}
}
System.out.println(
"The main method of TestLambdaWaitNotify is finished");
}
}

Показать весь текст
Ответы295054

79 13 ноя, 20:27 79 1295054

>>1295040
Дружище, если эти два примера выше (makeAdder) тебе "сложноваты" - это нормально.
Сиди и медитируй над ними, пока не станет просто.

Экспериментировать можно прямо в консоли.
Код на Груви - это, по сути, джава код, с кучей вкусного сахара.

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

Там основной поток запускает на выполнение фоновый поток, и передаёт фоновому потоку себя же, чтобы фоновый поток уведомил его, когда закончит работу.

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

Ответы295057

80 13 ноя, 20:32 80 1295057

>>1295054
Так автор объясняет вейт и нотифай и за одно замыкания.

a->a+n это лямбда выражение? а def это от слова define ?

>Сиди и медитируй над ними, пока не станет просто.
Я постараюсь.

Ответы295067

6 Кб, 250x250
81 13 ноя, 20:35 81 1295060

Поясните за Kotlin?
Я правильно понимаю, что это сахарная поебота для хипстеров и реально на этом сейчас пишут 3.5 кулхацкера, из которых 3 - создатели самого Котлина.

Ответы295061295067

82 13 ноя, 20:38 82 1295061

>>1295060
>реально на этом сейчас пишут 3.5 кулхацкера, из которых 3 - создатели самого Котлина.
На него переехало 69% андройд комьюнити. Остальные легаси проекты покрываются им тоже.

мимоандройд.

Ответы295086

83 13 ноя, 20:39 83 1295062

>>1295004
В основном, гуглят.
Мимоджун

Ответы295063

84 13 ноя, 20:40 84 1295063

>>1295062
А какие задачи перед тобой например ставят?

Ответы295068

85 13 ноя, 20:44 85 1295064

>>1294916
1/3 из всего перечисленного учится за две недели практики суммарно пока изучаешь остальное. Базарю, берешь и учишь спринг+скуль, остальное придет по ходу дела.

Ответы295084

86 13 ноя, 20:45 86 1295065

Блядь, что сделали с идеей?

87 13 ноя, 20:51 87 1295067

>>1295057
>a->a+n это лямбда выражение? а def это от слова define ?
Да.

def - это ещё и "как-бы тип". Как Object в джаве, но только в объявлениях. Т.е. def foo = 3 то же самое что int foo = 3 или Object foo = 3. В смысле, в груви можно и так и так.

Список:
def myList = [1, 2, 3]

Map:
def myMap = ['one': 'Один', 'two': 'Один', 'three': 'Три']

Проход по списку:
myList.each {println it}

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

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

Груви охуенен для прототипирования и тестов (Spock framework).
Ну и Gradle, конечно.
Инфы много, можешь погуглить.

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

>>1295060
На котлине много пишут под андроид.

87 13 ноя, 20:51 87 1295067

>>1295057
>a->a+n это лямбда выражение? а def это от слова define ?
Да.

def - это ещё и "как-бы тип". Как Object в джаве, но только в объявлениях. Т.е. def foo = 3 то же самое что int foo = 3 или Object foo = 3. В смысле, в груви можно и так и так.

Список:
def myList = [1, 2, 3]

Map:
def myMap = ['one': 'Один', 'two': 'Один', 'three': 'Три']

Проход по списку:
myList.each {println it}

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

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

Груви охуенен для прототипирования и тестов (Spock framework).
Ну и Gradle, конечно.
Инфы много, можешь погуглить.

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

>>1295060
На котлине много пишут под андроид.

Показать весь текст

88 13 ноя, 20:53 88 1295068

>>1295063
Ну что-то в духе
1)Вот задача от аналитика, вот что у нас в бд, спроси у фронтенд-куна как ему удобнее будет делать запросы и сделай микросервис.
2)Юзер словил багу/сервер упал, посмотри в чем дело и почини.
3)Иди к дба-куну, у нас запросы медленные чёт стали, посмотрите там чё там и как-нибудь оптимизируйте к следующей версии.
4)Нам нужна/заказчик хочет/из соображений безопасности требуется фича Х. Тимлид говорит используй силу инструмент Y.

Берешь, гуглишь как, делаешь.

Ответы295331

89 13 ноя, 21:22 89 1295084

>>1295064
Учу спринг по Ютубу. Но хотелось бы практики, что посоветуешь?
А еще, что такое Куль?

Ответы295091

90 13 ноя, 21:23 90 1295086

>>1295061
А хули в вакансиях это не отображено?

91 13 ноя, 21:36 91 1295091

>>1295084
>Куль
Скуль, лол.

SQL.
Читается, это кстати, как "сиквел" (устоявшийся англоязычный жаргонизм).

Ответы295092296547

92 13 ноя, 21:37 92 1295092

>>1295091
А че там учить-то я не пойму? Команду SELECT?
Правда, не пойму. Посмотрел курс на Stepik: какая-то поебота.

Ответы295095295299

93 13 ноя, 21:43 93 1295095

>>1295092
Ну, выходит, ты уже всё знаешь.
Пора на работу.

94 13 ноя, 21:45 94 1295096

>>1294615
Ага, и даже про пул интеджеров

Ответы295296

95 13 ноя, 21:48 95 1295103

Расскажите(покажите) внятно на пальцах, что такое REST?

Ответы295104296105

96 13 ноя, 21:50 96 1295104

>>1295103
CRUD методы через HTTP запросы.

Ответы295148295278

97 13 ноя, 23:09 97 1295148

>>1295104
Мы вам перезвоним)

Ответы295155

98 13 ноя, 23:18 98 1295155

>>1295148
А я не возьму!))

99 13 ноя, 23:27 99 1295159

>>1294926
Jackson ObjectMapper попробуй

Ответы295294

100 14 ноя, 07:49 100 1295251

Допустим, есть интерфейс с генериком

interface Cat<T extends Food> {

T getFavoriteFood();

List<Integer> getAllTeeth();

}
Вопрос. Почему возникает

Unchecked assignment: 'java.util.List' to 'java.util.List<java.lang.Integer>'. Reason: 'cat' has raw type, so result of getCountOfTeeth is erased

В методе

void doSomething(Cat someCat) {
List<Integer> teethList = someCat.getAllTeeth();
}

если тип в листе не генерик и не имеет отношения к Т?

sage 101 14 ноя, 08:41 101 1295258

Смотри в переменной cat и методе getCountOfTeeth, то что ты дал отношения к проблеме не имеет.

Ответы295277

102 14 ноя, 10:32 102 1295277

>>1295258
Это был, конечно, абстрактный и упрощенный пример.
Но я создал этот интерфейс с котом ради теста, и в другом классе - метод, который принимает этот интерфейс. Только то, что в посте, ничего лишнего.
И все так же подсчет зубов кота вызывает

Unchecked assignment: 'java.util.List' to 'java.util.List<java.lang.Integer>'. Reason: 'cat' has raw type, so result of getAllTeeth() is erased

Какая-то неведомая ебаная хуйня

Ответы295284

103 14 ноя, 10:38 103 1295278

>>1295104
а кому и зачем это нужно? какая связь между понятиями рест и вебсервис?

Ответы295297

104 14 ноя, 10:53 104 1295284

>>1295277
>Какая-то неведомая ебаная хуйня
Это известная хуйня.
Не указал параметр типа - нет дженериков для этого объекта.

Алсо, в данном случае достаточно написать doSomething(Cat<?> someCat)

Т.е. ты явно говоришь, что тебе похуй на параметр типа.

Ответы295288

105 14 ноя, 11:02 105 1295288

>>1295284
Теперь все понятно. Очень познавательно. Сяп.

106 14 ноя, 11:09 106 1295294

>>1295159
Я и так использую jackson. Не знаю, как замапить структуру с вложенностью на плоскую структуру.

Ответы295306

107 14 ноя, 11:09 107 1295296

>>1295096
Правило №1: пользуйся equals

108 14 ноя, 11:10 108 1295297

>>1295278
Приложение на жабаскрипте общается с баком так

Ответы295298296076

109 14 ноя, 11:10 109 1295298

>>1295297
*Бэком

110 14 ноя, 11:17 110 1295299

>>1295092
Как минимум джойны, хранимки, апсерт и под/предзапросы.

111 14 ноя, 11:22 111 1295302

Посоны, изучаю Stream в 8 джаве. Есть такая конструкция:

Files.readAllLines(Paths.get("c:/1.txt"),Charset.forName("Cp1251")).stream(). ...

Как этот поток разбить и вывести пословно, побуквенно?

Ответы295324

112 14 ноя, 11:24 112 1295306

>>1295294
Не надо ничего мапить в джексоне.
Надо загрузить объект как он есть (с его нормальной иерархией) в Map или в экземпляр класса, а потом - руками его преобразовать в то, что тебе надо.

Если полей много и писать преобразование руками лень - напиши простой генератор кода - на базе данных из json-строки или через reflection исходного объекта/класса.

113 14 ноя, 12:12 113 1295322

Подскажите зеленому, пж.
Считываю csv файл, с этими данными надо вести расчеты. Если в первой строке 2 значения 2 полей больше 2 значений 2 полей во во второй строке, то надо считать и делать операции и так до конца файла.
Как это легче реализовать, я ещё мало что толком знаю, поэтому не понимаю, сюда надо коллекции прикручивать и делать из файла строки и как-то считать, или юзать бд лучше. Спасибо

Ответы295327

114 14 ноя, 12:12 114 1295324

>>1295302
Решил сам так:
Files.readAllLines(Paths.get("c:/1.txt"),Charset.forName("Cp1251")).stream().flatMap((s)->Arrays.asList(s.split(" ")).stream()).forEach(s-> System.out.println(s));

Ответы295552

115 14 ноя, 12:33 115 1295327

>>1295322
Читай файл построчно:
https://www.mkyong.com/java8/java-8-stream-read-a-file-line-by-line/

Лучше - через stream, хотя не обязательно.

Из каждой строки делай объект.
Сделай класс, у которого есть нужные поля.
Строку разбивай через split.
Числа - Integer.parseInt(), Double.parseDouble()
Создавай объект и заполняй поля.
Не забывай сначала сделать trim() для всех полей.

Потом - проходишь по списку и делаешь, что надо.
Можно предварительно отфильтровать, если это stream.

linesStream -> map(line -> lineObject) -> filter(...) -> reduce (? или что там тебе надо).

Если со стримами не работал - сначала сделай просто на циклах.

Ответы295858

116 14 ноя, 12:54 116 1295331

>>1295068
Как ты устраивался на работу? хх.ру?

Ответы295335295398

117 14 ноя, 13:09 117 1295335

>>1295331
двачую вопрос

118 14 ноя, 14:32 118 1295378

>>1294482 (OP)
Сложный JSON приходит на рест-апи, мапится в иерархию классов и передается в другой слой приложения (сервисы) для обработки. При ошибке нужно вернуть json, содержащий несколько полей. Как из слоя сервисов вернуть JSON с ошибкой? Написать свой класс исключений с нужными полями, перехватить исключение в сервисе и сконвертировать в json?

Ответы295407295705

119 14 ноя, 15:17 119 1295397

Сервис должен принимать/возвращать дто или энтити?

Ответы295470

120 14 ноя, 15:25 120 1295398

>>1295331
Да, дрочил тестовые в начале и конце лета в июле гиблый период для устройства, в сумме где-то 10 тестовых, 5 собесов, 3 предложения, 2 на жабе.

Ответы295399

34 Кб, 1080x319
121 14 ноя, 15:28 121 1295399

>>1295398
Вдогонку, резюме висит где-то с апреля.

Ответы295413295481

122 14 ноя, 15:49 122 1295407

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

А дальше - возможны варианты.

Как правило, в таких случаях прикладная функция всегда возвращает результат. Этот результат - либо объект ошибки, либо объект результата.
Если функция (по логике) void - то всё равно надо возвращать объект, это может быть просто строка "OK", например.

Естественно, возвращаемый объект сериализуется в json и передаётся куда надо, и, соответственно, там обрабатывается - проверяется, что вернули и т.п.

И, как правило, возвращаемый объект - это специализированный контейнер, в котором уже лежит результат или ошибка. И может быть дополнительная информация.

Подобный подход применяется в функциональном программировании, и по тем же причинам - в ФП всё должно являться значением, чтобы можно было делать конвейер из функций. А исключения - это как goto - очень некошерно.

Как конкретно это реализовать - думай сам.
Можешь посмотреть книгу Functional Programming in Java (Manning, 2017):
https://scanlibs.com/functional-programming-java-improve-programs/

См. главу Handling Errors Without Exceptions.

Ответы295484295512

123 14 ноя, 16:02 123 1295413

>>1295399
А что ты знал перед устраиванием? Че на собеседование было? Задания тестовые можешь сбросить куда-нибудь?

Ответы295481295739

294 Кб, 883x1005
124 14 ноя, 16:07 124 1295417

Хало, подонки.

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

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

Часть про классы и методы конечно проще писать в самом коде, но тем не менее..

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

Ответы295422295433295739

677 Кб, 1080x962
125 14 ноя, 16:18 125 1295422

>>1295417
IntelliJ IDEA.

Ответы295434

240 Кб, 355x409
126 14 ноя, 16:25 126 1295429

Кармак в свое время написал замечательную игру Doom RPG, пошаговую ролевую (уровня Diablo/Rogue) 3D игру во вселенной Doom.
Игра для мобильных телефонов на J2ME, ныне вымерших.
К сожалению, все известные эмули ее либо не берут, либо тормозят, либо коряво отображают изображение.
Конечно, можно купить какой-нибудь древний телефон на Avito, но хотелось бы играть на компе.
Можно ли на Java написать движок, эмулирующий классы J2ME и запускающий Doom RPG на компе, с OpenGL и полноэкранным видом?

127 14 ноя, 16:30 127 1295433

>>1295417
Ничего не понял.
Если тебе нужно проектирование архитектуры сложного приложения, то учи UML и используй соответствующий софт.
Если ускорение разработки, то любая IDE (для Java это IDEA, Eclipse, NetBeans) + нужные плагины. Крупные компании могут писать плагины сами.

Ответы295445

128 14 ноя, 16:30 128 1295434

>>1295422
Но.. это же среда разработки приложения, а не написания архитектуры или проектной документации.

129 14 ноя, 16:32 129 1295436

Пытаюсь осилить юниттестирование и всякие там TDD.
И никак не приходит в голову, нахуя я это делаю.
Да, позволяет избегать регрессии кода и тд и тп, так говорят.
Но все не покидает чувство, что я пишу тесты ради тестов, бесполезное говно, которое частенько занимает больше усилий, чем основной код. Тем более, статическая типизация и checked exceptions не дают написать ничего лишнего, что свалит программу, если это не какой-нибудь null. А покрыть все возможные ситуации входных аргументов и того, что они там делают - в большинстве случаев нельзя, ибо зависит от состояния объекта и состояния самих входных параметров.

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

Ответы295450295562

130 14 ноя, 16:47 130 1295445

>>1295433
В том то и проблема, что и я сам до конца не понимаю о чем пишу да,да,да тупо. Просто понимание того, что кто-то уже должен был сделать такую программу, которая бы продвигалась как универсальная платформа для проектирования любых идей. Как это обычно бывает там должен быть какой-нибдуь позитивнй окрас так и намекающих манагеру, что очень хорошая идея купить эту приложуху за 19.99$.

А в итоге ничего. Да, есть зубодробительный UML с соответсующим софтом убивающий всякое желание воображать возможности и ограничения пока несозданной проги. Есть и плагины для IDEшек, но это всё же низкий уроень проектирования - классы, методы. Или есть какой-то крутой модуль для IDEA/Qt о котором я не знаю?

В общем, не ищи здесь смысла.

Ответы295457295472

131 14 ноя, 16:51 131 1295450

>>1295436
Писать тесты скучно и долго, но они необходимы. Иначе прога может вылететь у юзера по неизвестной причине, и отлавливать без тестов баги очень тяжело (особенно плавающие, которые возникают не всегда). Отладка глюков работающего приложения требует намного больших усилий, чем написание тестов, не говоря уже про огромные Enterprise системы.
С одной стороны, конечно, Java и C# спасают от многих багов, возможных в C/C++, вроде выхода за границы буфера, переполнения стека и т.д. С другой, в любом серьезном проекте используются тонны сторонних библиотек и фреймворков, и где-нибудь обязательно вылезет баг. Юнит-тесты позволяют быстро отыскать и пофиксить его.
Не только в коммерческом софте, но и в успешных open source проектах большая часть кода - это тесты (см. исходники SQLite, например).
Только очень небольшие программы (менее десятка классов) можно писать без тестов.

132 14 ноя, 16:58 132 1295457

>>1295445
Ты зря про UML, очень удобная вещь. Нас задрачивали по нему в универе.
Можно ведь брать и использовать только то, что тебе нужно - например, диаграммы классов, компонентов, состояний и последовательностей, а на всякие actors и packages забить, если тебе они не нужны.
ИМХО, прогер уровня Senior должен владеть UML.

133 14 ноя, 17:17 133 1295470

>>1295397
дажваны, кто-нибудь скажет?

Ответы295484

134 14 ноя, 17:21 134 1295472

>>1295445
Может вот это тебе подойдет?
https://ru.wikipedia.org/wiki/Microsoft_Project
Прога для менеджеров, я в ней не шарю.

135 14 ноя, 17:28 135 1295481

>>1295399
>>1295413
Бро, сбрось сюда тестовые свои izvM,atertANUSgmailD6CPUNCTUMcoVbmm если жив еще!?

Ответы295739

136 14 ноя, 17:29 136 1295484

>>1295470
Зависит от задачи.
С учётом вот этого: >>1295407 - так вообще ни то, ни другое, а контейнер с результатом.

Ответы295512

137 14 ноя, 18:17 137 1295512

>>1295484
>>1295407
Можно же паковать свой эксепшен в контейнер, а контейнер сериализовать в json. С исключениями же гибче получится, разве нет?

Ответы295534

138 14 ноя, 19:25 138 1295534

>>1295512
>Можно же паковать свой эксепшен в контейнер, а контейнер сериализовать в json.
А я о чём?
И не обязательно свой - можно и стандартный, в зависимости от того, где он выброшен.

Смысл в том, что на сервере эксепшн не выбрасывается, а возвращается как результат. А уже на клиенте можно его "выбрасывать" (в JS, например).

139 14 ноя, 20:05 139 1295548

>>1294482 (OP)
Как-нибудь можно разобрать war файл обратно в код?

Ответы295569295586

140 14 ноя, 20:20 140 1295552

>>1295324
Pattern.splitAsStream

141 14 ноя, 20:38 141 1295562

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

310 Кб, 600x513
142 14 ноя, 20:46 142 1295569

>>1295548
Parse love, not war.

Ответы295585

82 Кб, 610x520
143 14 ноя, 21:29 143 1295585

>>1295569

144 14 ноя, 21:31 144 1295586

>>1295548
jd.benow.ca

145 15 ноя, 06:15 145 1295705

>>1295378
Если юзаешь Спринг, то можно кидать из сервиса исключение и ловить его в @ExceptionHandler.

Ответы295742

146 15 ноя, 08:49 146 1295739

>>1295413
>>1295481
https://github.com/wolches то что гитовал. Попробую ещё поискать, но ничего не обещаю.
>>1295417
https://start.spring.io

Ответы295861295862295863295885

147 15 ноя, 08:52 147 1295742

>>1295705
В ответе нужно возвращать несколько полей из принятого джейсона. Звучит легко, но пробросить ответ из нижнего слоя бизнес-логики в контроллер - задача.

Ответы295768

148 15 ноя, 10:44 148 1295768

>>1295742
Гугли ResponseEntityExceptionHandler.

149 15 ноя, 14:37 149 1295857

>>1294482 (OP)
Нужно обработать JSON с глубокой вложенностью по такому алгоритму:

1) Принять данные на REST API на спринге
2) Взять внутренную директорию JSON, вычислить от нее хэш
3) Добавить во внутренную структуру несколько полей
4) Сохранить в базе

Как лучше реализовать эту логику? Сразу преобразовывать JSON в HashMap в контроллере, или в контроллере принимать String, передавать ее в сервис и там выполнять все операции?

Кроме обработки внутренней структуры надо провалидировать поля из внешней структуры. Подводные кани есть и при мапинге JSON в иерархию объектов, и при мапинге в HashMap. Что из двух способов предпочесть? Для работы с моей БД HashMap более универсален.

150 15 ноя, 14:39 150 1295858

>>1295327
Спасибо большое, анон, почти все так и сделал и получилось, запихнул объекты этого класса в листы и теперь хуй пойму, как делать свои расчеты. Условно говоря, есть 10 листов и в каждом по 10 переменных, надо сравнивать 1 лист с 2, 2 с 3 и так до конца, если в 2 листе некоторые переменные больше чем в 1 делать определенные расчеты. Тыкни хоть, пожалуйста, что гуглить, пока работу с коллекциями гуглю
Вроде на словах просто, а на деле затуп

Ответы295959

151 15 ноя, 15:03 151 1295861

>>1295739
>https://github.com/wolches

а ты неплох

152 15 ноя, 15:05 152 1295862

>>1295739
Где ты и как учился, антон?

Ответы295886296020296034

153 15 ноя, 15:08 153 1295863

>>1295739
>https://github.com/wolches
>Эта аватарка
>huilib

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

Ответы295867

sage 154 15 ноя, 15:21 154 1295867

>>1295863
Адекватным взрослым людям интересны твои знания и навыки, а не аватарки.

Ответы295887

155 15 ноя, 16:07 155 1295885

>>1295739
Антош, а есть текст того чего хотят от тебя в этих заданиях? Я все это время, это имел ввиду.

Ответы296020

156 15 ноя, 16:08 156 1295886

>>1295862
В шестом училище, конно-вертолетный факультет.

157 15 ноя, 16:13 157 1295887

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

Ответы295894

158 15 ноя, 16:18 158 1295890

Стоит ли брать книгу с рук, скажем 2002 года издания? Бесплатно отдают

Ответы295913295919

sage 159 15 ноя, 16:43 159 1295894

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

Ответы296020

160 15 ноя, 16:56 160 1295897

>>1294482 (OP)
Накидайте, пожалуйста, репозиториев на гитхабе с хорошо реализованными REST API на Spring MVC. Хочу посмотреть, как люди пишут бизнес-логику и возвращают сообщения пользователю. Хелловорлды ничему не учат.

Ответы295922

161 15 ноя, 17:39 161 1295913

>>1295890
Смотря что за книга. Справочник по языку Шилдт однозначно нет. Thinking in Java Эккель можно взять.
Все равно на полке будет стоять, пыль собирать.

Ответы296281

162 15 ноя, 17:48 162 1295919

>>1295890
Да, если это какие нить классические паттерны, но все равно придется гуглить в конце концов

Ответы296281

163 15 ноя, 17:58 163 1295922

>>1295897
Вот мой говнопроект https://github.com/PaperPlane01/equinox-backend например. Но предупреждаю, я студентик и нигде не работал даже, поэтому это далеко не эталон, а мамкины сеньоры так и вовсе наверняка засрут.

Ответы295928296102

164 15 ноя, 18:08 164 1295928

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

1) данные не сохранились в базе по 2-3 причинам
2) данные не провалидировались в сервисе
3) данные некорректно обработались в сервисе

В ответе нужно вернуть несколько полей из данных.

Пробрасывать ResponseEntity через два слоя? Это же рак.

Ответы295931

165 15 ноя, 18:14 165 1295931

>>1295928
В случае возникновения исключительной ситуации бросаешь исключение и ловишь его в @ExceptionHandler.
https://github.com/PaperPlane01/equinox-backend/blob/master/src/main/java/org/equinox/exceptionhandler/RestApiExceptionHandler.java

Ответы295933

166 15 ноя, 18:16 166 1295933

>>1295931
В исключении я могу переслать в обработчик 2-3 поля данных (идентификаторы, которые надо вернуть пользователю)?

Ответы295936

167 15 ноя, 18:20 167 1295936

>>1295933
Хз, не пробовал. Но если нельзя, то мб прямо в исключении передавать нужную информацию?

Ответы295937

168 15 ноя, 18:21 168 1295937

>>1295936
В обычном исключении можно передать только строку. А мне надо передать объект, который надо сконвертировать в json и вернуть пользователю.

Ответы295939295940

15 Кб, 526x316
169 15 ноя, 18:31 169 1295939

>>1295937
Ну так сделай кастомное исключение, которому в конструктор можно передать объект. А потом через геттер к этому объекту обращайся.

170 15 ноя, 18:32 170 1295940

>>1295937
Сделай собственное исключение унаследовав его от Exception и хоть 9000 полей нужных тебе туда добавь.

Ответы295941

171 15 ноя, 18:35 171 1295941

>>1295940
>унаследовав его от Exception
Лучше от RuntimeException, чтобы не нужно было его ловить в том месте, где метод вызывается.

Ответы295942

172 15 ноя, 18:38 172 1295942

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

173 15 ноя, 18:59 173 1295954

Анон зачем нужен LDAP?
Чем хранение пользователей в БД не устраивает?

Ответы295961296094

174 15 ноя, 19:20 174 1295959

>>1295858
Проходишь в цикле первый список.
Для каждого элемента - вложенный цикл - сравнение этого элемента со всеми элементами другого списка, или даже всех других списков по очереди.
Используй флаги или запоминай мин/макс значения и т.п.

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

Возможно, каждый список объектов должен быть не совсем списком, а классом, в котором есть собственно список (в отдельном поле), и дополнительные поля для итогов, флагов и т.п.
А также, всякие хелпер-функции. Типа "сравнить (себя) с другим списком".

Наверное, надо будет сделать список, в котором будут все списки объектов, чтобы можно было их перебирать.

И т.д. и т.п.

И, сначала, неплохо бы чётко сформулировать постановку задачи.
И выразить результаты или условия в виде неких объектов.

175 15 ноя, 19:22 175 1295961

>>1295954
LDAP - иерархический (в отличие от SQL).
И это и есть "БД".

176 15 ноя, 21:31 176 1296020

>>1295894
Собственно, удваиваю этого сагера.
Аватарку поставил уже после того как устроился, лол.
>>1295862
>>1295885
Ололо, деанон.
splat logviewer - написать софтину для просмотра логов
nokia - там было несколько заданий, но представленные два про написание иерархии дата-классов и REST для них. Ещё в гистах скрытых лежат задания на бинарное дерево и ещё пару простеньких алгоритмов.
t-systems - описание в самом репозитории
severgroup - из логов в xml вытащить суммарное время активности пользователя по дням

Ответы296147

177 15 ноя, 22:17 177 1296034

>>1295862
Двачую вопрос

178 16 ноя, 00:00 178 1296076

>>1295297
хоооспаде..

179 16 ноя, 01:31 179 1296094

>>1295954
LDAP - протокол. Считай, как SQL (грубо говоря).
Хорош тем, что с ним интегрировано огромное количество различного софта. Если у тебя на работе Windows, то с вероятностью 99% у вас есть Active Directory для управления учетками сотрудников. AD поддерживает протокол LDAP, соответственно, если ты добавишь в свой софт (какую-нибудь систему для предприятия/бизнеса) аутентификацию через LDAP, пользователям не придется регистрироваться в твоей системе - они просто будут использовать свой логин/пароль от учетки Windows.

Ответы296473

180 16 ноя, 02:09 180 1296102

>>1295922
Как давно кодишь на джаве и в целом? Какой бэкграунд? Ты сейчас в лабе или пилишь курсач ератовский?

Ответы296115

181 16 ноя, 03:06 181 1296105

>>1295103
Это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. REST представляет собой согласованный набор ограничений, учитываемых при проектировании распределённой гипермедиа-системы. В определённых случаях это приводит к повышению производительности и упрощению архитектуры.

182 16 ноя, 03:51 182 1296115

>>1296102
На Джаве почти два года, в целом баловался кодингом где-то с 14 лет, когда у нас в школе на информатике начался Pascal/Delphi.
Во внутреннюю лабу меня не позвали. Там случилась странная ситуация, мне позвонили, спросили, хочу ли я пойти к ним во внутреннюю лабу, я ответил утвердительно, потом спросили смогу ли я совмещать стажировку с учёбой в университете, я ответил "Скорее всего да". Мне сказали, что со мной свяжутся и позовут к ним в офис, чтобы более подробно всё обговорить. И тишина. Потом недели через 4 мой одногруппник, у которого брат там работает, сказал мне, что меня не взяли из-за того, что я якобы сам отказался, так как типа не смог бы совмещать стажировку и университет. Такие дела

Ответы296146

183 16 ноя, 09:39 183 1296146

>>1296115
Ну я к тому, что нет смысла зацикливаться на ерате. Тебя на изи возьмут на стажировку в любой конторе, где есть стажеры. Меня в свое время взяли стажёром в то время как в ерате я даже собес на тренинг джава веб не прошел. И я вот сейчас 4 с копейками месяцев как джун, но я бы и близко вот такой код как у тебя там не написал. Ну я правда андроид, но параллельно я слегка и в спринг бут пытался В большинстве случаев о наборе стажёров не объявляют. Открываешь просто список контор в твоем городе, выбираешь те, что тебе подходят, и пишешь их эйчарам на почту или звонишь по телефону. Большинство проигнорят, но когда пригласят на собес, то тебя возьмут. Я тогда начал по алфавиту всем писать, и на букве E меня взяли но это не ерат. 90% даже не ответили на письмо, но первый собес - сразу всё. Так что вот так.

Ответы296151

184 16 ноя, 09:46 184 1296147

>>1296020
я много слышал о т-системз. что они такое на твой взгляд? ходил туда? там реально надо говорить на английском чтобы устроиться? что такое жаба скул?

Ответы296201296226

136 Кб, 720x1280
185 16 ноя, 10:04 185 1296151

>>1296146
Проблема в том, что в моём городе Караганда вакансий по Джаве почти нет. Точнее, кроме Epam, есть ровно одна компания, где применяют тот стек технологий, который я учу. Остальное либо Андроид, либо какая-то мутная хрень типа пикрелейтед.

Ответы296164296172

222 Кб, 604x463
186 16 ноя, 11:17 186 1296164

>>1296151
Где вакансий почти нет?

Ответы296181

187 16 ноя, 11:39 187 1296172

>>1296151
Ещё раз. Похер, есть в конторе вакансии или нет. Надо найти список всех. Да, у тебя в городе их не так много, но население под 500к, не может быть что только 2 на джаве пишут. Но тогда значит надо более настойчиво цепляться за них. Звонить, перезванивать самому, и т.д. А вообще в больших городах полегче будет конечно.

188 16 ноя, 11:55 188 1296181

>>1296164
в пизде

189 16 ноя, 12:50 189 1296198

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

Ответы296237

190 16 ноя, 12:56 190 1296201

>>1296147
Жаба-скул - это такое растянутое на два месяца собеседование. Кароч, по порядку. Сначала ты выполняешь тестовое задание (и походу их никто не смотрит, главное, чтобы плашка с Codeship присутствовала о том, что все тесты прошли). Потом тебя приглашают на тестирование (вопросы в духе quizful). Если на тесте набираешь 50%, то там же тебя и собеседуют. В основном задают вопросы по кору и ООП, но если ты не тупишь как мудак, то успевают залезть в многопоточность, SQL, HTTP-методы и даже паттерны. Плюс коротенечько проверяют твой английский (ну например собеседующий попросит тебя рассказать о своей учебе на английском) - быть носителем языка необязательно, достаточно знать чуть больше, чем "Лондон из зе кэпитал оф Грейт Британ".

Если ты прошел, начинается "учеба". Тебе дают проект (круд обыкновенный - сорт оф интернет-магазин - примерно в 3к строк жабы он выходит) и куратора, которого ты можешь дрочить с разными вопросами (естественно, не теми, которые гуглятся на раз-два) и он должен уделять тебе минимум два часа в неделю (но если ты не совсем мудак, то куратор тебе будет нужен только для того, чтобы указывать тебе на очевидные косяки и подсказывать что ты еще можешь реализовать). Параллельно ходишь на лекции (темы разные - от архитектуры ПО до EJB, но скорее для общего развития, потому что сложно покрывать такие темы за два часа). Собственно учеба длится два месяца. За первый месяц ты должен заебашить свой круд - требования - спринг (без читерства типа даты и бута, даже ломбок под вопросом), хибер, сесурити с каким-никаким юаем (если ты подцепил бутстрап - этого достаточно - никто не требует от тебя невероятного дизайна), мускул, JSP, maven, тесты. За второй месяц ты должен вылизать это приложение и допилить второе приложение (на EJB), которое получает от первого данные по ресту, а "общается" с ним посредством MQ. Ну и в оставшееся время показать какой ты молодец посредством добавления в свой проект всяких разных фишечек-хуишечек, типа смс-оповещения или Докера, или еще одного приложения, например (или Сонара - Сонар там по ходу просто маст-хэв в последнее время).

Со всей вот этой поеботой ты выходишь перед слушателями. За эти 15 минут ты должен успеть рассказать о том, что ты сделал, потом тебе зададут вопросы, возможно посмотрят код (поэтому если ты пишешь с magic number'ами вместо констант или называешь методы через нижнее подчеркивание как в сишечке, а не кэмелкейсом - это сразу бросается в глаза) и отпустят с миром доучиваться.

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

190 16 ноя, 12:56 190 1296201

>>1296147
Жаба-скул - это такое растянутое на два месяца собеседование. Кароч, по порядку. Сначала ты выполняешь тестовое задание (и походу их никто не смотрит, главное, чтобы плашка с Codeship присутствовала о том, что все тесты прошли). Потом тебя приглашают на тестирование (вопросы в духе quizful). Если на тесте набираешь 50%, то там же тебя и собеседуют. В основном задают вопросы по кору и ООП, но если ты не тупишь как мудак, то успевают залезть в многопоточность, SQL, HTTP-методы и даже паттерны. Плюс коротенечько проверяют твой английский (ну например собеседующий попросит тебя рассказать о своей учебе на английском) - быть носителем языка необязательно, достаточно знать чуть больше, чем "Лондон из зе кэпитал оф Грейт Британ".

Если ты прошел, начинается "учеба". Тебе дают проект (круд обыкновенный - сорт оф интернет-магазин - примерно в 3к строк жабы он выходит) и куратора, которого ты можешь дрочить с разными вопросами (естественно, не теми, которые гуглятся на раз-два) и он должен уделять тебе минимум два часа в неделю (но если ты не совсем мудак, то куратор тебе будет нужен только для того, чтобы указывать тебе на очевидные косяки и подсказывать что ты еще можешь реализовать). Параллельно ходишь на лекции (темы разные - от архитектуры ПО до EJB, но скорее для общего развития, потому что сложно покрывать такие темы за два часа). Собственно учеба длится два месяца. За первый месяц ты должен заебашить свой круд - требования - спринг (без читерства типа даты и бута, даже ломбок под вопросом), хибер, сесурити с каким-никаким юаем (если ты подцепил бутстрап - этого достаточно - никто не требует от тебя невероятного дизайна), мускул, JSP, maven, тесты. За второй месяц ты должен вылизать это приложение и допилить второе приложение (на EJB), которое получает от первого данные по ресту, а "общается" с ним посредством MQ. Ну и в оставшееся время показать какой ты молодец посредством добавления в свой проект всяких разных фишечек-хуишечек, типа смс-оповещения или Докера, или еще одного приложения, например (или Сонара - Сонар там по ходу просто маст-хэв в последнее время).

Со всей вот этой поеботой ты выходишь перед слушателями. За эти 15 минут ты должен успеть рассказать о том, что ты сделал, потом тебе зададут вопросы, возможно посмотрят код (поэтому если ты пишешь с magic number'ами вместо констант или называешь методы через нижнее подчеркивание как в сишечке, а не кэмелкейсом - это сразу бросается в глаза) и отпустят с миром доучиваться.

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

Показать весь текст
Ответы296202296226

191 16 ноя, 13:02 191 1296202

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

192 16 ноя, 15:01 192 1296226

>>1296147
Работаю в T-Systems. Преподаю в Java School. Вот этот >>1296201 анон в общем прав, с небольшой поправкой на итоговую защиту. Мы это организовали по-другому сейчас. Теперь студент сидит со своим ноутом в аудитории, к нему подсаживается какой-нибудь из преподов и начинает задавать вопросы по проекту. Всё про всё минут на пять-десять. Потом кураторы меняются со студентами. В итоге каждый студент общается где-то с пятью кураторами, каждый из которых потом пищет свой отзыв. Так достигается большая объективность.

Ответы296237296246

193 16 ноя, 15:22 193 1296235

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

Ответы296251

194 16 ноя, 15:24 194 1296237

>>1296198
Есть у нас гора микросервисов. Моя команда из 6 тел ответственна где-то за пять из них.

1) Заказчик хочет, чтобы в такую-то команду добавился такой-то параметр. Моя задача: подправить контроллер, написать API-тесты, захуячить логику в сервисе, написать unit-тесты, задокументировать фичу в доках, закоммитить в репу, задеплоить на dev среду, запилить автоматический интеграционный тест, прогнать его напротив dev, задеплоить на test, уведомить тестеров, чтобы покрыли фичу кейсами и прогнали напротив test.
Если на каком-то этапе вылез косяк — исправляем, хуярим по-новой.
В зависимости от сложности всё про всё от одного часа (если всё изменение укладывается в одну строчку конфига) до двух недель (если вылезла какая-то неочевидная хуйня, ставящая под сомнение текущую архитектуру, надо уже с архитекторами пиздить).

2) Фиксинг багов. В целом не сильно отличается от вышеописанного.

3) Нагрузочное тестирование сервиса. Разрабатываем сценарии, пишем perf-тесты, деплоим микросервис на perf-среду, гоняем, собираем замеры, составляем отчёт, шлём заказчику.

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

>>1296226-кун

Ответы296327

195 16 ноя, 15:43 195 1296246

>>1296226
Теперь и на итоговом показе тоже так?

Ответы296253

196 16 ноя, 15:51 196 1296251

>>1296235
connectionTimeout = -1 в томкатовском server.xml

197 16 ноя, 16:02 197 1296253

>>1296246
Хуй знает пока, у нас только первая школа, защита ещё впереди я с воронежского филиала.

198 16 ноя, 16:47 198 1296281

>>1295919
>>1295913

Java сборник рецептов для профессионалов
Ян дарвин

199 16 ноя, 18:22 199 1296327

>>1296237
>прогнать его напротив dev
>прогнали напротив test
>напротив
Это ты так "against" перевел на русский? Не делай так больше.

Ответы296341

200 16 ноя, 18:34 200 1296341

>>1296327
Нахуй иди. Перевод вполне нормальный и по смыслу понятен всем причастным к процессу.

Ответы296348

201 16 ноя, 18:38 201 1296348

>>1296341
Очко себе прогони напротив cock, Маня.

Ответы296373

289 Кб, 555x470
202 16 ноя, 18:43 202 1296356

Устроили тут /fag по одному антону. Что же это вы сами не можете разобраться как попасть на РАБоту.

мимоджун, которого взяли сегодня. Провалил до этого 2 собеса. 2-й собес провалил из-за одной хуйни в тестовом, о которой мне не сказали.

Вообще, если кому интересно, то в общем я написал 10 писем в разные компании, с приложенным cv офк. Ответили 4. Было 3 собеса, на третьем взяли. на 4 не пошёл ибо нехуй месяц тянуть кота за яйца.

Ответы296366296386296389

203 16 ноя, 18:54 203 1296366

>>1296356

Расскажи что умеешь? Скинь текст тестов сюда если умеешь почтой пользоваться izfT@atertANUSg1pimailPUNCTUMco.%Um !?

Ответы296386296387296389

204 16 ноя, 19:04 204 1296373

>>1296348
Смешно.

205 16 ноя, 19:12 205 1296378

Кто-нибудь работал с плагином мавен surefire?

Ответы296417

206 16 ноя, 19:23 206 1296386

>>1296356
>>1296366
И можно мне тоже?

207 16 ноя, 19:27 207 1296387

>>1296366
>Расскажи что умеешь?
Отпишу сухой стек, в cv я всё красиво расписывал.
Java Core.
SQL/PostgreSQL.
Spring/SpringBoot/SpringData/SpringMVC/SpringSecurity
JPA/Hibernate.
Maven/Tomcat.
Thymeleaf/JSP.
VCS: Git, Github
IDE : NetBeans/ IntelliJ IDEA

>умеешь почтой пользоваться
Не умею.))000)0

>Скинь текст тестов
На втором собесе мне ПРОСТО сказали сделать веб-хуйню, где пользователь может залогиниться/зарегаться/выйти из аккаунта. Я сделал на JDBC, а мне сказали, что ожидали от меня SpringData и JPA. Я спросил, почему не сказали ранее, я выбрал что чуть посложнее и просто потому что, мне сказали, что перезвонят.

На самом деле, ведь с JDBC это поебала куда сложнее, чем просто прописать entity на юзера и екстендить CrudRepository. Ебонутые.

Второе тестовое, которое дали на 3 собесе:
Create an application (Using Java 1.8 or higher) that serving the domain of Customers
and Orders.

Расписали подробно что им нужно и какая должна быть функциональность. За это им большой плюс.
Если вкратце, то: Новый юзер приходит. Он должен зарегаться/залогиниться. После того как залогинился, он будет в эдаком "личном кабинете". Из него он может
1) Выйти
2) Создать своего клиента
3) Добавить заказ или просто пометку уже существующему клиенту
4) Почекать какие записи и заказы есть у существующего им клиента
5) Посмотреть какие клиента не имеют ни записей, ни заказов

Сказали могу пользоваться чем хочу, но желательно использовать спринг по максимуму.

Вообще, как мне кажется, решающую роль в приёме на работе сыграло тот факт, что я сеньёру, который меня расспрашивал про тестовое и вообще задавал вопросы по всему, что я написал в cv, было то, что я ему в начале сказал, что я не особо помню многие вещи, с которыми давно или вообще не работал. Т.е если он хочет меня про MVC спрашивать, я ему в лёгкую распишу как работает моё тестовое и про любой мапинг и т.д, но если он начнёт меня ебашить каверзными вопросами про многопоточность, то я ничего не скажу. Офк я сказал что знаю что такое треды, как запускать, про дедлок, про synchronized и т.д, но я об этом знаю только по книжке, сам с этим ни разу не работал.
Ну и в таком стиле проходил собес. Он спрашивал, я говорил, если работал с этим, то могу пояснить за многие детали, что и делал дальше. Если не работал, то так и говорил, что только читал.

207 16 ноя, 19:27 207 1296387

>>1296366
>Расскажи что умеешь?
Отпишу сухой стек, в cv я всё красиво расписывал.
Java Core.
SQL/PostgreSQL.
Spring/SpringBoot/SpringData/SpringMVC/SpringSecurity
JPA/Hibernate.
Maven/Tomcat.
Thymeleaf/JSP.
VCS: Git, Github
IDE : NetBeans/ IntelliJ IDEA

>умеешь почтой пользоваться
Не умею.))000)0

>Скинь текст тестов
На втором собесе мне ПРОСТО сказали сделать веб-хуйню, где пользователь может залогиниться/зарегаться/выйти из аккаунта. Я сделал на JDBC, а мне сказали, что ожидали от меня SpringData и JPA. Я спросил, почему не сказали ранее, я выбрал что чуть посложнее и просто потому что, мне сказали, что перезвонят.

На самом деле, ведь с JDBC это поебала куда сложнее, чем просто прописать entity на юзера и екстендить CrudRepository. Ебонутые.

Второе тестовое, которое дали на 3 собесе:
Create an application (Using Java 1.8 or higher) that serving the domain of Customers
and Orders.

Расписали подробно что им нужно и какая должна быть функциональность. За это им большой плюс.
Если вкратце, то: Новый юзер приходит. Он должен зарегаться/залогиниться. После того как залогинился, он будет в эдаком "личном кабинете". Из него он может
1) Выйти
2) Создать своего клиента
3) Добавить заказ или просто пометку уже существующему клиенту
4) Почекать какие записи и заказы есть у существующего им клиента
5) Посмотреть какие клиента не имеют ни записей, ни заказов

Сказали могу пользоваться чем хочу, но желательно использовать спринг по максимуму.

Вообще, как мне кажется, решающую роль в приёме на работе сыграло тот факт, что я сеньёру, который меня расспрашивал про тестовое и вообще задавал вопросы по всему, что я написал в cv, было то, что я ему в начале сказал, что я не особо помню многие вещи, с которыми давно или вообще не работал. Т.е если он хочет меня про MVC спрашивать, я ему в лёгкую распишу как работает моё тестовое и про любой мапинг и т.д, но если он начнёт меня ебашить каверзными вопросами про многопоточность, то я ничего не скажу. Офк я сказал что знаю что такое треды, как запускать, про дедлок, про synchronized и т.д, но я об этом знаю только по книжке, сам с этим ни разу не работал.
Ну и в таком стиле проходил собес. Он спрашивал, я говорил, если работал с этим, то могу пояснить за многие детали, что и делал дальше. Если не работал, то так и говорил, что только читал.

Показать весь текст
Ответы296393

208 16 ноя, 19:30 208 1296389

>>1296356
>>1296366
И мне анончик! Если не сложно расскажи как учился и тесты на почку скинь. kapuch_ch:;KitraANUSpetu|kOchPUNCTUMi&y9n

Ответы296393

209 16 ноя, 19:40 209 1296393

>>1296389
>как учился
ЦЕЛЫЙ МАТЬ ЕГО ГОЖД Я ЧИТАЛ HEAD FIRST JAVA. Тупо потому что был блядский универ и читал на парах по пять-десять страниц. Летом занимался хуйнёй и что-то учил, что-то не учил, писал всякую хуйню на чистой джаве. Пробывал в постгрес с скл, дальше иннер джоина и селекта не дошел.
Потом я подумал, что ПОРА БЫ ПОЙТИ НА ГАЛЕРУ.
Пошел на первый собес, где меня обсосали, я не смог написать селект с подзапросом, не сделал простейшую сортировку хотя там можно было бы перегнать массив чисел asList в TreeSet, после чего в массив обратно. Так бы я избавился от всех дубликатов. Но я тупой и не смог.
После этого обоссывания, где с меня тихо проигрывали, я понял, что нужно блять что-то делать. За три дня я задрочил доки и офф туториал постгреса, после чего на codewars делать 4-ые каты. Потом начал дрочить спринг и пошел на второй собес, где дали тестовое. Дали неделю. За эту неделю я как черт учил спринг и делал тестовое. Т.е учился в бою. Пока ждал результаты, неистово дрочил хибернейт и додрачивал спринг.

В итоге, когда дали 3-е тестовое, я его сделал за два дня, особо не напрягаясь, потому что после неистового дроча в голове всё оселось. Воть, теперь буду писать и какоть микросервисы и бэкенд на галере.

>>1296387 -кун

210 16 ноя, 20:41 210 1296417

>>1296378
>Кто-нибудь работал с плагином мавен surefire?
А собсно чо надо то?

Ответы296419

211 16 ноя, 20:48 211 1296419

>>1296417
Хочу сделать следующее: запустить определенный набор тестов параллельно, подождать пока они все выполнятся и запустить другой набор тестов тоже параллельно. Я пока что реализовал это добавив несколько <executions>, в каждом прописав <goal>test</goal>, но в таком варианте между запуском наборов тестов появляется существенная пауза.

212 16 ноя, 21:09 212 1296427

Есть ли в спринг дате какая-нибудь стандартная идиома для такого случая:

1) Пришел запрос на добавление товара в корзину
2) Ищем подходящий (состояние только что создан, а не в процессе оплаты например);
3) Если не найден - создаем новый;
4) Добавляем в него (заказ) товар;
5) Сохранем заказ в репозиторий;

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

На методе сервиса стоит @Transactional, но чет не помогает. Заказ это гибернейтовская энтитя если что.

Подумал что можно конечно ебнуть syncronized(this) вокруг получения/создания подходящего заказ, но это выглядит как-то как как по мне, тем более тормозит других пользователей. Можно конечно пойти дальше и добавить double-check локинг, но это говно какое-то совсем.

Ответы296451296529

213 16 ноя, 22:21 213 1296451

>>1296427
>double-check локинг
Это нормально в данной ситуации, только не с syncronized(this), а с локом, относящимся к клиенту клиенту, для которого создается заказ

Ответы296456

214 16 ноя, 22:47 214 1296456

>>1296451
А когда эти локи удалять-то? А с дабл-локингом в принципе не часто попадаем в такую ситуацию.

Ответы296465

215 16 ноя, 22:52 215 1296457

Кто-нибудь использует Builder pattern при создании объектов?
а то такое чувство что эта красивая инициализация слишком уж дорого стоит
помимо геттеров и сеттеров придется еще пихать статический класс где на каждое поле будет сеттер

Ответы296458296530

216 16 ноя, 22:53 216 1296458

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

Ответы296462

217 16 ноя, 23:04 217 1296462

>>1296458
класс же сильно жирнеет
не лучшели просто чтобы сеттеры возвращали this
получится же почти тоже самое

Ответы296668

218 16 ноя, 23:08 218 1296465

>>1296456
Такое лучше делать не in-memory, а через pessimistic lock в БД (или что-то подобное), чтобы не потерять масштабируемость. Тогда и вопроса об удалении может не возникнуть. Но если хочется свои внутренние локи, можно их удалять через weak values.

219 16 ноя, 23:30 219 1296470

Ебать тут архитекторы собрались.

Ответы296530

220 16 ноя, 23:50 220 1296473

>>1296094
То есть в вебе нинужно? Только десктоп?

Ответы296505

221 17 ноя, 00:53 221 1296505

>>1296473
Што блять?

222 17 ноя, 02:05 222 1296529

>>1296427
Локи тут не помогут.
У вас сама идея порочна.

Создавайте пустой заказ в сеансе для каждого залогиненого пользователя.
И пишите всё в него.

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

Ответы296668

223 17 ноя, 02:07 223 1296530

>>1296457
Билдер нужен тогда, когда тебе надо именно создавать сложный объект, со сложной внутренней структурой.
В этом случае он предстаёт во всей красе.

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

В простых случаях достаточно сеттеров, возвращающих this или типа того.

>>1296470
>Ебать тут архитекторы собрались.
Собрались - это сильно сказано.
Заглядывают, иногда.

224 17 ноя, 02:20 224 1296534

есть тут автоматизаторы на кукумбере?)

225 17 ноя, 04:27 225 1296547

>>1295091
Сиквел, кстати не жаргон, а первое название языка - SeQueL (а не Structured Query Language, как принято считать)

12 Кб, 308x150
226 17 ноя, 06:46 226 1296552

Последние 2 были добавлены через форму внизу, пост заброс так сказатб, первые 2 добавленны просто sql запросом, собсна проблема ясна и понятна, в пост запросе кодировка летит к хуям, как фиксить?

Ответы296553

227 17 ноя, 06:55 227 1296553

>>1296552
Пофиксил

Ответы296563

228 17 ноя, 09:40 228 1296563

>>1296553
Как, сцуко?

Ответы296564

229 17 ноя, 09:42 229 1296564

>>1296563
В doPost добавил request.setCharacterEncoding("UTF-8");

Ответы296565

230 17 ноя, 09:55 230 1296565

>>1296564
можно что-то подобное добавить в .jsp файл

Ответы296567

231 17 ноя, 09:57 231 1296567

>>1296565
Хз, гугли.

232 17 ноя, 10:08 232 1296569

Вопрос по RX.
Есть кучка разных observable, которые должны как-то взаимодействовать через if/else, причем в одной подписке.

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

Ответы296590296691

233 17 ноя, 10:45 233 1296582

https://github.com/Weydile/Web-Bank-Application мде

234 17 ноя, 11:03 234 1296585

Господа джависты, почему не Котлин?

Ответы296593

235 17 ноя, 11:10 235 1296590

153 Кб, 1280x760133 Кб, 1280x760

>>1296569
Если я тебя правильно понял, то для этого есть операторы combineLatest и withLatestFrom. Первый выдаёт значение при получении нового объекта из любого Observables, второй только на объект одного из них.

Ответы296691

236 17 ноя, 11:20 236 1296593

>>1296585
Котлин, ещё как

237 17 ноя, 13:13 237 1296659

Java господа, вопрос, нужно написать wifi lan messenger, какой фреймворк использовать, я так понимаю spring не катит?

Ответы296664296670

112 Кб, 240x180
238 17 ноя, 13:20 238 1296664

>>1296659
>Java господа

239 17 ноя, 13:32 239 1296668

>>1296462
Кто жирнеет? Билдер отдельный класс, у тебя в проекте гуава, апачи, спринг и куча другого говна, а ты из-за билдера экономишь на спичках.
>>1296529
Но локи помогли, проблема возникала при нескольких одновременных попытках добавить товар и если ебнуть десяточку параллельно возникала железно, попроверял для 10, 20, 100.
Вообще кажется можно решить через @Transactional, но пока не получилось, просто нужно найти такой режим что бы чтение энтитей реальное произошло и запись.

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

240 17 ноя, 13:39 240 1296670

>>1296659
Ну если ты придумаешь нахуя тебе там спринг, то почему-бы и нет, но думается мне тут все можно решить пир-ту-пир.

241 17 ноя, 14:27 241 1296691

>>1296590
Я не понял, как это относится к его вопросу?
Где обработка условия у тебя?

И ему надо делать ветвление, а у тебя - слияние.

Я просто тоже потихоньку ковыряю rx, и это очень интересный вопрос.

>>1296569
Думаю, тут надо использовать промежуточный узел - subject (приёмник
и передатчик в одном), и в нём принимать решение. Но, возможно, есть способ лучше, т.к. задача совершенно типовая.

Ответы296702

242 17 ноя, 14:43 242 1296700

Почему hibernate такое говно? Ну то есть из-за идиотской концепции маппить мутирование сущностей сразу на базу вытекает просто невыносимая сложность фреймворка.

Ладно это бы оно еще работало быстро, но это, к сожалению, так не работает.

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

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

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

243 17 ноя, 14:48 243 1296702

>>1296691
> И ему надо делать ветвление, а у тебя - слияние.
Ветвление делается в замыкании. Конкретно ветвление делается при помощи оператора withLatestFrom. Первый стрим это объект (или группа объектов), который нужно изменить, а второй - предикат, по которому ветвление и выполняется. Например так:

o1.withLatestFrom(o2, (e1, e2) -> {
if (e2.equals(true)) {
return e1;
} else {
return (int)e1 + 1;
}
});

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

Ответы296704296716

244 17 ноя, 14:54 244 1296704

>>1296702
>if (e2.equals(true)) {
УХ БЛЯ
я, конечно, понимаю, что это лишь пример, но ебатт

Ответы296708

245 17 ноя, 14:57 245 1296708

>>1296704
Error:(50, 20) java: bad operand types for binary operator '=='
first type: java.lang.Object
second type: boolean

Энджой ёр жава-генерики.

Ответы296710296711296712

246 17 ноя, 14:58 246 1296710

>>1296708
Говно какое-то, где автоанбоксинг?

Ответы296713

247 17 ноя, 15:00 247 1296711

>>1296708
if (e2), не?

Ответы296713

26 Кб, 682x180
248 17 ноя, 15:00 248 1296712

>>1296708
>Error:(50, 20) java: bad operand types for binary operator '=='
>first type: java.lang.Object
Вроде все ок

Ответы296713

249 17 ноя, 15:02 249 1296713

>>1296710
Ну можно написать if((Boolean)e2) { и будет тебе автоанбоксинг.
>>1296711
>>1296712
Вы путаете Object и Boolean. Анбоксится автоматом только последний.

250 17 ноя, 15:05 250 1296716

>>1296702
И в каком же случае у тебя "ничего не выдаётся"?
Перечитай условие.

Алсо, e2.equals(true) - проверяет сразу 2 вещи, а надо - одну.
Баг в таком случае искать заебёшься.

Про функциональщину я в курсе, лол.

Ответы296719296720

251 17 ноя, 15:07 251 1296719

>>1296716
> И в каком же случае у тебя "ничего не выдаётся"?
Увы, в функциональщине даже if'ы что-то всегда выдают. Просто их нужно игнорировать, для этого можно выдавать специальный синглтон, аналог void'а, а дальше его фильтровать.

Ответы296721

252 17 ноя, 15:08 252 1296720

>>1296716
> Алсо, e2.equals(true) - проверяет сразу 2 вещи
Он проверяет одну вещь - равенство e2 и true. Где тут две вещи-то?

Ответы296722

253 17 ноя, 15:12 253 1296721

>>1296719
>специальный синглтон, аналог void'а
Это ты так издалека начал про Option или Maybe?
Ещё раз - перечитай условие.

Алсо, реактивный != функциональный, про это тоже не надо забывать.
Я, всё же, думаю, что тут нужен subject.

Ответы297137

254 17 ноя, 15:13 254 1296722

>>1296720
>Где тут две вещи-то?
Как много нам открытий чудных, лол.
Он сначала проверяет, что это в принципе boolean.
И если нет - то возвращает false.

Ответы296723

255 17 ноя, 15:16 255 1296723

>>1296722
Кхе, это и подразумевается в "проверке на true", поскольку ничто кроме boolean (и его брата Boolean) это значение хранить не может. Я-то думал ты мне про null затирать начнёшь.

256 17 ноя, 20:52 256 1296864

>>1294482 (OP)
Хули у меня пакет не находится? Класспас прописал

Ответы296869

257 17 ноя, 21:07 257 1296869

>>1296864
Ну хуй знает.

Ответы296874

258 17 ноя, 21:11 258 1296874

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

259 17 ноя, 22:31 259 1296918

Насколько идиотской идеей будет в спринге создать десяток контроллеров (по одному на каждый метод небольшого РЕСТа) и вложить внутрь них статические классы запроса/ответа? Кто-нибудь вообще так делает?

Сейчас методы сгруппированы, а POJO запросов/ответов распиханы по отдельным файлам. И что-то как-то не очень удобно получается.

260 18 ноя, 01:07 260 1296982

102 Кб, 1461x131574 Кб, 2155x947

Блять, почему спринг перестал выполнять data.sql, причем недавно все нормально работало, spring.datasource.initialization-mode=always имеется.

261 18 ноя, 01:31 261 1296990

>>1294859
Ты просто не ебался с изменением/удалением persistent таймера.

Ответы296994

262 18 ноя, 01:49 262 1296994

>>1296990
Я использовал Quartz Sсheduler.
Ещё до появления EE6. И после тоже.

Ответы297002

263 18 ноя, 02:23 263 1297002

>>1296994
>Quartz
Далеко не всегда можно просто взять и подключить либу в проект.

264 18 ноя, 03:12 264 1297013

>>1294757
OOM от резко разросшегося пула при создании сообщения конкатенацией.

265 18 ноя, 09:09 265 1297049

Ну чЁ, Free2Play Джаванисты, скоро на мороз пойдете.

Java Будет такой же платной и дорогой, как C# (OS + Visual IDE)

Вкатывались-вкатывались, по своим курсам 2 года, а все работодатели будут переходить на язык будущего, на Haskell/SICP

Ответы297050297051297063297086

266 18 ноя, 09:12 266 1297050

>>1297049
>
>Ну чЁ, Free2Play Джаванисты, скоро на мороз пойдете.
>
>Java Будет такой же платной и дорогой, как C# (OS + Visual IDE)
>
>Вкатывались-вкатывались, по своим курсам 2 года, а все работодатели будут переходить на язык будущего, на Haskell/SIC
Уже вижу, как маня-вкатывальщики переписывают свое Spring-гавнище на Deplhi

267 18 ноя, 09:12 267 1297051

>>1297049
> Ну чЁ, Free2Play Джаванисты, скоро на мороз пойдете.
Ты о чём вообще? Или ты один из тех истеричек, которые не понимают, что означает смена лицензии у оракловской java11?

Ответы297090

3 Кб, 170x170
sage 268 18 ноя, 10:14 268 1297063

>>1297049
Птздец опять переучиватся...

269 18 ноя, 11:39 269 1297086

>>1297049
Ты какой-то долбоеб. Во-первых с C# ты тоже нихуя ни за что не платишь, комюнитевской студии хватает вкатывальщику, дальше если какое-то платное говно это проблемы работодателя. Во-вторых вкатывальщик опять же ничего не платит ораклу если его продукт не коммерческий. Так что платить ораклу будут распильщики которые вместо переезда на опенждк/еще какого менее жадного вендора выберут говноракл. Ну или попадут те команды которые супер сильно завязались на проприетарные фичи хотспота.

Ответы297214

270 18 ноя, 11:49 270 1297090

>>1297051
И что она означает? И Как платные обновления с новой лицензией связаны?

271 18 ноя, 13:11 271 1297137

>>1296721
А мне показалось, что он про Null-паттерн (что есть ad hoc говно и частный случай)

272 18 ноя, 15:06 272 1297214

>>1297086
Ну, конечно, маня. Бесплатный он только для тебя.
А вот работодатель\галеровладелец за отдел таких C# макак выложит гораздо больше денег, чем раньше за java. У джавы хотя-бы IDE есть бесплатные

273 18 ноя, 15:22 273 1297219

Нужно приделать пользователю аватарку в виде картинки. Хранить картинку на диске + путь в БД или картинку прям в БД в виде блоба?
Спринг при входе / авторизации в защищенные слои приложения берет полностью запись из БД и вообще обращется к БД по объекту с полными полями ентити и выборка блоба замедлит это дело. Склоняюсь к варианту хранить на диске.

Ответы297220297223297231297316

274 18 ноя, 15:26 274 1297220

>>1297219
Разве нет специальных БД для хранения бинарных данных, который потом можно будет перетащить сразу на несколько серверов, если на одном вдруг перестанет хватать места?

Ответы297221297295

275 18 ноя, 15:27 275 1297221

>>1297220
В данном случае есть постргресс. И больше ничиго.

Ответы297222

276 18 ноя, 15:29 276 1297222

>>1297221
А что прикрутить что-то другое нельзя?

277 18 ноя, 15:30 277 1297223

>>1297219
Дополню. Думал еще про вариант амазон клауд. Но картинок будет не очень много глобально.

278 18 ноя, 16:05 278 1297231

>>1297219
>картинку прям в БД в виде блоба?
Никогда так не делайте. Файлы нужно хранить в файловой системе, она с этим справляется лучше, так как предназначена для этого. Файлы в БД не хранят. Складывайте в базу путь к файлу, но не сам файл. Это будет гораздо эффективнее.

Ответы297233297236

279 18 ноя, 16:11 279 1297233

>>1297231
Вот я к этому и склоняюсь. Если бы это была отдельная таблица чисто с картинками + связь 1 к многим к юзеру я бы еще подумал о хранении в БД. А так оно прям в табличке юзера будет. 1 картинка. хуй знает почему так не спрашивайте это не моя идея
Пишут есть минусы / плюсы у обоих подходов.
https://habiletechnologies.com/blog/better-saving-files-database-file-system/

280 18 ноя, 16:18 280 1297236

>>1297231
А как хранить большие тексты? Например есть блог и есть дохрена больших текстов.

Ответы297243297318

281 18 ноя, 16:34 281 1297243

>>1297236
>большие тексты
Тексты для людей хуйню весят. Все 3 книги Войны и Мир тупо текстом без сжатия около 3 метров весят.

Ответы297251

282 18 ноя, 17:02 282 1297251

>>1297243
То есть можно тупо писать прям в ДБ как текст? А разметка?

Ответы297268

283 18 ноя, 17:40 283 1297268

>>1297251
Ну и пиши в БД с разметкой. Можно дополнительно писать и готовый HTML-код, и оригинал с BB, Wiki или markdown -кодом, чтоб при редактировании (или переходе на другой движок) сохранить оригинал и снова преобразовать его в HTML. Просто научи движок для поиска (а в контексте Java это 100% будет Lucene) игнорировать разметку и всё будет нормально.

284 18 ноя, 18:24 284 1297285

Какие самые актуальные библиотеки/фреймворки для:
1) REST API;
2) Работы с JSON;
3) Dependency Injection?
Хотелось бы поменьше ебли с аннотациями и побольше типизированности.

Ответы297307297314297315297456

285 18 ноя, 18:47 285 1297295

>>1297220
Есть и дохуя, могущих в нормальную бинарщину. Кассандра, игнайт, хадуп стек, куча clustered file system databases (типа цефа, бигфса, гластерфса, тысячи их).

286 18 ноя, 19:02 286 1297307

>>1297285
Spring?

Ответы297312297317

287 18 ноя, 19:05 287 1297312

>>1297307
А нормальное что-нибудь есть?

Ответы297340

288 18 ноя, 19:10 288 1297314

>>1297285
Spring. На жаве тащем то ничего больше сейчас такого уровня нет как Spring.

Ответы297317

109 Кб, 441x600
289 18 ноя, 19:11 289 1297315

>>1297285

Ответы297317

290 18 ноя, 19:13 290 1297316

>>1297219
У entity оставляешь поле avatar_id/avatar_link/avatar_file (String). Отдельно создаешь interface FileService с CRUD методами. Реализации какие угодно: FileSystemFileService, DataBaseFileService, AmazonS3FileService и т.п.

Ответы297343

291 18 ноя, 19:13 291 1297317

>>1297307
>>1297314
>>1297315
Там до сих пор говно на аннотациях или уже завезли что-то получше?

Ответы297319297320

292 18 ноя, 19:17 292 1297318

>>1297236
Зависит от того, нужен ли тебе полнотекстовый поиск и насколько крутой. У postgres есть поддержка полнотекстового поиска, но не такая крутая, как у Solr или ElasticSearch.

293 18 ноя, 19:18 293 1297319

>>1297317
Завезли, теперь все легко и просто конфигурится через xml-файлы.

Ответы297321

294 18 ноя, 19:18 294 1297320

>>1297317
Аннотации в детстве за жопу покусали?
Можешь использовать XML или java config.

Ответы297321

295 18 ноя, 19:19 295 1297321

>>1297319
>>1297320
Толсто. То, что аннотации лучше XML-ресурсов, не значит что они не говно.

Ответы297389

296 18 ноя, 20:13 296 1297340

>>1297312
define нормальное

Ответы297342

297 18 ноя, 20:16 297 1297342

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

Ответы297345297349297370299799

298 18 ноя, 20:17 298 1297343

>>1297316
Ид и линк понятно зачем. поле файл зачем если картинка на диске / в файловой системе?

Ответы297384

299 18 ноя, 20:19 299 1297345

>>1297342
Чет ты дохуя хочещь.

Ответы297359

300 18 ноя, 20:36 300 1297349

>>1297342
Да ты охуел. Без километрового трейса никто не поверит, что ты серёзным дерьмом занимаешься!

Ответы297359

301 18 ноя, 20:50 301 1297358

Если я например хочу сравнить то что ввел юзер в окно и зашифрованный пароль в БД как я могу это сделать?
По идее даже одно и тоже значение после encode() будет давай каждый раз новый хэш.

Ответы297360

302 18 ноя, 20:51 302 1297359

>>1297345
>>1297349
И эти люди потом называют других смузихлёбами...

303 18 ноя, 20:51 303 1297360

>>1297358
Храни все возможные хэши в БД

Ответы297363

304 18 ноя, 20:58 304 1297363

>>1297360
Это ты себе как вообще представляешь?

Ответы297364

305 18 ноя, 21:00 305 1297364

>>1297363
Таблица в БД и ты SELECT'ом ищешь наличие нужного хэша

Ответы297367

306 18 ноя, 21:05 306 1297367

>>1297364
Ты или тралишь тупостью или не понимаешь о чем я.

Ответы297368

307 18 ноя, 21:06 307 1297368

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

Ответы297371

308 18 ноя, 21:09 308 1297370

>>1297342
По идее Play! поддерживает compile-time DI

Ответы297372

309 18 ноя, 21:09 309 1297371

>>1297368
Скорее принял за зеленого долбоеба. Ты опять пишешь хуету. Соль всегда рандомная.

Ответы297373297390

310 18 ноя, 21:10 310 1297372

>>1297370
Там же внутри акторы, а их в джаве использовать НЕУДОБНА

311 18 ноя, 21:11 311 1297373

>>1297371
В чём проблема игнорировать соль при вычеслении хэша?

Ответы297374297379

71 Кб, 600x600
312 18 ноя, 21:14 312 1297374

>>1297373

Ответы297375

313 18 ноя, 21:15 313 1297375

>>1297374
Нет, ты. Схуяли бы мне объяснять тебе вещи, которые элементарно гуглятся?

314 18 ноя, 21:21 314 1297378

Java

315 18 ноя, 21:26 315 1297379

>>1297373
Тебя сразу обоссать?

Ответы297382

316 18 ноя, 21:31 316 1297382

>>1297379
Ещё скажи, что ты и пароль не игнорируешь.

317 18 ноя, 21:34 317 1297384

>>1297343
Накроман, / значит или. Одного поля достаточно.

318 18 ноя, 21:38 318 1297389

>>1297321
Толсто - это описание твоей мамаши. Сказали тебе: конфигури как хочешь. XML/annotations/code - всё работает.

Ответы297391

319 18 ноя, 21:39 319 1297390

>>1297371
>Соль всегда рандомная.
Эксперт уровня /зк.

Ответы297417

320 18 ноя, 21:39 320 1297391

>>1297389
> Сказали тебе: жри говно как хочешь. Ложка/вилка/руками - всё воняет.

Ответы297392297393

321 18 ноя, 21:41 321 1297392

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

322 18 ноя, 21:45 322 1297393

>>1297391
Считать Спринг говном - это твоё право. Ты спросил как его можно конфигурить - тебе ответили, а ты всё воняешь. Да похуй мне на то нравится он тебе или нет.

323 18 ноя, 23:01 323 1297417

>>1297390
https://stackoverflow.com/questions/6832445/how-can-bcrypt-have-built-in-salts
Это только бскрипт. А шифрование идет не только через него.
Почитай как сейчас в 5м спринге генеряться пароли.

Ответы297459

324 19 ноя, 00:22 324 1297456

>>1297285
>Dependency Injection
Если поменьше аннотаций и побольше типизированности - то Guice.
Но, это только DI контейнер.

И, я не уверен, что есть смысл применять его в бекэнде.

А Спринг - это монструозная хуйня "платформа", если угодно. Всё в одном + возможность использовать любые сторонние либы.
Аналог Java EE в общих чертах, но с несколько иным подходом.

Так что, если мы про бекэнд - то только Спринг.

325 19 ноя, 00:32 325 1297459

>>1297417
"Всегда рандомная" и генерится первый раз, а потом запоминается - это разные вещи.

76 Кб, 1438x600
326 19 ноя, 01:22 326 1297468

Все таки у Head First были годные книги.

327 19 ноя, 07:02 327 1297514

Шифрую пароли шифром Цезаря. Ваши контр-меры?

Ответы297544297545297557

328 19 ноя, 09:45 328 1297541

Вопрос по Rx
Нормальна ли практика, чтобы в onNext subcriber'a создавать новые цепочки?
В интересах читабельности и поддержки кода, а то со всеми этими ветвлениями пиздец оверинженеринга какой-то.

Ответы297542297570

329 19 ноя, 09:46 329 1297542

>>1297541
>subcriber
Observer'a

330 19 ноя, 10:00 330 1297544

>>1297514
Опускаю стоимость твоих акций ниже плинтуса.

331 19 ноя, 10:02 331 1297545

>>1297514
Жму руку, повышаю до архитектора.

332 19 ноя, 10:30 332 1297557

>>1297514
Использую Брут.

Ответы297774

333 19 ноя, 11:04 333 1297570

>>1297541
>Нормальна ли практика, чтобы в onNext subcriber'a создавать новые цепочки?
Нет, onNext это место где ты применяешь то что пришло, если тебе так надо это как-то еще дополнительно провести по цепочке можно сделать так:
ConnectableObservable<T1> sharedObs = createObs().publish();
Disposable d1 = sharedObs.subscribe(/.../);
Disposable d2 = sharedObs.flatMap(/.../).subscribe(/.../);
Disposable d3 = sharedObs.connect();

Ответы297639

334 19 ноя, 14:07 334 1297639

>>1297570
И все же, тут предполагается один и тот же тип на все observable.
А что если, допустим, мне нужно проверить некоторое состояние, а при его успехе получить данные от двух возвращающих разные типы observable?
Например, проверить, есть ли в системе некоторый файл.
А при успехе
1) Один observable должен выдать кусочек его содержимого.
2) Второй должен сделать вообще какую-то левую херь вроде "число гномиков в саду у тети Сраки".
И результаты 1 и 2 нужно опубликовать во вью.

Ответы297640297656

335 19 ноя, 14:09 335 1297640

>>1297639
Зипнуть их обоих? Но тогда нужно будет создавать некий DTO. Без этого никак?

Ответы297645

336 19 ноя, 14:16 336 1297645

>>1297640
У меня просто в базовом классе есть наборчик методов, которым я передаю Observable и некую лямбду, которую нужно выполнить в onNext.
И я в данный момент так и делаю. И хотелось бы знать еще подводные, кроме того что несвязанные друг с другом прямо цепочки, подписанные на что-то, кроме
.subscribeOn(Schedulers.io())
могут ударить по производительности.
Но в случае Schedulers.io() это ведь пул, разве нет?

337 19 ноя, 14:33 337 1297656

>>1297639
>А при успехе
>1) Один observable должен выдать кусочек его содержимого.
>2) Второй должен сделать вообще какую-то левую херь вроде "число гномиков в саду у тети Сраки".
Или пусть будет еще и
3) Некий Completable должен что-то сделать и ничего не возвращать.

Ответы297665

338 19 ноя, 14:45 338 1297665

>>1297656
Хочется вот понять, почему в этом случае прерывать цепочку - это плохо, а ебать в рот модульность, понятные и явные абстракции, выписывать дивные нечитаемые столбы из >30 строк, у которых есть куда более краткие аналоги - это хорошо и православно?

Ответы297676

65 Кб, 1232x408
339 19 ноя, 14:47 339 1297668

Почему я не могу получать объекты? Если я введу в запросе там /test URL - ну тестирую чтобы было все ок - то он мне выдает тестовую строку. Когда я хочу получить объекты - он мне сука выдает такую страницу.

Как это фиксить? Я уже 2 часа сижу, подключил +4 какие-то либы - нихуя не работает. Хепланины аноны.

Ответы297701

340 19 ноя, 15:00 340 1297676

>>1297665
Ааа вот, надо так. Тебя это ебать не должно.

341 19 ноя, 16:25 341 1297701

>>1297668
????
У тебя темплейт на твой /test имеется?
Смотри в стакстрейс в консольке, там объясняют.

Ответы297716

342 19 ноя, 16:32 342 1297703

Подписался

Ответы297709297775

343 19 ноя, 16:39 343 1297709

>>1297703
Держи в курсе

Ответы297775

344 19 ноя, 16:50 344 1297716

>>1297701
Да блять. Какая-нахуй консоль, если я бросил его в тимкат? на моей локалке все нормально работало.

В итоге - добавил пару либ из старой версии + убрал синглтон, который держал вечную ссылку на удаленную бд и все заработало нахуй.

- 4 часа жизни сука. Я 16 сущностей war наплодил за это пвремя. пиздец.

Ответы297823

345 19 ноя, 18:35 345 1297774

>>1297557
Лол.
Силу Брута же.

346 19 ноя, 18:38 346 1297775

>>1297703
>>1297709
2 дебила это сила.

347 19 ноя, 20:29 347 1297823

>>1297716
>синглтон
ебать, дед, здарова

348 19 ноя, 21:25 348 1297844

Есть смысл укатываться дальше восьмёрки?
Чет там дальше var какие-то завезли, на платную основу переходить хотят, вообще охуеть.

281 Кб, 429x429
349 19 ноя, 22:55 349 1297894

Господа, кто-нибудь пытался пристроить ассемблерные вставки в жабу? И если да, то как это можно устроить путем наименьшей ебли? Надеюсь, что jni через какие нибудь плюсы, это не наименьшая ебля

Ответы297939297943

350 20 ноя, 00:47 350 1297939

>>1297894
>
ты долбоеб? жаба платформонезависимая, процессор может быть любой - от ARM до Эльбруса ебать.

Ответы297973

351 20 ноя, 01:01 351 1297943

>>1297894
Только JNI.
И ассемблерные - это ты загнул.
Обычно обходятся сишным кодом.

Ничего особо сложного в этом нет.
А если взять JNIWrapper (https://www.teamdev.com/jniwrapper), то вообще охуенно.

Ответы298046

352 20 ноя, 02:27 352 1297973

>>1297939
>жаба платформонезависимая
ору

Ответы297975298112298114

353 20 ноя, 02:41 353 1297975

>>1297973
Ей даже на фактическую длину машинного слова похуй.

354 20 ноя, 02:43 354 1297976

>>1294490
Топ. Спасибо, многочаю тебе.

355 20 ноя, 03:30 355 1297983

Мидлы на месте?

356 20 ноя, 10:00 356 1298046

>>1297943
Спасибо

357 20 ноя, 12:36 357 1298112

>>1297973
Ну так-то jar с хеллоуворлдом одинаково

447 Кб, 600x450
358 20 ноя, 12:37 358 1298114

>>1297973
Ну так-то jar c хеллоуворлдом одинаково работает под win, *nix и macos.

359 20 ноя, 13:21 359 1298145

https://github.com/Weydile/Web-Bank-Application рейт

Ответы298164298167

360 20 ноя, 14:13 360 1298164

>>1298145
>https://github.com/Weydile/Web-Bank-Application
Хули тебя рейтить?
Ты ленивое гавно раз в неделю по коммиту делаешь.
Код нужно каждый день писать ебта.

Зелень гитхабу!

Ответы298166

361 20 ноя, 14:15 361 1298166

>>1298164
>Код нужно каждый день писать ебта.
Я и пишу, но 90% на гитхаб заливать смысла нет.

362 20 ноя, 14:15 362 1298167

>>1298145
Давно занимаешься?

Ответы298168

363 20 ноя, 14:15 363 1298168

>>1298167
С сентября.

Ответы298169298209

364 20 ноя, 14:16 364 1298169

>>1298168
Вроде не плохо

365 20 ноя, 14:40 365 1298190

Где можно найти все тэги thymeleaf а? Включая security extras под спринг. По сайту тимлифа посика нет вроде.

366 20 ноя, 15:28 366 1298209

>>1298168
Быстрый ответ: какой метод сервлета обслуживает запросы?

Ответы298236298243

367 20 ноя, 15:43 367 1298213

Рвусь в джуны, как думаете стоит дальше этим заниматься или погромирование не мое?
https://github.com/etipsum

Ответы298238

368 20 ноя, 16:25 368 1298236

>>1298209
>какой метод сервлета обслуживает запросы
Эм... Любой? Ну ты наверное пост имел ввиду.

369 20 ноя, 16:28 369 1298238

>>1298213
У андрюши свой тред вроде есть, думаю там лучше спрашивать.

370 20 ноя, 16:38 370 1298243

>>1298209
Service()
мимо-прочитал-по-диагонали-head-first

Ответы298276

371 20 ноя, 17:32 371 1298276

>>1298243
да, там как раз заостряется на этом внимание

372 20 ноя, 18:41 372 1298299

Ну, есть варик фрилансить на Java. Подружиться с Android SDK и вперед.

Ответы298306

373 20 ноя, 18:59 373 1298306

>>1298299
Так Андроид же вроде всё) Скоро гугл новую ОС выкатит.

Ответы298312298320

374 20 ноя, 19:16 374 1298312

>>1298306
А там на каком ЯПе приложухи будут? Создадут отдельный, как свифт?

Ответы298324

375 20 ноя, 19:16 375 1298313

Учим апплеты в шараге, для этого скачали старую версию огнелиса. Ура.

Ответы298321

376 20 ноя, 19:30 376 1298320

>>1298306
Как только так сразу.

377 20 ноя, 19:32 377 1298321

1,6 Мб, 1600x11681,6 Мб, 1600x1167827 Кб, 1300x9531,4 Мб, 1600x1167

>>1298313
>2019
>апплеты
Что за шарага?

Ответы298343

378 20 ноя, 19:34 378 1298324

>>1298312
Возможно на Dart, но это не точно.
https://www.techyourchance.com/will-google-betray-kill-android/
Читать в шапочке из фольги.
tl;dr Гугл не хочет терять статус монополиста и пытается шантажировать/угрожать, если не получится будет соскаивать на новую ось, но нужно постелить соломку что бы макаки портировали приложения, а говновендоры запихнули это в девайсы.

379 20 ноя, 19:53 379 1298343

>>1298321
Политех. Мы до этого swing учили, препод обещает всем 100к зарплаты при выпуске с красным дипломом.

Ответы298344298665

380 20 ноя, 19:53 380 1298344

>>1298343
:^)

381 20 ноя, 20:09 381 1298353

Сделол форму в спринге.
Из формы беретуся данные для апдейта сущности - ну и обновление БД. И через сейв метод круда с таким же ид и через просто АПДЕЙТ частичный.
Если делаю анотацию постмаппинг - все ок. все обновляется
Если @Patchmapping или @PutMapping
Получаю Request method 'POST' not supported.
Вопрос почему патч / пут не работают хотя наверно они были бы более уместны.

Ответы298355

382 20 ноя, 20:11 382 1298355

>>1298353
Потому что форма делает POST запрос бля.

Ответы298356

383 20 ноя, 20:13 383 1298356

>>1298355
Ну а как еще из формы получить данные для модели?
Если че то форма создается сперва через гет - который берет данные из БД и показывает уже заполненую форму.
Тогда в каком случае применять эти две аннотации?

Ответы298357

384 20 ноя, 20:14 384 1298357

>>1298356
Применять если с клиента будет приходить Patch и Put соответсвенно.

Ответы298361

385 20 ноя, 20:19 385 1298361

>>1298357
Окей. как с клиента получить патч или пут?

Ответы298364

386 20 ноя, 20:20 386 1298364

>>1298361
Ты наверное имел в виду отослать? А тут уже хуй знает, это зависит от технологии клиента.

Ответы298367298378

387 20 ноя, 20:26 387 1298367

>>1298364
Видимо через хтмл никак. Там я только форму с постом знаю.

388 20 ноя, 20:36 388 1298378

>>1298364
Ладно спасибо, на жвскрипе допишу тогда мож быть если лень не станет. Там че хочешь отправляй.

Ответы298464298468

389 20 ноя, 22:37 389 1298464

>>1298378
Ну, вся эта хрень и рассчитана на джаваскрипт, в первую очередь.
Из html формы можно только get или post.

Можно и из джавы, в спринге же есть RestTemplate:
https://www.baeldung.com/rest-template

390 20 ноя, 22:39 390 1298468

>>1298378
Ну, и, конечно же, в IDEA есть встроенный REST-клиент.
Ты ведь используешь идею?

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

Ответы298507

391 20 ноя, 23:21 391 1298507

>>1298468
Идею да. Без нее никуда. Мне кажется я без нее не смогу уже ничего.
Рест хорошо конечно, но все рано нужен жвскрипт по нормальному.

392 20 ноя, 23:40 392 1298514

Зачем в спринге создавать конструкор и пихать туда то что уже есть с @Autowired? Оно же и так работает.

Ответы298515298542

393 20 ноя, 23:42 393 1298515

>>1298514
Приведи пример

Ответы298520

394 20 ноя, 23:55 394 1298520

>>1298515
Разметки нет ессно. Но думаю понятно
@Controller
public class XuiController{

@Autowired
private PososanieService pss

//Иногда @Autowired тут. Иногда и тут и над pss.
piblic XuiController(PososaniService pss){
this.pss = pss;
}

как то так.
вся суть спринга блять

Ответы298522

395 21 ноя, 00:00 395 1298522

>>1298520
В конструктор - это кошернее.
И работает (инициализируется) быстрее.

Ответы298524298591

396 21 ноя, 00:03 396 1298524

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

Ответы298526298591298849

397 21 ноя, 00:05 397 1298526

>>1298524
Погугли, эту тему часто обсуждают.
Через конструктор - это классика.
Но, это не значит, что по-другому нельзя.

398 21 ноя, 00:48 398 1298542

>>1298514
чтобы потом в юнит-тестах моки подставлять

399 21 ноя, 01:55 399 1298591

>>1298524
Не слушай >>1298522 этого. Он конечно прав, но дело не в быстроте. Конструктор кошернее, потому что это нагляднее (читай безопаснее), проще тестировать, нельзя схлопотать нульпоинтерэксепшн, и как плюс сразу видно, когда ты проебываешься по single responsibility

400 21 ноя, 06:08 400 1298665

>>1298343
>обещает
Ловите нормиса, который верит пирдуну, что он научит тому на чем сам мог бы рубить бабки но сидит в полятехе. А нормис на дваче шитпостит на аплеты сам не зная, что их юзают даже в сбертехе, в который пойдет полы мыть, чурка.
Пачан, у меня ДВА друга толмача закончили пту а второго пидорнули с мифи после первого курса, пошли работать на 80 косарей джава крудами. Сейчас большие люди уже.
Нахуя ты ходишь в свой чмотех? лучше бы джава изучал.

Ответы299024

16 Кб, 236x293
401 21 ноя, 08:55 401 1298679

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

402 21 ноя, 10:49 402 1298767

пока у меня тут вот что нарисовалось:

https://pastebin.com/Xbdnw462

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

Ответы298993

403 21 ноя, 12:37 403 1298849

>>1298524
Обычно все инъектируемые поля делают final, опять же в целях кошерности (а также иммутабельности, хотя вряд ли кто будет писать код, где это понадобится), и в этом случае спринг сможет их присвоить только через Autowired-конструктор, а иначе класс тупо не скомпилируется.

Ответы298986

404 21 ноя, 15:07 404 1298982

Не успела выйти выйти JDK 12 как жавабляди соснули у питонобогов.

Ответы298993

405 21 ноя, 15:08 405 1298986

>>1298849
Я так понимаю, что после изучения основ Java надо курить Spring и это займёт времени раза в 3 больше, чем собственно Java?

Ответы298990299048

406 21 ноя, 15:14 406 1298990

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

407 21 ноя, 15:16 407 1298993

>>1298767
http://www.adam-bien.com/roller/abien/entry/java_8_streaming_a_string

>>1298982
Это ты про появление типов в питоне или просто в лужу пёрнул?

Алсо, питон в принципе не годен для ФП из-за синтаксиса на отступах (поэтому и лямбд нормальных нет), так что питонобоги могут пойти вон в те кусты и отсосать друг у друга.

Ответы299247299263

408 21 ноя, 15:24 408 1299004

Господа. В планах вкатиться в джаву. Усиленно изучаю с апреля. На что следует особенно детальное внимание обратить перед первыми собеседованиями? Может какие дефолтные камни преткновения?

Пока баловался со стандартными вещами типа конкаренси, семафоры, экзекуторы, коллекции, swing, sql, немного пощупал IoC weld, lombok

Ответы299005

409 21 ноя, 15:25 409 1299005

>>1299004
Шапку читай

Ответы299029

410 21 ноя, 15:55 410 1299024

>>1298665
>Ловите нормиса
Ты в сарказм чужих не можешь?

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

Ответы299040299149

411 21 ноя, 16:01 411 1299029

>>1299005
Пусть тред читает, тут уже отписывал те, кто свой стак приводил.

412 21 ноя, 16:17 412 1299040

>>1299024
Сынок - апплеты - охуенны.
В корпоративной среде, естественно.

Да, я понимаю, почему их прекратили поддерживать.
Но, адекватной замены - нет (ибо web start тоже похерили), и это очень плохо.

И, я думаю, что те, кто сейчас использую апплеты, будут продолжать это делать до тех пор, пока совсем не прижмёт, т.е. ещё лет 6-8.
И, по этой же причине, IE11 никуда не денется ещё очень долго.

Так что, если ты не в теме - просто проходи мимо, не надо тут портить воздух.

Ответы299149

413 21 ноя, 16:29 413 1299048

>>1298986
Стоит ли в гитхаб заливать учебные проекты с ютюба в стиле "я пишу и объясняю вы повторяете"?

То есть вроде ты сам написал, а вроде нет.

414 21 ноя, 17:01 414 1299064

Перекатываюсь с С++ на Java и возник следюущий вопрос: какого черта более "безопасный" Java передает по умолчанию объекты в метод по значению ссылки? Да, ладно даже по умолчанию, так еще нельзя задать аналог const, чтобы объект нельзя было изменить.

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

Ответы299072299081299294299352299368

415 21 ноя, 17:09 415 1299072

>>1299064
Сделай поля final. Или не предоставляй публичных сеттеров

Ответы299159

416 21 ноя, 17:23 416 1299081

>>1299064
Потому что иммутабельность полей / переменных и иммутабельность объектов это две разные вещи.

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

Ответы299159

417 21 ноя, 17:27 417 1299087

Что скажете про JSP? Годная технология?

Ответы299089299130299196

418 21 ноя, 17:29 418 1299089

>>1299087
годность уровня апплетов

Ответы299090

419 21 ноя, 17:29 419 1299090

>>1299089
Но ведь js постепенно уходит...

Ответы299094299095

420 21 ноя, 17:31 420 1299094

>>1299090
Может быть, но ты думаешь на смену ему придёт jsp?

Ответы299097

421 21 ноя, 17:31 421 1299095

>>1299090
Войтивайти-дегенерат.

Ответы299100

422 21 ноя, 17:32 422 1299097

>>1299094
cgi скорее

423 21 ноя, 17:35 423 1299100

>>1299095
И я войду, вот увидишь! И не на какие-нибудь мейнстримные и банальные технологии, а на что-то новое и уникальное, где не будет конкуренции поначалу.

Ответы299103299105

424 21 ноя, 17:36 424 1299103

>>1299100
Ты не войдешь.

Ответы299106

425 21 ноя, 17:37 425 1299105

>>1299100
> а на что-то новое и уникальное
> где не будет конкуренции поначалу.
JSP хороший выбор!

426 21 ноя, 17:38 426 1299106

>>1299103
Не проецируй.

Ответы299108

427 21 ноя, 17:39 427 1299108

>>1299106
Войтивайти неприятно. Мне уже не грозит. А вот у тебя не получится.

Ответы299111

428 21 ноя, 17:43 428 1299111

>>1299108
>Мне уже не грозит.
Уже смирился и стал уборщиком, ой то есть джуниор клининг девелопер?

Ответы299113

429 21 ноя, 17:44 429 1299113

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

Ответы299115

430 21 ноя, 17:45 430 1299115

>>1299113
Я не могу проецировать чисто физически, потому что нигде не работал. А вот ты можешь.

Ответы299117

431 21 ноя, 17:48 431 1299117

>>1299115
> Я не могу проецировать чисто физически
Вот именно поэтому у тебя не получится, как я и говорил ранее - у тебя нет мозга по собственному признанию.

Ответы299120

432 21 ноя, 17:49 432 1299120

>>1299117
ебать ты лох)

Ответы299122

433 21 ноя, 17:50 433 1299122

>>1299120
Сраженный войтивайти беспомощно порвался и перешел на визг. Все ясно.

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

Ответы299124

434 21 ноя, 17:52 434 1299124

>>1299122
чмоха слилась и проецирует

435 21 ноя, 18:07 435 1299130

>>1299087
>jsp
Как там в 2005?

Ответы299258

436 21 ноя, 18:40 436 1299149

>>1299040
Спасибо, что ответил нубу.
Так что поломойку уже нашли >>1299024.

437 21 ноя, 18:51 437 1299159

>>1299072
И то и другое какой-то костыль применимый только к классам, которые должны быть неизмененны вообще всегда после момента инициализации, а не в конкретном методе.
>>1299081
>>Потому что иммутабельность полей / переменных и иммутабельность объектов это две разные вещи.
И это как-то отвечает на мой вопрос?
>>Странно, что ты этого не понимаешь, имея "бэкграунд" в крестах. Похоже, что максимум что ты там можешь это хелло ворлд написать.
Похоже, что ты пидор. Попробуй опровергнуть.

Ответы299238

438 21 ноя, 19:53 438 1299196

>>1299087
Формально - это легаси.
Но, на самом деле - это простая и годная вещь.
С отличной инструментальной поддержкой и прекрасным быстродействием (в сравнении с пхп, руби, питоном).
Поэтому, отказываться от этого просто потому, что эта технология придумана давно - это не очень умный подход, попахивающий несвежим смузи.

У всех разные задачи.
Сейчас хайп на клауд и микросервисы. И в этом случае JSP - не используется.

Однако, для корпоративных задач, если не нужно _беспредельное_ масштабирование (которое вовсе не бесплатно само по себе) - классические серверы приложений (Java EE или классический спринг mvc) - вполне годная тема. Потому, что сильно упрощают разработку. А масштабирование делается через кластеры (см. Caucho Resin - охуенно быстрый и удобный JavaEE 6 сервер).

Вообще, давно уже надо понять, что больше нет рецептов, которые подходят всем и под любую задачу. Как минимум, надо разделять энтерпрайз (классика, десктопные клиенты и браузеры, огромные таблицы, формы на три экрана и т.п.) и ширпотреб (mobile first и прочая ебанина для народа - ютубы с твиттерами).

Ответы299472

439 21 ноя, 21:19 439 1299238

>>1299159
>только к классам, которые должны быть неизмененны вообще всегда после момента инициализации, а не в конкретном методе
А какой в этом смысл? Если ты не доверяешь методу то зачем его вызывать?

Ответы299666

440 21 ноя, 21:54 440 1299247

>>1298993
>из-за синтаксиса на отступах
>поэтому и лямбд нормальных нет
Чот орнул с эксперта

Ответы299252

441 21 ноя, 22:03 441 1299252

>>1299247
У тебя есть другая версия отсутствия в питоне нормальных лямбд?
Код с кучей лямбд реально стал бы нечитаемым, а читаемость кода - это фетиш для Гвидо.

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

Джава оуенна, а питон - годится только для скриптов.

Ответы299269299271

442 21 ноя, 22:09 442 1299258

>>1299130
Ну я так и думал.

Ответы299266

443 21 ноя, 22:16 443 1299263

>>1298993
так оно не работает, как там рассказывали или я хуй его знает

https://pastebin.com/AgAaybXL

Ответы299270

444 21 ноя, 22:16 444 1299266

>>1299258
Пытаешься быть тонким, лол?

445 21 ноя, 22:19 445 1299269

>>1299252
Что не так с лямбдами и отступами, петушара? Можешь хоть нормальный пример привести, а не КО-КО-КО?

Ответы299272

446 21 ноя, 22:19 446 1299270

>>1299263
>https://pastebin.com/AgAaybXL
У тебя лямбда в конвейере стрима сама возвращает стрим.
Это значит, что вместо map надо flatMap.
Гугол в помощь.

Ответы299314

447 21 ноя, 22:22 447 1299271

>>1299252
Хелоу, у любого ML-подобного языка синтаксис на отступах основан, и тем не менее везде там есть нормальные многострочные лямбды, и никто даже не думает, что может быть иначе. Только питонодауны что-то кукарекают про читаемость.

Ответы299274

448 21 ноя, 22:24 448 1299272

>>1299269
Петушара - это твой папа, лол.

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

Можешь ли ты привести пример кода на питоне (достаточно длинный), типа конвейера в стримах или в Rx в джаве с многострочными лямбдами на отступах (если бы они были в питоне)?

Ответы299285

449 21 ноя, 22:25 449 1299274

>>1299271
Речь не про сферический синтаксис на отступах, а про питон.

450 21 ноя, 22:46 450 1299285

>>1299272
многострочные лямбды не нужны, петушок. если они тебе по какой-то причине нужны, ты делаешь что-то не правильно. ПОДУМОЙ!

Ответы299637

28 Кб, 857x308
451 21 ноя, 22:46 451 1299286

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

<head>
<link rel=stylesheet type="text/css" href="1.css">
</head>
<body>
<script>
var n=10;
var s;
document.write("<table>");

for (i=1; i<=n; i=i+1)
{ document.write("<tr>")

for (j=1; j<=n; j=j+1)
{
st=(i+j)%2
if (st==0) s="class='r1'";
else s="class='r2'";
document.write("<td "+s+"> </td>");
}

document.write("</tr>");
}

document.write("</table>");
</script>
</body>

28 Кб, 857x308
451 21 ноя, 22:46 451 1299286

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

<head>
<link rel=stylesheet type="text/css" href="1.css">
</head>
<body>
<script>
var n=10;
var s;
document.write("<table>");

for (i=1; i<=n; i=i+1)
{ document.write("<tr>")

for (j=1; j<=n; j=j+1)
{
st=(i+j)%2
if (st==0) s="class='r1'";
else s="class='r2'";
document.write("<td "+s+"> </td>");
}

document.write("</tr>");
}

document.write("</table>");
</script>
</body>

Показать весь текст
Ответы299288299289299298

452 21 ноя, 22:50 452 1299288

>>1299286
Съеби, сука.

453 21 ноя, 22:51 453 1299289

>>1299286
О, я на jsp это попробую сделать. Хочешь?

Ответы299299

454 21 ноя, 23:03 454 1299294

>>1299064
Потому что в джаве нет понятия указателей, лол. Как ещё передать объект кроме как по ссылке?

Ответы299330

455 21 ноя, 23:11 455 1299298

>>1299286
https://pastebin.com/wrvbbuwq

456 21 ноя, 23:12 456 1299299

>>1299289
кек, орнул че то

61 Кб, 317x372
457 21 ноя, 23:42 457 1299314

>>1299270
Что так сложно? Уже пол вечера не вкурю, что там куда идёт.

Я на питоне сходу набросал, как это работать должно:

in_lines = ['saa', 'bbb', 'ff.ff']
allowed = set("abc.")
subst = '.'

out_strings = [ "".join(map( lambda c: c if c in alowed else subst, s)) for s in in_lines]

Ответы299328

458 22 ноя, 00:00 458 1299328

>>1299314
>Я на питоне сходу набросал
Так это ты тут флудишь про питон?

>сходу набросал
А теперь распараллель по ядрам, лол.

Ответы299333

459 22 ноя, 00:02 459 1299330

>>1299294
указатель и ссылка это такие разные вещи?

Ответы299337

460 22 ноя, 00:04 460 1299333

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

461 22 ноя, 00:22 461 1299337

>>1299330
А ты точно программистом работаешь?

Ответы299340

462 22 ноя, 00:27 462 1299340

>>1299337
такие разные вещи?

Ответы299342

463 22 ноя, 00:29 463 1299342

>>1299340
Достаточно разные, чтобы иметь разные названия.

Ответы299347

464 22 ноя, 00:44 464 1299347

>>1299342
но ссылка это тот же поинтер, только без ебучей арифметики с ним.

Ответы299352

465 22 ноя, 00:59 465 1299352

>>1299347
Вот ты доебался. Почитай спецификацию JVM, если хочется подробностей.

Это - >>1299064 - твой пост?
Да, в данном случае, можно сказать, что принципиальной разницы нет.

Почему всегда по ссылке?
Потому, что все объекты в хипе. В сишарпе, например (точнее, в дотнете) объекты могут быть на стеке. А в джаве (JVM) - нет.

Что с этим делать?
Применяют так называемое защитное копирование (руками копируют объект), но, это заёбисто.
Лучше - иммутабельные структуры данных и паттерны.

Иммутабельность - благо. А сборка мусора в отношении короткоживущих объектов весьма эффективна. Современная JVM - вообще весьма эффективная вещь.

Алсо, если ты пытаешься писать на джаве - делай это так, как принято на джаве. А не как на питоне, шарпе или 1С.

Ответы299368

466 22 ноя, 01:02 466 1299353

Почему окно блять не открывается я не пойму. Хуиты написал?

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
h1 {color:red;text-align:center;}
body {background-color:PaleGreen; font-weight:bold;}
input {font-weight:bold;}
</style>
<script>
function sqr()
{
// переменная р объект с именем t
var a=document.getElementById('name');
var b=document.getElementById('surname');
var c=document.getElementById('otchestvo');
var d=document.getElementById('dr');
var e=document.getElementById('mesto');
var f=document.getElementById('luzan');
var g=document.getElementById('neluzan');
// переменная r содержит значение свойства value этого объекта
x1=a.value;
x2=b.value;
x3=c.value;
x4=d.value;
x5=e.value;
x6=f.value;
x7=g.value;
var win=window.open("","","width=700,height=300");
win.document.open();
var str = "<h1>"О себе"</h1><hr><P>";
win.document.write(str);
var str = "<p>Я, "+x1+" " " "+x2+" " " "+x3+" родился в "+x4+" " " в городе "+x5+". Больше всего я люблю "+x6+" " " и очень не люблю "+x7+", но к сожалению приходится иногда "+x7+". </p>";
win.document.write(str);
str ='<input type="button" value="Закрыть"'+'onClick="window.close();">';
win.document.write(str);
// закрываем вывод в документ объекта win
win.document.close();
}
</script>
</head>
<body>
<h1>Анкета</h1>
<hr>
<form>
<br/>Фамилия:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type=text value="Жмышенко" id='surname' name="surname" size="30">
<br/><br/>Имя:&nbsp;&nbsp;&nbsp;&nbsp;<input type=text value="Валерий" id='name' name="name" size="30">
<br/><br/>Отчество:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=text value="Альбертович" id='otchestvo' name="otchestvo" size="30">
<br/><br/>Год рождения:&nbsp;&nbsp;<input type=text value="1990" id='dr' name="dr" size="30">
<br/><br/>Место рождения:&nbsp;&nbsp;<input type=text value="Чугуевка" id='mesto' name="mesto" size="30">
<br/><br/>Любимое занятие:&nbsp;&nbsp;<input type=text value="читать" id='luzan' name="luzan" size="30">
<br/><br/>Нелюбимое занятие:&nbsp;&nbsp;<input type=text value="учиться" id='neluzan' name="neluzan" size="30">
<br/><br/><input type=button value="Сформировать биографию" OnClick="sqr()">
<hr>
</form>
</body>
</html>

466 22 ноя, 01:02 466 1299353

Почему окно блять не открывается я не пойму. Хуиты написал?

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
h1 {color:red;text-align:center;}
body {background-color:PaleGreen; font-weight:bold;}
input {font-weight:bold;}
</style>
<script>
function sqr()
{
// переменная р объект с именем t
var a=document.getElementById('name');
var b=document.getElementById('surname');
var c=document.getElementById('otchestvo');
var d=document.getElementById('dr');
var e=document.getElementById('mesto');
var f=document.getElementById('luzan');
var g=document.getElementById('neluzan');
// переменная r содержит значение свойства value этого объекта
x1=a.value;
x2=b.value;
x3=c.value;
x4=d.value;
x5=e.value;
x6=f.value;
x7=g.value;
var win=window.open("","","width=700,height=300");
win.document.open();
var str = "<h1>"О себе"</h1><hr><P>";
win.document.write(str);
var str = "<p>Я, "+x1+" " " "+x2+" " " "+x3+" родился в "+x4+" " " в городе "+x5+". Больше всего я люблю "+x6+" " " и очень не люблю "+x7+", но к сожалению приходится иногда "+x7+". </p>";
win.document.write(str);
str ='<input type="button" value="Закрыть"'+'onClick="window.close();">';
win.document.write(str);
// закрываем вывод в документ объекта win
win.document.close();
}
</script>
</head>
<body>
<h1>Анкета</h1>
<hr>
<form>
<br/>Фамилия:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type=text value="Жмышенко" id='surname' name="surname" size="30">
<br/><br/>Имя:&nbsp;&nbsp;&nbsp;&nbsp;<input type=text value="Валерий" id='name' name="name" size="30">
<br/><br/>Отчество:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=text value="Альбертович" id='otchestvo' name="otchestvo" size="30">
<br/><br/>Год рождения:&nbsp;&nbsp;<input type=text value="1990" id='dr' name="dr" size="30">
<br/><br/>Место рождения:&nbsp;&nbsp;<input type=text value="Чугуевка" id='mesto' name="mesto" size="30">
<br/><br/>Любимое занятие:&nbsp;&nbsp;<input type=text value="читать" id='luzan' name="luzan" size="30">
<br/><br/>Нелюбимое занятие:&nbsp;&nbsp;<input type=text value="учиться" id='neluzan' name="neluzan" size="30">
<br/><br/><input type=button value="Сформировать биографию" OnClick="sqr()">
<hr>
</form>
</body>
</html>

Показать весь текст
Ответы299362

467 22 ноя, 01:05 467 1299354

пп

468 22 ноя, 01:24 468 1299362

>>1299353
>luzan

Лузан, съеби уже в бэ, там все твои друзья, лол.

274 Кб, 641x530
469 22 ноя, 01:27 469 1299365

Я не понял. Нас джаба тред самый живой и популярный на /pr? Хули тут из раза в раз а-ля "Сап, перекатываюсь из си/крестов/мочи>говна>питона, чому это так, а это вот так"? Хули постоянно срачи с неосиляторами из других ЯП? Да и наш тред довольно часто занимает лидирующую позицию в каталоге. ДЖАВА БОЯРЕ ПОБЕЖДАЮТ?

Кстати, запилите кто нибудь аниме девочку держащую какую нибудь книженцию по жабе. Я бы Spring in Action 4 тыкнул на обложку. 5-ый мне показался хуже

Ответы299370299373

470 22 ноя, 01:35 470 1299368

>>1299352
какая нахуй спецификация JVM? ты мне предлогаешь проверить как оно в каждой из реализаций JVM устроено? ебана ребячишь меня?

>Это - >>1299064 - твой пост?
нет, я мимокрокодил.

Ответы299379

50 Кб, 561x659
471 22 ноя, 01:38 471 1299370

>>1299365
анимедостаточно?

Ответы299371

66 Кб, 250x240
472 22 ноя, 01:39 472 1299371

>>1299370
Ты чо ахуел такое подсовывать? А ну быстро исправил.

Ответы299372

473 22 ноя, 01:42 473 1299372

>>1299371
точно ещё девочка: ✔
явно любит косоглазую хуйню: ✔
в руках что-то держит: ✔
на картинке есть что-то про жабу: ✔

що ты негодуешь, доставил, как заказывали.

Ответы299481

474 22 ноя, 01:47 474 1299373

>>1299365
На пр/аше два самых живых треда ето жаба и жс.
ехал жаба через жаба
видит жаба в жс жаба
сунул жаба жс в жаба
жаба жаба жс жаба

Ответы299377

475 22 ноя, 02:18 475 1299377

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

Ответы299437

476 22 ноя, 02:25 476 1299379

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

Ответы299380

477 22 ноя, 02:28 477 1299380

>>1299379
а ты между языком и платформой на которой он выполняется.

478 22 ноя, 10:01 478 1299437

>>1299377
С языками либо ебутся, либо они нахуй никому не упали

479 22 ноя, 11:32 479 1299472

>>1299196
А есть ли взаимосвязь и какая между JSP и презентерами(так это называется?) вроде Таймлифа, Масташа и другими?

Ответы299491299492

480 22 ноя, 11:34 480 1299473

В треде завелся JSPидор.

Ответы299482

481 22 ноя, 11:46 481 1299481

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

239 Кб, 708x480
482 22 ноя, 11:48 482 1299482

>>1299473
Ну норм. Я когда Thymeleaf задрочил и писал на нём темплейты, прошел собес сделав тестовое на нём. На РАБоте приходится РАБотать с jsp. Жизнь не всегда идёт как ты хочешь.

Ответы299489

51 Кб, 640x640
483 22 ноя, 11:59 483 1299489

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

484 22 ноя, 12:05 484 1299491

>>1299472
Это разные вещи, делающие примерно одно и то же.

> презентерами
Это называется template engine.

В отличие от чисто шаблонных движков JSP может содержать и практически произвольный джава код. Т.е., это два в одном - и (view-) контроллер и view.

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

Также, JSP компилируется в джава код, и работает очень быстро.
Компиляция происходит автоматически (на сервере, не в IDE), при изменении кода в файле.

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

Также, во время компиляции отлавливаются многие ошибки.

Ответы299494299495299525

485 22 ноя, 12:10 485 1299492

>>1299472
Нет. Это две технологии, которые работают по-разному, но делают одно и то же.

486 22 ноя, 12:15 486 1299494

>>1299491
И да, никто не мешает тебе встроить любой другой шаблонный движок (и вообще любую хуйню) внутрь JSP страницы - с помощью библиотек тегов, например.
С инструментальной поддержкой будут проблемы, но IDEA позволяет делать inject language.

Алсо, на JSP можно генерить что угодно вообще, вплоть до excel и pdf. Для PDF есть охуеннейшая либа BFO.

В общем, это охуенная вещь, хотя и со своими недостатками.
Да, макаки часто пишут на JSP лютый говнокод, но, на то они и макаки.

Ответы299497299525

487 22 ноя, 12:18 487 1299495

>>1299491
Спасибо за развернутое объяснение.

488 22 ноя, 12:21 488 1299497

>>1299494
К слову прохожу тренинг в одну из известных галер и там весь учебный проект пишется на jsp (что вызвало у меня некоторое удивление, но сейчас оно развеялось).

264 Кб, 710x577
489 22 ноя, 13:25 489 1299525

>>1299491
>JSP очень хорошо поддерживается в IDEA

>>1299494
>но IDEA позволяет

Только ты денюжку им сначала дай. Комьюнити не поддерживает JSP, нужна покупать ultimate

Ответы299527299532299536

490 22 ноя, 13:29 490 1299527

>>1299525
10к в год, ну ладно уж, блядь

Ответы299613

491 22 ноя, 13:38 491 1299532

>>1299525
подсказка: rutracker

Ответы299613

492 22 ноя, 13:44 492 1299536

>>1299525
>Только ты денюжку им сначала дай
0.0.0.0 account.jetbrains.com
https://pastebin.com/0BgXP6Wm

Ответы299565299613

493 22 ноя, 14:29 493 1299565

>>1299536
Что это?

мимо ньюфаг

494 22 ноя, 15:10 494 1299598

Двощ, читаю книгу Лафоре "структуры данных и алгоритмы", но делаю это в дороге, поэтому решения задач и проектов только в голове прикидываю. Стоит ли нормально решать эти задачи? Может еще олимпиадные задачки порешать на алгоритмы и структуры данных?
Решению задач с codewars и подабных времени почти не уделял. Понимаю, что сильно проебался с практикой, и могу обосраться с простейшей задачки на рекурсию или сортировку для школоты.
Изучаю джаву полгода, книги по java core шилдта и хорстмана читал, разбирал и делал примеры и задания оттуда. Последние несколько месяцев задрачиваю спринг по книгам и мануалам.

Ответы299612299613

495 22 ноя, 15:11 495 1299599

Анонче, есть какие нибудь драг-н-дроп конструкторы для html типа sceen builder'а для fxml? чтобы можно было без ебли накидать кнопочек и прикрутить логику к ним

Ответы299613

496 22 ноя, 15:32 496 1299612

>>1299598
двачую вопрос, в принципе все входящие данные аналогичные

497 22 ноя, 15:38 497 1299613

>>1299527
500$ первый год, потом 400$ второй и 300$ третий. Мне-то не проблема, галера обеспечила, а вот студентикам или войтивайтишникам это может влететь в копеечку.

>>1299532
Только если ты сам работаешь. Чаще всего фирмы жмотятся и не покупают, будешь на нетбинсе кодить. Или ещё хуже, на эклипсе

>>1299536
смотреть выше

>>1299598
>Стоит ли нормально решать эти задачи
Если они нормальные и если ты сам их будешь набирать. А не копировать и вставлять переменную.

>олимпиадные задачки
Всегда с этого проигрываю. На РАБоте тоже будешь олимпиадные задачки решать? Лучше бы КРУД-ы делал.

>Решению задач с codewars
А лучше бы уделял. Там SQL задачи годные.

>>1299599
Да заебали со своим FX, вам делать нехуй?

Ответы299615299620299643

498 22 ноя, 15:43 498 1299615

>>1299613
>500$ первый год
Это коммерческая лицензия

499 22 ноя, 15:47 499 1299620

>>1299613
>Да заебали со своим FX, вам делать нехуй?
пост перечитай, няша

Ответы299636

500 22 ноя, 16:14 500 1299636

>>1299620
А, так это, вон из треда! с этим в другой тред, тут не разметку обсуждают. няш <3

501 22 ноя, 16:17 501 1299637

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

Ответы300041

502 22 ноя, 16:27 502 1299643

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

503 22 ноя, 17:24 503 1299666

>>1299238
(тяжелый вздох) Я не доверяю не методу, а самому себе. Не метод делает ошибки в коде. Не метод забывает о том, что нельзя менять менять объект внутри него. Это делает программист. И тот же const в C++ как раз защищает программу от программиста, чтобы компилятор смог на этапе компиляции уже вызвать ошбику, что объект переданный в качестве аргумента был изменен, хотя не должен был быть.

В джаве же предалагется просто "помнить" об этом. Не знаю как у вас ребата, но я косячу и это мало зависит от моих желаний и чем раньше я найду ошибку тем лучше. Если ошибка вылазит в runtime, а не на этапе компиляции - это херово.

Java позиционируется как замена С++ - кроссплатформеность и безопасность это основные преимущества, которые я часто читаю (а еще какая-то "простота", но вот честно хуй его знает, что это конкретно означает. Если то, что мне теперь не нужно использовать сырые указатели, то адекватные люди вместо них используют умные указателеи или строят в принципе архитектуру с минимум их использования, но это ладно. Рынок вакансий диктует свои правила.). Так как же обеспечивается безопасность состояния объекта при передаче его значения ссылки в метод? Делать его immutable? А если он не должен быть immutable? Тогда тупо не делать ошибок?

В общем, повторюсь, какие есть инструменты реализующие парадигму защиты состояния объекта в методе в Java кроме как делать класс констатным (final).

Ответы299678

268 Кб, 728x512
504 22 ноя, 18:00 504 1299674

Ох ебать вот это ваша Java+Maven поебень.
Импортировал в IntelliJ IDEA проект с мавеном, так он не запускается, пишет вот эту хуету:

[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.

Вероятно, где-то нужно что то ЕЩЕ НАСТРОИТЬ АХАХАХАХА БЛЯ

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

Ответы299678299708

505 22 ноя, 18:06 505 1299678

>>1299666
Сотона, я так понимаю, в аду гугла нет?
https://stackoverflow.com/questions/37087809/how-to-find-out-if-a-class-is-immutable
>To provide additional sanity-check (if you think that annotated as immutable class can be mutable by mistake), there is Mutability Detector plugin for FindBugs (static analysis tool), which effectively doing same thing listed above: checks class has @Immutable annotation and verifies (via reflection) that all immutability rules are satisfied (with some additional things like immutable collection support from Guava etc.). Mutability detector also can be used as library without FindBugs, which allows you to write tests like that:

@Test
public void testImmutable() {
assertImmutable(MyClass.class);
}

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

Ответы299683

506 22 ноя, 18:15 506 1299683

>>1299678

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

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

>А мавен - няшка, не надо так про него.
Охотно верю, что, возможно, по сравнению с остальным Java-калом, он не такое говно. Но это всё сорта говна.

Ответы299689

507 22 ноя, 18:19 507 1299689

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

Ответы299691299693

508 22 ноя, 18:22 508 1299691

>>1299689
Да откуда блять ошибки в рабочем проекте из репозитория?

Ответы299695

509 22 ноя, 18:23 509 1299693

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

Ответы299695299698

510 22 ноя, 18:25 510 1299695

>>1299691
>>1299693
Вы чё, ебанутые?

>[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.

>is no longer supported

Ебанутые?

Ответы299710

511 22 ноя, 18:27 511 1299698

>>1299693
Как будто иде настраивать не надо. И вообще, задача мавена - избавить тебя от необходимости ебаться с ручной настройкой зависимостей, где ты хочешь подключить одну библиотеку, а она зависит еще от десяти. И все.

Ответы299710

512 22 ноя, 18:34 512 1299705

Пацаны, давайте без срача, как дети ей богу.

513 22 ноя, 18:35 513 1299708

>>1299674
> Source option 5
Ого жава 5. Ставь maven более старой версии. Напомню, Java 1.5 вышла 14 лет назад.

Ответы299710

514 22 ноя, 18:37 514 1299710

>>1299695
Так если эта параша понимает, что версия не та, пусть сама сделает всё что надо. Максимум - выдаст предупреждение.

>>1299698
При чем тут IDE? Здесь у Java и её приблуды проблема просто исходников собрать.

>>1299708
Стоит последний Мавен. Это исходники старые. Вернее, там просто не указана версия и нужно форсить в конфиге 1,5

Ответы299711299734

515 22 ноя, 18:39 515 1299711

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

516 22 ноя, 18:51 516 1299714

Планирую уже таки окончательно и конкретно окунуться в кодинг. Начать с Сишки или с Джавы лучше будет, чтобы надрочить голову решать задачи.

Ответы299721299736

517 22 ноя, 19:04 517 1299721

>>1299714
>лучше будет, чтобы надрочить голову решать задачи
Математика

Ответы299736

518 22 ноя, 19:28 518 1299734

>>1299710
Какая причина сидеть на 1.5?

Либо 1.4, либо 1.7, либо 1.8, либо 1.8+.
В смысле, на то, чтобы сидеть на этих версиях - причины есть.
А на 1.5 что?

Ответы299737

519 22 ноя, 19:34 519 1299736

>>1299721
Человек хочет программировать, при чём здесь математика?

>>1299714
Если ты нулевой, то начать лучше с Питона.
Это, если угодно, гибрид джавы и си, лол.
Только без статической типизации.

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

520 22 ноя, 19:39 520 1299737

>>1299734
Concurrency

521 22 ноя, 19:46 521 1299743

Перекат >>1299742 (OP)
Перекат >>1299742 (OP)
Перекат >>1299742 (OP)
Перекат >>1299742 (OP)

Ответы299745

522 22 ноя, 19:58 522 1299745

>>1299743
охуительная первью.

523 22 ноя, 22:07 523 1299799

>>1297342
Это называется IDE

524 23 ноя, 10:53 524 1300041

>>1299637
*классы
мимопофиксилтебя

Ответы300116

525 23 ноя, 14:29 525 1300116

>>1300041
спасибо, няша

143 Кб, 1103x975
526 27 ноя, 02:39 526 1301654

В чём проблема-то?

Ответы301662

8 Кб, 567x45
527 27 ноя, 03:25 527 1301662

>>1301654
He Main, a main.

Всё работает. Вот только всё равно не может найти класс.
Что скажете?

Ответы308789

528 9 дек, 23:50 528 1308789

>>1301662
Имя пакета является неотъемлемой составляющей имени класса.

Из папки X:\Projects\TetrisGame

сначала выполняешь команду
javac -s src -d target com\tetris\tetrisgame\TetrisGame.java

Рядом с папкой src у тебя появляется папка target. В ней структура папок, аналогичная src.

Из той же корневой папки запускаем класс:
java -cp tagret com.tetris.tetrisgame.TetrisGame

Всё должно заработать.

Тред утонул или удален.
Это копия, сохраненная 20 декабря 2018 года.

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

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

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion