Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 523 27 78
Java Thread №261 /java/ Аноним 09/01/24 Втр 14:26:46 2994733 1
Duke(Javamascot[...].png 72Кб, 800x1441
800x1441
Программирование — это не только про анальное крудошлёпство. Java собирает в себе лучшие стороны программирования как стиля мышления.

Вики по вкатыванию в джаву: https://github.com/java2ch/java-thread/wiki
Предыдущий: >>2970953 (OP)
09/01/24 Втр 14:33:52 2994742 2
image 18Кб, 215x317
215x317
еблан блядь
Аноним 09/01/24 Втр 14:36:35 2994745 3
>>2994742
Поч в жаве маскот - зуб с пульпитом?
Аноним 09/01/24 Втр 14:36:46 2994746 4
>>2994742
К макаке претензии.
Аноним 09/01/24 Втр 14:37:40 2994748 5
Аноним 09/01/24 Втр 14:40:43 2994752 6
>>2994748
Надо тред в медач перенести
Аноним 09/01/24 Втр 14:50:45 2994760 7
>>2994746
Претензии к тому кто картинку выбирал. Не мог что ли аи генератором воспользоваться?
Аноним 09/01/24 Втр 14:52:16 2994762 8
>>2994760
Не из-за выбирающего картинку бекграунд у прозрачной пикчи на сосаче чёрный, а не соответствующий цвету поста.
Аноним 09/01/24 Втр 14:56:51 2994766 9
Аноним 09/01/24 Втр 14:58:18 2994767 10
Аноним 09/01/24 Втр 18:34:21 2994977 11
Остаться работать в сбере джава 8 легаси моноблок за ~320к/мес + премия ~650к/год
или
новая компания джава 17, сотни рпс, свистелки-перделки, кликхаузы, сыкулее и ноу сыкулее, но за 250к/мес без премии

я просто мидоль и на синьора меня не зовут, да я и не знаю особо ничего, 4 год уже сижу в легостане этом. Деньги или крутой опыт? Конвертнется ли крутой опыт в еще большие деньги в РФ?А?
Пишем Ваши мнения, это важно, потому что январь это месяц нереста сберунов, после годовой премии в декабре.
Аноним 09/01/24 Втр 18:35:55 2994978 12
>>2994733 (OP)
Очень важный пост >>2994977 этого ИТТ треда. Глубокие философские рассуждения, страхи, надежды, реальность. Не проходите мимо.
Аноним 09/01/24 Втр 19:21:10 2995047 13
>>2994977
как найти такой легаси моноблок за 300к?
Аноним 09/01/24 Втр 19:25:01 2995055 14
Аноним 09/01/24 Втр 19:43:24 2995083 15
>>2994977
Остаться конечно. 17 джава это тоже легаси, плюс и на новом стеке пиздец может быть и даже часто бывает. Обмен не стоит того.
Аноним 09/01/24 Втр 21:29:18 2995224 16
>>2994977
Остаться работать в Сбербанке параллельно ища работу где бы платили бы столько же. Зачем добровольно себя даунгрейдить?

В плане перспектив в РФ не знаю. Такое чувство, что банки и безопасность это и есть все перспективы. Халявные заграничные деньги кончились.
Аноним 09/01/24 Втр 21:45:55 2995254 17
>>2995224
>Остаться работать в Сбербанке параллельно ища работу где бы платили бы столько же
Если так подумать, то это очень разумно. Но я боюсь я потом никуда не устроюсь, потому что у меня опыт только с монолитом и задачи которые я решаю однотипные и скорее для кодерка, чем программиста. Что на это скажешь? Или типа циферки в стаже везде меня пристроят, сейчас 4 года опыта, станет 5, 6 я то понимаю, что это только циферки и все равно дадудт 300к+ и в коммерции? Пездец сложно, почему просто нельзя во всех компаниях использовать нормальный стек
Аноним 09/01/24 Втр 22:12:20 2995307 18
>>2995254
Не знаю, я уже давно забил на изучение нового стека. Я читаю книжки написанные пердунами в нулевых и это всё моё повышение квалификации.

Я бы выбрал стабильность и там где меньше работать.
Аноним 09/01/24 Втр 22:16:28 2995315 19
>>2995254
как устроился в сбер? после вуза?
Аноним 09/01/24 Втр 22:47:52 2995380 20
>>2995307
Опасно, в один момент все перейдут на го и вместо переписывания монолитов сразу начнуть писать микросервисы на гохе, для этого дела естественно позовут тех кто держал нос по ветру, кто не успел еще все на котлин переписать и уже переписывает на го, а мне и тебе скажут сиди пока на поддержке, а потом укажут на выход
>>2995315
На последнем курсе вуза
Аноним 09/01/24 Втр 23:16:05 2995419 21
>>2995380
Да пофиг если честно. Ну, уволят и уволят. Деньги счастья не принесли, чего за них сильно держаться. 100 к, 300 к, 500 к - однохуйственно. Лишь стены квартир меняются на посвежее, да всякую фигню не заморачиваясь покупаешь. При этом просто взять и уйти денег не хватает и никогда не хватит. Ловушка Джокера. Хочется просто, чтобы мозги поменьше трахали и работы поменьше подкидывали.
Аноним 09/01/24 Втр 23:24:38 2995428 22
>>2993747 →
>>2993851 →
Ну так, спиай, хуйпиай мастер что нибудь ответит? Как нам обустроить Россию JDBC?

А то сейчас, когда подключаешь к последней JDK старый драйвер и пытаешься использовать новое API получаешь NoSuchMethodError. Всё из-за дурацких интерфейсов! А вот был бы полноценный API&SPI вот бы житуха была!
Аноним 09/01/24 Втр 23:39:04 2995443 23
>>2995428
Ответит, но не сегодня и не завтра, надо таски закрыть. Твой вопрос помню, мне самому выгодно понять не хуйню ли я делаю, так что будет свободное время разобраться отвечу
Аноним 09/01/24 Втр 23:40:52 2995446 24
>>2995380
Я думаю, что скоро все поумнеют, и перестанут делать микросервисы вообще. Ну, кроме тех 1.5% случаев, где они действительно нужны.

Алсо, чего именно тебе лично не хватает в 8-й джаве, из того, что есть в 17-й?
Аноним 09/01/24 Втр 23:53:25 2995457 25
>>2995446
17 джава приближает меня к грин потокам в 21, и спринг буту 3. А еще там более понятный стектрейс, наллпоинтер пишется не в какой строке, а в какой переменной. Да и вообще, в 11 есть вары и куча всего
Аноним 10/01/24 Срд 00:29:02 2995493 26
>>2995457
Спринг вообще не нужен, ни бут, ни ебут. Это дичайший bloat.
Когда я вижу, во что превратилась современная джава, то вижу только 2 пути - или продолжать сидеть на 8-й, или перекатиться в Go.
Аноним 10/01/24 Срд 06:30:21 2995606 27
>>2995443
Ох уж эти мамкины достигаторы, которые говорят, что основывают все свои действия на выгоде, но при более близком рассмотрении классические пидорюндели с принципами. Правда извращёнными уж слишком.
Аноним 10/01/24 Срд 06:44:10 2995616 28
>>2995457
> к грин потокам в 21
У меня есть подозрение, что лум как реализация провалился. Переключение контекста всё ещё дорогое, кал беки быстрее. Более правильным подходом была бы глубокая автогенерация методов с калбеками по любому байткоду, бьющихся по тем местам, где сейчас стоят лумовские блокеры + дать возможность самому ставить синтаксические блокеры и читать их для кастомной реализации разбивалки методов. Не так, как сделано в петухлине, с оверхедом в 10 раз, а по джавовски. И не как в шарпоговне, а чтобы все синхронные библиотеки разом стали асинхронными.
Аноним 10/01/24 Срд 08:32:04 2995645 29
>>2995493
Без бута и джава не нужна. Питон и го проще для простых задач.
Аноним 10/01/24 Срд 08:42:45 2995651 30
image.png 378Кб, 854x480
854x480
Аноним 10/01/24 Срд 13:23:03 2995909 31
>>2995493
>>2995645
То что вы дрочите на го сразу показывает что вы ни строчки на нем не написали. Это недоязык на котором невозможно приличную систему писать
Аноним 10/01/24 Срд 13:36:57 2995930 32
>>2995909
>>Это недоязык на котором невозможно приличную систему писать
А я тебе что написал?
Для хуйни энтерпрайз уровня - жаба/шарп на фреймворках.
Для примитивных вещей - го и питухон.
Если б на го хотели писать что то сложное - то там появился бы свой спринг.
Аноним 10/01/24 Срд 14:01:05 2995951 33
ку, аноны
подскажите имеются ли какие-то бест практисы для следующего кейса:
имеется микросервис, который принимает жсонину, и на основании данных в этой жсонине отправляет запрос на другой микросервис, по сути гейтвей такой. каким лучше образом определять, что за жсон прилетел, через некий json path/spring expression language? очевидно, хочется, чтобы не уходило дохуя времени на определение типа жсона, всякие regexpы наверное будут сжирать много проца, да и если огромный пейлоад, то будет только хуже
Аноним 10/01/24 Срд 14:06:17 2995952 34
>>2995951
Что значит определять какой жсон пришел? Определять какие поля в нем?
Аноним 10/01/24 Срд 14:12:58 2995958 35
>>2995952
ну типа того, да. допустим, жсон на регистрацию пользователя нужно отправить на юзер-сервис, а жсон на получение хуй его знает его кредитной истории на какой-нибудь пейментс-сервис. очевидно, что эти два жсона абсолютно разные
Аноним 10/01/24 Срд 14:13:59 2995961 36
>>2995958
Api gateway из спринг клауда не пробовал?
Аноним 10/01/24 Срд 14:17:33 2995963 37
>>2995958
Вообще задача интересная,сейчас глянул,у нас используется зуул для таких целей. Абсолютно не знаю как он работает,но в гейтвее даже контроллера нет,там пишешь класс фильтров и прописываешь роуты в ямлике
Аноним 10/01/24 Срд 14:20:29 2995966 38
>>2995961
ну он по сути облегчает саму настройку роутов, куда конкретно пробрасывать, сам же механизм определения как и куда в любом случае придется писать самому, о чем, собственно, и был вопрос - юзать какие-то json path или есть что-то более производительнее/удобнее
Аноним 10/01/24 Срд 14:26:53 2995973 39
Аноним 10/01/24 Срд 14:52:10 2996001 40
>>2995930
>Если б на го хотели писать что то сложное - то там появился бы свой спринг.
Это не говей. На Го просто пишут много кода, а если проект сложный то очень много.
Аноним 10/01/24 Срд 15:21:16 2996020 41
>>2996001
Покажите им сервлеты и вебсокеты,они сразу полюбят джаву
Аноним 10/01/24 Срд 15:22:12 2996022 42
Аноним 10/01/24 Срд 16:11:29 2996089 43
>>2996020
>Покажите им сервлеты и вебсокеты,они сразу полюбят джаву
Сервлеты это ± уровень фреймворков го.
Аноним 10/01/24 Срд 16:13:19 2996091 44
>>2995951
>имеется микросервис, который принимает жсонину, и на основании данных в этой жсонине отправляет запрос на другой микросервис
А схуяли все шлют запросы на один и тот же урл? По нормальному надо разные урлы для разных запросов.
Аноним 10/01/24 Срд 16:21:52 2996106 45
>>2996022
спасибо, поизучаю

>>2996091
потому что такие требования
Аноним 10/01/24 Срд 16:24:18 2996111 46
>>2996091
Потому что HTTP это транспортный протокол, и роутинг должен делать веб-сервер. Так как веб-сервер не умеет в динамический роутинг, то все такие запросы должны должны приходить на один и тот же url.
А ещё надо всегда 200 возвращать.
Аноним 10/01/24 Срд 16:34:42 2996134 47
>>2996111
тут, кстати, я проебался и не написал дополнительных условий. сообщения могут приходить откуда угодно (kafka/mq/rest) и уходить куда угодно
Аноним 10/01/24 Срд 17:57:05 2996266 48
>>2996111
При чём здесь транспортный протокол?
Я думаю, там дело в том, что клиенты просто не знают (не могут или не должны знать), куда это должно пойти. Именно для этого и нужен тот сервис, который знает, и, после анализа контента, маршрутизирует это туда или сюда.
Аноним 10/01/24 Срд 18:39:51 2996361 49
>>2996111
>А ещё надо всегда 200 возвращать.
>200
>Service Unavailable
Аноним 10/01/24 Срд 18:43:48 2996375 50
>>2996361
>Service Unavailable
Это 503.
У вас ещё каникулы не закончились?
Аноним 10/01/24 Срд 19:07:30 2996442 51
>>2996375
Но ведь нужно всегда возвращать 200, а Service Unavailable вернуть в String errors.
200 коллеги?
Аноним 10/01/24 Срд 19:09:46 2996448 52
>>2996106
>потому что такие требования
Чел, не может быть бизнес требований всё слать на один и тот же урл. Это какой то не очень умный техлид придумал. И это говно надо менять.
Аноним 10/01/24 Срд 19:27:19 2996517 53
>>2996442
роутинг это транспорт, значит возвращаешь http коды.
Если мессага дошла куда надо и была успешно обработана (даже если сработала бизнес-валидация) - возвращаешь 200
Аноним 10/01/24 Срд 19:43:01 2996560 54
Аноним 10/01/24 Срд 21:45:27 2996785 55
>>2996001
>>Это не говей. На Го просто пишут много кода
Они поэтому туда пыхеров берут, чтоб те не были испорчены фремворками, архитектурой и прочими бест практисами?
Аноним 11/01/24 Чтв 00:08:22 2996928 56
>>2996785
В гугель, если решаешь литкод медиум, и проходишь по софтскилам то берут.
Аноним 11/01/24 Чтв 05:24:50 2997041 57
Аноним 11/01/24 Чтв 05:28:30 2997042 58
>>2995616
А ещё из-за реализации лума теперь все синхронайзеды обратно задепрекейчены, да.
Аноним 11/01/24 Чтв 05:55:29 2997047 59
>>2995651
Никто нн проходил? Охуенный же квест.
Аноним 11/01/24 Чтв 06:29:46 2997054 60
>>2997047
Здесь половины треда в 1990 ещё даже в мыслях не было.
Аноним 11/01/24 Чтв 06:41:35 2997059 61
17047658498790.png 9Кб, 1211x166
1211x166
17047658498791.png 73Кб, 1212x331
1212x331
17047658498792.png 20Кб, 1205x136
1205x136
17047658498803.png 31Кб, 1110x136
1110x136
В прошлом треде мне никто не ответил, поэтому переспрошу.
Как правильно обновлять сущности?
Сейчас обновляю путом со всеми полями. Ну или дтошкой с почти всеми полями. Ну то есть фронт читает гетом все поля, что ему доступны, меняет те, что поменял пользователь, а какие не поменял - передает без изменения. И я обычно все без каких-то проверок, кроме валидаций апдейчу в бд. Ну или иногда там что-то есть в дто, но обновлять это в некоторых случаях нельзя. Ну и тогда или игнорирую поле или эксепшон выкидываю.
Но мне кажется это тупо, особенно если в дто 30-50 полей, а измениться может только одно или два. Гонять туда-сюда лишние сотни килобайт не ясно зачем. Особенно если некоторые поля могут быть побольше. Не огромные, но пару тысяч знаков. Но патчем это надо по одному полю передавать? 50 эндпоинтов это тупо.
На первой ссылке в гугле нашел вот такую статью на баелдунге:
https://www.baeldung.com/spring-rest-json-patch
У этого подхода есть даже стандарт:
https://datatracker.ietf.org/doc/html/rfc6901
И свой Content-Type: application/json-patch+json
Выглядит неплохо:
- Получаем список операций. Меня интересует replace. Ну и remove, чтобы занулять поля, потому что вроде бы в replace null запрещены. Список операций лежит в JsonPatch
- Достаем сущность по ид и иерез apply делаем мердж нужных полей с нужными операциями.
- Полностью сохраняем сущность в бд.
Но вот вопросы:
1. Реально ли таким подходом пользуются? На гитхабе у библиотеки https://github.com/java-json-tools/json-patch всего 700 звездочек и <groupId>com.github.java-json-tools</groupId> какой-то васянский.
2. Норм все будет с валидациями? У меня на 50 полей 40 валидаций раскидано, чисто с содержимым связаны, не просто ненулевое. Ну вот допустим они будут применяться во время apply. И так же все схватится адвайсами и выкинется правильная ошибка. Но валидации они не на сущности, а на дтошки, потому что в разных эндпоинтах валидации могут быть разные. Это получается нужно мапииь сущность в дтошку и уже ее мерджить и потом обратьно мапить?
3. В бд все сохраняется все равно скопом. И нужно делать предзапрос с селектом по ид. Чтобы сделать upate запрос с произвольным количеством полей через jdbc эта библиотека не подойдет, придется самому что-то похожее на список ReplaceOperation городить. Самому валидировать есть ли все пришедшие поля, самому доставать валидации на поля, а потом уже строить запрос.
Аноним 11/01/24 Чтв 07:11:34 2997082 62
>>2997059
Проблемы спрингодебилов. Новые поля в нормальной архитектуре устанавливаются дефолтным значением/инициализатором, удалённые отбрасываются/передаются в сокращатель.
Аноним 11/01/24 Чтв 08:32:49 2997121 63
>>2996517
Неправда, роутинг динамики это уже уровень приложения, поэтому на неправильный урл надо возвращать 200 с текстом, что урл неправильный.
Аноним 11/01/24 Чтв 08:39:37 2997125 64
>>2997121
клиентский код не знает про роутинг и ему это до пизды. Это транспорт
Аноним 11/01/24 Чтв 09:47:22 2997179 65
>>2997082
Причем тут новые поля?
Я о том, как лучше и правильнее частично обновлять значения полей.
Там где я работал/стажировался/читал чьи то проекты всегда обновляли все полностью. Или писали эндпоинт для одного поля.
Да, пример на баелдунге на спринге, но на жаваее или на микронафте будет все тоже самое.
Аноним 11/01/24 Чтв 09:53:33 2997180 66
>>2997179
я пишу разные ручки для разных сценариев обновления. И в каждой ручке обновляются только возможные для этого сценария поля
Аноним 11/01/24 Чтв 11:27:52 2997251 67
>>2997125
Рутинг или маршрутизация. Открой словарь и смотри, как читается, прежде чем писать.
Аноним 11/01/24 Чтв 11:52:37 2997287 68
на собесе прозвучал следующий вопрос: сколько потоков стоит использовать для системы с четырьмя ядрами? что вы бы ответили, учитывая, что нужен конкретный ответ?
Аноним 11/01/24 Чтв 11:54:00 2997292 69
Аноним 11/01/24 Чтв 11:59:29 2997298 70
>>2997287
По задачам. Если там числодробилка то 4, если дохуя конкурентного I/O то десятки-сотни грин тредов, если скрипутха какая-нибудь то один поток, если программа состоит из нескольких подсистем то можно сделать по одному потоку на подсистему, ну или на какую-нибудь подсистему несколько потоков выделить а на остальные по одному. В чём не прав?
Аноним 11/01/24 Чтв 12:05:53 2997313 71
>>2997287
насколько частей делится процесс программы, столько бы и сделал. Числодробилки в большинстве нет смысла делить, но лучше измерять
Аноним 11/01/24 Чтв 12:28:09 2997335 72
>>2997287
>колько потоков стоит использовать для системы с четырьмя ядрами?
потоки создаются под конкретные задачи, а ты должен был рассказать что будет при создании малого колва потоков и большого, поэтому мы тебя и не взяли джун
Аноним 11/01/24 Чтв 12:28:52 2997336 73
Аноним 11/01/24 Чтв 13:27:53 2997417 74
>>2997287
Если это все условия и вопросов больше задавать нельзя, то ответ: один. Если можно задавать вопросы, то конечно же: для какой конкретной задачи?
Аноним 11/01/24 Чтв 14:07:57 2997484 75
>>2997287
>>на собесе
Если это простые ядра с гипертредингом - то 2n-1
Если это всякая ебала с разными ядрами типа экономичных - то хз как оно там распределяться будет на практике, наверное 2n-1 + k

виляние жопой - "по задачам" - принимается как незнание
Аноним 11/01/24 Чтв 15:20:48 2997600 76
>>2997179
Что значит частично обновлять значения полей? Entity#yoba(newValue) и dto.upsert(entity).
Аноним 11/01/24 Чтв 15:31:16 2997608 77
>>2997484
>виляние жопой - "по задачам" - принимается как незнание
А что не так? Если потоки загружены на 100% задачами от контролируемого кода то равное количеству логических процессоров. Если есть взаимодействие с чужим кодом, если часто блокируется на I/O, и т.д. то цифры (и подход) будут различаться. А ты вообще программист, уважаемый?
Аноним 11/01/24 Чтв 15:55:46 2997643 78
>>2997287
Дебильный вопрос. Это ты в епам ходил, что ли? На десктопе нужен один поток для гуи и по потоку на каждую тяжелую задачу уровня проверить орфографию или скомпилировать и показать ошибки. Для серверов нужны асинки, а количество потоков в пуле задается параметром в настройках.
Аноним 11/01/24 Чтв 16:06:37 2997673 79
>>2997608
Это стандартный вопрос, на который ожидается стандартный ответ. В лучшем случае уточнят что это числодробилка, в худшем - поставят крестик и пойдут к следующему вопросу.
>>А ты вообще программист, уважаемый?
Тебя это ебать не должно.
Аноним 11/01/24 Чтв 17:41:48 2997829 80
>>2997484
> 2n-1
Зачем оставлять одно логическое ядро свободным?
Аноним 11/01/24 Чтв 19:30:47 2998040 81
>>2997673
Так а хули ты высираешься про какие-то манякрестики, если сам ещё егэ не сдал, дегенерат?
Аноним 11/01/24 Чтв 19:32:04 2998043 82
>>2997829
Чтобы поумнее чем 2n формула выглядела. Нашёл кого спросить за базар, это же школота голимая. Он даже не знает что в джаве ничего умножать не надо, потому что рантайм сразу логические процессоры возвращает.
Аноним 11/01/24 Чтв 21:36:02 2998298 83
>>2997287
Четыре.
Предполагается равномерная непрерывная нагрузка на потоки.
Больше - толко если задача этого явно требует, т.к. увеличения скорости это не даст.
Смысл такого вопроса - понимает ли человек, как это вообще работает. И что если сделать 100 параллельных потоков, это не будет работать в 100 раз быстрее.
Аноним 11/01/24 Чтв 21:37:55 2998302 84
>>2998298
Если с гипертредингом - то 8, я думаю, смысл понятен - столько, сколько в процессоре физических потоков вычислений.
Аноним 11/01/24 Чтв 21:56:32 2998387 85
>>2998302
Гипертрндинг не про физические потоки вычислений. У тебя остаётся один армфметически-логическмй блок в ядре, но дублируется всё остальное, что нужно для работы с потоком. В итоге переключение контекста потоков занимает минимальное время, но инструкции продолжаются выполнятся в одном калькуляторе.
Аноним 11/01/24 Чтв 22:05:14 2998407 86
>>2998302
И дополню, твой ответ и ответы остальных про 2n неверные, потому что у вас всё также остаётся 4 физических ядра даже с гипертредингом, то есть выигрыша в производительности вы не получите при условии отсутствия IO операций. Если в алгоритме есть IO операции, то тут вопрос уже как часто они вызываются.
Аноним 11/01/24 Чтв 22:12:34 2998418 87
Аноним 12/01/24 Птн 03:02:07 2998666 88
>>2998418
Чувак, на этот вопрос есть только 2 правильных ответа:
1. Четыре
2. Хуй его знает, зависит от задачи
Аноним 12/01/24 Птн 03:03:35 2998668 89
>>2998418
Добавлю, что по твоей ссылке примерно это и написано.
Аноним 12/01/24 Птн 03:40:54 2998673 90
>>2998387
>>2998407
Школьник опять поясняет за вещи, в которых не имеет ни малейшего понимания. Переключение контекста блядь минимальное время занимает, охуеть просто.
Аноним 12/01/24 Птн 08:48:07 2998733 91
image.png 134Кб, 1257x747
1257x747
>>2996111
>HTTP это транспортный протокол
Ты идиот?
Аноним 12/01/24 Птн 09:04:42 2998736 92
>>2998733
1. Никто не мешает дальше слои инкапсуляции наращивать. Почитай про слои в протоколе mtproto у телеграма. Сколько их там.
2. Эта RFC не про написание поддерживаемых программ. Поэтому буквально ограничиваться ей невозможно. Иначе у тебя клиент будет слишком много знать как устроен сервер приложения.

мимо
Аноним 12/01/24 Птн 09:13:09 2998742 93
>>2998736
https://core.telegram.org/mtproto

Transport component: defines the method for the client and the server to transmit messages over some other existing network protocol (such as HTTP, HTTPS, WS (plain WebSockets), WSS (WebSockets over HTTPS), TCP, UDP).
Аноним 12/01/24 Птн 09:29:15 2998751 94
>>2998673
По делу есть что сказать или только хрюкать умеешь?
Аноним 12/01/24 Птн 09:44:40 2998768 95
>>2998751
Я по делу и сказал, ты высрал хуйню, не в минимальном времени переключения контекста преимущество.
Аноним 12/01/24 Птн 09:45:20 2998770 96
Аноним 12/01/24 Птн 09:46:12 2998772 97
>>2998770
В более полной загрузке одного ядра, которое, внезапно, не монолитно.
Аноним 12/01/24 Птн 10:00:47 2998779 98
1000006775.jpg 401Кб, 1517x1146
1517x1146
>>2998772
Вспоминаем схему CPU. Вот у тебя ALU стоит (в центре, красная штуковина, которая занимается выполнением инструкций), вот файл-регистр, вот кэши, вот блок управления и где-то там главная память.

Каким образом дублирование контекст-релейтед блоков, но не дублирование ALU даёт большую производительность для параллельного алгоритма без IO операций?

Никак, потому что блять калькулятор как был один так и остался
Аноним 12/01/24 Птн 10:06:36 2998785 99
Аноним 12/01/24 Птн 10:13:24 2998793 100
1000006778.png 8Кб, 287x176
287x176
1000006777.png 48Кб, 516x509
516x509
1000006776.webp 36Кб, 811x500
811x500
>>2998785
Да пофиг, схематично та же самая байда.
Аноним 12/01/24 Птн 10:23:06 2998804 101
Аноним 12/01/24 Птн 20:13:48 2999623 102
Вы зачем шиза-вахтера со своими цпушными транзисторами и потоками в мвп тред выпустили? Забирайте его к себе обратно
Аноним 12/01/24 Птн 20:27:45 2999645 103
>>2998733
application-level protocol если у тебя апликейшен это гипертекстовая страница
Аноним 12/01/24 Птн 22:23:12 2999809 104
Кто-нибудь работал с генерацией docx документов? Сталкивались с проблемой что для гиперссылок нет стиля по умолчанию?
Аноним 12/01/24 Птн 23:18:23 2999867 105
>>2998733
В контексте обсуждаемой проблемы - это транспортный протокол.
Надо своей головой думать, а не волшебные слова в интернетах выискивать.
Аноним 12/01/24 Птн 23:46:40 2999902 106
>>2999809
По умолчанию в пустом документе ворда нес стиля для ссылок.
Он появляется, как только в документе появляется ссылка.
Стиль называется Hyperlink.
Если вставить ссылку и тут же ее выпилить - стиль останется
Аноним 12/01/24 Птн 23:47:30 2999906 107
>>2999902
То есть это нормальное поведение? Нельзя как-то автоматически включить этот стиль в документ при генерации?
Аноним 13/01/24 Суб 12:52:59 3000364 108
Вот, кстати, отличный образец того, что называется днище ёбаное.
И это программисты, блядь, вообще охуеть.
https://www.youtube.com/shorts/RG-DLbmsr3A
Аноним 13/01/24 Суб 12:53:50 3000366 109
>>3000364
Лол, не в тот тред запостил.
Но, так даже смешнее.
Аноним 13/01/24 Суб 12:57:51 3000374 110
>>3000364
>Вот, кстати, отличный образец того, что называется днище ёбаное.
>И это программисты, блядь, вообще охуеть.
>shorts
Действительно.
Аноним 13/01/24 Суб 13:08:54 3000380 111
>>3000364
> В http2 запросы бинарные
В hhtp1 были небинарные?
Аноним 13/01/24 Суб 16:32:51 3000591 112
>>2995254
Анон, у меня аналогичный опыт, я решил перейти на современный стек и более сложные задачи(надеюсь осилю). В банке уже несколько лет делаю однотипные бизнес задачи, деградирую. Правда на новой работе зп повыше хоть и не сильно, при уходе предлагали контоффер по которому я получал бы больше. Решил, что сам я учиться не буду (учусь только для собесов), а на новой работе придется. Если б мне платили 650к в месяц ,я б наверное не дёргался, с премиями получаю меньше 400
Аноним 13/01/24 Суб 18:35:07 3000877 113
>>2999906
Прочитал в доках, вроде никак это не обойти. Ну ок, сделал синий текст с подчеркиванием, пойдет.
Еще вопрос: когда я открываю сгенерированный документ, он начинает перестраиваться на ходу. Там большая таблица, которая начинает сжиматься, как я понял из-за того что что ворд расставляет переносы строк в ячейках. С этим можно что-то сделать?
Аноним 13/01/24 Суб 18:41:41 3000883 114
>>2999809
>>2999906
>>3000877
А нахуя тебе всралось генерировать в уёбищном интернал проприетарном формате копрософта?
Аноним 13/01/24 Суб 19:02:16 3000930 115
>>3000883
docx открытый формат, дуралей.
Аноним 13/01/24 Суб 19:08:20 3000944 116
>>3000380
>В hhtp1 были небинарные?
Да they/them
Аноним 13/01/24 Суб 19:20:55 3000966 117
>>3000930
Даже если так, остаётся уёбищный, интернал и копрософта.
Аноним 13/01/24 Суб 19:23:03 3000970 118
Как же меня заебали некомпетентные хуесосы, которые лезут своим свиным рылом туда, где ничего не понимают, и еще имеют наглость иметь "свое" мнение. Животные блядь.
Аноним 13/01/24 Суб 19:56:56 3001029 119
Аноним 14/01/24 Вск 01:18:48 3001651 120
Зачем нужен котлин/scala/groovy если есть джава? Нахуя люди пытаются его заменть/упростить/занять какую то из его ниш?
Аноним 14/01/24 Вск 02:25:38 3001733 121
>>3001651
Котлин - не нужен.
Груви - просто охуенен для скриптования джавы, для тестов, для утилит.
Можно встроить груви веб-консоль прямо в свой сервер, и пилить скрипты, дёргая бины, выполняя запросы к бд и т.п. прямо на живом сервере.
Писать большие программы на нём вместо джавы не нужно.
Аноним 14/01/24 Вск 02:28:24 3001736 122
>>3001651
А, чуть не забыл - скала - это академический язык.
Для повышения квалификации - хорош, для реального программирования - нет.
Аноним 14/01/24 Вск 10:10:24 3001930 123
>>3001651
нескучный синтаксис. Забывают что они нужны чтобы приносить велъю кабану, а не чтобы играться в свои игрушки
Аноним 14/01/24 Вск 10:15:06 3001932 124
>>3001651
Ну, если синтаксис жабы тебе нравится больше чем синтаксис котлина, то кажется ты переболел ковидом. В остальном, та же байда только в профиль.
Аноним 14/01/24 Вск 10:21:04 3001936 125
>>3001932
Там скуф энтерпрайзный судя по постам. Он просто не может осознать выразительность языка после убогой джавы.
Аноним 14/01/24 Вск 10:24:54 3001937 126
>>2994733 (OP)
А на чем я буду получать больше анончики?
1. Подучить вротенд и стать фулстекером?
2. Подучить скалу и стать разрабом на скале?
Аноним 14/01/24 Вск 10:26:17 3001939 127
>>3001937
Забудьте про скалу, она мертва, это пет-проект одного профессора. Получать больше ты будешь на голанге.
Аноним 14/01/24 Вск 11:32:56 3001981 128
Аноним 14/01/24 Вск 12:09:49 3002028 129
>>3001981
Где мне 400к за три года опыта получить в джаве? А вот в го это изи, чел просто устроился в вб.
Аноним 14/01/24 Вск 12:19:11 3002044 130
Аноним 14/01/24 Вск 12:38:05 3002073 131
>>3001651
Потому то программистишки, когда разговор заходит о стоимости поддержки, техническом долге и легаси, как правило за деревьями леса не видят.

Вместо того чтобы честно уже признать, что единственная обьективная причина существования легаси - это прокладка между сиденьем и монитором, они сваливают вину на язык, технологии - что угодно. Ложные суждения ведут к невменяемым потугам - программистишки бросаются переписывать "все с нуля(тм)", с закономерным итогом. Обнуляют язык, обнуляют коммьюнити и экосистему, и все равно получают среду, где бывшие джависты пишут такое же легаси, как и раньше.
Аноним 14/01/24 Вск 12:56:52 3002102 132
>>3002073
То есть ты хочешь сказать, что поломка обратной совместимости от языка не увеличивает количество и проблематичность легаси?
Аноним 14/01/24 Вск 13:01:07 3002107 133
Работали ли вы на багованном говно копролите, где максимум что есть это спринг бут? Бывало ли у вас чувство, переписать все с нуля и никто в принципе не против, но при этом вам платят мизерную зп?
Как вы побороли это чувство, как задушили в себе желание сделать как надо и просто съебали на нормальный стек?
Аноним 14/01/24 Вск 13:07:18 3002116 134
>>3002107
Какая разница что делать? Если тебе интересно этим заниматься, то идёшь к тим лиду и говоришь, что теперь вместо фич, хочешь заниматься рефакторингос, но тебе для этого нужно, например, 1-2 месяца выделить и не трогать другими тасками.

Если тим лид согласен, будешь делать то что нравится. Если он против, будешь искать работу в новом месте.
Аноним 14/01/24 Вск 13:11:13 3002121 135
>>3002116
Так они только двумя руками за, лид, продукт, потому что постоянно все падает, работы больше чем на 2 месяца.
Но есть один существенный ньюанс - зп маленькая и бюджета на повышение нет.
Аноним 14/01/24 Вск 13:26:30 3002140 136
>>3002121
Значит проект ни при чем. Ты просто хочешь больше денег. Начинай искать работу, смысл себя через силу заставлять что-то делать.
Аноним 14/01/24 Вск 13:30:55 3002141 137
Если Kotlin такой пиздатый, то какого хуя он сдох?
Аноним 14/01/24 Вск 13:31:39 3002143 138
>>3002141
Оба утверждения в твоём вопросе неверны.
Аноним 14/01/24 Вск 13:32:45 3002144 139
Аноним 14/01/24 Вск 13:36:29 3002146 140
>>3002144
С того что петухлин кал с убогим синтаксисом, но он живее всех живых, как минимум в андроиде.
Аноним 14/01/24 Вск 13:45:58 3002160 141
>>3002141
В котлин есть null safety ради этого уже можно отказаться от джавы
Аноним 14/01/24 Вск 13:47:45 3002161 142
>>3002160
Угу, такой нулл сейфти, что все нуллы приходящие из джавы падают в рантайме. Ух как безопасно.
Аноним 14/01/24 Вск 13:51:31 3002162 143
>>3002146
У нас все сервера на нем написаны.
Аноним 14/01/24 Вск 14:01:16 3002166 144
>>3002162
Как это противоречит хоть чему-то из мной сказанного?
Аноним 14/01/24 Вск 14:06:15 3002168 145
>>3002160
В джаве скоро будет null safety лучше чем в котлинге.
Аноним 14/01/24 Вск 14:13:51 3002181 146
>>3002168
Если ты про нулл-рестриктед типы, то, насколько я помню, они только для валью типов. То есть условный стринг сделать ! не получится.
Аноним 14/01/24 Вск 14:17:07 3002185 147
>>3002181
>A normal class type can be converted to a null-restricted type, and vice versa, much like the type Integer can be converted to and from the type int. When converting to a null-restricted type, a null check occurs at run time.
Аноним 14/01/24 Вск 14:17:33 3002187 148
>>3002168
Никогда не будет, для этого необходимо перелапачить кучу либ, а самое главное исчезнет обратная совместимость
Аноним 14/01/24 Вск 14:17:44 3002188 149
Хотя да, я наебался.
>A null-restricted type is a reference type expressed with the name of a value class followed by the ! symbol. It asserts that the value of a given variable or expression will not be null.
Аноним 14/01/24 Вск 14:23:03 3002192 150
Ну мб строки сделают value-типами тогда.
Аноним 14/01/24 Вск 14:37:13 3002199 151
>>3002162
Сервера? На котлине?
Это язык для gui.
От оттуда появился. И поэтому он так популярен на андроиде. Зачем писать на нём серверы?
Их надо писать на Go, лол.
Аноним 14/01/24 Вск 14:38:04 3002200 152
>>3002102
Ты так говоришь, как будто подавляющее большинство релизов, которые ты пофейлил в своей жизни по срокам, пофейлились из-за того, что какой то чел тебе обратную совместимость в языке сломал.

То что делают разработчики ЯП с обратной совместимостью языков, на фоне пиздеца, творимого прикладными даунами под ярмом кабанов в конечных продуктах - детская хуйня.
Аноним 14/01/24 Вск 14:38:29 3002201 153
>>2994733 (OP)
Как объяснить уважаемому Кабан Кабанычу, что команде нужна подписка на Intellij IDEA? Кабан Кабаныч говорит санкции и что платежи не проходят, а у всей команды идея краснит код...
Аноним 14/01/24 Вск 14:39:41 3002203 154
>>3002201
Почему у меня бесплатная идея ничего не краснит?

Я б помножил такую команду на ноль нахуй.
Аноним 14/01/24 Вск 14:40:25 3002204 155
>>3002201
Триалками пользуйся, лол.
Аноним 14/01/24 Вск 14:41:05 3002205 156
>>3002188
>>3002185
Возможно тут имеется в виду что любой (normal) класс может быть превращён в велью и нот нулл одновременно.
Аноним 14/01/24 Вск 14:49:04 3002207 157
>>3002203
>Почему у меня бесплатная идея ничего не краснит?
Потому что ты ничего сложнее хеллоу ворлда не разрабатывал
Аноним 14/01/24 Вск 14:54:33 3002208 158
>>3002207
Да что ты говоришь. А может это вы просто идеей пользоваться не умеете нихуя? Равно как и обосновывать перед кабанычем нужду в дополнительных расходах?
Аноним 14/01/24 Вск 14:56:25 3002210 159
Какой еблан будет в здравом уме покупать ультимейт, когда есть безлимитные месячные триалки?
Аноним 14/01/24 Вск 15:01:50 3002215 160
>>3002210
триалки заебно, лучше нагуглить рабочий код или кряк.
Аноним 14/01/24 Вск 15:03:35 3002217 161
>>3002215
Что заёбного в том, чтобы потратить 3 минуты раз в месяц?
Аноним 14/01/24 Вск 15:20:49 3002235 162
>>3002208
Успокойся, курсовой вкатыш. Никому твои хеллоу ворлды не интересны
Аноним 14/01/24 Вск 15:33:50 3002245 163
>>3002187
Её можно делать в компайл тайм, как делает тот же Котлин. Т.е. в твоем коде у тебя будет null safety, а как начинаешь вызывать библиотеки - все гарантий нет.
прям как дженерики
Аноним 14/01/24 Вск 15:38:13 3002249 164
>>3002235
Ну вот те и ответ на твой вопрос. Ты просто чмо с говном во рту и обиженным ебалом - такому ни баба не даст, ни кабаныч идею не оплатит.
Аноним 14/01/24 Вск 15:39:39 3002250 165
>>3002208
Мальчик, бесплатная идея - это только джава, груви и котлин.
Если тебе нужен фронтенд или энтерпрайзные фреймворки - ты соснёшь. Но, как уже заметили выше - ты школьник, и это тебе пока ещё рано.
Аноним 14/01/24 Вск 15:42:34 3002251 166
>>3002250
>энтерпрайзные фреймворки
Например?
Аноним 14/01/24 Вск 15:44:45 3002255 167
>>3002200
Нет, не говорю так, хоть я и немало говна из-за отсутствующей обратной совместимости поел. Ты сказал, что проблема только в конечных программистах, я объяснил тебе, что это не так.
Аноним 14/01/24 Вск 15:46:44 3002258 168
А value типы это структуры типа?
Аноним 14/01/24 Вск 15:51:59 3002263 169
>>3002251
Например - зайди на сайт jb, и посмотри отличия ultimate от community.
Там довольно много всего. Включая возможность через плагины иметь в одной идее весь зоопарк - пичарм, голенд, вебшторм и т.д. И деньги они берут не просто так.
Аноним 14/01/24 Вск 15:52:46 3002264 170
>>3002263
Жаль, что оплату прикрыли. Теперь хз как продлевать..
Аноним 14/01/24 Вск 16:06:28 3002276 171
>>3002210
Триалки к аккаунту привязываются
Аноним 14/01/24 Вск 16:41:38 3002292 172
>>3002276
И что? Зарегать аккаунт дело двух минут.
Аноним 14/01/24 Вск 16:44:13 3002297 173
>>3002263
То есть ты даже сам не можешь ни одного примера привести, зачем конкретно тебе ultimate? Жалкий слив.
Аноним 14/01/24 Вск 16:45:22 3002300 174
>>3002292
Создать почту, активировать, перелогиниться. Это не 5 минут, ежемесячная мозгоебля
Аноним 14/01/24 Вск 16:46:03 3002303 175
>>3002300
Ну у меня минут 5 уходит.

>ежемесячная
Ну не ежеминутная же.
Аноним 14/01/24 Вск 16:49:49 3002310 176
>>3002303
И ты каждый 29 день, выходишь из аккаунта и логинишься на новый? Да и почты вроде по номеру создаются
Аноним 14/01/24 Вск 16:50:59 3002313 177
>>3002310
А ты каждый 29 день видишь списание в 100 долларов за говно? Почты можно на разных сайтах создавать, если ты не знал, на некоторых (мыло.сру) не нужен телефон.
Аноним 14/01/24 Вск 17:04:50 3002332 178
>>3002310
>Да и почты вроде по номеру создаются
Я не знаю ни одной почты где нельзя было бы использовать один и тот же номер для всех почтовых ящиков. Можно прям так и писать имена почт и аккаунтов jetbrains.free.ebka.january2024@
Аноним 14/01/24 Вск 17:13:55 3002342 179
tempupload.jpg 200Кб, 776x1119
776x1119
>>3002313
Не,я через реестр ультимейт 2021 обнуляю в два клика
Аноним 14/01/24 Вск 17:14:57 3002343 180
>>3002332
Тебе не стыдно воровать? Поделом тебе карты отключили, вор!
Аноним 14/01/24 Вск 17:17:48 3002347 181
>>3002343
Я не ворую, просто использую пробную версию. Да и вообще они ушли из рф и напрямую вроде купить нельзя, а значит воровством это быть не может.
Аноним 14/01/24 Вск 17:21:58 3002353 182
>>3002342
> 2021
Ну и нахуй ты долбоёб?
Аноним 14/01/24 Вск 17:28:35 3002361 183
>>3002199
Go раскритиковал наш техлид, так что на нём мы не пишем.
> зачем писать на нем сервера
Потому что это та же самая жаба.
Аноним 14/01/24 Вск 17:34:44 3002366 184
>>3002342
>ультимейт 2021
А петпроектов на Delphi 7 у тебя нет случайно?
Аноним 14/01/24 Вск 17:40:46 3002374 185
>>3002361
Только в десятки раз медленнее го и более ресурсоемкая
Аноним 14/01/24 Вск 17:43:48 3002383 186
>>3002361
Как раскритиковал?
Аноним 14/01/24 Вск 17:45:55 3002388 187
Аноним 14/01/24 Вск 17:47:25 3002394 188
>>3002383
Я не помню уже, это год назад было. Он переписал один из серверов на него и после этого сказал, что конечно интересно, здорово, но пожалуй мы остаёмся на жабе/котлине.
Аноним 14/01/24 Вск 17:54:09 3002407 189
>>3002394
Эм, сейчас бы джависту давать переписывать сервисы на гоулэнге, чел... Идиоматичный код на год можно научиться писать минимум лет за 5-7. Вчерашний джавист, который всю жизнь круды лепил на спрэнг фримверке и настраивал муппинги в хубирнейте, чтобы запрос правильно собрался, в принципе не может называться инженером.
Аноним 14/01/24 Вск 18:09:45 3002429 190
>>3002407
Тех. лид на С++ у нас пишет в основном. Жаба это так, процентов 20 от его работы.
Аноним 14/01/24 Вск 18:17:46 3002445 191
image.png 6Кб, 1133x24
1133x24
>>3002388
Не покажешь где здесь настоящий индустриальный фреймворк для джавы, ну который в реальном мире юзают? А все сам нашел.
Аноним 14/01/24 Вск 18:19:03 3002449 192
>>2994733 (OP)
А посоветуйте хороших книг и ресурсов, чтобы привести знания к структурированному виду и посмотреть на так сказать лучшие практики, плез. Как не приду на проэкт, то вижу одну и ту же картину - деление на контроллер, сервис, репозиторий. Тонкий контроллер, раздутый донельзя сервисный слой где насрано по 2.5-3к строк и репозиторий в виде интерфейсов через спрэнг дэйту. По итогу это нихуя не покрыто тестами, а связи между сервисными слоями образуют огромный комок грязи..
Или это нормальный подход в джэве?
Аноним 14/01/24 Вск 18:20:06 3002452 193
Аноним 14/01/24 Вск 18:24:42 3002464 194
>>3002407
Я так себе и представляю. Приходит тех лид к менеджменту и говорит: "Мы решили дальше писать на го. Но так как на го надо учиться писать 5-7 лет, мы на это время приостанавливаем выпуск фич, а будем писать экспериментальные штуки на выброс. Приходите через 5-7 лет."
Аноним 14/01/24 Вск 18:27:07 3002472 195
>>3002464
Все проще. Нанимаются уже готовые спецы, а скуфидоны-джависты идут на мороз. Полно молодых ребят, которые заменяют целые отделы таких скуфов. Современная разработка это тебе не круды на спринге лепить, старичок, кхе-кхе
Аноним 14/01/24 Вск 18:36:43 3002484 196
>>3002445
А причём тут спринг?
Аноним 14/01/24 Вск 18:43:19 3002493 197
>>3002484
Меня не интересуют хобби-подделки вроде vertx. Речь шла об индустриальном стандарте для бэкенда в 2024 - голанге, я и пошел его по твоей ссылке сравнивать с используемыми в реальности фреймворками в мире JVM.
Аноним 14/01/24 Вск 19:02:37 3002523 198
>>3002449
>Или это нормальный подход в джэве?
Ну да, это монолит энтерпрайз эдишен
Аноним 14/01/24 Вск 19:04:49 3002529 199
>>3002472
Так джавистов же заменили молодые спецы котлинисты еще несколько лет назад, переписав все на котлин-убийцу джавы
Аноним 14/01/24 Вск 19:07:50 3002532 200
>>3002449
есть ещё вариант ActiveRecord - где вся логика по сущности складывается в эту сущность, в том числе доступ к бд.
А разделение на слои это база. В твоём случае в тестах надо поднимать базу и дёргать методы сервисов или контроллеров по максимуму
Аноним 14/01/24 Вск 19:08:02 3002533 201
>>3002493
А причём тут твои интересы?
Аноним 14/01/24 Вск 19:08:50 3002534 202
>>3002472
у меня в микрогалере джавистов переучивали на скалу. Где там щас эта скала и где эта галера?
Аноним 14/01/24 Вск 19:11:04 3002535 203
>>3002452
Это ты как-то неудачно набросил.
Ну что такое хуяндекс, в самом деле? Это троечники.

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

Что касается скалы - то на ней, вообще-то, Акка написана. Это и надо было привести в пример. Если ты, конечно, знаешь, что это такое.
И это совершенно не отменяет того, что это академический язык И что те, кто лет 10 назад ввязался в разработку реальных систем на нём, эпично соснули в итоге. Вот как хуяндекс.
Аноним 14/01/24 Вск 19:22:45 3002547 204
>>3002449
Я бы начал с Code Complete, потом бы навернул Practical API, а дальше пока сам не знаю.
Аноним 14/01/24 Вск 19:26:58 3002551 205
>>3002452
лол, алгоритмических секций уже одна, как же ебут яндексоидов, скоро как все конторы будут осуществлять найм за 1 собес в 1-1,5 часа с одной задачкой уровня изи
Аноним 14/01/24 Вск 19:31:19 3002555 206
>>3002452
>Затем решим задачку на кодинг. Для подготовки подойдёт LeetCode.
>Никаких хитростей и вращения деревьев не будет, но мы ожидаем, что кандидат знает, что такое асимптотическая сложность, умеет ее оценить, и может написать примерно рабочий код без IDE.
Отказываюсь. Код писать буду только в идее, в ней же и работаю. Сложность только по циклу в биг О, никаких тета и подсчет по действиям +-= и */, а также никакой теории про сложность алгоритмов, p np проблему и прочую фигню ненужную в работе на джаве, МЯУ?
Аноним 14/01/24 Вск 19:36:31 3002559 207
>>3002555
Эти дурачки продолжают нанимать олимпиадников.
Совершенно не понимая, что это немножко другое программирование. И что олимпиадник в принципе не понимает, как делать реальную энтерпрайзную систему.
Аноним 14/01/24 Вск 20:18:10 3002624 208
Аноним 14/01/24 Вск 20:32:03 3002642 209
>рабочий код без ide
окей я начну: 0xCAFEBABE...
Аноним 14/01/24 Вск 20:37:20 3002647 210
Однажды котлин сдохнет как скала
Аноним 14/01/24 Вск 20:43:58 3002663 211
Аноним 14/01/24 Вск 22:00:13 3002778 212
>>3002647
А я думаю освоить его для строчки в резюме
Аноним 14/01/24 Вск 22:13:03 3002793 213
>>3002778
Чё там осваивать-то?
Аноним 14/01/24 Вск 22:27:19 3002828 214
>>3002793
Уебищный синтаксис и корутины
Аноним 14/01/24 Вск 22:48:41 3002864 215
>>3002828
Зачем нужны корутины если есть треды?
котлин разработчик под Андроид
Аноним 14/01/24 Вск 22:53:28 3002872 216
>>3002864
Переключение контекста дорогое.
Аноним 14/01/24 Вск 23:27:00 3002941 217
Вы меня обосрете, но где могут быть подводные?

Собираюсь уволиться со своей экономической хуйни, за 3 месяца подготовиться к собесам по жабе кор когда-то учил и устроиться на 200к. Там делать все с гпт, пока не догоню обучение
Аноним 14/01/24 Вск 23:35:54 3002950 218
Аноним 15/01/24 Пнд 00:51:32 3003057 219
>>3002941
Зачем увольняться? Если так уверены в себе, то ищи работу не увольняясь
Аноним 15/01/24 Пнд 01:09:44 3003074 220
>>3003057
Тяжело совмещать обучение с работой, часто приходится задерживаться. В день час максимум получается, потом я становлюсь выжатым как лимон
Аноним 15/01/24 Пнд 02:09:19 3003098 221
>>3002950
Жаба не умеет в pem. Чем дальше, тем чудесатее.
Аноним 15/01/24 Пнд 03:00:31 3003110 222
image.png 7Кб, 213x177
213x177
Аноны, очень нужна ваша помощь. Написал я в NetBeans вот такие три файла (структура на пике):
MainClass: https://pastebin.com/wnuzg1Nn
MainFrame: https://pastebin.com/HHgfk8jb
GUIFrame: https://pastebin.com/mYJYVz8d (начало на 65 строке)

При запуске отдельно GUIFrame всё работает корректно, но если я запускаю весь проект, или создаю JAR файл - запускается просто серый прямоугольник 640:480. Как я понимаю, это из-за отсутствия указания что надо подтянуть данные из GUIFrame. Лучший результат что у меня вышел - GUIFrame и MainFrame запускаются при запуске проекта, но в разных окнах. Как заставить это говно работать?

Алсо дайте пожалуйста сурс по НетБину, чисто чтобы узнать самую базу, ибо в общем-то он мне нахуй не нужен, но придётся сдавать экзамен по этой залупе в скором времени. Английский понимаю, но в идеале на русском.
Аноним 15/01/24 Пнд 08:48:46 3003162 223
собираюсь перекатиться в ламповую джаву из пхп, какие подводные?
Аноним 15/01/24 Пнд 09:09:54 3003171 224
>>3003074
Тогда увольняйся с финансовой подушкой. У тебя должны быть деньги, чтобы прожить всё время обучения и время поиска работы. Учитывая твои требования (0 лет стажа и 200 к зарплата), то времени ты можешь потратить очень много.
>>3003110
Офигеть, кто-то ещё требует знать NetBeans? Да я про него только в книжках читал мол был такой фреймворк, да сгнил уже.
Аноним 15/01/24 Пнд 10:40:46 3003203 225
>>3003110
Чувак, NetBeans тут вообще не при делах.
Хотя, было бы лучше тебе использовать IDEA community.
Хотя, родной GUI дизайнер в нетбинсе, наверное, получше.
Но, ещё лучше использовать JFormDesigner, в виде плагина или как отдельное приложение. Он, правда, платный, но его можно крякнуть самому. Или найти кряк в интернетах.

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

В запускающем классе тебе надо создавать экземпляр GUIFrame.
А твой MainFrame тебе просто не нужен вообще, удали его.

Другой подход - форму в дизайнере надо делать не на JFrame, а на JPanel.
А затем вставлять её в contentPane твоего MainFrame.
Так будет более правильно.
Но, в любом случае, два JFrame тебе не нужно.
Аноним 15/01/24 Пнд 11:12:37 3003231 226
Аноним 15/01/24 Пнд 12:50:52 3003388 227
>>3003162
1. Будет неламповое спрингоговно если не будешь знать куда именно тебе надо перекатываться.
2. Выкатишься и не сможешь вкатиться из-за текущего состояния рынка, став безработным.
Аноним 15/01/24 Пнд 12:59:31 3003403 228
>>3002872
А вызов шедулера корутин дёшевый? А убитый стейт машиной флоу поднимает перформанс?
Аноним 15/01/24 Пнд 13:17:45 3003429 229
>>3003403
Я думаю правильная реализация корутин может избавиться от этих проблем.
Аноним 15/01/24 Пнд 13:35:23 3003453 230
>>3003388
А что такое с текущим состоянием рынка?
Просто лютая нехватка специалистов везде.
Если только ты не хочешь пинать хуи за 300KK/ns, конечно.
Аноним 15/01/24 Пнд 13:38:07 3003455 231
>>3003453
> Просто лютая нехватка специалистов везде.
Греф, иди-ка ты нахуй, заебал уже.
Аноним 15/01/24 Пнд 13:49:01 3003472 232
>>3003455
Я не греф. И я даже ещё не начинал, дружок.
По поводу рынка - вот я сейчас нанимаю, например.
Но, никто не нанимается, почему-то.

Подробностей не будет, ибо деанон.
И у нас есть условия - кандидат должен быть местным, а у нас немножко ебеня.
Аноним 15/01/24 Пнд 13:52:29 3003481 233
>>3003472
> Подробностей не будет
Ну вот и иди нахуй, долбоёб. Портфель собрать не забудь, а то видимая рука мамаши порешает.
Аноним 15/01/24 Пнд 13:55:15 3003483 234
>>3003472
>галера немножко в тамбове
>зарплата немножко 30к
>лютая нехватка специалистов
Аноним 15/01/24 Пнд 14:01:37 3003490 235
>>3003483
Не в тамбове, лол. И не галера. И не 30к, хотя и не 300.
Но, суть в том, что везде людей не хватает.
Потому, что всех хотят очень много денег, а работать не хотят совсем. Соискатели - просто охуевшее быдло, которое ведёт себя так, как будто делает тебе одолжение. При этом видно, что человкек не умеет почти ничего. А денег хочет как в яндексе. Волки позорные, лол.
Аноним 15/01/24 Пнд 14:07:14 3003500 236
>>3003429
Правильная это на уровне JVM, а чисто на уровне компилятора сделать лучше чем в Котлине не получится.
Аноним 15/01/24 Пнд 14:09:39 3003502 237
>>3003500
Потому что тыскозал?
Аноним 15/01/24 Пнд 14:11:21 3003505 238
>>3003490
Дай угадаю: вы требуете тестовое задание, на собесе ебете мозги литкодом и душните про сборку мусора и конкаренси, будто ваша сраная фирмочка пишет свою джава машину, а не перекладывает джейсоны.
Аноним 15/01/24 Пнд 14:18:29 3003510 239
>>3002864
Эта хуйня чисто для серверов, для десктопа не нужна. Суть в том, что в типичной микропенисной архитектуре код 95% тупо висит на сокете и ждет ответа от другого сервера. В то же время поток нехило так отжирает память. Если создавать по потоку на каждый реквест, можно легко заддосить сервер, у него тупо закончится память и пиздос. Поэтому придумали асинки, там таски не занимают по потоку каждая, а лежат кучкой и ждут, пока их обработают.
Аноним 15/01/24 Пнд 14:22:16 3003521 240
>>3003502
Иыскозатель, по делу есть что?
Аноним 15/01/24 Пнд 14:23:18 3003523 241
Аноним 15/01/24 Пнд 14:23:20 3003524 242
Аноним 15/01/24 Пнд 16:46:40 3003700 243
image.png 18Кб, 569x255
569x255
image.png 292Кб, 1272x1087
1272x1087
>>3003203
>ты вообще не понимаешь, что делаешь
Так и есть. Мне просто нужно сдать экзамен по этому говну и забыть как страшный сон.

Вообще я уже и сам разобрался, сделал MainClass как на пике. А изначально у меня MainFrame и GUIFrame раздельно, ибо делал по видосу индуса, ибо это было первое что я нашел на понятном мне произношении ангельского и с использованием JFrame Form, что является обязательным условием для сдачи экзамена.

Пик2 - то что мне нужно сделать. Просто пару пара полей ввода для имени и фамилии, выпадающий список выбора должности, а слева поле ввода количества знаков при генерации пароля, и чекбоксы касательно того, какие символы использовать. Нажимаешь генерировать пароль - высвечивается отдельное окно с паролем, нажимаешь "Подтвердить" - получаешь окно со всеми введёнными данными. Из этого мне непонятно следующее:
1. Как сделать белую обводку с закруглёнными углами для двух блоков?
2. Как сделать генератор пароля? Могу только на питухоне через библиотеку рандома. Важно учесть, что это должно быть реализовано на Java with Ant, ибо интернета на экзамене не будет.
3. Как сделать всплывающее окно при нажатии кнопки?
Аноним 15/01/24 Пнд 16:49:36 3003704 244
>>3003171
>сгнил
Да, вот на таких штуках готовят будущих 300ккк наносеков в загнивающей гейропе, из которой тащемта и капчую
Аноним 15/01/24 Пнд 16:51:07 3003706 245
Пишите репорты в /d/ на шарподаунов. Пока же поссу на них уже проверенными средствами:

1. Семантика.
1.1. Неймспейсы. Полный пиздец. Рассинхрон с пакетами, лишние отступы, проблемы с уникальностью названий - полный пиздец.
1.2. Перенос { на новую строку. Это уродливо. Читать код с кучей не пустых, а заполненных одним ебучим символом строк - неудобно.
1.3. Наследование интерфейса через :. Бесполезное сокращение.
1.4. IZalupa как название интерфейса по дефолту. Убивает семантику полиморфизма. Когда ты обращаешься в джаве к интерфейсу, ты чувствуешь, что обращаешься к живому объекту, а не к гондону между объектом и тобой.
1.5. Названия методов с большой буквы. В джаве после прочтения первого символа сразу понятно, что это не операция делегирования, а уже непосредственно вызов.

2. Функционал.
2.1. Наличие бойлерплейта (в джаве есть ломбок, который наглухо разъёбывает уродские попытки в избавление от бойлерплейта в петушарпе с помощью get; set;.).
2.2. Отсутствие record'ов (позорные структуры ни в какое сравнение с рекордами не идут).
2.3. Отсутствие виртуальных тредов.
2.4. Прибитость гвоздями к винде.
2.5. Отсталые енумы.
2.6. Отстутствие модулей.
2.7. Отсутствие системы сборки. Нугет/мсбилд - это посмешище, которое даже с антом сравнивать без смеха нельзя.

3. Экосистема. У петушарпа позорная экосистема.

4. Свобода и распределённость. На петушарпе половину всего кода пишут майки, водя за ручку петушарповых детишек и говоря им, что и как делать. Следствием из этого является пункт 3 и ограниченность петушарпа ровно на том, что нахуевертили майки. Пока на джаве ты волен, как барин, воротить нос и выбирать лучшую библиотеку под твои задачи, на петушарпе ты жрёшь то, что тебе с лопаты майки скормили. Пока на джаве ты выбираешь между жуком и queryDSL, на петушарпе ты жрёшь огромную кучу говна, слепленную из несовместимых вещей, что в здоровом Java мире даже никак не пересекаются, под названием LINQ.

5. Поддержка кода. Пока код с Java 1 работает на Java 19 и будет работать вплоть до Java 119, на петушарпе каждую версию ломается обратная совместимость, нельзя просто взять и заюзать библиотеку, в которую не было завезено апдейтов за последние несколько лет.
Аноним 15/01/24 Пнд 17:03:23 3003726 246
>>3003700
1. Это реально сложно. Надо делать свой субкласс Border, со своим пайнтингом. Ты не сможешь, судя по тому, что ты тут пишешь. Хотя, можешь попробовать загуглить.
2. Это достаточно просто. Если не сможешь - иди крутить хвосты bydlu. Потому, что такие программисты не нужны.
3. Это зависит от того, какое окно. В общем случае - гугли JDialog.

>>3003505
Не угадал.
Постоянно попадаются вот такие вот деятели, как этот: >>3003700
Которым просто надо 300KK/ns, а "это говно" они хотят "забыть, как страшный сон". Причём, у многих ещё и хватает наглости бычить и качать права, и приходится жёстко озалупливать в прямом эфире.
Аноним 15/01/24 Пнд 17:15:45 3003734 247
Где все пупуни и почему в треде ругаются?
Аноним 15/01/24 Пнд 17:17:29 3003736 248
>>3003734
Потому что тупорылый мочух не банит одебилевшее шарпоговно, которым дали выходной час между написанием гетсетов.
Аноним 15/01/24 Пнд 17:36:30 3003747 249
Аноним 15/01/24 Пнд 17:40:12 3003758 250
>>3003747
Блять, век живи - век учись.
Аноним 15/01/24 Пнд 19:00:35 3003848 251
>>3003704
Я тоже в загнивающей Европе, но на работе такое не использую
Аноним 15/01/24 Пнд 20:24:55 3003957 252
>>3003848
А я в нищем техникуме числюсь. Впрочем это последний учебный год, дальше госэкзамен и на работку
Аноним 15/01/24 Пнд 21:24:09 3004025 253
>>3003505
>душните про сборку мусора и конкаренси
В смысле душите? Я мимокрокодил и ты знаешь мне знание как работает gc и какой для проекта выбрать, как его затюнить очень даже пригождается. Про многопоточку я вообще молчу, я не веру в существование реального проекта без нее.
Вывод: ты жулик.
Аноним 15/01/24 Пнд 21:32:09 3004042 254
У меня появилась такая мысль, что спринг необязательно хейтить. Вот что конкретно из говна он сделал, кроме уёбищного перформанса? Или этого достаточно? Вопрос направлен, кстати, в том числе сидящим тут шарподебилам, интересно и ваше жужжание послушать.
Аноним 15/01/24 Пнд 21:35:29 3004056 255
>>3003957
Странно, что ваш техникум не выбил бесплатную учебную лицензию у jetbrains. А community, видимо, из каких-то соображений использовать не хотят.

А то, что у вас NetBeans - это благо.
Было бы в разы хуже, если бы была Eclipse. Вот это говно так говно. И оно вовсе не считается устаревшим, а регулярно дорабатывается и обновляется. Но, при этом, идеологически - это древний как говно мамонта IBM VisualAge for Java (на базе него сделано). Вот такой вот пердимонокль.
Аноним 15/01/24 Пнд 21:39:27 3004070 256
>>3004056
А чем именно эклипс говно?
Аноним 15/01/24 Пнд 21:43:03 3004075 257
>>3004070
Ну, если такое надо объяснять - то не надо объяснять.
Аноним 15/01/24 Пнд 21:43:39 3004080 258
>>3004075
Ну чё ты блядь как этот а, интересно же. Я никогда эклипсом не пользовался.
Аноним 15/01/24 Пнд 21:58:01 3004116 259
>>3004080
Ну, если коротко - в идее код на кончиках пальцев. А в эклипсе - код отдельно, а пальцы - отдельно.

Я же сказал - идеологически это основано на ide, которой четверть века, и которая сделана таким монструозным сумрачным гением, как IBM. Это пиздец просто.
Да, они там многое доработали, но, идеологию никуда не денешь.

Идея тоже появилась 20 лет назад.
И тогда она была как глоток свежего воздуха после IBM VisualAge и Borland JBuilder. И до сих пор остаётся.
Аноним 15/01/24 Пнд 22:14:13 3004137 260
>>3004025
предположу что у тебя иллюзия что твой "тюнинг gc" помогает
Аноним 15/01/24 Пнд 22:47:23 3004176 261
>>3003700
Kurwa ja pierdole! Polacy piszą na SWING!
Аноним 15/01/24 Пнд 22:49:12 3004180 262
>>3004074
Что ты имеешь ввиду под "двусмысленное"?
Аноним 15/01/24 Пнд 23:03:15 3004191 263
>>3004042
Ну там тип аннотации,рефлексия хех мда хуе мое
Аноним 15/01/24 Пнд 23:04:11 3004192 264
Аноним 15/01/24 Пнд 23:07:52 3004199 265
>>3004042
>что конкретно из говна он сделал
сделал слишком многое, из-за чего джава-господину нужно писать меньше кода, в отличие от Си-Жжжжжж
Аноним 15/01/24 Пнд 23:09:23 3004204 266
>>3004025
А я предположу, что в многопотоке ты нихуя не знаешь. Хоть в спеку-то заглядывал?
Аноним 15/01/24 Пнд 23:17:04 3004215 267
>>3004042
Спринг всем хорош. Один из немногих проектов, который можно открывать и показывать как надо писать на жабе
Аноним 15/01/24 Пнд 23:25:35 3004241 268
Аноним 16/01/24 Втр 01:03:27 3004348 269
>>3003434
В гошечке гетсетов нет, дуралей
Аноним 16/01/24 Втр 01:11:22 3004357 270
>>3004241
Ты читал исходники? Я читал, они охуенные.
Аноним 16/01/24 Втр 01:31:55 3004374 271
>>3004116
> которой четверть века, и которая сделана таким монструозным сумрачным гением, как IBM
Это максимум причина. Ты мне конечную разницу покажи. В чём эти кончики пальцев выражаются.
Аноним 16/01/24 Втр 01:55:36 3004390 272
>>3003505
Так так все делают, чего ты? Приходишь потом в контору, а там геттер без чиф продукт архитекта не могут переименовать.
Аноним 16/01/24 Втр 02:03:02 3004393 273
>>3004042
Можешь хейтить, можешь не хейтить, все равно у джависта на работе его спросят с вероятностью 95%
Аноним 16/01/24 Втр 02:33:10 3004408 274
>>3004374
>Ты мне конечную разницу покажи.
Нихуя ты дерзкий, щенок.
Мне вообще похуй, в чём ты там будешь писать свой говнокод.
Нравится эклипса - пиши в ней, лол.
Аноним 16/01/24 Втр 03:15:31 3004419 275
Аноним 16/01/24 Втр 04:10:57 3004424 276
Аноним 16/01/24 Втр 04:24:08 3004425 277
>>3004424
Не ворочайся, слитое.
Аноним 16/01/24 Втр 05:21:21 3004439 278
>>3004425
Пиздец, ты деревня.
Аноним 16/01/24 Втр 07:57:38 3004473 279
Аноним 16/01/24 Втр 08:07:37 3004475 280
>>3004390
Потому что геттер в публичном API всё логично.
Аноним 16/01/24 Втр 10:32:53 3004587 281
>>2994977
>Деньги или крутой опыт?
>Пишем Ваши мнения
В первую очередь всё зависит от того на что ты свои сотыги тратишь.
Если ты хорошо какашечку откладываешь или ипотеку почти закрыл, то добивай то красивой суммы/закрывай ипотеку и тогда спокойно перекатывайся на нужный тебе стек и на меньшие деньги.
Если же ты дебил, который спускает такие денжища в нулину в день зарплаты, то перекатывайся прямо сейчас, так как всё равно на говно тратишь.
Сам обдумываю вариант вкатиться в банк на гавно за дорого, лет 10 отработать складывая всё под матрас (как вариант прыгать из банка в банк для поднятия зэпки) и потом в вечный гэп дауншифтить.
Аноним 16/01/24 Втр 11:53:24 3004709 282
Как сбрасывать триал 2023 идеи?
Аноним 16/01/24 Втр 11:59:47 3004716 283
>>3004587
Где ты собрался в банке так работать, лол? Может где-нибудь в провинциальном бандитском банке где будешь пахать за копейки. Современный финтех двигают упругие зумеры и там поганому скуфиндяю не место. Он лишь будет затягивать сроки и выбивать время чтобы "тщательно ознакомиться с техническим заданием", пока зумеры будут выкатывать сервис за сервисом, принося кабану вэлью
Аноним 16/01/24 Втр 12:07:18 3004725 284
>>3002217
мне удобнее 1 минута раз в год, чем 30 минут раз в месяц
Аноним 16/01/24 Втр 12:16:40 3004741 285
>>3002343
так они сами карты отключили, поэтому и вынудили бесплатно ей пользоваться, до этого я платил как честный гой
Аноним 16/01/24 Втр 12:33:05 3004761 286
>>3004716
>Современный финтех двигают упругие зумеры
И получается ППРБ и ЕФС
Аноним 16/01/24 Втр 12:41:44 3004767 287
>>3004439
Ну и нахуй ты продолжаешь ворочаться, слитое?
Аноним 16/01/24 Втр 12:58:49 3004784 288
>>3004716
>Современный финтех двигают упругие зумеры и там поганому скуфиндяю не место.
Сижу в банке с 40летними скуфами и скуфихами. Зумера видел один раз в соседней команде, но он съебал через два месяца потому что СЛОЖНА
мимо скуф 30 лвл
Аноним 16/01/24 Втр 13:05:59 3004789 289
code.JPG 305Кб, 1643x1128
1643x1128
Аноним 16/01/24 Втр 13:23:39 3004813 290
Аноним 16/01/24 Втр 13:26:33 3004820 291
Ящитаю неправильно привязывать точку входа именно к входу через консоль. Надо делать что-то типа extends CommandLineEntryPoint для мейн класса и абстрактный метод run(args).
Аноним 16/01/24 Втр 13:30:20 3004830 292
Аноним 16/01/24 Втр 14:09:55 3004860 293
>>3004725
>нагуглить рабочий код
>1 минута

>кряк
>пользоваться легаси 2021
Нахуя ты долбоёб?
Аноним 16/01/24 Втр 14:40:15 3004910 294
>>3004830
Потому что сое тяжеловато было реализовывать правильно.
Аноним 16/01/24 Втр 14:45:42 3004915 295
Вот смотрите этот ролик https://www.youtube.com/watch?v=WGwECgPmQ-8 . Обратите внимание на цветовую схему. А потом посмотрите на цветовую схему в своей идее. Они отличаются. Как сделать такую же как на видео? Дарк слишком блеклый, даркула это просто старая схема натянутая на новое уи, всё остальное это вообще другое. Так где?
Аноним 16/01/24 Втр 15:01:00 3004933 296
>>3004830
Виртуальный тред? Что это за зверь?
Аноним 16/01/24 Втр 15:26:46 3004964 297
>>3004784
Я таких скуфов регулярно вижу в ленте линкедина где они плачутся что "внезапно" закончили работать на позиции сеньки, лида или хэд оф департмент, лул. Открываешь профиль, а там - ба! лысенькое говно в пинджаке и обвисшим ебалом)) Прямо сладко на душе)))
Аноним 16/01/24 Втр 15:33:55 3004969 298
>>3004964
Скуфы мразотнее даже пидарасов, которые судят других людей по фото.
Аноним 16/01/24 Втр 17:17:06 3005079 299
idea.JPG 15Кб, 701x176
701x176
>>3004860
>>кряк
>>легаси 2021
ты че ебанутый?
как раз код нагуглить быстрее, чем эти твои ебучие триалы регистрировать
Аноним 16/01/24 Втр 17:18:31 3005082 300
Аноним 16/01/24 Втр 17:25:21 3005090 301
>>3005082
Выкладывают на гитхубе, находятся такие через гугл.
Аноним 16/01/24 Втр 17:27:07 3005092 302
>>3004910
Так хули ты не помог, раз такой сеньор пиздабол девелопер?

>>3004933
>Виртуальный тред? Что это за зверь?
Это что-то на Go.
Аноним 16/01/24 Втр 17:46:52 3005109 303
>>3005090
А потом тебе банят учетку, лол
Аноним 16/01/24 Втр 18:10:09 3005138 304
>>3005092
Нет, на го Грин треды
Аноним 16/01/24 Втр 18:19:26 3005154 305
>>3005138
А чем тебе виртуальный тред не грин?
Аноним 16/01/24 Втр 18:41:32 3005201 306
Аноним 16/01/24 Втр 18:57:16 3005223 307
>>3005201
>зелёные потоки — это потоки выполнения, управление которыми вместо операционной системы производит виртуальная машина. Green threads эмулируют многопоточную среду, не полагаясь на возможности ОС по реализации легковесных потоков. Управление ими происходит в пользовательском пространстве, а не пространстве ядра.
Так что и горутины, и виртуальные треды, и процессы эрланга это всё зелёные потоки.
Аноним 16/01/24 Втр 18:58:11 3005228 308
>>3005138
Имелись в виду горутины, я думаю.
Горутина = витруальный тред.
Они шедулятся на грин треды.
И т.д. и т.п.
Аноним 16/01/24 Втр 18:59:07 3005233 309
>>3005223
Да зачем они нужны то! Чем не нравилось когда операционная система их реализовывала?
Аноним 16/01/24 Втр 19:06:36 3005246 310
>>3005233
Если ты сделаешь миллион зелёных тредов, оно будет долго выполняться.
Если ты сделаешь миллион обычных тредов, у тебя всё упадёт.
Аноним 16/01/24 Втр 19:09:15 3005250 311
>>3005154
>>3005223
Нет. Горутины это _не_ грин треды. Это то, что работает поверх грин
тредов:
Go’s mechanism for hosting goroutines is an implementation of what’s called an M:N scheduler, which means it maps M green threads to N OS threads. Goroutines are then scheduled onto the green threads. When we have more goroutines than green threads available, the scheduler handles the distribution of the goroutines across the available threads and ensures that when these goroutines become blocked, other goroutines can be run. We’ll discuss how all of this works in Chapter 6, but here we’ll cover how Go models concurrency.
Цитата из известной книги Concurrency in Go.
Аноним 16/01/24 Втр 19:26:58 3005284 312
>>3005246
Зачем кому-то может понадобиться миллион любых тредов?
Аноним 16/01/24 Втр 19:42:28 3005308 313
>>3005284
Чтобы обрабатывать миллион входящих запросов
Аноним 16/01/24 Втр 20:00:01 3005340 314
>>3005284
Ну пришла тебе коллекция с n элементами, каждый из которых является входными данными для одной и той же подзадачи. Ты просто запускаешь n подзадач, каждую на своём зеленом треде, и ждёшь пока они все закончатся.
С обычным тредами тебе придётся писать дополнительный код, который берёт треды из тред пула и ждёт, если нет свободных. С зелёными тредам это всё за тебя делает рантайм, причём лучше, чем если бы ты это написал.
Аноним 16/01/24 Втр 20:02:21 3005346 315
>>3005340
А если мне нужно выполнить работу только на двух ядрах, потому что они мощные, а остальные слабые (Big little architecture)? Рантайм будет таким умным, что догадается об этом или как?
Аноним 16/01/24 Втр 20:08:18 3005374 316
>>3005346
>В моём очень специфическом случае этот инструмент бесполезен, поэтому он не нужен вообще
Так? Подавляющее количество кода исполняется на x86 и arm с равноправными ядрами.
Но я даже про твой случай могу сказать, что подзадачи не поровну делятся на ядра, а по мере освобождения. В этом случае мощные ядра просто сделают гораздо больше подзадач. Специфика планирования, конечно же, от рантайма зависит.
Аноним 16/01/24 Втр 20:11:38 3005384 317
>>3005090
Так ты может покажешь, как за минуту нагуглить код, петушня?
Аноним 16/01/24 Втр 20:18:10 3005403 318
>>3005384
У нищих слуг нет, дружок.
Учи китайский.
Аноним 16/01/24 Втр 20:29:40 3005428 319
>>3005374
Хм, а это единственное преимущество использования зелёных потоков? Я имею ввиду то что мне не нужно будет писать код по дозагрузке данных в поток когда он отработал предыдущие? Звучит как большая работа разработчиков этих потоков ради маленького эффекта.
Аноним 16/01/24 Втр 21:02:52 3005480 320
>>3005428
Ещё есть плюс в том, что неактивный зелёный тред (в котором вызван sleep) снимается с активного треда, а вместо него загружается работающий, а реальный тред в слипе просто висит и ничего не делает. Это может значительно увеличить пропускную способность, когда много IO операций.

Ну и это хорошо работает в шарпе, где уровень абстракции ещё выше и ты просто можешь у коллекции написать .AsParallel() или сделать .Select(x => Task.Run(...)), что экономит кучу кода, в то время как джаве тебе всё равно надо ебаться с бойлерплейтом создания тредов.
Аноним 16/01/24 Втр 21:20:46 3005527 321
>>3005480
>экономит кучу кода
И делает то, не знаю что.

Вам, детишки, надо просто печатать научиться всеми пальцами, а не только хуем. И проблема экономии кода отпадёт сама собой.
Аноним 16/01/24 Втр 21:26:52 3005541 322
Аноним 16/01/24 Втр 21:27:37 3005543 323
>>3005527
>>экономит кучу кода
>И делает то, не знаю что.
Я тебе про любой ЯП такое могу сказать, даже про машинные коды x86, которые внутри в risc преобразуются.
Я лично знаю, что там под тасками происходит, и там ничего особо сложного нет.
>Вам, детишки, надо просто печатать научиться всеми пальцами, а не только хуем. И проблема экономии кода отпадёт сама собой.
Длина кода важна для чтения, а не для набирания. Когда у тебя бизнес-логика вперемешку с бойлерплейтом, её сложнее вычленять.

Если ты хочешь продолжать дискуссию, пиши в холивар-тред, а то опять всё потрут.
Аноним 16/01/24 Втр 21:51:04 3005589 324
>>3005541
Деревня, ты заебал уже.
Принял - глотай молча, лол.
Аноним 16/01/24 Втр 22:40:18 3005653 325
>>3005480
Хочешь сказать я могу совершать блокирующие IO операции на одном реальном треде не блокируя реальный тред и на нем же вычисления на CPU для другой задачи если используется зелёные потоки? Я правильно понял?
Аноним 16/01/24 Втр 22:42:17 3005657 326
>>3005653
на нем же запуская вычисления на CPU из другого зелёного треда
фикс
Аноним 16/01/24 Втр 23:21:03 3005719 327
Привет. Это что за хуйня в логах?

SLF4J: No SLF4J providers were found.
Аноним 16/01/24 Втр 23:32:13 3005741 328
Аноним 17/01/24 Срд 00:02:38 3005786 329
image.png 2Кб, 244x31
244x31
Аноним 17/01/24 Срд 00:08:46 3005790 330
>>3005250
>Нет. Горутины это _не_ грин треды. Это то, что работает поверх грин
>тредов:
Тред это наименьшая единица исполнения команд и в го это горутина. Поскольку горутины управляются рантаймом го, а не ос то это самый обычный грин тред. А то что там в низу, рантайм создаёт свои Грин треды на которые мапит горутины, это особенность конкретной реализации.
Аноним 17/01/24 Срд 00:11:49 3005792 331
>>3005346
>А если мне нужно выполнить работу только на двух ядрах, потому что они мощные, а остальные слабые (Big little architecture)? Рантайм будет таким умным, что догадается об этом или как?
В обычной джаве у тебя будет пара нативных потоков которые молотят как не в себя и планировщик ос должен понять, что надо бы этих ребят перевести на big ядра.
Аноним 17/01/24 Срд 00:21:41 3005803 332
>>3005792
Йеп, это на обычных потоках, а как на зелёных непонятно (мне по-крайней мере)
Аноним 17/01/24 Срд 00:23:11 3005804 333
>>3005792
А понял, что ты имел ввиду. Я имел ввиду что если использовать для алгоритма больше тредов чем больших ядер, то тогда сработает закон Амдала и мы получим падение производительности из-за вовлечения медленных ядер в работу
Аноним 17/01/24 Срд 00:24:13 3005805 334
>>3005804
p.s. конечно если мы говорим про алгоритм без IO операций
Аноним 17/01/24 Срд 00:28:47 3005809 335
>>3005653
У тебя странное написано.
Видите, господа, какая путаница возникает, когда у вас треды поверх тредов?

Если ты запускаешь код в зелёных потоках, то когда у тебя планировщик увидит, что первый тред уснул, он сохранит его состояние до того, как он проснётся, а тем временем загрузит второй тред, который не спит.
Аноним 17/01/24 Срд 00:45:44 3005837 336
>>3005809
Супер, спасибо, я понял теперь. Но чем это поведение отличается от использование обычных тредов? Я тоже могу создать 10 потоков и когда один уснет, то другой начнет выполнятся на физическом CPU, которое ранее было занято тредом, который уснул.

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

Окей, если зелёные треды это как корутины, тогда я понимаю в чем смысл их использовать.
Аноним 17/01/24 Срд 00:49:38 3005843 337
>>3005480
>в то время как джаве тебе всё равно надо ебаться с бойлерплейтом создания тредов.
.parallelStream() ?
Аноним 17/01/24 Срд 01:31:14 3005946 338
>>3005790
Ты на ходу сочиняешь правила и терминологию.
Я тебе процитировал авторитетный источник, но, тебя даже это не останавливает.

>в низу
Русского языка лучше выучи.
Аноним 17/01/24 Срд 01:50:11 3005964 339
>>3005843
Это давно у вас появилось? Впрочем, good for you.
Аноним 17/01/24 Срд 01:54:46 3005967 340
>>3005109
да и ладно, найду новую
Аноним 17/01/24 Срд 02:00:31 3005971 341
>>3005589
Не ворочайся, слитое.
Аноним 17/01/24 Срд 02:02:13 3005973 342
>>3005964
10 лет назад, с релизом Джабба 8
>у вас
А ты из шарпистов чтоли будешь?
Аноним 17/01/24 Срд 02:21:27 3005996 343
>>3005973
Был бы я джавистом, я бы должен был это знать, так ведь?
Аноним 17/01/24 Срд 02:25:04 3005998 344
>>3005480
>>3005843
>>3005964
Опять шарподауна обоссали на его же высерах. Это уже не классика, это уже теорема.
Аноним 17/01/24 Срд 02:42:39 3006006 345
>>3005843
Низкопроизводительный кал, на реальных проектах вы это не увидите
Аноним 17/01/24 Срд 02:52:37 3006011 346
>>3005971
Степан, ты очень предсказуем.
Поди лучше свинарник почисти.
Аноним 17/01/24 Срд 02:54:47 3006013 347
>>3005998
>Опять шарподауна обоссали на его же высерах. Это уже не классика, это уже теорема.
Опять ты вылез, болезный? Это всё не отменяет того, что Task.Run и штуки типа Task.WhenAll короче, чем аналогичные штуки с фьючерами в джаве.
И опять же, если ты хочешь спорить, пошли в холивар тред.
Аноним 17/01/24 Срд 03:19:50 3006046 348
>>3006013
С чего ты взял, что краткость сама по себе ценна?
Шарп - мусорный язык. С кучей "оптимизаций" на каждый пук.
Нормальных людей воротит от такого говна.
Плюс - этот стойкий запах микрософта с изрядным душком дельфи ничем не перебить.
Аноним 17/01/24 Срд 03:21:34 3006048 349
>>3006013
>Task.Run и штуки типа Task.WhenAll
CompletableFuture.supplyAsync() и CompletableFuture.allOf() ? Ну на несколько символов короче, да, тут не поспоришь
Аноним 17/01/24 Срд 03:33:58 3006067 350
>>3006006
Да на реальных проектах какой только низкопроизводительный кал не увидишь, но почему-то именно этого нет.
Аноним 17/01/24 Срд 03:38:22 3006069 351
>>3006048
>CompletableFuture.allOf()
А результат?
Аноним 17/01/24 Срд 03:44:25 3006075 352
>>3006069
Результат - Future, который ждёт выполнения всех Future, то же самое что и в решётках
Аноним 17/01/24 Срд 03:57:30 3006081 353
>>3006075
Нет, в решётках Task.WhenAll(Task<T> []) возвращает Task<T[]>.
То есть я могу написать
Data[] result = await Task.WhenAll(smallTasks); и иметь массив их результатов, а в джаве тебе придётся собирать эти результаты руками.
Аноним 17/01/24 Срд 04:14:10 3006088 354
>>3006081
Только если все таски у тебя возвращают одинаковые типы, насколько я понимаю
Аноним 17/01/24 Срд 04:57:19 3006099 355
>>3006088
Ну как правило, когда у тебя n тасок, это одна функция с разным инпутом.
Эти WhenAll и allOf не нужны, если у тебя 3 разных функции с разными типами, можно просто сделать им всем await/get().
Они нужны, чтобы цикл не писать.
Аноним 17/01/24 Срд 11:09:04 3006356 356
>>3004116
>таким монструозным
дык это идея такая. Понапихано говна телега, и работать в ней не возможно блять.

Ебал Идейку. На 8ой яве кодирую на НетБинсе, на 17ой - Эклипс.
Я ж не соевое гомочмо лизать марку. Мне для работы, а не по тому что какой-то говноютубер нализывает очелло ЖопоБрайнзу.
Аноним 17/01/24 Срд 11:24:46 3006363 357
>>3005804
>Я имел ввиду что если использовать для алгоритма больше тредов чем больших ядер, то тогда сработает закон Амдала и мы получим падение производительности из-за вовлечения медленных ядер в работу
С чего бы это? Лучше чтобы работали 2 больших и 2 маленьких ядра, чем только 2 больших.
На каком нибудь Интеле с турбобустом, может быть ситуация когда лучше 2 ядра на 4 ГГц, чем 4 на 2 ГГц. Но тут надо бенчмарки гонять. Гадать смысла нет.
Аноним 17/01/24 Срд 11:28:41 3006367 358
>>3005946
>Ты на ходу сочиняешь правила и терминологию.
>Я тебе процитировал авторитетный источник, но, тебя даже это не останавливает
Мудило пиздоглазое, просто загнули определение потока, там будет ± то что я написал. А то какая-то книжка хер пойми кого, у него авторитетный источник.

>Русского языка лучше выучи
Всё,ты подебил.
Аноним 17/01/24 Срд 11:33:20 3006373 359
>>3006363
Ебать вы смешные. Это точно темя про Java?
Если у вас на Java пара потоков жестоко конкурируют за процессорное время, то с вероятностью близкой к единице вы выбрали не тот язык для своих задач или решаете не те задачи.
В тех областях, где требухается Java, задач, которые постоянно грузят CPU, практически нет. Это задачи вычислительной математики. Там до сих пор живёт и здравствует Fortran и деды с большим индексом Хирша. Изредка туда пробиваются плюсовики.
И остальные по мелочи.

В обчных же приложениях многопоточость позволяет оптимально загрузить ядра и позволяет во многих случаях писать более простые приложения, когда часть работы за вас сделает ядро ОС. Но это явно не средство выжать из процессора максимум. Я имею в виду многопточность.
Аноним 17/01/24 Срд 11:34:29 3006376 360
>>3006363
> бенчмарки
Да, на практике так. На уровне теории же большое ядро выполняющее за 1 секунду задачу лучше чем 1 такое же большое ядро и одно маленькое выполняющее задачу за 10 секунд.

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

Это закон Амдала, применимый для параллельных алгоритмов без IO операций.
Аноним 17/01/24 Срд 11:38:38 3006386 361
>>3006067
>но почему-то именно этого нет
мы вам перезвоним
Аноним 17/01/24 Срд 12:54:24 3006560 362
>>3006373
Иксперт, спокуха! Помимо вычисления 100500 числа Фибоначчи есть другие практические задачи, которые CPU intensive. Например та же криптография, или архивация, да тупо агрегация данных в памяти. Не все задачи которые грузятся проц числодробилки.
Аноним 17/01/24 Срд 12:59:22 3006574 363
>>3006376
>На большом и малом за 10 секунд, потому что одна задача пойдет в малое ядро и будет обрабатываться 10 секунд.
Ты опять гадаешь. Планировщик может и будет перекидывать задачи с ядра на ядро. Когда первая завершится на большой ядре он перекинет туда вторую задачу но это не точно, но при этом у неё уже будет некий прогресс.

>Это закон Амдала
Закон Амдала совсем не про это.
Аноним 17/01/24 Срд 13:02:23 3006586 364
>>3006560
> Например та же криптография, или архивация,

Это хуйня, а не задачи.
Если тебе надо шифровать или архивировать большие объёмы данных, то можно и нативным кодом это делать
https://stackoverflow.com/questions/71685564/native-library-loads-but-calling-native-function-throws-unsatisfiedlinkerror

> да тупо агрегация данных в памяти.
Часто приходилось делать?
Аноним 17/01/24 Срд 13:07:26 3006598 365
>>3006574
> не про это
Он про то что если в программе есть последовательный участок, то общее время выполнения в параллельной системе этой программы не может быть быстрее выполнения этого участка.

Да, возможно моя трактовка его на ядра некорректна.
> он перекинет её с малого ядра на большое
Перефразировал как понял твою мысль. Разве такое возможно? На ходу выполнения перекинуть выполнение треда на другое ядро?
Аноним 17/01/24 Срд 13:08:58 3006603 366
>>3006011
Ну и нахуй ты продолжаешь ворочаться, слитое?
Аноним 17/01/24 Срд 13:11:36 3006611 367
>>3006013
Какие ещё таск ран? Ты высрался про AsParallel(), который в джаве выглядит короче, как parallel(), и даже он не обязателен, ведь можно сразу любую коллекцию превратить в параллельный поток данных через parallelStream(), и тебя обоссали, показав аналог в джаве.

Хочешь быть обоссаным ещё и по таскам? Показывай код на петушарпе, который якобы на джаве будет длиннее.
Аноним 17/01/24 Срд 13:29:34 3006647 368
>>3006603
Степан, ты из 1с-треда сбежал?
Иди обратно, элита программирования, лол.
Аноним 17/01/24 Срд 13:33:14 3006655 369
>>3006647
Слитое, ты ворочаешься-то нахуя?
Аноним 17/01/24 Срд 13:50:05 3006679 370
>>3006655
Слитое у тебя во рту, сынок.
Глотай, не дёргайся.
Аноним 17/01/24 Срд 13:53:26 3006684 371
>>3006679
А ворочаешься-то ты нахуя, слитое?
Аноним 17/01/24 Срд 14:27:33 3006723 372
>>3006684
Тебе неприятно, токсичный вафлёр?
Аноним 17/01/24 Срд 14:28:55 3006724 373
>>3006723
Так а ворочаешься-то нахуя ты, слитое?
Аноним 17/01/24 Срд 14:52:22 3006747 374
>>3006724
Вижу, вижу, что неприятно, петушок.
Аноним 17/01/24 Срд 14:52:59 3006749 375
>>3006747
А ворочаешься-то чё, слитое?
Аноним 17/01/24 Срд 15:07:15 3006759 376
>>3006749
Не проецируй тут, маня.
Аноним 17/01/24 Срд 15:10:20 3006761 377
>>3006759
Слитое, ворочаешься-то ты чё?
Аноним 17/01/24 Срд 15:16:36 3006767 378
>>3006761
Ладно, маня, расслабься.
Давай, пукни ещё раз, и свободен.
Аноним 17/01/24 Срд 15:18:07 3006769 379
>>3006767
Слитое, так нахуя ты ворочаешься?
Аноним 17/01/24 Срд 17:44:17 3007073 380
>>3006598
>Разве такое возможно? На ходу выполнения перекинуть выполнение треда на другое ядро?
А в чём проблема? Планировщик останавливает тред, сохраняет состояние, восстанавливает на другом ядре, запускает тред. Это абсолютно нормальная ситуация, вот заставить его на одном ядре исполнять задачу, как раз требует специальных усилий.
Аноним 17/01/24 Срд 18:07:18 3007123 381
>>3007073
Интересно какая потеря производительности из-за того, что нужно загружать из главной памяти состояние треда на другое ядро. Наверное небольшие.
Аноним 17/01/24 Срд 19:23:22 3007265 382
Коллеги, поконструктивней в треде пожалуйста.
Зачем нужен gRPC если есть кафка стрим?
Аноним 17/01/24 Срд 19:52:59 3007306 383
>>3007265
Судя по вопросу, ты вообще не понимаешь, о чём говоришь. Поэтому объяснить вряд-ли получится.
Аноним 17/01/24 Срд 19:56:25 3007312 384
>>3007306
Прошу прощения, это конечно не такая интересная тема, как сраться с шарпистами у которых есть await. Но попробуй объяснить, покажи свои познания.
Аноним 17/01/24 Срд 20:17:00 3007334 385
>>3007312
Задай себе вопросы:
- Что такое gRPC?
- Что такое Kafka streams?
- Есть ли между ними что-то общее?
- Логично ли их сравнивать?
Аноним 17/01/24 Срд 20:22:14 3007336 386
Коллеги, поконструктивней в треде пожалуйста.
Зачем нужен int если есть interface?
Аноним 17/01/24 Срд 20:35:19 3007357 387
>>3007334
>Есть ли между ними что-то общее?
С помощью них можно обмениваться бинарными данными
>Логично ли их сравнивать
Ну ты же не знаешь какую задачу я выдумал под их использования. Для чего стоит использовать gRPC а для чего Kafka streams?
Аноним 17/01/24 Срд 20:55:03 3007378 388
>>3007357
А небинарными можно? :3
Аноним 17/01/24 Срд 20:56:13 3007381 389
>>3007378
КоАП РФ Статья 6.21. Пропаганда нетрадиционных данных
Аноним 17/01/24 Срд 20:58:38 3007384 390
>>3007381
Так бинарные протоколы же нетрадиционные. Традиционно это жсоны перекладывать.
Аноним 17/01/24 Срд 20:59:26 3007387 391
>>3007378
Николай Брусенцов, плиз.
Аноним 17/01/24 Срд 21:01:06 3007389 392
>>3007384
джейсоны переводятся в байты и отправляются, если это не древние ресты
Аноним 17/01/24 Срд 21:02:42 3007394 393
>>3007389
> если это не древние ресты
Так-то в любом случае интернет кабель бинарный. "Бинарный протокол" другое означает.
Аноним 17/01/24 Срд 21:03:48 3007398 394
>>3007357
Ты вообще понимаешь, что для кафка стримов нужна ещё кафка, как минимум? А gRPC - это просто протокол.
Аноним 17/01/24 Срд 21:04:13 3007399 395
>>3007394
Ты решил до слов докапываться?
Для чего стоит использовать gRPC а для чего Kafka streams? А,
Аноним 17/01/24 Срд 21:05:37 3007400 396
>>3007399
> Ты решил до слов докапываться?
Так это ты какую-то хуйню высрать решил. Зачем-то высрал про сжатие, которое протокол не изменяет.

> Для чего стоит использовать gRPC а для чего Kafka streams? А,
Для чего нужен int, а для чего interface?
Аноним 17/01/24 Срд 21:06:53 3007402 397
>>3007400
Ты токсичный, надеюсь найдется другой анон, который ответит на этот вопрос.
Аноним 17/01/24 Срд 21:08:08 3007406 398
>>3007402
Тебе уже ответили, оболдуй.
Аноним 17/01/24 Срд 21:09:28 3007407 399
download.jpg 6Кб, 204x192
204x192
Аноним 17/01/24 Срд 21:19:45 3007416 400
>>3007336
Потому что без face'а как-то не очень
Аноним 17/01/24 Срд 21:28:59 3007432 401
>>3006373
Ну хз, мы вот пишем поисковик по петабайтам данных на джаве, с многопоточностью, перемалывает байты только вжух
Аноним 17/01/24 Срд 21:30:55 3007434 402
>>3003726
>деятели, как этот
Ну вот зачем ты так? Подумаешь лично мне конкретно жаба не нужна. Я вообще попал не на то направление что хотел, и мне остался последний курс перед выходом в мир. Программировать учусь для себя, чтобы в свободное время игры делать, чем в общем-то и занимаюсь. Алсо 8 лет музыкального образования, и 6 хуйдожки, так что мне в кайф делать арт и саунд. А копаться в вебе или легаси энтерпрайзе меня и за 300ккк не затащишь (максимум кнопки красить, но там средняя зп по региону).

>такие программисты не нужны
Да чего тебя трясёт то так? Все с чего-то начинали, в том числе и ты. Я задавал вопрос не с позиции что это неебаться сложно. Просто спросил, ибо что б не спросить, раз уже пишу в тред.
Аноним 17/01/24 Срд 21:39:11 3007451 403
>>3007265
Кафка - это как RabbitMQ, а gRPC - это как REST, грубо говоря. Одно - это очередь, другое - протокол обмена данными. Кафка стримс - это вообще потоковая обработка, она не нужна для связи между компонентами.
Конечно можно использовать очереди для связи между компонентами, но для простых случаев это перебор, оверинжинеринг и андерперформинг.
Аноним 17/01/24 Срд 21:46:57 3007465 404
>>3007434
А, ну раз ты просто случайный пассажир на нашем корабле, тогда ладно.

Про генерацию пароля - мне кажется, это элементарно вообще.
У тебя есть списки: буквы, буквы + цифры, буквы + цифры + знаки. Ты генеришь случайное целое число в диапазоне от 0 до последнего индекса списка, и получаешь очередной символ пароля. Список выбираешь в зависимости от выбранного типа пароля.
Конечно, можно не делать явные списки, а просто работать с кодами символов, они идут подряд. Но, мне кажется, тебе с явными списками будет проще.
Аноним 17/01/24 Срд 21:47:39 3007468 405
>>3007451
>Кафка - это как RabbitMQ
Но кафка это журналируемый реплицируемый лог, а раббит это протокол AMQP.
>а gRPC - это как REST
А почему тогда там соединение не сбрасывается как у сокетов и вместо вопрос ответ можно слать стрим ответов и обрабатывать стрим запросов?
>можно использовать очереди для связи между компонентами, но для простых случаев это перебор, оверинжинеринг и андерперформинг.
А если у меня лимит на соединение и мне нужно асинхронно получить ответы из нескольких внешних систем рестом, мне доставать кучку комплитаблфьюч и отправлять?
Аноним 17/01/24 Срд 21:56:45 3007489 406
>>3007468
>Но кафка это журналируемый реплицируемый лог, а раббит это протокол AMQP.
Нет, кафка - это сообщения Avro, а рэббит - это брокер сообщений.
>А почему тогда там соединение не сбрасывается как у сокетов и вместо вопрос ответ можно слать стрим ответов и обрабатывать стрим запросов?
А ты думаешь там не сокеты используются?
>А если у меня лимит на соединение и мне нужно асинхронно получить ответы из нескольких внешних систем рестом, мне доставать кучку комплитаблфьюч и отправлять?
Да
Аноним 17/01/24 Срд 22:03:17 3007504 407
>>3007489
>А ты думаешь там не сокеты используются?
Нет, а что они?
>Да
(( Я хочу отправить в разные топики и вычитав из них выполнять
Аноним 17/01/24 Срд 22:06:28 3007508 408
>>3007468
>а раббит это протокол
Чувак, раббит - это не протокол. это кролик

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

Я же говорил тебе - ты просто ничего во всём этом не понимаешь.
Тебе сначала надо разобраться, в чём разница между протоколом и системой, его реализующей, а потом уже вопросы задавать.
Аноним 17/01/24 Срд 22:16:11 3007513 409
>>3007504
>Нет, а что они?
А они используются
Аноним 17/01/24 Срд 22:17:43 3007514 410
>>3007504
>(( Я хочу отправить в разные топики и вычитав из них выполнять
Отправляй!
Аноним 17/01/24 Срд 22:18:48 3007515 411
image.png 455Кб, 1920x942
1920x942
Аноним 17/01/24 Срд 22:33:54 3007525 412
>>3007465
>случайный пассажир на нашем корабле
Так и есть, спасибо за понимание.

>генеришь случайное целое число
Дк не особо разница, выбрать рандомное значение из диапазона чисел, или из диапазона букв. Непонятно только как именно сделать этот выбор рандома. Писал такое в питоне через randint, а как на джаве да ещё и без интернета не знаю. ...или падажы, неужели импортируемые библиотеки вшиты в язык, и для импорта не требуют интернета? Во всяком случае не знаю как такое на жабе делать. Впрочем в гугле меня всё ещё не забанили, так что да.
Аноним 17/01/24 Срд 22:43:26 3007532 413
>>3007514
Это точно нормально или лучше комплитаблфьюч навалить и allOf?
Аноним 17/01/24 Срд 22:53:57 3007542 414
>>3007532
Если любишь поднавалить, то не думаю что тут стоит себе отказывать
Аноним 17/01/24 Срд 23:07:19 3007551 415
>>3007542
Коллега, от твоих ответов зависит судьба проекта из двух трени и одного джуна уровня трени, завтра это может оказаться уже на проде, отнесись серьезней.
Дана ручка посчитать и ручка получить расчет, жмем посчитать и обращаемся в 8 разных сервисов рестом, запросы в сумме минут на 10, а ручка получить расчет вызывается раз в 30 секунд, пока не посчитается. Есть идея возвращать ничего, а когда посчитается вернуть сумму того что надо, реализовать это можно несколькими способами, какой сам выберешь?
Аноним 17/01/24 Срд 23:32:12 3007569 416
>>3007551
Очевидно как только первый раз дернул ручку посчитать - кладешь результат в тайник в памяти и продолжаешь возвращать его пока не будет готов следующий результат, который ты опять кладешь в тайник.
Аноним 17/01/24 Срд 23:37:57 3007578 417
Аноним 17/01/24 Срд 23:42:57 3007581 418
Аноним 18/01/24 Чтв 00:31:23 3007619 419
>>3007581
Поддерживаю вопрос
Аноним 18/01/24 Чтв 01:26:11 3007635 420
>>3007569
>пока не будет готов следующий результат
Но ведь можно отправить эти 8 запросов сразу асинхронно, это ведь сократит время расчета? Проблема только в том, что это 8 потоков из комон пулла, я конечно моку сделать бин с еще одним тред пуллом, но в арр их уже прилично. А сделать меньше я очкую, потому что по ощущением они все в работе в разных задачах. С другой стороны расчеты производятся ну раз 5 в день и выделять под них отдельный тред пулл жирновато... Коллега?
Аноним 18/01/24 Чтв 01:34:01 3007640 421
>>3007581
>ручки
это древнеславянские эндпоинты, они же апи
Аноним 18/01/24 Чтв 01:44:46 3007645 422
>>3007640
Дошло.
Я как-то упустил из виду, что эти вещи называются rest api handler.

Но, я бы заметил по этому поводу, что, на мой взгляд, это немножечко деградация. Ибо когда-то давно, ещё до появления node.js и до набега в индустрию полчищ долбоёбов, по-русски такие вещи так и назывались хендлерами. Но, видимо, зумерам современным инженерам такое непонятно.
Аноним 18/01/24 Чтв 02:40:29 3007667 423
>>3003203
Есть ли в NetBeans какой-то встроенный гайд/мануал доступный без интернета? Давеча сдавал экзамен по MySQL, так там некоторый синтаксис подсмотрел непосредственно на самом сайте через код элемента, да и встроенный мануал помог. Так что бы мне очень пригодился таковой, если имеется в NetBeans.
Аноним 18/01/24 Чтв 03:21:36 3007675 424
>>3007667
>NetBeans
Поставь JetBrains или vsc, ну ненужен NetBeans и Eclipse
Аноним 18/01/24 Чтв 04:00:20 3007702 425
>>3007667
>доступный без интернета?
Ты имеешь в виду чтобы смотреть во время сдачи экзамена?
Насчёт NB - я его последний раз трогал лет 15 назад, примерно.
Но, я думаю, что там если что и есть (по F1) - то это подсказки по самой IDE, а не учебник по джаве.

Но, в любой IDE есть отображение JavaDoc - встроенной документации по классам, методам и т.п. из стандартной библиотеки, которые ты видишь в написанном коде. Например, тот же JFrame. Но, даст ли тебе это что-нибудь, я не уверен. В NB это отображается для выбранного объекта (где курсор) по Ctrl + Shift + Space. Или по правой кнопке, наверное, тоже должно быть в меню.
Аноним 18/01/24 Чтв 04:00:48 3007703 426
image.png 118Кб, 1055x1186
1055x1186
>>3007675
>ненужен NetBeans
Мне по нему сегодня сдавать экзамен в шараге. Иначе бы я к этому говну на пушечный выстрел не подошел бы.

З.Ы. Почему не применяется цвет?
Аноним 18/01/24 Чтв 04:02:27 3007706 427
>>3007702
Спасибо, надеюсь поможет 🤞🤞🤞.

А что по этому подскажешь >>3007703?
Аноним 18/01/24 Чтв 04:14:01 3007707 428
>>3007706
Посмотри ниже свойство opaque. Если оно false - сделай true.
Аноним 18/01/24 Чтв 04:31:50 3007709 429
>>3007703
Ебать, ты в какой залупе учишься что вас нетбианс заставляют юзать?
Аноним 18/01/24 Чтв 04:49:07 3007711 430
>>3007709
Сам в ахуе. Благо при переводе из прошлой шараги годы засчитали так, что пошел на предпоследний курс (алсо мне так и так 2 года оставалось, так что ничего не потерял). Похуй, всего несколько месяцев этого цирка с конями осталось, если не завалю этот экзамен
Аноним 18/01/24 Чтв 04:51:12 3007712 431
image.png 10Кб, 719x328
719x328
>>3007707
>opaque
Уже и так стояло true.

Впрочем я выкрутился из ситуации добавив дополнительный Panel, и растянул на весь экран. Не думаю что кто-то реально полезет в код, во всяком случае надеюсь
Аноним 18/01/24 Чтв 04:53:10 3007713 432
image.png 86Кб, 915x432
915x432
>>3007707
Спасибо за помощь.

Ещё есть такой вопросик, а как применить к этому говну тему windows aero, в частности чтобы полоска со свернуть/закрыть была прозрачной аля пикрил?
Аноним 18/01/24 Чтв 04:55:31 3007715 433
>>3007635
> жирновато
Что ты имеешь ввиду?
>>3007640
Эндпоинты. Это слово я знаю в этом контексте.
Аноним 18/01/24 Чтв 07:08:07 3007757 434
>>3007715
> Эндпоинты
Однако же "ручка" это хендл или хендлер. Просто по смыслу.
А эндпойнт тогда уже "конец". Или даже хуец, лол.

>в этом контексте
Это не "контекст". Это просто значение.
А "контекст" - это, дословно, окружающий, сопутствующий текст.
Аноним 18/01/24 Чтв 09:36:40 3007828 435
Нахуй вы форсите что нет удаленки, сука вот в это я до последнего верил
Аноним 18/01/24 Чтв 09:38:11 3007831 436
>>3007828
И че взяли тип? Можно к вам?
Аноним 18/01/24 Чтв 10:56:42 3007916 437
>>3007581
Очевидные хэндлы же
Аноним 18/01/24 Чтв 11:01:19 3007920 438
>>3007635
Согласен с тем что жирновато, во всех смыслах.
С другой стороны чего ты мнешься как девочка, редко используешь - общий тред пул, боишься за производительность - смотри профайлером.
Аноним 18/01/24 Чтв 11:11:03 3007927 439
Camunda BPMN Аноним 18/01/24 Чтв 11:11:58 3007929 440
Кто использует?
Как оно?
Сложно вкатиться?
На собесах спрашивают про неё?
Аноним 18/01/24 Чтв 11:27:24 3007947 441
handler.JPG 68Кб, 1488x1050
1488x1050
>>3007645
Хендлеры и раньше и сейчас называют обработчиками.

Как будто увидели глагол to handle (обработать) и перевели как существительное handle (ручка)
Аноним 18/01/24 Чтв 11:31:48 3007954 442
>>3007757
>>"ручка" это хендл
>>эндпойнт тогда уже "конец"
А bearer token у тебя это жетон медведетеля?
Аноним 18/01/24 Чтв 11:43:49 3007983 443
>>3007929
Не использует. Это легаси
Аноним 18/01/24 Чтв 12:55:46 3008133 444
>>3007954
Жетон носильщика или жетон несуна
Аноним 18/01/24 Чтв 13:17:29 3008189 445
>>3007983
Как будто миллионы компаний не используют легаси
Аноним 18/01/24 Чтв 13:29:31 3008224 446
>>3008133
Вопрос: Жетон носильщика, 5 букв.
Ответ: БЛЯХА
Аноним 18/01/24 Чтв 16:36:47 3008486 447
>>3002529
>Так джавистов же заменили молодые спецы котлинисты еще несколько лет назад, переписав все на котлин-убийцу джавы
Котлинисты уже соскуфились, а котлин уже протух. Так что теперь Go и gRPC. Колесо хайп-дривен-девелопмент сделало оборот.
Аноним 18/01/24 Чтв 16:58:27 3008520 448
>>3008486
>а котлин уже протух
Типа просто постепенно поутих энтузиазм и стали меньше использовть?
Или была какая-то громкая история?
Аноним 18/01/24 Чтв 17:25:28 3008560 449
>>3008520
Просто не хватило хайпа прорваться в мейнстрим. По моему опыту его сделали слишком гибким и люди в попытках использовать все фишки языка превращали код в не читаемое месиво.
Аноним 18/01/24 Чтв 17:48:34 3008581 450
>>3008560
Да, у меня такое же мнение. Именно - нечитаемое говно.
Причём, в отличие от той же Скалы - с не очень понятным профитом.
Вообще, это не "гибкость", это показатель плохой архитектуры.
Потому, что, как говорят умные люди, архитектура - это, прежде всего, ограничения.
Аноним 18/01/24 Чтв 17:57:46 3008596 451
1000006848.webp 31Кб, 912x608
912x608
>>3008581
Лозунг главного архитектора, кста
Аноним 18/01/24 Чтв 18:14:01 3008607 452
>>3008581
А какой профит от скалы?
Аноним 18/01/24 Чтв 18:14:42 3008608 453
>>3008607
можно в резюме написать
Аноним 18/01/24 Чтв 18:21:32 3008613 454
>>3008607
Будешь не таким как все
Аноним 18/01/24 Чтв 19:19:19 3008691 455
>>3008520
>Типа просто постепенно поутих энтузиазм и стали меньше использовть?
Меньше хайпа, плюс в джаву немного улучшений завезли. Плюс то что хайп утих просто означает, что стали меньше переписывать существующие проекты. Но те что уже на Котлине, продолжают на нём пилить.
Аноним 18/01/24 Чтв 19:22:43 3008694 456
>>3008607
Ну, там есть удобная работа с монадическими конструкциями, например. Это очень большое дело. Есть нормальные литералы коллекций. Есть возможность делать развитые DSL. В котлине ничего этого нет.
И вообще, скала выглядит как достаточно продуманный самостоятельный язык (в отличие от котлина).

Серьёзный минус скалы в том, что Одерский и Ко её с самого начала позиционировали как полную замену джаве, как вещь в себе. А надо было - как дополнение. Потом они переобулись, где-то к версии 2.13, примерно, и начали петь другие песни, но, было уже поздно.
Короче - проблема скалы - в недостаточной интеграция с джавой, не позволяющая эффективно использовать скалу в гетерогенных проектах. А без этого она не нужна.
В котлине это сделано гораздо лучше. Но, котлин - безблагодатное говно, которое, кроме андроида (и внутренних проектов jet brains) нигде не нужно. Он, в общем-то, даже и полноценным языком не является.
Аноним 18/01/24 Чтв 19:31:39 3008703 457
>>3008691
>Но те что уже на Котлине, продолжают на нём пилить.
Это известная проблема.
Называется sunk cost fallacy. Можешь погуглить.
По русски это "ошибка невозвратных затрат" или "ловушка невозвратных затрат".

Я, например, этой зимой перестал так делать, и переписал один свой большой проект с перла на питон. Проект был не старый, года 3 всего. На перле был написан совершенно сознательно, но, потом выяснилось, что это себя не оправдало, и, при этом, затрудняет доработки.
Так вот - котлин - это сильно хуже, чем перл. Перл, хотя-бы, очень практичный и довольно забавный.
Аноним 18/01/24 Чтв 19:31:46 3008704 458
Если бы петухлин не менял синтаксис, а просто добавлял фичи в джаву, то он бы реально мог составить конкуренцию. Но жидбрейнсы насрали себе в штаны.
Аноним 18/01/24 Чтв 19:32:51 3008707 459
>>3008703
Можешь объяснить в чем проблема с котлином?
Аноним 18/01/24 Чтв 19:36:28 3008713 460
>>3008707
Как я тебе это объясню в рамках коммента на дваче?
Это вот как раз тот самый случай - если надо объяснять, то не надо объяснять.
Подрастёшь - сам поймёшь, лол.
Аноним 18/01/24 Чтв 19:52:50 3008735 461
Аноним 18/01/24 Чтв 19:57:29 3008740 462
>>3008735
Я уже говорил тебе, что ты очень предсказуем?
Это показатель невысоких умственных способностей, чтобы ты знал.

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

И да, я рад, что ты принял мой слив.
Это было очень любезно с твоей стороны.
Теперь можешь проглотить.
Аноним 18/01/24 Чтв 20:09:15 3008750 463
>>3008703
>Это известная проблема.
>Называется sunk cost fallacy. Можешь погуглить.
>По русски это "ошибка невозвратных затрат" или "ловушка невозвратных затрат".
А нахер тебе переписывать работающий проект, с вполне нормального языка? У котлина нет никак фатальных недостатков: на нём удобно разработывать, поддержка ide и всех основных туловище есть, библиотеки есть и свои и все джавовские.
У котлина нет убер фишки, чтобы на него переходить в существующем джава проекте. Но и недостатков чтобы переходить с него на джаву, тоже нет.
Аноним 18/01/24 Чтв 20:26:22 3008764 464
>>3008694
Минус скалы, что Одерский хотел одной жопой усидеть на двух стульях. Он хотел, и better Java, и haskell for JVM. Как итог и то и то вышло не очень. ООП часть была переусложнена для среднего разраба, а функциональная часть была слабовата для хардкорных функциональщиков.

Помню когда учил скалу, натыкался на моменты когда нужно было явно писать типы и объяснение было, что система вывода типов не очень хорошо работает с ООП наследованием.
Аноним 18/01/24 Чтв 20:39:28 3008779 465
Аноним 18/01/24 Чтв 20:44:00 3008786 466
>>3008750
Ну, не знаю.
Вот, допустим, писали (фронтенд) на джаваскрипте.
Потом придумали кофе-скрипт. И довольно много на нём написали.
Было много хайпа. Учитиля и гуру учили и гурили.
И где он сейчас? И где те проекты?
А бэк живёт подольше. 20 лет - вообще не срок для энтерпрайзного проекта. Джава никуда не денется, как никуда не делся джаваскрипт. А вот насчёт котлина я совсем не уверен.
Аноним 18/01/24 Чтв 21:22:04 3008832 467
>>3008786
Ты думаешь, что народ всё бросит и побежит переписывать с Котлина обратно на джаву? Не будет такого. Только если жидбрейнс забросят Котлин.

Фронтенд другое дело, там за пару лет всё меняется и надо постоянно поддерживать код. Потому там переписать с кофе на тайп скрипт это ок.
Аноним 18/01/24 Чтв 22:09:23 3008874 468
Да вы достали тут уже, разумничались. Раз такие умные отвечайте:
Я могу в джава проекте сделать сервис на котлине и написать в рюземе что я джава/котлин разработчик вызвать его в контроллере написанном на джава и чтобы все это вместе работало?
Я могу сделать дто на котлине и передавать в джавовские сервисы и наоборот?
Вот отвечайте теперь, раз такие умные.
Аноним 18/01/24 Чтв 22:11:27 3008876 469
>>3008874
Вроде бы да? Там же туда обратно всё конвертируется под капотом если Kotlin/JVM, а не Kotlin/Native.
Аноним 18/01/24 Чтв 22:13:58 3008879 470
>>3008876
>Вроде бы да?
Зачем ты у меня спрашиваешь, я ни одной строке на котлине не написал, только стремлюсь накакать им в проект. Ждем опытного.
Еще интересует как работают корутины, они привязываются к основному потоку джавы или что вообще с потоками, жвм там их рулит сама
Аноним 18/01/24 Чтв 22:15:51 3008882 471
>>3008832
Да нет, на самом деле, я не думаю, что он куда-то денется.
Даже руби никуда не делся, и даже типа "развивается".

Но, у котлина есть одна очень серьёзная проблема - она называется "too much language". И чем дальше - тем больше, это идёт по нарастающей. Такое не бывает успешным в долгосрочной перспективе. Язык - для людей. И если он игнорирует человеческую природу - он исчезает. См. тот же руби, скалу, кложуру. Да тот же перл - где он сейчас? А ведь был популярнейшим языком в своё время. Или тот же C++ - сдулся на несколько порядков.
А джава - цветёт и пахнет. Потому, что простой язык. И именно поэтому мне не нравятся современные тенденции напихать в неё побольше разного говна.
Аноним 18/01/24 Чтв 22:18:55 3008891 472
Аноним 18/01/24 Чтв 22:19:57 3008895 473
>>3008874
Такое можно сделать даже на Clojure. Причём, несколькими способами.
И на любом другом jvm-языке, включая jruby и jpython.
А уж на котлине - без проблем вообще.

Про корутины - хз, я не залазил в эту клоаку так глубоко. Но, думаю, что этим рулит рантайм котлина. Который тебе придётся подвязывать к своему проекту, если ты будешь так делать. То же касается и любого другого jvm языка.
Аноним 18/01/24 Чтв 22:21:50 3008900 474
>>3008891
>The Kotlin plugin also bundles a Java to Kotlin converter (J2K) that automatically converts Java files to Kotlin. To use J2K on a file, click Convert Java File to Kotlin File in its context menu or in the Code menu of IntelliJ IDEA.
Ну все прод тобi пизда, я начинаю эксперемент
Аноним 18/01/24 Чтв 22:21:52 3008901 475
>>3008882
>Или тот же C++ - сдулся на несколько порядков.
>
То что в стандарты с++ несут всякую хуйню, это без_порно. Но никто не завставляет пользовать всю новую чушь. И по закону больших чисел некоторая часть "чуши" оказывается годной.
Сдулся С++? Это вряд-ли, просто он для решения специфических задач. Он не для всех. Это Си с классами и шаблонами. А ещё его синтаксис перекочевал в вашу Яву и Сишарп. Не в стиле Паскаля вы пишите, и не в стиле пролога. Если бегло издалека смотреть, Яву можно плюсами спутать. В первое мгновение.
Аноним 18/01/24 Чтв 22:25:30 3008912 476
>>3008874
Да можешь. Там могут быть тонкости типа вызова котлиновской функции не метода класса, а именно функции, но в целом все решаемо.
Аноним 18/01/24 Чтв 22:27:30 3008923 477
>>3008901
>просто он для решения специфических задач. Он не для всех.
Вот вот.
А был - для всех.
На нём делали всё то, что сейчас делают на джаве. Которую, собственно, и придумали, чтобы заменить это говно. И это получилось на все 100.
Аноним 18/01/24 Чтв 22:29:18 3008935 478
>>3008912
Это хорошо, но мне зададут вопрос: НАХУЯ ТЫ ТУТ НАПИСАЛ НА КОТЛИНЕ?. Что отвечать на это, есть какие-то аргументированные ответы (вариант для резюме и прост)0 не подойдет), я могу как-то козырнуть, что мол котлин делает Х лучше, чем джава, вот пруф?
Аноним 18/01/24 Чтв 22:31:44 3008940 479
>>3008900
А ты думаешь как я конвертил спринг, чтобы показать, что за 15 % стало меньше количество символов?
>>3008935
То что меньше кода пишешь?

spring-boot
https://github.com/spring-projects/spring-boot/blob/main/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/properties/ConfigurationPropertiesTests.java

Жаба
3279 lines
94812 chars
2047 lines of code

Котлин
2161 lines (-34 😵
81549 chars (-14 😵
1816 lines of code (-11 😵
Аноним 18/01/24 Чтв 22:35:03 3008945 480
>>3008940
Напоминаю, этот обрыган так и не показал итоговый сокращённый код, хотя его ни раз просили за базар пояснить.
Аноним 18/01/24 Чтв 22:36:20 3008948 481
>>3008945
Блять, зайти в IDEA и щелкни по одной кнопки, вот тебе гайд скинули >>3008900
Аноним 18/01/24 Чтв 22:36:27 3008949 482
>>3008935
Дарю:
Maintaining poor legacy code, interpreting cryptic comments, and writing the same boilerplate over and over can suck the joy out of your life as a Java developer. Fear not! There's hope! Kotlin is an elegant JVM language with modern features and easy integration with Java. The Joy of Kotlin teaches you practical techniques to improve abstraction and design, to write comprehensible code, and to build maintainable bug-free applications.

"Это из аннотации Амазона к книжке The Joy of Kotlin, которую написал автор книги FP in Java. А ещё Рунар Бьярносон (который FP in Scala) тоже разродился книжкой FP in Kotlin. В общем - всё просто охуенно. Пока сам в это не нырнёшь, лол.
Аноним 18/01/24 Чтв 22:36:27 3008950 483
>>3008940
>меньше кода пишешь?
Это не пойдет, мне кабаныч пезды вломит, скажет и так на наши копейки идут работать только долбоебы такие как я, а ты еще котлин в него занес, теперь дурачков в команду искать станет еще сложнее. Тут нужно техническое обоснование, должно же оно быть, потому что писать часть кода на котлине только ради того чтобы строчек было меньше это тупо и отмазка что из-за одного сервиса из тысячи проект стал на долю секунды собираться быстрее не прокатит
Аноним 18/01/24 Чтв 22:36:47 3008953 484
>>3008948
Напоминаю, этот обрыган так и не показал итоговый сокращённый код, хотя его не раз и ещё один раз просили за базар пояснить.
Аноним 18/01/24 Чтв 22:38:51 3008956 485
>>3008950
Ты буквально на 10 % кода сможешь написать больше за год. Это тоже хуйня для кабана?
>>3008953
Иди нахуй.
Аноним 18/01/24 Чтв 22:39:09 3008957 486
>>3008956
Напоминаю, этот обрыган так и не показал итоговый сокращённый код, хотя его не раз и ещё два раза просили за базар пояснить.
Аноним 18/01/24 Чтв 22:39:15 3008958 487
>>3008949
мда что-то уровня нескучных обоев...
Аноним 18/01/24 Чтв 22:40:05 3008962 488
>>3008957
Скинул тебе сокращённый код за щеку. Проверяй
Аноним 18/01/24 Чтв 22:40:47 3008965 489
>>3008950
Безопаснее, надёжнее, легче поддерживать, future proof - вот чем надо кормить кабана.
Аноним 18/01/24 Чтв 22:43:39 3008970 490
>>3008958
Не, ну безопасность - это основная идея котлина.
Остальное уже потом намотали. А исходным было null safety, контракты и вот это вот всё.
Цитата, возможно, неудачная. Надо было из предисловия в самой книге взять.
Аноним 18/01/24 Чтв 22:44:45 3008973 491
>>3008970
> А исходным было null safety
Да нихуя подобного. Ты их выступления вообще смотрел или просто из башки хуйню несешь?
Аноним 18/01/24 Чтв 22:44:47 3008974 492
>>3008962
Напоминаю, этот обрыган так и не показал итоговый сокращённый код, хотя его не раз и ещё три раза просили за базар пояснить.
Аноним 18/01/24 Чтв 22:46:22 3008977 493
>>3008973
Я вообще-то помню, с чего это начиналось давным-давно, задолго до v1.0.
А что они сейчас (или три года назад) говорят - это неважно.
Аноним 18/01/24 Чтв 22:46:28 3008978 494
>>3008965
>Безопаснее
это про нуллабл сейфти надо затирать?
>легче поддерживать
ну тут нет, теперь помимо джава разработчика нужен еще тот кто знает синтаксис котлина
>future proof
это еще что? кабаныч не дурак, он прочитал про голанг
Аноним 18/01/24 Чтв 22:48:22 3008980 495
Аноним 18/01/24 Чтв 22:50:27 3008986 496
ВЫ ЗАЕБАЛИ СРАТЬ
Аноним 18/01/24 Чтв 22:51:14 3008988 497
Короче неубедительно, попробую лучше с джавы 11 на 21 или 17 перейти, тут хотябы можно будет пездеть про сверх оптимизацию жвм, надеюсь она есть, а то пеально будет если работать станет хуже
Аноним 18/01/24 Чтв 22:51:21 3008989 498
>>3008986
Согласен. Как я ушел тред превратился в хер пойми что. Терпите, что ж.
Аноним 18/01/24 Чтв 22:51:57 3008991 499
>>3008988
Доклады шипилева глянь. Он про маняоптимизации часто затирает как раз.
Аноним 18/01/24 Чтв 22:52:07 3008992 500
>>3008988
Так не только оптимизации жвм. Ещё много крутых фич для программистов.
Аноним 18/01/24 Чтв 22:52:22 3008993 501
>>3008988
Переходить на 17 при наличии 21 это преступление.
Аноним 18/01/24 Чтв 22:54:49 3008998 502
>>3008992
>много крутых фич для программистов
я не буду пользоваться рекордами, новыми свитчами, sealed классами. А больше там ничего в 17 нового нет, ну еще npe по перемееной. А в 21 вроде только грин потоки не?
Аноним 18/01/24 Чтв 22:55:04 3008999 503
>>3008980
Так а что "это" они говорили?

Я, обычно, не смотрю видео. Потому, что владею старинной магией чтения текстов. И вот, в каком-то из текстов я про безопасность и прочёл.
Аноним 18/01/24 Чтв 22:56:01 3009002 504
>>3008999
А, да то что эту фичу им предложили извне. И изначально ее даже не предвиделось. Но тааак она им понравилась. Подобное короче
Аноним 18/01/24 Чтв 22:56:19 3009003 505
делайте перекат с нормальной щапкой
Аноним 18/01/24 Чтв 22:56:28 3009004 506
>>3008998
> новыми свитчами, sealed классами
Вот это всё в 21 только из превью вышло.

А вот вошло:

🌟 Structured Concurrency - контроль асинхронности.
🔑 Scoped Value - гибкий ThreadLocal.
✨ String Interpolation - вставка переменных как ABC.
🚀 Unnamed Classes и Instance Main Methods - хелло-ворлд в одну строчку!
Аноним 18/01/24 Чтв 22:56:58 3009006 507
>>3008978
>future proof
>это еще что?
Ну, это, выгода будет, но в потом, в будущем, так ему и скажи.
Аноним 18/01/24 Чтв 22:58:06 3009008 508
>>3009006
Я думаю он в голос проиграет с этого и скажет давайка назад все
Аноним 18/01/24 Чтв 23:01:59 3009015 509
>>3009004
>Structured Concurrency - контроль асинхронности.
Надо будет глянуть что это, а я думал у нас и так есть котроль асинхронности комплитаблфьючами, видно это какой-то другой контроль, более расово верный. Все остальное выглядит как юзлес, разве что понять зачем мне Scoped Value
Аноним 18/01/24 Чтв 23:08:28 3009030 510
Аноним 19/01/24 Птн 00:10:37 3009124 511
>>3008923
> И это получилось на все 100.
Я пишу на С, С++, C#.
Могу читать код на Java, но не пишу на ней.

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

У меня так - С++ для души, C# - для прокорма. Конечно бы я мог найти высокооплачиваемую работу и для С++, но это не язык для зарабатывания денег. А вот Сишарп и, вероятно, Ява - это чтобы деньги зарабатывать. Ибо при одинкаовом вложении труда результат у Явы/Сишарпа достигается быстрее и проще, чем на плюсах. Напрягать мозги ради дяди - ой, да ну нвхуй.
Аноним 19/01/24 Птн 02:38:31 3009314 512
>>3008956
>>Ты буквально на 10 % кода сможешь написать больше за год. Это тоже хуйня для кабана?
Может ему курсы слепой печати пройти, тогда он еще на 30% больше кода напишет, как думаешь?
Аноним 19/01/24 Птн 02:42:14 3009316 513
>>3008988
>>попробую лучше с джавы 11 на 21 или 17 перейти
Это скучно, там ничего не ломается. Апни лучше спринг бут до 3.2, чтоб у тебя полпроекта отвалилась из за сломанной обратной совместимости.
Аноним 19/01/24 Птн 08:59:38 3009419 514
>>3009314
Перефразирую, меньше мусорного кода придется писать.
Аноним 19/01/24 Птн 12:31:48 3009713 515
>>3009419
Этот мусорный код на скорость разработки не влияет. Или ты прям 8 часов в день код пишешь и опшионалы хз что там еще сократишь в типичном сервисе тебя сильно тормозят?
Аноним 19/01/24 Птн 12:34:20 3009717 516
>>3009713
Да нет конечно, но не писать код лучше чем писать код
Аноним 19/01/24 Птн 14:13:16 3009866 517
>>3009717
Так довольно мало кода сокращается. И чем дальше джава развивается - тем меньше разница.
Выгода от его внедрения в бэкенд не превышает издержек на его изучение (не только себя, но и других разрабов).
Аноним 19/01/24 Птн 14:37:34 3009887 518
>>3009866
Согласен. Мы в плену у жабы. Навсегда.
Аноним 19/01/24 Птн 18:18:41 3010214 519
>>3009866
Да нихуя там не сокращается. Он ведь так и не показал итоговый якобы сокращённый код, че ты с ним разговариваешь?
Аноним 20/01/24 Суб 23:52:35 3011858 520
>>3009316
Речь про ап с 2.х до 3.х или в 3.2 что-то дополнительно сломали?
20/02/24 Втр 09:03:34 3055577 521
Аноним 23/02/24 Птн 08:31:03 3060024 522
>>3055577
public static void main — единственный способ запустить джава-программу.
Аноним 27/02/24 Втр 14:18:20 3065767 523
>>3008949
>Maintaining poor legacy code, interpreting cryptic comments, and writing the same boilerplate

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

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов