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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Java thread 1165567 В конец треда | Веб
прошлый https://2ch.hk/pr/res/1155203.html (М)

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

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

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

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

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

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

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

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

https://github.com/qqqlll/Java-Thread/wiki
2 1165569
Первый вопрос: сложно ли перекатиться на удалёнку? Хочу увольняться с текущей галеры
3 1165584
>>65569
Не сложно. Есть много вариантов, особенно для Java.
4 1165589
>>65584
А на парттайм? Часов на 6 в день?
5 1165623
>>65589

6 день, если ты не долбаеб, можно вообще биллить, как фуллтайм. Но вообще парттайм не проблема. Сам сейчас после 6 лет фриланса ушел в стартап и подрабатываю на фрилансе часов 10-15.
7 1165743
>>65567 (OP)
Подскажите как эффективнее осваивать спринг ?
8 1165760
>>65743
Сначала пишешь, потом думаешь.
9 1165801
Есть ли языки с более убогими генериками, чем в жаве?
10 1165811
>>65760
Каким образом писать не зная что ты пишешь?
11 1165818
>>65801
Чем они плохи в джаве?
12 1165827
>>65818
Ты дурак?
13 1165832
сап, джавач
Пишу телеграм бота, хочу чтобы он умел отправлять картинки пользователю. Проблема в том, что картинки он должен генерировать(графики). Возможно ли в джаве сгенерировать картинку без gui и потом отправить ее пользователю? Вроде в javafx симпатичные графики, мне вполне бы подошли. Или создавать внутри картинки это bad-practice и есть какие-то другие решения?
14 1165834
>>65827

>пук

15 1165836
>>65827
Нет. А теперь ответь на вопрос. Ты ведь не просто так спизданул и располагаешь какими-то аргументами, правильно?
16 1165845

>>>1165818


Два слова: type erasure. Нереально убогое говно.
17 1165846
18 1165847
>>65845
А теперь приведи нормальный кейс, где это действительно мешает.
19 1165856
>>65847
Это такое "НИНУЖНО"? Всё с тобой понятно.
20 1165864
>>65856
Окей, значит всё-таки это.

>просто так спизданул

21 1165867
>>65864
Видимо ты просто привык передавать параметры с названием clazz, создавать отдельные методы для коллекций и расставлять атрибуты на каждый чих, что убогость подобного подхода даже не замечаешь. Ну или весь твой кодинг на жабе заканчивается расстановкой атрибутов для spring boot и ничего сложнее ты не пишешь.
22 1165917
Что лучше:
priceRepository.findByManufacturer(manufacturerEntity);
или
((PriceRepository) repository).findByManufacturer(manufacturerEntity);
?
23 1165919
>>65917
Точнее в первом
PriceRepository priceRepository = (PriceRepository) repository;
return priceRepository.findByManufacturer(manufacturerEntity);
24 1165925
>>65919
>>65917
приведение в рантайме не приводит ни к чему хорошему
25 1165929
>>65917
>>65919
Придумай хороший способ избавиться от приведения, потому что это выбор между сортами говна.
26 1165936
>>65929
У меня просто есть абстрактный класс, в котором используется обычный JpaRepository, и классы для конкретных сущностей, которые наследуются от этого абстрактного и переопределяют некоторые его методы. У них в конструктор передается репозиторий для конкретного типа сущностей. Все же норм вроде, особенно вот так>>65919, разве нет?
27 1165937
>>65936

>JpaRepository


вся суть. Нет, не норм
28 1165981
>>65936
JpaRepository это по сути маркерный интерфейс. Ты пишешь интерфейс, который экстендит JpaRepository, объявляешь там методы по определённым правилам, и спринг в рантайме подсунет тебе прокси-объект, в котором эти методы реализованы. Тебе даже реализацию писать не надо.
То есть для каждой сущности тебе просто надо сделать интерфейс, который экстендит JpaRepository, и объявить там свои методы. А потом куда нужно вставляешь инстанс этого интерфейса через dependency injection. Только не забудь в класс конфигурации повесить аннотацию @EnableJpaRepositories.
Но бывают такие случаи, когда функционала Spring Data недостаточно. Если тебе нужно реализовать какие-то кастомные методы, то делаешь так:
1. Создаёшь интерфейс, в котором объявляешь эти кастомные методы.
2. Делаешь так, чтобы интерфейс твоего репозитория экстендил, помимо JpaRepository, твой интерфейс с катомными методами.
3. Делаешь реализацию интерфейса с кастомными методами.
Спринг сам поймёт, где искать реализацию кастомных методов, поэтому с интерфейсом репозитория можно работать точно так же через внедрение зависимостей.
Также для методов в интерфейсе репозитория можно повесить аннотацию @Query, в которой можно написать SQL-запрос.
29 1165986
>>65936
Алсо, для работы с JpaRepository тебе нужно будет замапить свои сущности и поля в них с использованием JPA-аннотаций (ну или через XML-конфигурацию).
30 1165988
>>65986
>>65981
может проще один раз написать запрос без всей этой абстрактно-фабричной тряхомундии?
31 1165990
>>65988
Слишком неэнтерпрайзно. Тебя ж помидорки засмеют.
32 1165992
>>65988
Можно, но зачем использовать JpaRepository и делать абстрактный класс, от которого наследуются репозитории всех сущностей? Просто пишешь для каждого репозитория свой класс, помечаешь его как @Repository и вставляешь куда тебе нужно через внедрение зависимостей.
33 1165996
>>65992
ну вообще-то я так и делаю. И без jpa, без автогенерации
34 1166001
>>65996
Ну а тот >>65936 чел зачем-то делает всё через абстрактный класс, который реализует JpaRepository.
35 1166005
>>66001
больше абстракций богу абстракций
36 1166007
Хочу прогать! Подкиньте идеи для вирусов.
awt.Robot понравился, посоветуйте похожие, чтобы управляли системой.
37 1166010
>>66007

> вирусов


> java

38 1166026
>>65981
>>66001
Я вообще не про это говорил. В абстрактном классе у меня есть поле типа JpaRepository.
39 1166030
>>66010
Энтерпрайз вирусы крадут мульены долларов прямо из мейнфреймов!
40 1166032
>>1165952
Выдавай ключи на сеанс>>66030
Дратуте, обновите плизки джаву до новой версии.
41 1166200
я ебал вас в рот! ахахахахахахахахахах
42 1166202
>>65584
>>65623

>Есть много вариантов, особенно для Java.



Где, братишка? Я вот на hackernews и stackoverflow смотрю remote java - из 300 вакансий вообще таких штук 5. Зато remote js (react, как правило) хоть жопой жуй. Много (больше чем remote) java вакансий с переездом. Короче, мой вывод, что java любят в сириус бизнесе (где тебе и с переездом помогут), а удаленку там не любят.

6 лет java. Хотелось бы удаленку на $5k.
43 1166203
>>65811
google: spring web app example
Всё будет уже написано за тебя. Переписываешь по шагам к себе и вникаешь. Пытаешься изменить/дополнить чтоб вникнуть лучше. Дерзай.
44 1166249
>>66202

>6 лет java


Во. У меня второй год пошёл, открыл заново для себя "Clean code", пользу от хорошо написанных тестов и нормальное проектирование с уместным использованием паттернов.
Расскажи, если помнишь, как проходило твоё развитие по, скажем так, годам.
45 1166299
>>65760

>Сначала пишешь, потом думаешь.


А еще пишешь комментарии. К каждой строчке. Так лучше запоминать.
46 1166309
>>66299
>>66203
Спасибо. Буду пробовать так писать.
Я думал надо сначала какую-то книгу прочитать, например Spring in Action, а потом уже пытаться что-то писать.
47 1166400
Подскажите, почему в 1м случае выводит 0 0, а во втором 0, 1
почему в первом 1ца не присваивается?
48 1166404
>>66400
Потому что

i = i++;

эквивалентно

var temp = i;
i = i + 1;
i = temp;
49 1166405
>>66400
i = i++ сначала копирует старое значение i из правой части в левую, а уже потом инкрементирует. С ++i дало бы 0 1.
50 1166408
>>66400
Ути-пути! Давай объясню. На перовой картиночке i увеличивается на единичку после операции присваивания.
51 1166409
>>66400
в первом поменяй на ++i, поймёшь
52 1166410
>>66405
я просто не мог понять, почему он всё-таки не увеличивает на 1 после присвоения
53 1166411
>>66410
Потому что он копирует старое значение влево, а потому уже инкрементирует. Новое значение при этом уже не затрагивается.
54 1166413
>>66411
хорошо, но куда пропадает 1ца?
я вижу это так
есть i = 0
ей присваивается она же сама, то есть 0
и после этого присвоения она же инкрементируется на 1
55 1166414
>>66413
Читай про примитивы, объекты и ссылки. Ты этого нихуя не понял.
56 1166415
>>66413
Присваивание происходит после инкрементирования и присваивается старое значение.

Ты ещё ++i + ++i погугли.
57 1166419
>>66413
Инкриминируется значение содержащееся в i, но оно никуда не присваивается больше.
58 1166420
>>66419

>Инкриминируется


инкрементируется :) автозамена
59 1166422
Никогда не использовал ++i. Нахуй нужно.
60 1166427
>>66414
я понимаю что это такое,
причем в моем примере есть всего 1 примитив это i

>>66415

>Ты ещё ++i + ++i погугли.


ну здесь всё ясно: если i = 0, то
сначала инкрементируется, потом это же значение снова инкрементируется перед сложением
1 + 2 = 3
61 1166429
>>66427

> ну здесь всё ясно: если i = 0, то


На самом деле не ясно. Это в жаве жёстко определён порядок операций, а вдругих языках конпелятор вправе выдавать любую хуйню ради ПИРФОРМАНСА.

Инкременты и декременты вообще ненужное говно. i += 1; i -= 1; - и никаких лишних раздумий.
62 1166465
Пацаны, я щас ехал за рулем один в машине! Второй раз в жизни еду один без инструктора или бати рядом!
63 1166471
>>66465
Молодец. Теперь можешь пойти нахуй.
64 1166473
>>66471
Я и так тут, если верить анонам из сишарп-треда.
65 1166478
>>65567 (OP)

> https://www.upwork.com/o/jobs/browse/?q=java


> 10 proposal'ов только за последние 4 часа


> На джаве фриланса нет.


ну ок
66 1166480
>>66478

> Node-JS API development for MySQL database

67 1166481
>>66480

> 2k18


> удивляться тому, что заказчики путают жабку и жс


ты вообще спасибо скажи, что он клавиатурой пользоваться умеет.
68 1166483
>>66478
как они там умудряются работать? Вхождение в проект это-же несколько дней, а то и месяцев.
Прежде чем что-то править, надо вкурить, как это работает, и зачем это сделано.

А тут хоп хоп и за пару часов сделал фикс на незнакомом проекте, ага
69 1166494
Что-то совершенно непонятное. Почему на валидном объекте выскакивает org.springframework.orm.jpa.JpaSystemException: NullPointerException occurred while calling setter?
70 1166500
>>66494
ёжики кололись, но продолжали есть кактус jpa
71 1166502
>>66500
Ты срешь везде, до куда можешь достать? Нахуй писать какую-то бессмысленную хуйню, говно?
72 1166509
>>66502
прими таблетки, шизик.

ПРИШЛО ВРЕМЯ ЕБАТЬСЯ С ХИБЕРНЕЙТОМ
ХИБЕРНЕЙТ САМ НЕ ПЕРЕЕБЁТСЯ
НАСТРОЙ ЕГО, НАСТРОЙ ЕГО ЕЩЕ РАЗ
ЗАЧЕМ МНЕ НУЖЕН SQL, У МЕНЯ НЕТ ВРЕМЕНИ ЧТОБЫ ЕБАТЬСЯ С НИМ
ЛУЧШЕ ЕЩЕ РАЗ ПОЕБАТЬСЯ С ХИБЕРНЕЙТОМ
73 1166511
>>66509
Шизик тут один, и это не я.
74 1166513
Опять этот обоссаный дебил из секты отрицателей ORM.
75 1166531
>>66513
Но он прав.
Эта хуета действительно годится только для хелловорлдов.
Спринг, кстати, тоже не нужен.
И вообще, и в 2018-м особенно.
76 1166534
>>66531

>годится только для хелловорлдов


Видимо, ничего кроме них тебе писать и не приходится, мальчик-ортодокс.
77 1166541
>>66534
именно что хибернейт нормально работает только на хэллоуворлдах.
В реальных проектах нужно тщательно следить за каждым запросом, чтобы оно апдейтило только нужные поля к примеру, и определённым образом. С хибернейтом это превращается в геморрой и скакание по граблям.

Опять же это хиберовское стремление вытащить весь граф объектов.
Для хеллоуворлдов это круто, в реальных проектах это огромное зло
78 1166543
>>66534
Вот это вот не твой пост: >>66400 ?
79 1166547
>>66541

>вытащить весь граф объектов


Не дочитал доку даже до Lazy, но советы дает.
80 1166548
>>66541
Потому что, ВНЕЗАПНО, фреймворк нужно сперва настроить, а потом использовать согласно спеке. На проектах с этим проблем нет. Любой инструмент может пальцы отдавить, если пользоваться им жопкой.
>>66543
Ну ты меня уел вообще))
81 1166554
>>66547
там куча нюансов с этим lazy, и оно может игнорироваться.
Твоя реплика показывает твоё знание хибера исключительно на хэллоуворлд задачах
82 1166556
>>66548

>Потому что, ВНЕЗАПНО, фреймворк нужно сперва настроить, а потом использовать согласно спеке


в данном случае придумываем себе проблему, а потом героически её решаем
83 1166559
>>66556
Длину можно измерять как линейкой, так и штангенциркулем, и в разных ситуациях нужен разный инструмент.
84 1166561
>>66559
окей. Какая задача у хибернейта?
85 1166562
>>66561
По ебалу тебе надавать, говно.
86 1166563
>>66562
он и с этой задачей не справляется
87 1166586
Хочу с помощью Java написать приложение для управления своим ПК с Android, вообще дохуя идей,но это вот основание,без которого другие не получатся.Возникают следующие вопросы:
1.Обойдусь ли я одним лишь Java, учитывая,что подключаться к ПК я собрался с помощью Wi-Fi?
2.Как вообще называется такое «направление»,что ли,когда создаётся приложение для Android для управления чем-либо?
88 1166587
>>66586

> 1.Обойдусь ли я одним лишь Java, учитывая,что подключаться к ПК я собрался с помощью Wi-Fi?


Делай веб-сервер и с телефона туда сри. Вот только если собрался делать что-то глубоко системное, то без крестоебства (или сисярпа, у него нормальная работа с windows api) не обойтись.

> Как


Internet of things.
89 1166588
>>66554
Экстрасенс в треде - все клетку Фарадея.
90 1166736
>>65867
Этот прав. Еще в копилку: как объявить два типа, чтобы Т1 != Т2? Ответ: никак или НИНУЖНА.
91 1166744
>>66541
Что использовать вместо Hibernate? MyBatis?
92 1166761
Как работают такие методы класса String, как indexOf, substring итд с отрицательными индексами?
Я например знаю, что отрицательные индексы в аналогичных функциях в Оракле,
например в функции SUBSTR, могут легко использовать отрицательные индексы и это будет означать отсчет с конца,
так вот,
String string = "animals";
System.out.println(string.indexOf('a')); //выводит 0

System.out.println(string.indexOf('a', -4)); //выводит 0
, а метод substring вообще выбрасывает exeption String index out of range на отрицательный индекс,
так как же отрицательные индексы работают в Java,
93 1166763
>>66761
В зависимости от метода работают. Смотри джавадок.
95 1166912
Где поучить, почитать про thymeleaf?? не хочу JSP юзать. Но надо парсить колекции на вьюхе которые приходят от сервака
97 1167033
Котаны, посоветуйте годную книгу по Java с каким-то проектом, чтобы затрагивала релевантные рынку труда технологии. В программировании не зеленый, php + js фул стек, хочу пробовать себя в мире тыпрайза. В общем, нужно что-то, что я смогу показать на собеседовании.
98 1167055
>>67033

>книгу по Java с каким-то проектом


НЕ БУ ДЕТ! Твердо и четко.
Я не знаю что ты имеешь ввиду под тырпрайзом, но обычно тут два пути: JavaEE и Spring. Гуглишь примеры проектов и вникаешь что где да как.
99 1167068
почему запросы хибернейта работают через жопу плак плак
100 1167124
Возможно ли в rest сервисе послать get запрос с параметрами и телом? Или post с параметрами?
101 1167126
>>67055

>JavaEE и Spring. Гуглишь примеры проектов и вникаешь что где да как.


Их и имею. Ну какую книгу ты можешь посоветовать по spring, с учетом, что джаву в рамках programming by doing я освоил целиком?
102 1167242
>>67126
Библия новый завет.
103 1167248
>>67126
Ну Spring in Action банальный. Но лучше что-то делать, раз ты такой заряженный, то знаешь какие сервис бывают, вот и сделай аналоговнет на спринге.
104 1167268
данов хотел спросить. неужели Ява-программисты этакие офисные мачо? В костюмах, отглаженных рубашках и непременно с чашечкой кофе, расхаживающих по офису, потому что их безупречный когд и так работает без них?
105 1167272
>>67268
Хз. Судя по видам с конференций так и есть. Вкачусь, будет на одного мачо больше.
106 1167283
>>67272
так же я заметил что у явовцев самая здоровая борда из всего програмача.
107 1167293
>>67268
в банках есть дресс-код.
На галерах нет, там всякие футболки и джинсы
108 1167347
Вопрос по спрингу. Если я запрашиваю объект типа Page, то мне в запросе надо передать объект Pageable, а на самом деле я передаю только два параметра - номер и размер страницы. А можно подобную штуку сделать для нестандартных классов, допустим я так же передаю в запросе несколько параметров, а соответствующий метод сам собирает на их основе объект?
image.png500 Кб, 652x490
109 1167369
Зайки, выручайте!
Как мне скопировать один двумерный массив в другой по значению?

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

object MatrixObject {
var table: Array<Array<Int>>? = null

fun randOf(n: Int) {
table= Array(n, { Array(n, { Random().nextInt(100 - 0) + 0 }) })
}

var tableF: Array<Array<Int>>? = null
get() {
if (field==null)
factorization()
return field
}

fun factorization() {
tableF = table!!
...
}

}

Я пробовал

for(row in 0 until table!!.size)
tableF!![row] = Arrays.copyOf(table!![row], table!![row].size)

и

for(row in 0 until table!!.size)
tableF!![row] = table!![row].clone() // и copyOf()
(Это на Kotlin. Но, как я понял, от Java, в этом примере, отличия только синтаксические.)
Костыль тоже подойдет. Третий день бьюсь. Буржуины со СтакОверфлоу нахуй посылают.
image.png500 Кб, 652x490
109 1167369
Зайки, выручайте!
Как мне скопировать один двумерный массив в другой по значению?

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

object MatrixObject {
var table: Array<Array<Int>>? = null

fun randOf(n: Int) {
table= Array(n, { Array(n, { Random().nextInt(100 - 0) + 0 }) })
}

var tableF: Array<Array<Int>>? = null
get() {
if (field==null)
factorization()
return field
}

fun factorization() {
tableF = table!!
...
}

}

Я пробовал

for(row in 0 until table!!.size)
tableF!![row] = Arrays.copyOf(table!![row], table!![row].size)

и

for(row in 0 until table!!.size)
tableF!![row] = table!![row].clone() // и copyOf()
(Это на Kotlin. Но, как я понял, от Java, в этом примере, отличия только синтаксические.)
Костыль тоже подойдет. Третий день бьюсь. Буржуины со СтакОверфлоу нахуй посылают.
110 1167373
111 1167375
Анон, объясни по пацански, в чем разница между BPM и CRM системами и че это вообще такое. Хочу вкатиться в Java разработку, но не шарю за эти понятия вообще, а в вакансиях часто мелькают
112 1167382
Ну что посоны, как копируете инстансы классов, если у них есть функции, а? А? Попробуйте с помощью Object.assign, охуеете, что оно не копирует ни функции, ни статические функции.
113 1167383
>>67375
Очень грубо говоря:
BPM - некая параша которая представляет процессы твоего наебизнеса.
CRM - система где клиент ведется от обзвона то впаривания ему КП, получения продукта, оказание анальных услад и так по кругу.
114 1167403
>>67347
Погугли ёпта.

В спринге есть возможность написать кастомный конвертр параметров запроса в аргументы функции. Так что на крайняк навелосипедить можно.
115 1167405
>>67382

>копируете инстансы классов


Нахуя?
116 1167406
>>67405
Бля, сори, промахнулся, хотел запостить к жабаскриптмакакам, а попал в жаба господам. Извиняйте.
117 1167418
>>67406
иди обратно к макакам. тут серьезные дела делаются.
118 1167422
Гайз, покиньте пару open source проектов на spring/hibernate стеке.
119 1167438
>>67382
Попробуй в конструкторе прописать для каждого метода this.methodName = this.methodName.bind(this).
120 1167471
Возможно ли ввести один символ char в консольном вводе? А то что-то в Scanner не нашел метода nextChar().
121 1167478
>>67403
Да там все еще проще, ничего не надо делать, с кастомными классами все работает так же, как с Pageable.
122 1167480
>>67471
Тут было много плохих слов в твой адрес, но я их стёр. Научись полбзоваться гуглом, няша.
https://stackoverflow.com/questions/13942701/take-a-char-input-from-the-scanner
123 1167481
>>67478
Может быть, потом и написал "погугли".
124 1167489
Thanks. I just fapped and that's why my brain a little retarded.
125 1167490
sadpepe.jpg71 Кб, 616x725
126 1167492
Только с собеса. Ваш самая сложная задача, что такое дедлок, на какой стул сядешь, ну и прочая хуита. Вконце экскурсия по офису. Бесконечные опенспейсы уходящие за горизонт. Митин-румы, набитые какими-то тетками (аналитики?). Начальники начальников департаментов начальников. И так несколько этажей. Сразу вспомнился фильм с ОП-пика. И на это я потрачу свою единственную жизнь? Да ну его нахуй! Куда выкатиться из Java?
127 1167494
>>67492
В окно.
128 1167495
>>67494
Не нагнитай.
129 1167509
>>67492
А в чём проблема? Стартапов, пишущих на жабе, тоже полно. Правда уже становится меньше, но всё равно их много. Да и у обоих мест есть свои сложности и недостатки. В офисе всё штабильно, всё размеренно, тонны документации, всё делается очень основательно. В стартапах хаос, ад и содомия и зарплаты побольше, но на тебя взваливают дохуя.
В офисах в основном лучше всего работается консультантам, особенно если ты не просто какая-то макака, а уже архытектор, то тебе и платят побольше, чем внутренним работникам, так и проект полегче менять зависит от контракта.
130 1167514
>>67509

>особенно если ты не просто какая-то макака


в джаве разве есть макаки?
131 1167521
>>67509
Ну в энтерпрайзе норм деньги есть. Да и задачи достаточно сложные (высокие нагрузки, большие данные), которые смузихлёбам не под силу, что дает возможность прокачаться. Плюс стартап ещё поискать надо.
132 1167522
>>67492
OCaml
133 1167525
>>67375

>BPM


штука, которая задумывалась чтобы менеджеры мышкой могли править бизнес-процессы в своих корпоративных программах.
Была довольно модной лет 10 назад.
Представляет из себя файл .bpm, который надо править через специальную программу (двигать мышкой квадратики), а потом скармливать корпоративной программе.
Естественно ВНЕЗАПНО выяснилось, что проще всё это делать на языке программирования, и что никто из менеджеров не горит желанием ковыряться в этом дерьмище

>CRM


Это просто название для корпоративной программы
134 1167528
>>67521

>Да и задачи достаточно сложные (высокие нагрузки, большие данные)


нихуя. Все эти глассфиши ложатся от тестовых нагрузок, из-за своей монструозности
135 1167542
>>67528
Гласфиши/хуиши - мне всё равно. Банки и телекомы продолжают работать, проводя миллионы транзакций в секунду. Стартапу по доставке смузи в барбершоп такого и не снилось и такой опыт там не получить. Но сидеть в кубикле и смеяться над шутками начальника, чтоб тебе добавили бал на очередном ревью - ещё больший пиздец. Такие дела.
136 1167567
>>67525

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


Проиграно.
Помню, у нас тех несчастных погроммистов, которые новырялись в BPM постоянно латали дыры в ней подпускали к самой апликухе только, когда они пройдут несколькодневные курсы по ней, лол. Самое забавное, что эти пидорасы, что всучили той компании BPM на столько дохуя видимо брали за эти курсы, что программистов нанимали с обязательством отработать как минимум 2 года в том проекте, иначе должен будешь оплатить компенсацию.
137 1167571
Как мне сделать String поле в абстракном классе, чтобы оно мне выдавало стринговое поле того класса наследника, где это поле было использовано?
138 1167575
139 1167603
>>67571
чего_блядь.webm
140 1167607
>>67603
ну есть поле в абстрактном классе
protected String LOGS = ..
Что мне написать после = , чтобы наследник, который его унаследует, имел свое название класса.
Обычно я создавал стринг в каждом классе так:
private static final String LOGS = Order.class.getSimpleName();
А теперь хочу в абстрактном хуйнуть это, чтобы не создавать каждый раз.
141 1167610
>>67607
Можешь передавать его в конструктор, тогда все наследники будут обязаны его задать.
Может ещё как-то можно накостылять.
Но это всё хуйня и ты делаешь хуйню.
142 1167612
>>67607
Сделай абстрактную функцию getClassName() которая и будет возвращать имя класса.
 .jpg186 Кб, 500x500
143 1167649
>>67542

> Но сидеть в кубикле


Ахах, ишь чего захотел, ЛИЧНОГО ПРОСТРАНСТВА в офисе. Хуй тебе. Сиди в стойле опенспейсе вперемешку с аналитиками, менеджерами, координаторами, пидорами, всегда орущими по телефону на весь опенспейс, пидорами просто орущими на весь опенспейс, пидорами, подходящими к другим пидорам и громко ржущими над дебильными шуточками, вечно болеющими заразными долбоебами припершихся всех заражать во славу Сатаны и Нургла и которым одновременно холодно и жарко, и другой человеческой дрисней.
144 1167650
>>65936
Наследование выкинь. Вместо абстрактного класса сделай интерфейс. В реализациях интерфейса подтягивай нужные тебе репозитории через Autowired.
145 1167689
>>67492
Kotlin/android

И раз уж решил ответить, продублирую вопрос: покиньте опенсурс проектов на spring/hibernate
146 1167702
Как можно представить последовательность пар
(дата: время1, y: значение1);
...
...
(дата: времяN, y: значениеN);

Думал сначала сделать что- то вроде
Map globalMap = new HashMap<Map, Map>();

Map innerMap1 = new HashMap<String, String>();
Map innerMap2 = new HashMap<String, String>();

innerMap1.put("dTime", "22:19:12");
innerMap1.put("dTime", "22:20:13");

innerMap2.put("y", 11);
innerMap2.put("y", 69);

globalMap.put(innerMap1, innerMap2);

Но обосрался и не могу вывести все значения в таком виде
{dTime=22:20:13}={y=69}
{dTime=22:19:12}={y=11}

Суть в том, что мне нужно всё в таком виде запихнуть куда- то, а потом дождаться, когда придёт новая последовательность, после чего смержить две последовательности, попутно переписав значения (y) в совпадающих датах

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

Охуевший джун за 90к/мес
146 1167702
Как можно представить последовательность пар
(дата: время1, y: значение1);
...
...
(дата: времяN, y: значениеN);

Думал сначала сделать что- то вроде
Map globalMap = new HashMap<Map, Map>();

Map innerMap1 = new HashMap<String, String>();
Map innerMap2 = new HashMap<String, String>();

innerMap1.put("dTime", "22:19:12");
innerMap1.put("dTime", "22:20:13");

innerMap2.put("y", 11);
innerMap2.put("y", 69);

globalMap.put(innerMap1, innerMap2);

Но обосрался и не могу вывести все значения в таком виде
{dTime=22:20:13}={y=69}
{dTime=22:19:12}={y=11}

Суть в том, что мне нужно всё в таком виде запихнуть куда- то, а потом дождаться, когда придёт новая последовательность, после чего смержить две последовательности, попутно переписав значения (y) в совпадающих датах

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

Охуевший джун за 90к/мес
147 1167711
>>67702
А по какому значению тебе надо это всё индексировать? И чем простой ArrayList не угодил? Или Set с кастомный контейнером, если нужны уникальные значения? Или TreeSet если нужны отсортированные уникальные значения?
148 1167712
>>67702
Тебе в джаваскрипт тред
JSON
149 1167716
>>65567 (OP)
Охуенные пикчи, ОП.
150 1167719
>>67702
Бля, че за компания с такими легкими заданиями? Тоже 90к хочу.

> Но обосрался и не могу вывести все значения в таком виде


Почему не можешь-то? Забыл, как принтлном пользоваться?

> Как можно представить последовательность пар


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

>>67712
Очень даже интересно, при чем тут js и json.
151 1167734
>>67719

>Очень даже интересно, при чем тут js и json.


Очевидно при том же, при чем джава в джаваскрипте.

Java -> JavaScript -> JavaScript Object Notation
s124.png130 Кб, 715x805
152 1167744
>>67711
>>67712

innerMap1.put("dTime", "22:19:12");
innerMap1.put("dTime", "22:20:13");

мне нужны обе пары и чтобы каждая соответствовала своему значению,
чтобы я мог взять ("dTime", "22:19:12") как ключ, а в ответ мне выдало ("y","11")

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

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

>>67719
Ну держи тогда вторую часть задания, весёлый задира.

Алсо, насколько вообще эти задания сложные?
Первое кажется вполне выполнимым, вторую не понял совсем, но вакансия для разраба с 3+ годами опыта
153 1167745
>>67744

>но вакансия для разраба с 3+ годами опыта


Мне кажется, что задание это для студентов-вкатывальщиков, чем разрабов с 3+ годами опыта.
154 1167746
>>67744
Ложи в качестве ключа просто "22:19:12", а в качестве значения "11" и т.д. А "dTime" и "y" дописывай после получения. Не, серьёзно, ты до такого сам додуматься не смог?
 .webm317 Кб, webm,
1280x720, 0:02
155 1167750
>>67746
я не особо умный
156 1167752
>>67745
Со скрина тоже лёгкое?

>>67746
Ты какой то надменный, расслабься. Я же новичок, ты помнишь?
Написано, что приходят пары пар. Скорее всего это какая-то сложная мапа,т.е. эти значения ещё нужно извлечь, а потом с ними работать.
157 1167765
>>67734
А, ну тогда мы уже в JSON-треде, так что всё норм.
158 1167768
>>67752

> Со скрина тоже лёгкое?


Да, в первом вообще хуйня сначала по одной оси доходишь, потом по второй, только порядок надо учесть, во втором ответ "да, если площадь области ненулевая", в третьем надо пару случаев рассмотреть.

> Я же новичок, ты помнишь?


Ага, и на 90к щас еще устроишься, а потом твое говно кому-то придется разгребать.
159 1167785
>>67752

>Со скрина тоже лёгкое?


Я даже не о легкоте, а о том, что, по моим представлениям, у трёхлетного сеньора должны спрашивать по технологиям, чем по геометрии.
160 1167786
>>67567

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


У меня баттхерт. Каким дауном нужно быть, чтобы подмахивать бумажку, в которой написано, что ТЫ должен будешь заплатить работодателю, если решишь свалить с говнопроекта?
Серьёзно, я всё понимаю, но вот этого не понимаю. Это же в разы унизительнее любого демпинга по зп.
sage 161 1167792
>>67786
Мамкин БУНТАРЬ порвался. Если бы ты в моей компании такое сказал, я б тебя уволил нахуй и попросил бы HR внести тебя в их чёрный список.
162 1167796
>>67792

>и попросил бы HR внести тебя в их чёрный список.


я бы сам попросился, чтобы мне не звонили неадекваты вроде тебя
163 1167800
164 1167826
>>67649

>> Но сидеть в кубикле


>Ахах, ишь чего захотел, ЛИЧНОГО ПРОСТРАНСТВА в офисе. Хуй тебе. Сиди в стойле опенспейсе вперемешку с аналитиками, менеджерами, координаторами, пидорами, всегда орущими по телефону на весь опенспейс, пидорами просто орущими на весь опенспейс, пидорами, подходящими к другим пидорам и громко ржущими над дебильными шуточками, вечно болеющими заразными долбоебами припершихся всех заражать во славу Сатаны и Нургла и которым одновременно холодно и жарко, и другой человеческой дрисней.



Три чаю. описал офис как он есть. Еще прибавь - голимый чай из пакетиков убивающий желудок. Голимое кофе из кофемашины из говна с мазутом. Толчок в котором западло присесть.
Чевоблять.mp499 Кб, mp4,
640x326, 0:02
165 1167832
>>67603

>чего_блядь.webm

Снимок.PNG38 Кб, 993x314
166 1167842
о чем здесь говорится? что мол таким образом можно создать список и сразу проинициализировать? неужели более простых способов нет?
167 1167846
>>67842

>a cool trick


Чего блять, в чем трик-то состоит? В использовании стандартной библиотеки? Лол кек.
168 1167859
Хэй, джависты.
Можете просветить, как в вашем мире обстоят дела с CMS-ками?
На php (не к ночи будь упомянут) есть и простая говнокодерская фигня типа Wordpress, и всякие мощные штуки типа Drupal, с ревизионностью, статусами, мультиязычностью, поддержкой REST'а и прочая и прочая.
Я пытался прогуглить тему CMS на java и нашёл только пару каких-то сайтов дизайна начала двухтысячных, со скриншотами, на которых видны соответствующего качества формочки. После того же drupal.org - совершенно не смотрится, короче.
Соответственно, вопрос, что есть такого на джаве, желательно с мультиязычностью, модулями, маркетом, версионированием страниц, кастомными полями и прочей фигнёй из коробки.
169 1167861
>>67859
макака детектед
170 1167871
>>67842
В java9 таки сделали фабрики для коллекций как в гуаве.
171 1167884
>>67859
на яве писать фронтэнд - это полное убожество, там почти нет нихрена кроме шаблонизаторов, но и они довольно убогинькие. Самое тупое что до клиентской стороны практически не достучаться с джавы, т.е. даже валидацию формы чисто на клиентской стороне сделать сложно. Готовое приложение выглядит как энтерпрай параша. Поэтому ты можешь писать сервисы на Джава а на фронтэнд взять Ангулар тот же или что-то другое. Если хочешь обычный рендеринг на стороне сервера - бери джангу или руби.
172 1167885
>>67884
специально для таких как ты придумали GWT
173 1167888
>>67885
убожество для корпоративных приложений с неявной генерацией кода и клиентским тяжеловесным движком, уже и не используется почти никем. Напиши мне такой же сайт как гитхаб на гвт.
174 1167889
>>67884
Ебанутый чтоль? Какая клиентская сторона на бекенде, максимум что ты можешь получить это заголовки и параметры запроса.
175 1167890
>>67888

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


gwt позволяет. И оно стирает границу между сервером и клиентом, как ты и хотел
176 1167891
>>67890
кстати там даже можно отлаживать клиентский код прямо через ide
177 1167892
>>67889
Малыш, ну не стоит так, хорошо? Ты же понятие не имеешь как делаются веб-приложения, не знаешь что когда ты навешиваешь слушатель на серверной стороне то происходит round-trip от клиента к серверу. Ты лучше продолжай спорить как правильно именовать JPA entity, хотя бы шаришь в этом. В Джаве поддержка веба настолько плохая что плакать хочется. 2018 год а стандарт от Оракла по-прежнему JSP и JSF. Вы это серьёзно?
178 1167893
>>67892
а что тебе надо? Ноду 2.0 ?
179 1167894
>>67893
Мне? Мне надо чтобы можно было делать крутые сайты на Java, почему это можно делать на рубях и питоне, а на Джаве только корпоративный шлк получается?
180 1167895
>>67892
Какие слушатели, поехавший, рест-апи для кого придумывали?
181 1167896
>>67894
либо ты тонкий тралл, либо школьник
182 1167898
>>67896
По делу то есть чего ответить? На том же пхп гораздо удобнее сайтики клепать чем на яве.

>>67895
какой рест апи лолка, читай как жсф работает плес
183 1167899
>>67898
Что ты доебался со своим жсф, я тебе говорю, что бекенд должен быть бекендом. Держать жабу для рендера это песдец.
184 1167904
>>67896

> либо ты тонкий тралл, либо школьник


либо и то и другое
185 1167916
>>67904
либо третье - я джавист, который знает слабые стороны, а вы - джунчики
186 1167970
чот мне скучно. Давайте код-ревью какое-нибудь сделаю
187 1167971
>>67898

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


Детали штангенциркулем тоже удобнее измерять, чем линейкой.
188 1167974
>>67970
@Override
public List<PriceEntity> findByDrug(DrugEntity drugEntity) {
PriceRepository priceRepository = (PriceRepository) repository;
return priceRepository.findByDrug(drugEntity);
}
189 1167976
>>67974
1) Приведение в рантайме ведёт в рантайм эксепшенам в рантайме
2) findByDrug(drugEntity)
Лучше прямо в методе перечислять поля, по которым происходит поиск. В repository передаётся слишком много лишней информации, может возникнуть соблазн использовать это.
Плюс есть риск, что Repository испортит этот объект
190 1167978
Да сука, как перейти с простых приложений на интырпрайзные сложные...
191 1167988
>>67971
маняврирование джависта который перечитал хабр и пишет jsp
192 1167996
>>67978
Устроится в энтерпрайз контору.
193 1167998
Можно ли вызвать в методе private класса переменную из main класса? Или это macaque-стайл и ее нужно передавать параметром?
194 1167999
>>67976

>1) Приведение в рантайме ведёт в рантайм эксепшенам в рантайме


С чего вдруг епта? Я знаю, что там будет PriceRepository и только он. Просто поле класса это обычный JpaRepository, а в PriceRepository определяется этот метод.
195 1168061
Пацаны, а че ебать кокатенацию делаете, да? Красавчики.
196 1168114
>>67999
Так и используй там PriceRepository, наркоман.
197 1168115
>>68114
Класс, в котором используется тот метод, наследуется от абстрактного, в котором в поле repository обычный JpaRepository,
198 1168132
>>68115
Во-первых, про дженерики слышал что-нибудь, няша?
Во-вторых, "наследуется от абстрактного" в 2018 - серьёзно?
199 1168136
>>68132
В абстрактном именно дженерики и спользуются. Что не так-то, я не могу понять?
200 1168141
>>68136
Если в абстрактном дженерик, то почему в конкретном есть каст?
Я сомневаюсь в необходимости абстрактных сервисов/дао/репозиториев.
201 1168142
>>68141
Я вообще сомневаюсь в необходимости такого сервиса, который просто дублирует метод репозитория.
202 1168173
>>68142
Ну мы не знаем какую он там логику накрутил, но судя по всему - накрутил хуйню.
netbeans.jpg62 Кб, 1280x373
203 1168181
Может кто тут поможет. Не могу накатить netbeans для jdk10. Упорно не видит jdk. Попробовал указать ему явно через параметр запуска в консоле. Уже лучше. Видит JDK, но теперь выкидывает другую ошибку - отсутствует JRE. Все переменные сред прописаны. Накатывал по разному и в разные директории и переменные всегда указывал. Другие IDE типа intellij idea, eclipse ставятся. Проблема именно netbeans. Может кто сталкивался?
netbeans.png39 Кб, 1459x426
204 1168182
>>68181
Пардон за качество скрина. Телега жмет хуже некуда.
205 1168199
>>67978
Открываешь код интырпрайзного сложного приложения и начинаешь пытаться там че-то проссать.
206 1168200
>>67999

> Я знаю, что там будет PriceRepository и только он


Так поясни это читателю кода и конпелятору заодно.
207 1168211
Ей, как в редакторе эклипса увеличить межстрочный интервал?
208 1168212
>>68181
Сталкивался но на линуксе. В настройках самого бина измени руками, не помню какая вкладка.
209 1168217
>>68181
А консоль перезапускал, после установки переменных среды?
210 1168229
>>68211
Будешь распечатывать и в редактуру отправлять?
211 1168240
>>68229
Да. Вопросы, хуила комнатный? Мать твою ебал.
212 1168332
Я делаю REST-сервис и там много запросов, где надо получить сущность по её ID. Я хочу бросать эксепшен и обрабатывать его в @ExceptionHandler, если сущность не найдена.
Проблема в том, что сущностей у меня довольно много и мне лень каждый раз проводить проверку.. Поэтому я навелосипедил эдвайс, который делает проверку за меня. Я помечаю метод, перед выполнением которого мне надо выполнить проверку, аннотацией @AssertEntityExistsById, а сам ID помечаю аннотацией @EntityIdentifier. И в эдвайсе проходит проверка. Выглядит это так:
https://pastebin.com/QnPRuJfF
Это норм практика или хуйня полная?
213 1168339
>>68332
Конечно хуйня - два запроса в БД делаешь (там кэш, конечно, сработает, но концептуально их 2). Я бы предложил тогда сделать что-то типа https://pastebin.com/hdZArz4E , т.к. в спринге можно сделать кастомный маппер запроса на параметры. Всё расписывать не стал - сам допрёшь, думаю.
Image 2.png465 Кб, 1920x1080
214 1168361
что это за IDE?
(скрин из видео)
215 1168363
>>68361
Eclipse
Image 3.png41 Кб, 1288x577
216 1168398
Почему frame.setUndecorated(true); не работает?
217 1168438
>>68398
Потому что ты хуесос тупой. Тебе блять английским по белому написано -- IllegalComponentStateException: frame is displayable; тебе блять родина документацию дала, читай документацию, блять, не хочу, хочу жрать говно.
218 1168440
Уже два с половиной года изучаю программирование, уволился с работы год назад. Прошел два курса, один офлайн другой онлайн, с корочками. Изучил ООП, структуры данных и алгоритмы, спринг, хибернейт, и так далее. Сделал простенький проект на спринге. Выложил резюме, откликнулся на 12 предложений джуна и стажера и мне ни на одно не ответили. ЧЯДНТ?

кун 29 лвл с технической вышкой
219 1168445
>>68440
работодатели сами не знают чего хотят.
пожалуй только у веб макаки сейчас без проблем ищут работу, так как там просто и понятно. Энтерпрайз языки вроде есть но работодатели сами не знают как их применить.
220 1168454
>>68445
Пхп не вариант хочу стабильную работу без новых фреймворков каждый месяц. Че делать то чтоб хотяб ответили? Думаю написать что работал в стартапе, прокатит?
221 1168468
>>68440
Город какой? ЗП какую поставил?
Но я тебе честно скажу: когда смотрю резюме кандидатов и вижу великовозрастного вкатывальщика с 5 годами опыта работы сторожем - скипаю нахуй.
Попробуй податься на стажировку, например, в EPAM. Но там таких как ты будет дохуя, а платить будут нихуя.
222 1168470
>>68468
чё так?
223 1168475
>>68468
ДС2, готов работать бесплатно, работал в росатоме, за епам спасибо попробую
224 1168490
>>68475
Ну про ЕПАМ я как раз СПбшный и говорил. Знакомый хотел туда на стажировку, но ЗП там слишком мала, а длится она полгода, вроде (могу напутать). В итоге он забил.
Погугли что там за тест при отборе - примеры должны быть в сети.
Может кроме ЕПАМа есть кто со стажировками. Люксофт там какой-нибудь.

Есть ещё вариант через "оборонку". Но это больше для студентов. Устраиваешься в какой-нибудь НИИ младшим техническим сотрудником на полставки от 13к (или сколько там минималка в Питере?). Работы там не будет (зато можно самообучаться), да и опыта тоже, но запись в трудовой и строчка в резюме появятся.
225 1168510
>>68490
Спасибо. Попробую в епам, настораживает что мой разговорный английский, который там так нужен, так себе.
В принципе сделать какую-нибудь более-менее серьезную запись в книжке могу сам подсуетиться, но чёт это какой-то зашквар. Буду думать над этим всем дальше.

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

>проект сайта ветеринарной клиники


Не думаю, что ты кого-то удивишь там очередной petclinic.
227 1168578
>>66587
спасибо,анон
я собрался делать следующее: приложение для ведра,в нём с помощью голосового ввода боту можно давать команды,которые он будет выполнять на компе.например: открыть браузер Google Chrome,перезапустить комп и т.д.это без C++ или C# сделать возможно? просто не хотелось бы мне 2 юзлесс(для меня) языка изучать
228 1168634
Аноны, вкатился неделю назад. Нашел одну задачку, вроде понял как решить, но вот не могу сделать код более качественный.
Сам код - https://pastebin.com/Nf5rL3a1
229 1168643
>>68634
Скобочки перепиши нормально, потом может и взгляну.
230 1168646
>>68643
Тоесть нормально?
231 1168647
>>68646
Стайлгайд от гугла найди и изучи, никто об твоё дерьмо глаза ломать не будет.
232 1168677
Аноны подскажите, немного разобрался в синтаксисе, постоянно смотрю лекции, но нужна практика, с чего начать, где брать годные задачи, желательно чтобы были разные уровни сложности
233 1168683
>>68677
Погуглил специально для тебя.
https://proglib.io/p/27-puzzle-websites-to-sharpen-your-skills/
234 1168701
>>68634

>j!=i;



ліл
235 1168704
>>68701
в чем карявость?
236 1168708
>>68440

> кун 29 лвл


Поезд ушел и по 90-95% вакансий херки тебя скипают, а оставшиеся 5% херки слепые и не увидели возраст.
>>68490
Некоторые компании дропают людей из всяких госучреждений.
237 1168709
>>68578
Я бы тебе ответил, но не хочу.
238 1168713
>>68683
моё почтение
239 1168723
>>68709
а нахуй ты вообще это написал? я ожидал адекватного и нормального ответа
не хочешь отвечать - не пиши вообще нихуя,не высирай это
240 1168724
>>68704

>k <= (6 - i/2)


Пиздос
241 1168726
>>68704
В чем задача была-то если не зеленый
Пока что выводит слегка несимметричную стрелку
242 1168729
>>68723

> а нахуй ты вообще это написал?


Потому что мог. Да и негоже - я тебе написал, ты меня спросил, а промолчал.

> я ожидал адекватного и нормального ответа


Мало ли чего ты там ждала, мелкобуква. Я тебе уже написал что и как делать. Если ты не можешь погуглить как сделать на язык_нейм те вещи, которые ты хочешь, то собственно дело тебе никогда и не удастся.
243 1168761
>>68708

>Поезд ушел


Но ведь в шапке указано, что не поздно вкатываться
244 1168979
>>68726
Задача - вывести стрелку, которая указывает на-право. Вроде выводит то что и хотел, но наверняка можно сделать не такой карявый код
>>68724
Что не так-то?
245 1168981
>>68979
Ладно, не обижайся, за неделю никто бы не смог нормально написать. Начни как можно раньше читать Clean Code Боба Мартина, там сам разберёшься.
246 1168982
>>68981
Окей, спасибо
247 1169042
>>66586>>68578

>приложение для ведра,в нём с помощью голосового ввода боту можно давать команды,которые он будет выполнять на компе


Тебе придется для компа написать сервис и запустить его с нужными привилегиями. На яве это можно сделать, но куда проще поднять какой-нибудь ssh сервак и слать ему консольные команды, которые будут дергать скрипты для выполнения действий. А со стороны смартфона ХЗ как это лучше сделать, но, уверен, есть и готовые решения или хотя бы фреймворки.
15228927671710.jpg53 Кб, 636x571
248 1169072
Baldr:
Хай гайз. Нид хелп. Короче пилю клиент-сервер для себя. В целях обучения. Делаю примерно следующим образом:
1) Сделал по классы, ServerFactory и ServerEngine, в фэктори я определяю входные выходные потоки. В движке я определяю серверсокет ну и запускаю через ExecutorService.
2) В клиенте тоже фэктори и движок. В фэктори пишу читаю потоки. В движке запускаю через ExecutorService тоже.
Всё работает. Сообщение отправляется и принимается обратно.

Но мне нужно разнести функции приема и отправки сообщения. Т.е. один клиент(только пишуший) отправляет на сервер, сервер читает и отправляет клиенту(который может только читать). И вот тут уже отправка идет, а вот получение не очень. Что нужно впилить чтобы заработало?
250 1169083
>>69072
а я понял блять.
клиент который читает должен установить по сокету соединения с серваком и ждать пока сервак запишет на сокет няшное сообщение
251 1169185
>>69072
>>69083
Ну вроде так и сделал всё. Только вот пикрил. Типа отправляется, но не читается, хз почему. Ошибку че то не вижу. Output закоменченный это как раз то, что находится в ClientFactoryWriter. Код там аналогичен только закоменчена часть где происходт считывание.
252 1169200
>>68217
Да и не только консоль, но и ос
253 1169256
>>69042
я так подумал,что готовым решением может быть приложение для ведра,которое делает из смартфона джостик(подключение как раз через Wi-Fi),но вряд ли кто-то опен сурс даст
254 1169269
>>68634
https://pastebin.com/K2Jf2hGs
Так должен выглядеть нормально отформатированный код. Читай стайлгайды и следуй им. Никаких чисел в коде не должно быть, кроме КРАЙНЕ очевидных случаев, во всех остальных всегда выноси всё в осмысленно названные переменные. Открывая код, посторонний человек должен быстро понимать, что примерно в нём происходит - глядя на твои 6 и 16 я в душе не ебу, что это. И не начинай индексацию с 1, если это не принципиально для задачи - все ожидают начало с 0.
255 1169277
>>69269
количество секунд в минуте выносить в константу?
256 1169278
>>69277
Если работаешь с дебилами, то да.
257 1169281
>>69277
Да. Дело не в том, что кто-то не допрёт - дело в том, чтобы читать кодельник не переключая внимание с бизнес-логики на всякую хуйню.
258 1169283
>>69281
int seconds = minutes 60;
или
int seconds = minutes
SECONDS_PER_MINUTE;

первое по мне читаемее. Во второй сразу сомнение - что это, зачем его вынесли, может там не 60, а другая цифра
259 1169286
>>69283

>int seconds = minutes * 60;


Вот это приемлемо, потому что контекст очень ясен.
260 1169287
>>69286
Но если бы задача в целом и класс в частности подразумевал частую работу с датой/временем/етк, то я бы остановился на втором подходе, потому что одной 60 там бы дело не ограничилось, было бы как минимум несколько различных констант.
261 1169347
Есть hql-запрос с условием. SELECT x FROM X x WHERE x.i = coalesce(:p, x.i). То есть, если параметр p в запрос не будет передан, то будут выбраны все строки из таблицы. Суть в чем, значение x.i имеет тип Short и может быть равно либо 0, либо 1 спасибо ораклу за это говно. Если я пытаюсь выполнить этот запрос в таком виде, не передавая параметр, то происходит ошибка ORA-00932: несовместимые типы данных: ожидается BINARY, получено NUMBER. Если же меняю в запросе coalesce(:p, (0 or 1), x.i), то происходит ошибка ORA-00932: несовместимые типы данных: ожидается NUMBER, получено BINARY. Че это за дичь?
262 1169358
>>69347
С типами где-то обосрался, попробуй явно привести.
263 1169360
>>69358
Так почему в одном случае он ждет один тип, а в другом другой?
264 1169363
>>69360
А, и тем более я передаю туда null, то есть запрос вообще выглядит так: SELECT x FROM X x WHERE x.i = x.i
В таком случае ошибка вообще какая-то совершенно тупая.
265 1169530
Если в Джаве можно вот так объявить массив
Object[][][] cubbies = new Object[3][0][5];
то потом его уже нигде нельзя будет использовать?
Из за нулевой длины во втором измерении?
266 1169578
Аноны подскажите книги/лекции по-поводу безопасности кода, про декомпиляцию и многое прочее
267 1169587
>>69578
Просто делай все классы private.
268 1169594
Я изучаю jna и учусь подключать dll в java.Когда я подключаю чужие dll то у меня все работает.Тогда я решил попробовать написать свою dll на с++но при попытке подключить свою библиотеку java компилятор выдает unsatisfiedlinkerror.Хотя в visual studio у меня все работает.В чем тут проблема?Может мне проверить настроить компиляцию visual studio?
269 1169610
>>69347
Короче поменял на WHERE x.i BETWEEN :p AND 1. Вообще не понял, в чем там дело было. Аналогичный запрос со строковым параметром работает нормально и при =, и при LIKE.
270 1169614
>>69610
Используй нэйтив-квери и не ебись с хибером в данном конкретном случае.
271 1169616
>>69578
Что ты узнать хочешь? Как защитить своё гениальное-поделие от реверс-инжиниринга? Никак. Надо будет - отреверсят и после обфускации.
272 1169617
>>69614
Я бы с радостью, но мне надо возвращать страницы, нейтив не олучится использовать.
273 1169636
>>69617
А что, на SQL паджинирование уже написать невозможно?

Возьми jOOQ, он умеет в автоматический маппер резалтсета, напиши запрос и добавь паджинирование.
274 1169643
Что можно юзать модное вместо JdbcTemplate? Чтобы руками писать запросы, и чтобы был автоматический маппер на dto
275 1169646
>>69643
Пробовал прочитать тред? Хотя бы последний пост.
jq.png1,4 Мб, 1280x984
276 1169648
>>69646
У меня нет лишний денег и мне не нужно генерить модель из базы
277 1169673
>>69648

querydsl, она там классы генерит и мапит
278 1169675
>>69648
Там для опенсорса бесплатно, вроде. Или что-то такое. Но если ты хочешь в проде на работе использовать, то да - плати.
279 1169676
>>69643
JPA с native query может помочь не ебаться с маппингом и руками писать запросы, но на меня сейчас набросятся свидетели жука/хуека/ещё_чего_нибудь.
280 1169680
>>69648
Английский выучить пробовал? Там английском по фоновому сказано, что платно только для платных БД - оракла и mssql (и всякая ненужная ibm дрисня) - диалекты под них есть только в платном джарнике jooq-pro. Со всеми диалектами все бесплатно и для личного, и для копроративного использования.
281 1169682
>>69680

> Со всеми остальными диалектами

282 1169692
>>69676

>JPA


без jpa пожалуйста
283 1169784
Что учить после Java на хайлоад, какой язык сейчас модный?
284 1169792
285 1169880
>>69587
А от внедрения всякого говна сможет спасти?
286 1169882
>>69648
Снимать или покупать 2-х комнатную будешь?
287 1169885
>>69880
От какого говна? Ты хочешь защититься от внедрения чужого кода в твоё приложение? Тогда читай маны для конкретных операционных систем, например как в винде сделать чёрный список загружаемых dll и т.д. А ещё лучше вынеси свой код в драйвер (ну или низкоуровневую службу или даже модуль ядра) и защити его уже там, как это делают антивирусы.
288 1169889
>>69885
Ну например как сделать так, чтобы приватный метод не вызвали через рефлексию?
289 1169890
>>69889
Начиная с java 9 его и не смогут вызывать. Так что тебе достаточно обновится (хотя я бы посоветовал дождаться java 11).
290 1169892
>>69890
я на 10 сейчас все делаю,
почему ты советуешь дождаться 11,
мимодругойанон
291 1169896
>>69892
Потому что 11 версия - LTS и к её выходу подтянутся все библиотеки, которые сейчас сломаны из-за жигсо. Если у тебя всё работает или ты просто учишься, то можешь оставить как есть.
292 1169897
>>69889
Для чего?
293 1169900
>>69892

>я на 10 сейчас все делаю,


Что, уже 10 есть? нихуя се
294 1169902
>>69900
20 марта вышла, слоупок. Ничего кроме допила G1 и var нету.
295 1169939
Есть кнопочная нокиа 2330, хочу попробовать написать под нее черный список для смс и звонков от нехуй делать, с чего вообще начать?
296 1169940
Есть кнопочная нокиа 2330, хочу попробовать написать под нее черный список для смс и звонков от нехуй делать, с чего вообще начать?
297 1170000
>>69940
Со способа загрузки/отладки этого говна
298 1170043
>>69902
Ну ок.
Вообще не понимаю, зачем клепать такие промежуточные версии? Нет бы ЛТешки ебашить, по порядочку, по версиям, чтобы как у людей было.
Нет нужно ебнуть джаву 9, джаву 10, ради этих ебучих циферок.
299 1170076
>>70043
Ну всякие особо одаренные кричали, что мало фишечек в языке (они всегда кричат по поводу и без - естество у них такое), ну вот и решили выпускать новые версии по расписанию каждые полгода, а не по мере готовности.
300 1170078
>>70043
Потому что так лучше, чем ждать 10 лет, пока наконец-то нахуй не нужный жигсо доделают. Фича не успевает в релиз - ее проблемы.
301 1170139
>>70076

>Ну всякие особо одаренные кричали, что мало фишечек в языке


чтобы жаба стала плюсами 2.0?
302 1170146
2 года опыта на одном месте работы. Всё ЗАЕБАЛО. Дома после работы и на выходных могу заниматься чем угодно, но только не ебучим программированием. Надеюсь, что переезд в другой город и смена проекта меня спасёт.
Для тех, кто скажет, что я вкатывальщик из-за денег - хуй там. Учиться очень интересно, лепить там что-то своё. А вот от коммерческого программирования блевать тянет. Может просто проект неинтересный, хз.
303 1170151
>>70146

>Надеюсь, что переезд в другой город и смена проекта меня спасёт


нет
304 1170152
>>70151
Тогда что делать? Я люблю свою профессию!
305 1170154
>>70152
как можно больше времени проводить вне компьютера.
Принять, что работа никогда не бывает в радость
306 1170171
Сегодня отдыхаем, ничего не шкодим.
307 1170174
>>70078
Вот недавно жс копал на уровня аля простых функций. Решил заглянуть дата релиза, так он 8 лет не обновлялся.
Берите примеры с этого языка.
308 1170177
>>70171

>Сегодня отдыхаем, ничего не шкодим.


Я бы тоже отдохнул, но мне нужно домашку по вузу делать.
alex desktop.png7 Кб, 207x188
309 1170180
>>70171
ПОЗДНО
310 1170182
>>70171
Когда же ещё-то. Завтра на работу - говно вилкой за джунами чистить.
311 1170187
>>70180
Ты работаешь? Откуда у тебя силы помимо работы?
312 1170291
>>70174

> жс


> так он 8 лет не обновлялся


Ты так плохо троллишь, или ты и вправду дурак?
313 1170313
>>70291
Прикрученное через очко ООП за обновление не считается. Как хуярили все по-дедовски, процедурненько, так и хуячат. Язык тоже как был говном, так и остался.
314 1170314
Аноны, начал учить яву и сразу обосрался. Помогите плиз. Head First Java, первый пример кода, написано скомпилить и запустить. Скомпилил без ошибок, запустить не могу, пикрил. ЧЯДНТ? Или это из-за того что в книге на Java 5 пишут, а у меня 10?
315 1170316
>>70313
А генераторы, промисы и асинхронные функции ты совсем пропустил. Ну ещё и в кучу прокси, которые даже имитировать в старых браузерах невозможно.
316 1170320
>>70314
должна быть точка запуска - метод
public static void main(String[] args)
317 1170323
>>70314
И заодно попробуй Party.class
5.jpg83 Кб, 979x512
318 1170324
>>70320
Ниочём мне не говорит, а в книге пока небыло. Это упущение книги, или разница версий? Блин, это ведь самое начало книги, а уже затык...

>>70323
С большой буквы пробовал, тоже самое, без расширения выходит пикрил
319 1170327
>>70316

>генераторы, промисы и асинхронные функции


И всё это - синтаксический сахар для коллбэков. Даа, такие-то фичи.
320 1170332
>>70327

> И всё это - синтаксический сахар для коллбэков. Даа, такие-то фичи.


Так любой ЯП можно назвать синтаксическим сахаром для машинного кода. Всё с тобой ясно.
321 1170333
>>70327

>ваши обновления — не обновления


Ясно. Съеби отсюда нахуй, тупорылое чмо.
322 1170340
Я правильно понимаю, что всё новомодное реактивное программирование, ComletableFuture, спринг вот этот новый - это всё обёртка над тредами? А бывает какой-то другой подход (в других языках) помимо тредов?
323 1170343
>>70340
Ага, а треды это просто обертка над паттерном event loop. Т. Е. над циклом с кучей if и goto.
324 1170344
>>70340
Необязательно над тредами. Тот же спринг по-умолчанию всю цепочку выполняет в одном потоке и нужно специально указать ему, если ты что-то хочешь выполнить в другом треде.
325 1170345
>>70314
когда компилируешь, пиши просто java Party без class
 .png6 Кб, 360x360
326 1170348
>>70344

> Тот же спринг по-умолчанию всю цепочку выполняет в одном потоке


Ты главное на собеседовании такого не спиздани.
328 1170350
>>70348
Что нужно знать, чтобы можно было сказать, что ты ты знаешь спринг? Серьёзный вопрос.
329 1170358
>>70349
Орнул с войтивайти, пытающегося строить из себя умного, слышавшего звон, но не знающего где он.

Реахтор это реактивная библиотека, а не спринг (не больше, чем микрометр спринг). И там все написано правильно - Mono.just(yourMom).map(Motherfucker::fuck).block() никаких тредов не создаст и выполнит в том же треде.
>>70350
Посмотри спринг потрошитель и обе серии загрузи себя пружина кончает, разбери по частям, сделай соответствующие выводы для себя.
330 1170361
>>70358

> Орнул с войтивайти, пытающегося строить из себя умного, слышавшего звон, но не знающего где он.



Дядя, ты дурак? Или ты про такое понятие как контекст не слышал? Анон спросил, является ли реактивное программирование надстройкой над мультипоточным. Я ответил, что не обязательно и что спринг при написании реактивного кода если его не заставлять отдельные треды не создаёт.

Так что не надо тут корчить из себя всезнающую помидорку.
331 1170362
>>70358

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


что
332 1170363
>>70361
Войтивайти пытается маняврировать. Как мило. Ты написал "Тот же спринг по-умолчанию всю цепочку выполняет в одном потоке"

Теперь поясняй в каком месте пивоталовская библиотека реактора является спрингом. И заодно поясни где это спринг вообще создает треды.
333 1170365
>>70363
Всё, эта помидорка поехала. Записывай мой слив. Спорить с тобой бесполезно.
334 1170367
>>70365
Ты просто обосралась, перепутав понятия спринга, вебфлюкса и любой реактивной библиотеки. Но ты неблох, что имел яйца признать неспособность к аргументированному спору и слился сам.

Как я уже сказал - главное на собеседовании такого не спиздани, бо после такого заявления тебе зададут кучу дополнительных вопросов про спринг, про бут, про контейнеры сервлетов, возможно вебфлюкс с нетти и реактором захватят и ты точно поплывешь и тебе перезвонят.
335 1170368
>>70367
Да-да, я обосрался. Теперь прими таблетки и успокойся.
336 1170372
как писать high-perfomance приложения на яве? Или она только для унылых энтерпрайзов?
337 1170373
>>70368
Ты чем паясничать - прямо сейчас открой гугл и изучи чем отличаются все эти понятия. Поможет в будущем. На полном серьезе, кстати.
>>70372
Хуйлоад как раз на JVM-языках практически только и пишут. Разве что в высокочастотном трейдинге сильна доля крестов, но и там JVM есть, бо лоу латенси профайлинг тоже существует.
338 1170375
>>70373
Всё-всё. Спокойно-спокойненько. Тут тебе никто ничего плохого не сделает. Ты всегда прав, а все остальные неправы и поэтому ты всегда побеждаешь в спорах. Хорошо? :) А теперь прими таблеточки, что тебе доктор выписал и полежи немного. Только не злись и не беспокойся, ладненько? Вот и молодечик.
339 1170377
>>70375
Прими таблетки, шизик.
340 1170381
>>70377
Все шизики кроме тебя. Да-да.
341 1170383
>>70373
дык я спросил как пишут
342 1170388
>>70314
Axaxax. Сука)

>НИХАЧУ ИДЕ


>ПРЕДПОЧИТАЮ ЕБАТЬСЯ В КОМАНДНОЙ СТРОКЕ

343 1170391
>>70388
так я по программе книги иду. Там так и говорится, что для начала никакого ИДЕ. книга из шапки и все её рекомендуют. ЧЯДНТ?
344 1170399
>>70391

>так я по программе книги иду. Там так и говорится, что для начала никакого ИДЕ. книга из шапки и все её рекомендуют. ЧЯДНТ?


Я в своем обучении ебнул ИДЕ и сразу пошел по курсам ГОЛОВОЧА.
Просто божественный мужик наебщик
Выложил просто на ютубчике тонны годноты.
Вспоминаю со слезами. Ах.
345 1170401
>>70391
java party без .class
346 1170402
>>70000
Ну это j2me и эмулятор этого говна типо wtk, насколько я понимаю либо есть какое-то sdk от nokia специально, хз.
347 1170405
>>70401
Пробовал:
>>70324
Видимо там чего-то не хватает. Завтра уже буду разбираться

Там дальше по тексту обоссывается как раз что-то про то, что мне анон ответил, >>70320
Возможно этот код и не надо было набирать, лол. Продолжу завтра
348 1170406
>>70405
у тебя main метода нету
349 1170413
>>70405
Не мучался бы, а ебнул ИДЕ.
Последний раз повторяю.
350 1170426
>>70332

>Так любой ЯП можно назвать синтаксическим сахаром для машинного кода


Машкод это тоже синтаксический сахар.
351 1170430
>>70313
Proxy, Symbol, Extensible Built-in Classes, Block scopes, Destructuring, Rest Parametres, Default Arguments, Only constructable function, Promise, Generators, Iterator Protocol, Meta-symbols (operator overloading).

Реализуй-ка мне все это, на js 8ми летней давности, долбоеб.
352 1170431
>>70313
Вот кстати тоже недавно поизучал чуть-чуть angular 5. Какое же хуёвое ООП на костылях приебашили. Вот не покидало неприятное ощущение. Язык изначально спроектирован на коленке и к нему прикрутили просто ТОННУ костылей, как же это убого выглядит. Помню ещё ебучие фокусы с this. Как же это всё запутано. Как на нём люди пишут просто не понимаю.
353 1170436
>>70431
Просто все эти библиотеки тянутся с до-ES6 эпохи и сохраняют обратную совместимость, а потому там столько костылей. С теми же проксями, можно было бы кучу вещей сделать красивее. Может с выходом shadow dom и custom elemens наконец сделают красивый и маленький фреймворк, написанный с нуля на современном js.
354 1170439
>>70431

>angular 5


>js


Дурак?
355 1170442
>>70439
TS - надмножество ES6, что не так?
356 1170443
>>70373
Писать как писать, узкие места оптимизировать. Не думаю что тут кто-то такие тонкости шарит.
https://www.youtube.com/watch?v=Q-7y1u9kZV0
357 1170448
>>70442

>надмножество


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

Плюсы это Си?
358 1170449
>>70442
Ну и о ES6. У TS совершенно иная парадигма. Статическая. В отличии от динамической ES.
359 1170634
Как мне распарсить строчки в подобном формате
parameter INT a = 0.1;
parameter BOOL b = 0;
Нужно выцепить [a, 0.1], [b, 0], и т.д. Вообще, в идеальном варианте было бы неплохо намутить что-то вроде [INT, a, 0]. На Питоне можно было бы не изъёбываться, но мне нужна именно Java. Варианты?
360 1170637
>>70634
Первое что приходит на ум - регулярные выражения. Но если нужен пирформанс и возможность работы с потоком данных (особенно если строчек в подобном формате слишком много), то только писать самому.
361 1170639
>>70637
Вообще похуй на перформанс. Попробую в регулярки, спасибо.
362 1170694
Жабаны, поясните. Уже попалась вторая софтина где прямо пишут, что на жабе 9 не идет, нужна 7 или 8. Чому так?
363 1170724
>>70694
В девятке сделали модульность и теперь всем либам надо переезжать или клиентам либ устраивать пляски с параметрами сборки и ключами запуска. А переезд не быстрое дело, живые либы переедут сразу на 11.
364 1170731
>>70724
И как джве версии на одной винде сделоть?
Снимок.PNG22 Кб, 467x543
365 1170765
Почему в жабе используется получение параметра по значению с копией? При этом высирается из метода тоже копия,
почему не сделать передачу параметров в метод по ссылке, что бы код на пикрелейтед работл правильно?
366 1170769
>>70765
Примитивы передаются по значению, значения ссылочного типа по копии ссылки. У тебя еще путанница в понятиях судя по

>int tmp = a;



Дай три причины делать

>передачу параметров в метод по ссылке


помимо написания swap.
367 1170772
>>70634
парсер генераторы/парсер комбинаторы.

Если использовать парсер комбинаторы.
Если формат в целом такой примитивный, как ты описал, то даже на жабе последних версий особенно, описание на dsl, например, https://github.com/typemeta/funcj/tree/master/parser , будет не такое уж отвратное.
368 1170774
>>70769
опечатался просто, сначала я написал то же самое с int

>помимо написания swap.


экономия памяти и ресурсов(не нужно делать копии, а просто использовать ссылки)
возможность делать move-конструкторы, как в плюсах, опять же для экономии ресурсов
369 1170783
>>70774

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


Какая экономия на ссылке?

>возможность делать move-конструкторы, как в плюсах, опять же для экономии ресурсов


Я не в курсе move-семантики, т/к отошел от крестов лет 7 назад, но попробую аргументировать тем, что у jvm с gc память предаллоцирована, и создание объектов в куче дешевле, удаление тоже дешево, если в первых поколениях происходит. Т/е это опять же, экономия на спичках.
370 1170801
>>70765
Во-первых, байтоёб - не человек джава (и большинство других ЯП) не плюсы чтоб забавляться с адресами в памяти.
Во-вторых, в какой реальной задаче тебе это нужно? Ответ простой - ни в какой, если ты не байтоёб (см. во-первых).
371 1170804
>>70774
Тех проблем, которые решают в плюсах через move конструкторы, в жаве нет. Всё в жаве (кроме примитивов) - указатели, так что копируются не объекты. А GC позволяет швыряться указателями, не беспокоясь об освобождении памяти.
372 1170831
Аноны, как мне прописать код, что бы при включении компа, моя программа открывалась автоматически?
373 1170838
>>70639
Не слушай предыдущую перл макаку, вот тебе пример решения на котлин https://pastebin.com/4gC7aYkv
Что-то подобное можно сделать и на жабе. скала-питухи идут лесом
374 1170840
>>70831
Без задней мысли.
375 1170851
>>70831
If комп включается {

run programma;
} else
console.log(Programma is not run);
376 1170871
>>70838
Вот это пердолик так пердолик. Вместо простой регулярки накомбинировать 30 строк парсеров. И это только во-первых. Во-вторых, твой парсер загнется если там будет что-то кроме этих параметров, т.к. ХЗ что там у него на самом деле.
377 1170873
>>70871
Перл-макаке НЕПРИЯТНО. Ведь регулярки также упадут или скорее высрут что-то неудобоворимое на невалидном вводе. В отличии от парсер-комбинатора, который при хорошей реализации библиотеки еще и информативное сообщение об ошибке грамматики выдаст.

Ты бы молчало в тряпочку, ведь мое решение использует те же регулярки там где надо. И в отличии от твоих одних лишь сраных регулярок еще и расширяемо.
378 1170886
>>70873
Пфф, ты просто неосилятор-долбоёб. Вот элементарный код на регулярках (тоже котлин):

data class Result(val type: String, val id: String, val value: Any)

fun main(args: Array<String>) {
val regex = Regex("""(?:\n\s*|^)parameter\s+([^\s]+)\s+([^\s]+)\s+=\s+([^\s]+);(?=\n|$)""")
val text = """parameter INT a = 0.1;
parameter BOOL b = 0;"""
val result = regex.findAll(text).map {
val type = it.groups[1]?.value!!
val id = it.groups[2]?.value!!
val value = it.groups[3]?.value!!
when(type) {
"INT" -> Result("INT", id, value.toDouble())
"BOOL" -> Result("BOOL", id, value.toInt() != 0)
else -> throw RuntimeException("Unsupported type")
}
}.toList()
}
379 1170888
>>70886
val regex = Regex("""(?:\n\s*|^)parameter\s+([^\s]+)\s+([^\s]+)\s+=\s+([^;]+);(?=\n|$)""")

Вот так лучше.

Алсо у него в INT содержатся числа с плавающей запятой, а твой парсер вводит дополнительные правила, что INT должен содержать только целые числа, а для остальных нужен FLOAT. Ты так всегда программы пишешь, игнорируя изначальное задание?
380 1170892
>>70888
Продолжай улучшать, кек. Я буду попивать горячий шоколад и смотреть как ты "улучаешь" код который та еще параша!! , игнорируя доменную область - распознавание грамматики. Потом приступим к невалидным данным и к очередной итерации "улучшения".

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

> INT содержатся числа с плавающей запятой


?
381 1170894
>>70892

> ?


Почитай его пост внимательно умник:

> parameter INT a = 0.1;



Сколько у тебя заняло написание парсера? У меня пара минут плюс исправление копипасты (впрочем и без которого всё работало нормально). Или тебе лишь бы попердолиться для решения элементарной задачи?
382 1170899
>>70894

>regexp


>val value: Any)


>main


Ты написал несопровождаемое бесполезное говно.

>Сколько у тебя заняло написание парсера?


Полчаса. Важнее время сопровождающего код.

>Почитай его пост внимательно умник:


>> parameter INT a = 0.1



Ай иди нахуй, ты настолько тупой и/или копротивленец, что обосрался и продолжаешь обсираться? Повторю.
Что вероятнее, что автор проебался с примером? Или кому-то требуется объявлять целочисленные переменные инициализируя вещественными значениями? Это бессмыслица, как и трата времени на тебя, иди нахуй.
383 1170900
>>70899

> Ай иди нахуй


Это ты всем заказчикам так говоришь? :)
384 1170912
>>70899
Прошу прощения, я действительно проебался с примером. Не INT, но FLOAT.
385 1170916
Чего раскукарекались тут? А ну молчать нахуй!
image.png274 Кб, 1600x900
386 1170918
Мальчишки привет, есть тут адепты многопоточности , надо короче четко вырубить поток по окончании цикла в нем по подсчету символов, как мне это сделать? вот код проги
387 1170920
>>70918
какие замечания?
388 1170923
>>70899

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


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



>РЕГУЛЯРКИ ДЛЯ ЛОХОВ РЯЯЯЯЯ


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


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


>на kotlin



Долбоёбы, конечно, все, кроме тебя.
Земля пухом.
389 1170927
>>70918

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


Чего блядь?
390 1170928
>>70918
-extends Thread
+implements Runnable

-ебатень с isAlive
+просто join

Без задней мысли сам завершится
391 1170931
>>70927
ну сначала надо чтобы попбочный поток отработал и вырубился, после этого основной вырубился
392 1170934
>>70931
Ну если побочный поток один, то join подойдёт. Если потоков несколько, то нужно мутить event loop в главном и ждать сообщений окончания ото всех потоков.
393 1170935
>>70928
Ты видишь что выводит, надо чтобы сначала сообщение что программа стартовала, потом вывод результатов рабыты потоков, потом сообщение что программа завершилась, только так и никак ниначе?
394 1170936
>>70934
пример можешь напиздярить?
395 1170944
>>70923
Вариант
А) ты тот еще неугомонный копротивленец - тебе совет в конце поста >>70899
Б) залетный - учись читать объяснялось почему жаба/котлин и да, тебе как такому-же регулярочному говноделу, тоже совет здесь >>70899

>>70935
Ну так влепи
+ z.join();
+ y.join();

вместо той говняшки, что в конце метода.
397 1170950
>>70944
пасбите, милчеловек, я тебя не забуду
398 1170958
>>70944
Посыл нахуй не аргумент, а истерика чмошника. Я тебе, данун, уже пояснил, что ты предложил хуйню и почему.
изображение.png12 Кб, 822x163
399 1170959
Аноны, подскажите пожалуйста, я в сущности User ебанул подобные связи - id юзера и id юзера, которого он фолловит. А как с обратной стороны теперь это маппить, чтобы я мог работать с JpaRepository?
400 1170977
>>70958
Зеленый текст. РЯЯЯ и вариации оскорблений на тему дауна при нуле содержательного текста.

Какая сильная аргументация
401 1170981
>>70949

>while(true)


Разрабы дали java.util.concurrent, нет надо жечь процессор.
402 1170986
>>70981
Ты дурак? Message t = messageQueue.take(); (messageQueue - это LinkedBlockingQueue из того самого java.util.concurrent) как раз и блокирует тред пока не появится новое сообщение.
403 1170993
>>70977
Так ты за своей полемикой следи, малыш. ОК? Мне может и не стоило опускаться до твоего уровня ведения дискусси, но я это сделал - и этого уже не вернуть.
404 1170995
>>70986
Сорян, не вчитался.
405 1170996
>>70949
Ну это просто - ПУШКА.
Смотри на собесе такое не спиздани. Два join, как уже писали выше, делают то же самое.
406 1170998
>>70996
Это ты, поехавшая помидорка с собеседованиями головного мозга? Таблетки так и не принял?
407 1170999
>>70998
Что ты несешь, шизик? Если тебе что-то мерещится - к врачу.
408 1171000
>>70999
Да-да, эта та самая шизопомидока у которой все неправы и все - психбольные.
409 1171011
>>71000
Я не знаю что там у тебя за проблемы с помидорками. Обидели они тебя или ещё чего. Или это мемасик местный. Я человеку указал на говнокод, а ты подскачил с какой-то хуйней. Какие-то помидоры тебе мерещатся. Проверся, а то совсем обдвачуешься.
410 1171013
>>71011
Всё, успокойся, помидорыч. Чё нервничаешь зря?
411 1171016
Двачик, помоги.
решил учить эту залупу (с нуля ) и хочу разобраться. Есть два задания.
1) https://ideone.com/e.js/NRz9N2
Задание: что выведет этот код.
Почему выводит значения: Start, Fail, Final?
Насколько я понял (если не прав поправьте):
1. Ставиться исключение (если кому не впадлу поясните подробнее на моем примере, а то если честно не до конца понял почему выводиться именно Exception)
2. Выводит в try "Start", натыкается на строчку "new test();" (из-за того что ошибка, в том что не присвоили значение или то что совпадает с именем класса?) и пропускает то что после ошибки.
3. дальше читает "catch (Exception e)", в котором ниже указано что должно вывести ошибку из Exception.
4. и в конце запустить finally в котором просто Final.

2) Второе задание:
Код https://ideone.com/ArmUxu
Задание:
"Нужно в эту иерархию добавить класс D, метод а() которого будет возвращать сумму чисел, возвращаемых методами а() классов B и C. Приведите описание этого класса с реализацией метода а() на Java"
Нихуя не понял, помогите пожалуйста как выполнить и понять код.
412 1171025
>>71016

> 1)


Сначала выполняется блок try. Первая строка в блоке - это вывести "Start". Вывод выполняется успешно, значит продолжаем. Вторая строка - это скорее всего вызов функции test (там точно должен быть new?). Во время выполнения функции вываливается ошибка, а значит выполнения блока try прекращается и мы переходим к блоку catch. Там вызывается метод getMessage() (у тебя это будет первый аргумент у ошибки Exception) и результат (строка "Fail") выводится в консольку. После catch выполняется finally.
413 1171029
>>71016

> 2) Второе задание:


Правильней было бы использовать DI, но можно сделать и так:
class D implements A
{
public int a() { return (new B()).a() + (new C()).a(); }
}
414 1171037
>>71029

>Правильней было бы использовать DI,


Ну так и используй

class D implements A
{
private B b;
private C c;

D(B b, C c) {
this.b = b;
this.c = c;
}
public int a() { return b.a() + c.a(); }
}
415 1171040
>>71025

>Там вызывается метод getMessage()



И сразу два вопроса:
1. Если прописать не вызов метода, а рендомный текст?
2. И сработает ли в таком случае Сatch, или будет пропущен?
>>71029

> использовать DI


Что это такое?

И пару вопросов:
1) Почему в примере везде {return} в одной строчке, это норм для восприятия или лучше перенести в новую строчку? (я про читаемость)
2) Почему именно new, по другому вызов функции нельзя сделать? И почему после Б и С скобки и точка. Можешь расшифровать, пожалуйста?
3) Почему нельзя так?
{return (B()+C());} что я не так понял?

И последние задание:
«Напишите функцию (метод вычисления факториала целого числа n без использования циклических конструкций (for, while, do ... while и т.д.). Функция (метод) должна принимать один целочисленный параметр - число, факториал которого требуется вычислить и возвращать целочисленное значение - вычисленный факториал.»
наклипал я эту хуетень (https://ideone.com/ProqB7)

а потом прочел что в задании:
«Если по заданию требуется написать некоторую функцию (метод), значит, нужно просто написать функцию. Никаких дополнительных действий по вводу/выводу информации, проверке корректности параметров и т.д. не требуется.»

тоесть я просто должен написать

int factorial(n)
{
return (nn(n-1));
}

или я чет хуйну пишу?

И да, если не сложно объсните этот код (нашел в нете)
public int fact(int num) {
return (num == 0) ? 1 : num
fact(num - 1);
}
Я правильно его понял: если значение нам равняется нулю, то ответ 1, если не равняется то num = num*fact(num-1)?
415 1171040
>>71025

>Там вызывается метод getMessage()



И сразу два вопроса:
1. Если прописать не вызов метода, а рендомный текст?
2. И сработает ли в таком случае Сatch, или будет пропущен?
>>71029

> использовать DI


Что это такое?

И пару вопросов:
1) Почему в примере везде {return} в одной строчке, это норм для восприятия или лучше перенести в новую строчку? (я про читаемость)
2) Почему именно new, по другому вызов функции нельзя сделать? И почему после Б и С скобки и точка. Можешь расшифровать, пожалуйста?
3) Почему нельзя так?
{return (B()+C());} что я не так понял?

И последние задание:
«Напишите функцию (метод вычисления факториала целого числа n без использования циклических конструкций (for, while, do ... while и т.д.). Функция (метод) должна принимать один целочисленный параметр - число, факториал которого требуется вычислить и возвращать целочисленное значение - вычисленный факториал.»
наклипал я эту хуетень (https://ideone.com/ProqB7)

а потом прочел что в задании:
«Если по заданию требуется написать некоторую функцию (метод), значит, нужно просто написать функцию. Никаких дополнительных действий по вводу/выводу информации, проверке корректности параметров и т.д. не требуется.»

тоесть я просто должен написать

int factorial(n)
{
return (nn(n-1));
}

или я чет хуйну пишу?

И да, если не сложно объсните этот код (нашел в нете)
public int fact(int num) {
return (num == 0) ? 1 : num
fact(num - 1);
}
Я правильно его понял: если значение нам равняется нулю, то ответ 1, если не равняется то num = num*fact(num-1)?
416 1171043
>>71040

> 1. Если прописать не вызов метода, а рендомный текст?


println его и выведет.

> 2. И сработает ли в таком случае Сatch, или будет пропущен?


Для срабатывания блока catch достаточно его наличия и правильного определения типа эксэпшона. У тебя в блоке catch стоит универсальный тип (Exception), т.е. он будет ловить все ошибки.

> Что это такое?


https://ru.wikipedia.org/wiki/Внедрение_зависимости
Для твоей лабы (или что это такое) не нужно.

> 1) Почему в примере везде {return} в одной строчке, это норм для восприятия или лучше перенести в новую строчку? (я про читаемость)


Как хочешь. Я всегда пишу с новой строки. Ты главное точку с запятой не забывай (у тебя её в некоторых местах нету).

> 2) Почему именно new, по другому вызов функции нельзя сделать?


new - это оператор для создания объекта. Он как раз и нужен в джаве чтобы отличить создание объекта от вызова функции. Это такой джавовский синтаксис. В котлине например new не нужен.

> И почему после Б и С скобки и точка.


Потому что такой синтаксис: new Asd() - создаёт объект типа Asd с конструктором без параметров. Если нужны параметры, то они передаются внутри скобок как и при обычном вызове функции.

> 3) Почему нельзя так?


Потому что (1) этот код будет пытаться вызвать функции B и C, а не создать объекты с типом B и C. (2) Складывать тебе по заданию надо результат метода a, а не сами объекты, потому и надо сначала создать объекты при помощи оператора new, а потом у каждого вызвать метод a и сложить результат.

> И последние задание:


Это называется рекурсия.

> Я правильно его понял: если значение нам равняется нулю, то ответ 1, если не равняется то num = num*fact(num-1)?


Да, функция fact рекурсивно вызывается пока num не станет равен нулю, а потом эти значения перемножаются.
417 1171046
>>71040
Кстати, для таких маленьких программ уровня laba, рекомендую создавать один класс Main, а все остальные классы определять внутри его с ключевым словом static (чтобы можно было использовать из main). Тогда всё это можно будет легко запустить в ideone. Вот пример твоего второго задания: https://ideone.com/gT0VyC
418 1171123
Yegor Bugayenko:
The usage of if statement is considered as anti-pattern by all truly professional programmers and must be avoided at all costs. Period.
419 1171128
>>71123
это воннаби функциональщина? Но даже в лиспе есть if
420 1171143
>>68475
Ты - это я через пол года. До сих пор работаю в той самой организацией.
421 1171167
Какой есть аналог sizeof в джаве? На стаковерфлоу сидят одни мудаки и предлагают пользоваться сторонними либами, лол
422 1171177
>>71167
Никакого. Байтоёбы не нужны. Хочешь байты считать — пиздуй в свой си.
423 1171232
>>70731
Не ебу, просто ставить не через установщик наверное.
424 1171235
Какую базу данных брать, хочется что-нибудь нативное и желательно опен сорс?
425 1171238
>>71235
postgres
426 1171239
>>71235

> хочется что-нибудь нативное


В смысле написанное на жаве? Бери orientdb, её даже встроить в приложение можно, как sqlite. Свободно скачивается с maven.
427 1171255
Какую базу данных брать, хочется что-нибудь нативное и желательно опен сорс?
428 1171264
А что в Java нет своей встроенной базы данных? Ахахахаха, отстойники!
429 1171285
Пацаны, какие знания требуются от Java-middle в 2к18?
430 1171354
>>71255
БАМП
431 1171379
>>71264
MySQL
432 1171380
>>71285
Знать все классы.
433 1171388
Какую базу данных брать для программы? Майскл это для пхп и серверов.
434 1171390
>>71388
SQLite.
435 1171407
>>71390
А возможность делиться локальной базой с мастер-базой на мастер-сервере будет просто осуществить с СКЛайт? А если будет распределёнка вместро централизации?
436 1171448
Посоны, поясните по хардкору за thinking in java? Стоит ли брать её как основной материал для обучения? Просто проведя разведку сложилось мнение что с темпом и спецификой развития языка некоторые моменты, возможно даже суперважные, уже не актуальны.
437 1171510
Пиздец, народ, какую БД брать, а?
Элементраный вопрос.
sage 438 1171531
>>71510
Тебе уже ответили, довен.
439 1171541
Котаны, подскажите:
Сейчас учу джаву, до этого говнокодил на разных языках, но ничего серьезного (но база есть). Поясните по хардкору, что в джаве НЕ надо учить, то есть, например в том же js есть jquery, за который в 2018 забивают нахуй камнями и потом сжигают. Есть ли что-то такое в джаве?
И что стоит учить? Spring, hibernate, что еще? Насколько стоит углубляться в эти технологии перед поиском работы?
440 1171545
>>71541

>в том же js есть jquery, за который в 2018 забивают нахуй камнями и потом сжигают


jQuery это единственный вменяемый инструмент в js
441 1171648
>>71541

>Есть ли что-то такое в джаве?


AWT, Java Applet.
442 1171653
>>71545
Два пуэра этому адеквату.
443 1171765
Нужно ли писать d или f на конце значения переменных типа double? Вроде бы и без них работает, в отличие от float.
444 1171785
Что брать МайСКЛ или ЛайтСКЛ?
445 1171787
>>71785
СкрСКЛ
446 1171792
Зачем в джаве для строк length(), а для массивов length ?
Это специально, чтоб путать людей?
447 1171795
>>71792
Да.
448 1171797
>>71795
Вот суки.
449 1171910
>>71792
Дам подсказку: попробуй вызвать на массиве любой метод, который есть у любого объекта. Equals, hashcode и т.п. на твой вкус.
450 1171929
Нуфаг итт.
И некоторое количество вопросов.

1. Где писать?
На парах юзаем мелкомягкую студию, но на моем некроноуте она запускает целый год.

2. Можно ли поднять лвл из 0 до уровня уверенного написания простых программ? За лето можно осилить?

3. Легко ли будет вкатиться в JS после Java?

И раз я тут, то поясните за Jquery: почему его считают самым адекватным инструментом и почему считают некрофилом за его использование?
Тред JS - два блока в низ.
Заранее благодарю отзывчивых.
451 1172036
>>71929

> Где писать?


это не важно, особенно на уровне laba1

>2. Можно ли поднять лвл из 0 до уровня уверенного написания простых программ? За лето можно осилить?


что есть в твоем понимании простая программа???
программирование это понимание базовых операторов, которые на 99% одинаковые для всех популярных ЯП,
понимание парадигм программирования,
структур данных и алгоритмов
знание синтаксиса ЯП != умение программировать
ну и мы же не знаем твоих способностей, может ты дурачок, а может генийчто вряд ли, скорее просто способный

>3. Легко ли будет вкатиться в JS после Java?


ээм, ну вообще-то первое это интерпретируемый язык, а второе частично компилируемый, а вообще если тебе нужен JS, то зачем тебе учить Java, может лучше учить JS?
452 1172102
>>71167
Можно же захардкодить, примитивных типов не так много. Сколько байт какой тип занимает описано в спеке jvm в главе 2.2 data types.
Снимок.PNG32 Кб, 817x792
453 1172130
как написать нормальные метода для работы с файлами write и read,
если работаешь с матрицей?
у меня пока получилось только сделать запись в текстовый файл и вывод на консоль,
а мне нужно, что бы из этого текстового файла информация записывалась в экземпляр типа Matrix, который по сути - двумерный массив
но как это организовать со строкой не понимаю
https://pastebin.com/e7BPim5c
454 1172142
>>72102
Он же небось уебок и хочет объекты мерять. А у них лэйаут зависит от реализации.
455 1172156
Сап джаваны, на текущей работе заебал багфиксинг, решил перекатиться. Сколько просить в хохло провинции с полтора года опыта ?
456 1172162
>>72130
Долбоеб, читай про сериализацию. Все до тебя еще в жаба 1.0 изобрели.
457 1172166
>>72142
Байтоебы, сэр.
458 1172182
>>71929

>Где писать?


IntelliJ IDEA, но если у тебя некроноут, то лучше использовать что-то менее требовательное к железу, например, Eclipse или NetBeans.

>Можно ли поднять лвл из 0 до уровня уверенного написания простых программ? За лето можно осилить?


Да.

>Легко ли будет вкатиться в JS после Java?


Наличие какого-то бэкграунда всегда помогает в изучение чего-то нового. Но всё же, Java и JS это два мало похожих друг на друга языка.

>И раз я тут, то поясните за Jquery: почему его считают самым адекватным инструментом и почему считают некрофилом за его использование?


По сути Jquery это либа для манипуляцией DOM, а современные JS-фреймворки инкапсулируют манипулирование DOM, значительно упрощая разработку. К тому же, современные JS-фреймворки позволяют писать структурированный, расширяемый и тестируемый код, ну а Jquery это просто либа для манипуляцией DOM. Короче Jquery попросту утратил свою актуальность.
image.png12 Кб, 374x167
459 1172249
>>71910
Ну сделал. Вывело true, и что?
460 1172304
Какие есть интересные open source проекты на Java, чтобы поучаствовать?
Только не уровня I2P, а что-нибудь попроще, доступное рядовой энтерпрайз макаке.
Знаю Spring, EJB 3.0, сервлеты, сокеты, AWT/Swing/SWT/JavaFX, JNI, ANTLR. Из JVM языков - Kotlin, Groovy, Clojure.
Лучше что-нибудь десктопное или геймдев.
Делал свой BASIC интерпретатор с 2D игровым движком на SDL+OpenGL, но это вряд ли кому-нибудь интересно.
461 1172421
>>71929

>И раз я тут, то поясните за Jquery: почему его считают самым адекватным инструментом и почему считают некрофилом за его использование?


Потому что лет 10 назад это была единственная технология, которая умела в AJAX. С тех пор появился ректангуляр, который позволяет бэкэнд послать нахуй как класс а ЖЫКВЕРИ так ничему кроме каруселей и аккордеонов так и не научился.
462 1172439
>>72421
Вообще jQuery был полезным лет 10 назад, а сейчас он просто не нужен. Для AJAX'а достаточно fetch, для динамических компонентов есть Vue.js (который подключается через <script> без всяких систем сборок).
463 1172524
>>72439

>Потому что лет 10 назад это была единственная технология, которая умела в AJAX.


>Вообще jQuery был полезным лет 10 назад,


Спасибо, конечно, я рад, что мою речь растаскивают на цитаты, но сириусли, ты нахуя просто переписал мое сообщение своими словами и запостил сюда? Ты совсем ебобо?
sage 464 1172531
>>72524
Потому что могу. Проблемы, омежка?
465 1172553
сап, программач! вопросы нубские, но все же: использую hibernate, есть сущность Value, у нее есть свойство(ну и запись в таблице, соответственно) date(дата создания записи) - какой лучше тип использовать, если мне нужна только дата без времени? и второе - этих сущностей Value будет несколько, даты могут повторяться: не логично ли выделить date в отдельную сущность и сделать у них связь manyToMany?
466 1172586
>>72553
Допустим, у тебя есть таблица Пользователь. У каждого пользователя есть возраст. Логично, по-твоему, в БД заводить отдельную сущность Возраст? если ты совсем тупой, то подскажу: нет конечно же
467 1172587
>>72553

> у нее есть свойство(ну и запись в таблице, соответственно) date(дата создания записи) - какой лучше тип использовать, если мне нужна только дата без времени


Ты не поверишь, но в Java есть стандартный тип данных Date.

>не логично ли выделить date в отдельную сущность и сделать у них связь manyToMany?


Нет. Связывают друг с другом именно сущности, а в большинстве современных БД дата является обычным "примитивным" типом. Оборачивать её в сущность не имеет смысла.
468 1172588
>>72587

>тип данных


Класс, конечно же.
java.png71 Кб, 1364x418
469 1172684
>>70634
Короче, всё распарсил с помощью Питона и регулярок, всё отлично. Есть одна проблема. Нужная мне библиотека имеется только на Жаве.
Каким образом лучше всего работать с подобным датасетом?
parameter,INT,a,1,"description"
parameter,INT,b,2,"description"
...
Хотел возвращать двумерный массив, либо ArrayList<ArrayList<String>>. Как лучше поступить? Мне бы хотелось иметь доступ к каждому элементу в отдельности.
Блядь, на плюсах удобнее писать.
470 1172685
>>72684
А датасет большой? Лучше храни в виде массива классов и сделай индексы (в виде ассоциативного массива) для того что надо часто получать. Ну а если данных реально дохуя возьми готовую бд и ею уже и пользуйся.
471 1172687
>>72524

>Спасибо, конечно, я рад, что мою речь растаскивают на цитаты, но сириусли, ты нахуя просто переписал мое сообщение своими словами и запостил сюда? Ты совсем ебобо?


Уважаемый, вы кажется таблетки забыли принять? Вот, ребятки, до чего Java доводит. Не употребляйте PHP и прочие вещества!
472 1172690
>>72685
Нет, максимум до 100 таких строчек в файле. Более того, нужно обратиться к ним только один раз. В плюсах бы я уже давно запихал всё в векторы, на жаве пишу ровно три дня, не знаю, как сделать всё более оптимально.
473 1172691
>>72690
Ну тогда используй ArrayList и не парься.
474 1172708
>>72690

>я уже давно запихал всё в векторы


Ну так и запихай в Vector, лол.
Но, ArrayList лучше - это то же самое, по сути, но не thread safe и увеличивается медленнее.
475 1172711
>>72684
>>72690
А ещё есть jython, раз уж ты такой любитель этого дела. И юзай оттуда свою библиотеку, оно для того и придумано.

А на плюсах писать удобнее, конечно, чем срать в бутылку, кто спорит.
476 1172780
Нюфажный вопрос: как задать байт в hex виде 0x80? А то ругается на переполнение.
477 1172781
Почему в Джаве такие кастрированные массивы?
478 1172782
>>72780
Нет, низзя. У жавы нет беззнаковых типов. Они слишком неэнтерпрайзны.
479 1172783
>>72782
Ох, ну надо же. Причём int можно задать таким боком. А как вы файлы тогда читаете?
480 1172785
>>72783
Ебошим везде инты. А там где не хватает интов, пишем лонги ну или в совсем крайних случаях BigDecimal. А ты думал шутейки про пожирание памяти жавой родились из пустого места?
481 1172790
>>72785
Спасибо, понял примерно.
482 1172820
Посоны, есть кто из ДС2? Сколько надо денег просить за middle/senior левел на руки? Я так понимаю около 130 это +- потолок, если это не JetBrains.

Алсо, кто-нибудь подскажет за SEMRush, First Line Software и CSI (Кристалл Сервис), был у них на собеседованиях, остались смешанные чувства, проблема с выбором.
483 1172839
>>72820
Это рыночек: за сколько сможешь себя продать - за столько и продашь. 130 не потолок для сениора точно.
484 1172844
Старое-доброе ультранасилие...
485 1172847
Анончики подскажите можно ли опенсорс проект в котором ты участвовал, выдавать за опыт работы?
486 1172952
Иду на следующей неделе на собеседование. Позиция - Java разработчик. Что посоветуете повторить? Не работал с джавой полгода где-то, да и то все, что делал было чистый Энтерпрайз через легаси. А там современный стек технологийрекрутера предупредил, что шарю в чистой джаве ток,типо спринга и хибернейта.
978-5-8459-1759-1.jpg73 Кб, 341x500
487 1172973
>>65567 (OP)
Сап, такой вопрос. У меня жутко чешутся руки в компанию попасть. Так вот, если я заучу "Java полное руководство" Шилдта, то смогу уже пристроиться куда-то стажером хотя бы?
Уже полкниги зарочил, скоро к библиотекам буду переходить (коллекции, строки и т.д.)
488 1172986
>>72973
Да, сможешь, если с английским норм, то даже на более менее приличную галеру, а если туго то нет, не сможешь, либо стажером в какой-либо наебизнес.
489 1173000
>>72847
Если ты контрибьютил, например, в Спринг по 8 часов в день, то да.
490 1173002
>>72986
Спасибо за ответ, анон. С английским все норм - Upper Intermediate.
Я до этого пять лет искал сферу куда себя определить, а также был в жесткой депрессии, прокрастинировал, и параллельно учил инглиш.
491 1173025
>>72783

>А как вы файлы тогда читаете?



А как тот факт, что байт - знаковый тип, мешает его читать из файла?

Если нужно беззнаковый 8-битный тип - то int.
И потом приводить его к 8-ми битам как (val & 0xff).
То же касается и 16-ти битных значений и т.п.
Вообще, байтоебля на джаве не намного хитрее, чем на си, надо просто выучить пару идиом.

И пожирание памяти тут ни при чём, не слушай дураков.

Байт не даёт выгоды по размеру _кода_ (не данных, блять) потому, что сама jvm имеет 32-х или 64-х битные операнды. И твой байт или даже бит один хуй будет 32-х битным в коде. И это не проблема именно джавы, а любой современной системы.
492 1173028
>>73000
А если делал одну таску раз в неделю, уделяя по пару часов в день?
493 1173037
>>73028
Если двигал кнопки на два пикселя вправо в очередной 5-в-ряд для андроида, то очевидно, что для стандартной вакансии spring/hibernate это нахуй никому не нужно. От проекта зависит, от сложности задач.
494 1173040
>>73037
Ну тут стек хибернейт, спринг Бут, мвс
495 1173045
>>73040
Скинь ссылку на проект. Хочу попрактиковаться.
496 1173063
Девчёнки, какую БД брать, серьёзно?
59d0b00dda6fc193477716.png35 Кб, 2138x550
497 1173064
>>73063
красненькую
498 1173069
>>73064
я хочу быть независимой опенсосркой
Firebirdlogo.svg.png96 Кб, 1200x1200
499 1173072
>>73069
вот такая есть
15226190551170.jpg34 Кб, 480x471
500 1173079
>>67492
вот и так подумал. поэтому работаю теперь в ламповом такси.
рожки-кулачок.jpg408 Кб, 850x1200
501 1173086
>>73072
с названиями только
502 1173093
>>73079
я 4 года отработал в такси. Нравилось. Особенно нравилось отсутствие дедлайнов и полная свобода действий
503 1173146
class Counter {
int couter;
void synchronize increment() {}
void synchroniz decrement() {}
}

Два разных потока могут одновременно декрементить и инкрементить? Нет ли тут race condition? Или блокировка накладывается на весь класс?
504 1173155
>>73146
synchronized myMethod() {...} = synchronized(this) {...}

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

А если ты хотел спросить, не будут ли они мешать друг другу - то нет, не будут.

Но, это будет неэффективно.
Такие вещи лучше делать на AtomicLong например, и потом incrementAndGet() etc.
Читай книжки.
505 1173162
>>73155
очень уж туманно всё это написанно

There is no inherent relationship between an object's intrinsic lock and its state; an object's fields need not be guarded by its intrinsic lock, though this is a perfectly valid locking convention that is used by many classes. Acquiring the lock associated with an object does not prevent other threads from accessing that objectthe only thing that acquiring a lock prevents any other thread from doing is acquiring that same lock. The fact that every object has a built-in lock is just a convenience so that you needn't explicitly create lock objects. [9] It is up to you to construct locking protocols or synchronization policies that let you access shared state safely, and to use them consistently throughout your program.

common locking convention is to encapsulate all mutable state within an object and to protect it from concurrent access by synchronizing any code path that accesses mutable state using the object's intrinsic lock. This pattern is used by many thread-safe classes, such as Vector and other synchronized collection classes. In such cases, all the variables in an object's state are guarded by the object's intrinsic lock. However, there is nothing special about this pattern, and neither the compiler nor the runtime enforces this (or any other) pattern of locking. [10] It is also easy to subvert this locking protocol accidentally by adding a new method or code path and forgetting to use synchronization

>synchronized myMethod() {...} = synchronized(this) {...}


т.е. синхронизация распространяется не на метод, а на весь объект?
506 1173170
>>73162

>т.е. синхронизация распространяется не на метод, а на весь объект?



Да. Локом является данный экземпляр.

В любом случае, в современной джаве такую задачу надо решать иначе. Если просто счётчик и т.п. - то AtomicXxx.
507 1173173
>>65567 (OP)
Так и не досмотрел этот фильм.
508 1173188
>>73170
в книжке даётся такой код:
https://ideone.com/AnNtVq

Зачем синхронизировать геттеры?
Сайонар бой! 509 1173190
На баре синие, мы танцуем под миниум...
https://www.youtube.com/watch?v=0aw0M5CBqT8
510 1173192
>>73173
Держи в курсе.
511 1173203
>>73188

>Зачем синхронизировать геттеры?


Наверное, чтобы клиент не прочёл невалидное значение.

Вот это вот читни:
http://www.allitebooks.com/programming-concurrency-on-the-jvm/
(В 5-й главе разбирается годный пример типа твоего, только интереснее)

Очень годная книга.
Она именно о том, как всё это работает на уровне jvm.
Плюс - рассмотрены вещи типа software transactional memory и т.п.
512 1173273
Аноны, хочу вкатится в эту вашу джаву джуниором.
Английский А2, по джаве знаю только хелоуворд. Ну массивы еще, циклы, но это очевидно и так.
Что нужно еще? И где это взять?
513 1173313
анончики, подскажите best practice по строкам(не android): у меня есть несколько длинных строк, делать их просто static final? или же как-то выносить в ресурсы?
514 1173316
>>73313
Какая цель у всего этого?
515 1173331
>>73316
заготовленный текст сообщений для тг-бота(приветствие, хелп)
516 1173334
>>73331
Я имел в виду - чего ты хочешь?
Узнать как правильно хранить большие строки?
Зависит от задачи.

Если строка может меняться, или нужна поддержка нескольких языков - вынеси в файл properties. Погугли интернационализацию в java, i18n, etc.

Если нет - храни прямо в коде.
517 1173340
>>73025
А еще здорово байтоебов-дурачков пугать тем, как в jvm представляются значения true/false.
518 1173353
>>73273

>Что нужно еще?


Всё остальное.
519 1173356
>>73340
Точно так же как и не в jvm?
520 1173357
>>73313
Я тебе открою секрет. Простые стринги всегда final. Ты не можешь их изменять.
521 1173359
>>73356
Обычно размер bool равен одному байту. В Java же его размер implementation defined и зависит от конкретной виртуальной машины:

> This data type represents one bit of information, but its "size" isn't something that's precisely defined.

522 1173364
>>73359
Ну, так же как и не в jvm.
523 1173375
>>73359
В массивах - упаковано в байты, да.
Или даже в битовые поля, как пишут, зависит от jvm.
Одиночные значения, результаты операций - int.
524 1173422
Какую книжку по джаве читать новичку? С упражнениями желательно.
image.png223 Кб, 300x384
525 1173519
526 1173541
>>73422
Хорстмана читай.
527 1173546
>>73357
immutable != final //лол

immutable - неизменяемый объект.
final - неизменяемая ссылка на объект (или значение, для примитивов).
528 1173586
>>73541
хортсман без упражнений же
1487537159233.jpg89 Кб, 528x960
529 1173597
Анончеги в 2к18 на чем мне начать писать RESTful лайк сервис JAX-RS или Spring MVC? Первый знаком, но отсутствие инъекций и ёбля с их последующей интеграцией отпугивает.
530 1173610
>>73586
И правда.
Но, у него есть также [Core Java | Java 8] for the impatient - они с упражнениями.
Но первой на русском нет, вроде-бы, если это важно.
531 1173611
>>73597
Baratine.
532 1173612
>>73597
Spring Reactive же! А вообще да, возьми Spring Boot и не парься. Или какой-нибудь dropwizard, если попроще.
534 1173665
>>73658
Нахуя там элвис пресли?
535 1173666
>>73665
потому-что я слушаю его прямо сейчас
536 1173781
Чуваки, посоветуйте годный ресурс для изучения небольших экзепляров чужого кода в целях повышения своих навыков.
как РКН заебал пиздец просто.jpg36 Кб, 339x512
537 1176034
>>65567 (OP)
Пытаюсь замутить простого тб бота. Нашёл исходники http://inaword.ru/bez-rubriki/kak-napisat-robot-dlya-telegram-na-java-s-ispolzovaniem-eclipse/
Всё работало до того, как начал работать анальный РКН и теперь я в хуй не дую как настроить прокси для телеграм бота.
538 1176972
>>73597
ну если единственное, чем тебя спринг тянет - это инъекции, то проще уже действительно брать какой-нибудь application server, CDI в них с 2009 года поддерживается так то
Тред утонул или удален.
Это копия, сохраненная 8 июня 2018 года.

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

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