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

Ответить в тред Ответить в тред
Check this out!
Kotlin #3 /kotlin/ Аноним 01/07/20 Срд 18:39:24 17392621
9001.png 318Кб, 1250x1250
1250x1250
15830536402520.png 194Кб, 586x586
586x586
15651013160580.png 1404Кб, 1440x810
1440x810
image.png 232Кб, 1920x1080
1920x1080
Вкатываемся в новый язык на превосходно отточенной jvm с богатейшим набором библиотек от java.

>Что имеем:
У нас есть синтаксический сахар поверх джавы, немного ФП (удобные лямбды), корутины с асинхронщинной, DSL и многое другое.
В синтаксисе можно встретить много WTF-решений (как же без них), но в целом, плюсы перевешивают минусы. Так-то, во всех языках есть что-то что раздражает.
Параллельно jvm платформы пилятся kotlin-js (котлин для javascript) и kotlin-native (компилируемый в нативный код котлин), а возможность языка в DSL позволяет писать на HTML и CSS (типобезопасно), если кому-то это надо.
Котлин имеет полный интероп с джавой, от чего его не совсем корректно сравнивать его со scala.

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

>Производительность.
Не забываем, что java (с JIT) одна из самых производительных платформ. Она делит топ 10 наравне с многими другими производительными платформами. Также у джавы хорошо оптимизированный драйвер базы данных, что видно по тестам.
https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=query
Нередко именно база-данных является узким местом в веб-приложениях.

>Q: Котлин это что-то про разработку на андроиде?
A: Нет, не только. Объем разработки на JVM высок, но в основном где-то на галерах. Смотрим статистику:
https://www.jetbrains.com/ru-ru/lp/devecosystem-2019/kotlin/

>Q: ...кококо, котлин уничтожит джаву!
A: Нет. Котлин сильно завязан на джаву и не заменяет её, а скорее дополняет (как typescript дополняет javascript). Джаву никто и ничто не заменит в ближайшие 10-15 лет, у этого языка чрезвычайно огромный капитал написанного кода, поэтому переживать за неё не стоит. В любом случае конкуренция это хорошо, джава стала развиваться (попутно завозя годноту в байткод).

>Q: Стоит ли сразу вкатиться в котлин минуя джаву?
A: Нет. Не стоит. Есть точка зрения, что котлин позиционируется как "удобная/лучшая джава", подразумевая то, что ты хочешь писать на джаве, но более современно и практично. Да и глупо игнорировать джавоский мир, который является в топе по числу библиотек и решений, где тебе все равно придется погрузиться когда-то в его синтаксис.

>Q: Но если меня интересует только разработка под андроид, стоит ли вкатываться в джаву?
A: Стоит. Доки старого API на джаве, кодогенерация, байткод близкий к джаве. Ну и легаси, оно тоже на джаве.

>IDE - среда разработки.
Бесплатная community edition - обычно более чем достаточно (и работает шустро), но можете попробовать триал-версию.
https://www.jetbrains.com/idea/download/

>Официальный сайт и там же чтиво
https://kotlinlang.org/docs/reference/

>То же с переводом (на первый взгляд, ру-перевод впервые выглядит не заброшенным):
https://kotlinlang.ru/

>Котлин в примерах
https://play.kotlinlang.org/byExample/overview
>Koans
https://play.kotlinlang.org/koans/overview
>Try Kotlin (пробуй и кодь)
https://try.kotlinlang.org/

>Онлайн компилятор (вставить код или просто что-то потестить)
https://play.kotlinlang.org/

>Awesome (либы близкие к kotlin, но не стоит забывать про java решения)
https://kotlin.link/
или
https://github.com/KotlinBy/awesome-kotlin#libraries-frameworks-web

>kotlin для питонистов [eng]
https://github.com/Khan/kotlin-for-python-developers

>Telegram
В телеге есть чаты по котлину. Это полу-белорусское комьюнити, которое клонирует пачками чаты (раньше про джаву - JavaBy и KotlinBy в Gitter). Крайне не рекомендую посещать это рассадник из ЧСВ макак. В чатах лобызаются одни и те же лица и если ты им не понравишься (а ты им не понравишься) будут постоянно тебя подстрекать пассивной агрессией или принуждать к анальным правилам, которые они вспоминают только тогда, когда пишешь ты. Конечно, ты можешь терпеть и сидеть в этой помойке, но если не хочешь словить негатив и получить ложное представление о ру-комьюнити, не рекомендую посещать этих ребят. Лично видел как токсично слили пчела за расспрос про api java.
Если можешь в ангельский, лучше сразу нырнуть в слаку.
https://kotlinlang.org/community/#kotlin-online-resources
Но лично я рекомендую не заниматься херней в чатиках, а спрашивать сразу на StackOverflow, тем самым ты сразу поможешь тысячи другим пользователям (и себе в будущем, если забудешь):
https://stackoverflow.com/questions/tagged/kotlin
Там можно спрашивать даже банальные вещи (кроме неопределенных), они потом хорошо гугляться и превращаются в простой справочник. Серьезно, анон, прекращайте спрашивать на древних форумах, бестолковых чатах, и даже двачах. Если уж совсем плохо с английским и не можешь в переводчик, то там есть ру-язычная версия сайта, но это так себе идея

>РАЗНОЕ

>Шпаргалка по run, let, apply, also
https://pbs.twimg.com/media/EENzl8CWwAApP3W?format=png
или статья по теме
https://www.rockandnull.com/kotlin-let/
На практике, если точно не уверены, можно просто кликнуть и посмотреть исходник функции (игнорируя там контракты).

>Шпаргалка (общая)
https://simplecheatsheet.com/tag/kotlin-cheat-sheet/

>Контент
https://youtu.be/xH-RZ9YlxH0



Если вам нравится kotlin или java и вы умеете читать документацию сами, то можете просто кидать в тред годный контент, новости и прочее из мира jvm.


Аноним 01/07/20 Срд 18:49:19 17392772
Хороший язык, если не пользоваться.
Аноним 01/07/20 Срд 19:01:38 17392843
>>1739277
Если освоить тонкости, получается писать удобнее и быстрее чем на питоне. В общем, этот язык бустит джаву.
Java_sharp
Аноним 01/07/20 Срд 19:05:44 17392884
Аноним 01/07/20 Срд 19:09:09 17392915
>>1739277
Ты сейчас просто про все программирование сказал.
Кодить хорошо, если не работать программистом.
Аноним 01/07/20 Срд 19:20:34 17393066
Когда мировым сандартом станет 5-6-часовой рабочий день? В идеале, 4-часовой.
Аноним 01/07/20 Срд 19:27:40 17393167
>>1739306
Тогда, когда снова пробудиться коммунизм и капиталисты снова так испугаются, что сделают поблажки рабочим.
И так до следующего раза и да, этот коммунизм снова получиться не очень, ну и фиг бы с ним
Аноним 01/07/20 Срд 21:26:43 17394218
>>1739262 (OP)
>Производительность.
>пишет про производительную жаву
Ну а про что еще писать, не про тормозной котлин с оверхедом по памяти же
Аноним 01/07/20 Срд 21:35:08 17394299
>>1739316
>да, этот коммунизм снова получиться не очень
Молимся на Ким Чен Ына. Больше некому. Куба ушла под пендосов. Китай стал капиталистическим.
Аноним 01/07/20 Срд 22:32:21 173948610
>>1739421
пукнул или пруфанешь нам?
Аноним 01/07/20 Срд 22:43:15 173949211
image.png 1032Кб, 1100x733
1100x733
Аноним 03/07/20 Птн 03:16:24 174041812
Не постите Ким Чен Ына, люди начинают бояться писать в тред.
Аноним 03/07/20 Птн 17:35:56 174091613
Накидайте за щеку гайдов для начинающих по котлин-андроиду. Нашел трехчасовой курс от фрикодкемпа, но там уже готовое приложение "допиливают" и я просто не понимаю структуры и как оно все друг с другом работает.
Хочу написать свои заметки, которые порвут плеймаркет и принесут мне контракты на миллионы долларов.
Аноним 03/07/20 Птн 17:49:29 174093214
>>1739316
>Тогда, когда снова пробудиться коммунизм и капиталисты снова так испугаються, что сделают поблажки рабочим.
>И так до следующего раза и да, этот коммунизм снова получиться не очень, ну и фиг бы с ним
Поправил тебя.
Аноним 03/07/20 Птн 18:14:19 174096115
Значит вы пидорасы.
Аноним 03/07/20 Птн 19:51:54 174105516
>>1740961
Почему ты так считаешь?
Аноним 03/07/20 Птн 22:26:26 174119517
>>1740932
Спасибо, учительница первая моя...
Аноним 03/07/20 Птн 22:29:37 174119918
>>1741055
Прошла половина каникул, а он так и не вкатился в айти, как планировал не один год. Но так как мозгов не много, вся агрессия будет изливаться ться! на вас программистов, которые как паровозик, смогли!
Аноним 09/07/20 Чтв 17:57:29 174615119
image.png 129Кб, 336x188
336x188
Аноним 10/07/20 Птн 15:50:35 174704420
image.png 139Кб, 336x188
336x188
Аноним 10/07/20 Птн 16:18:35 174708221
>>1739284
Удобнее и быстрее в разработке? Чем интересно?
Аноним 10/07/20 Птн 16:26:18 174709222
>>1739277
имхо но в котлине уж слишком много сахара, как итоге - код сложно читать без знания всех тонкостей синтаксиса и семантики
Аноним 10/07/20 Птн 16:31:31 174709723
imageg.png 12Кб, 400x400
400x400
>>1747092
> код сложно читать без знания всех тонкостей синтаксиса и семантики
Где-то я уже это слышал.
Аноним 10/07/20 Птн 16:33:15 174710124
>>1747097
Ну кресты это вообще пиздец. Разница между кодом на этапе обучения и продакшен кодом максимальна - просто как два разных языка.
Аноним 10/07/20 Птн 16:53:05 174713325
>>1739284
Из всех JVM-языков в свое время больше всего зашел Groovy. Я так и не понял, почему он в итоге умер.
Аноним 10/07/20 Птн 16:58:43 174714126
Я ненавижу вас, уроды!
Аноним 10/07/20 Птн 16:59:20 174714227
>>1747133
Он до сих пор живёт там, где нужна скриптота для экосистемы джавы - дженкинс там, градл.
Аноним 10/07/20 Птн 17:10:26 174715028
>>1747133
Потому что динамика. Тащемта, если бы он изначально не тягался со скриптоплеядой, то ни скала, ни котлин были бы нахуй не нужны.

А ещё если бы Одерски не дрочил дотти (скалу 3) 10 лет, то котлин был бы не нужен, а ещё если бы Страуструп не тащил бы полугнилой труп си, то джава была бы нинужна, а ещё если бы авторы джавы не дрочили бы по 5 лет обсуждая нужен ли вывод типов и ничего ли он не сломает — на жвм была бы только жава и даже C# был бы нахуй не нужон, а ещё если бы у бабушки был хуй...
Аноним 10/07/20 Птн 17:11:26 174715229
>>1747150
>не дрочили бы по 5 лет обсуждая нужен ли вывод типов
По 15* лет конечно же.
Аноним 10/07/20 Птн 17:17:20 174715730
>>1747150
В Груви же завезли в итоге статику, не?
Аноним 10/07/20 Птн 17:30:37 174716731
>>1747157
Во-первых, когда её уже азвезли — уже была скала, причём с ещё большим количеством сахара и фич.
Во-вторых, бабушке пришили хуй. Вот блять буквально — у тебя есть выбор юзать нормальный статический язык, или дрочить на тс, временами страдая от того, что кишочки-то из жс, ты что выберешь? Страдать как лошки, пришитые яйцами к жс?
Аноним 10/07/20 Птн 17:39:07 174717132
image.png 14Кб, 1038x205
1038x205
>>1747082
Экстеншен функциями. Зачастую там (в стандартной либе котлине) уже сделали такие фасады, где ты в одной строчке можешь сразу прочитать какой-нибудь каталог и тут же выбрать последнее название по фильтру. Или быстро построчно прочитать файл, через лямбду.

Именно фасады в питоне позволяют писать скрипты быстрее. Но фасады в питоне распространяются только на стандартную либу распространяются. А тут тебе подвластно переделать API любой из областей.
Аноним 10/07/20 Птн 17:39:39 174717233
Аноним 10/07/20 Птн 17:44:06 174717834
>>1747092
В JS столько тонкостей, особенно в node и его ивент лупе, что знаний (подводных камней) будет сравни С++. Питон тоже не блещет идеальным дизайном, из-за динамики приходится постоянно кодить через гугл. Потому что либо все по другому либо забы сигнатуру функции.
Аноним 10/07/20 Птн 19:27:05 174724135
image.png 516Кб, 1012x553
1012x553
Аноним 10/07/20 Птн 19:28:03 174724236
Аноним 10/07/20 Птн 20:23:30 174730037
Читаю Head First по котлину. Поначалу легко, а сейчас вот пошло наследование, абстрактные классы. Хуй пойми ваще.
Но будем работать. Вкат близко.
Аноним 10/07/20 Птн 20:52:55 174732438
image.png 1303Кб, 1000x563
1000x563
>>1747300
Для этого мы здесь, мой друг.
Аноним 13/07/20 Пнд 22:34:22 175071839
господа, а есть контент для новичков где обучение на проектах. Не могу блять тупо в стол дрочить, лучше если это будет бесполезная хуйня
Аноним 13/07/20 Пнд 22:51:40 175072040
>>1750718
Вспоминай, что писал, когда учил джаву, и переписывай на котлине.
Аноним 13/07/20 Пнд 23:01:42 175072541
>>1750720
а что на начальном этапе очень важно уметь в яву?))))
Аноним 13/07/20 Пнд 23:05:15 175072842
>>1750725
Даже не на начальном. На котлине в принципе далеко не уехать без джавы.
Аноним 13/07/20 Пнд 23:07:28 175073243
>>1750728
ты заставил меня плакать
Аноним 13/07/20 Пнд 23:25:22 175074944
>>1750732
Не бойся, джава несложная. Читаешь по ней пару книжек/курсов для новичков, затем что-то более продвинутое, и вот ты уже работаешь в банке с 30 джавистами над 15-летним проектом на Java EE 6.
Аноним 13/07/20 Пнд 23:29:03 175075145
Мне например близка фронт энд тема. Можно как-то совместить это с изучением явы? Для лучшего усваивания
Аноним 13/07/20 Пнд 23:37:29 175075646
>>1750751
Никак, абсолютно. Разве что быть фуллстеком и изучать это одновременно, но не совместить в одно.
Аноним 14/07/20 Втр 04:45:20 175090347
Аноним 14/07/20 Втр 12:00:21 175107848
>>1750751
>>1750903
Так тебе интересен фронт или веб? Ссылка не о фронте, если что.
>учить на примере спринга
Учить язык по фреймворку - так себе затея, ничего не поймешь, да и костылей, усложняющих понимание, там достаточно. Но попробуй, если хочешь. а лучше не трать время и прочти какой-нибудь head first
Аноним 14/07/20 Втр 13:00:24 175111549
>>1750732
Интересно, тайпскрипт тоже пытаются учить без джаваскрипт?
Аноним 14/07/20 Втр 13:16:40 175112550
>>1751115
В JS-мирке всё очень плохо, такие странные подходы повсеместны - раньше jQuery учили без знания JS, теперь реакт пытаются. Что там о тс говорить.
Аноним 14/07/20 Втр 13:25:29 175113451
>>1751125
Учить сразу кроссбраузерный jquery, вместо стандартного кривого DOM api (которое, напомню зумерам, работало через жопу между браузерами) это тогда еще выглядело вменяемо.

Другое дело зачем они в джаву лезут, когда у них там есть говно-нода с бестолковой асинхронной работой через эвент-луп.
Это равносильно тому, что ты построил будку песику и с таким успехом подался сразу в строители плотники.
Аноним 14/07/20 Втр 13:28:02 175113852
Если брать в контексте JVM, то на текущий момент котлин - это прогрессивный синтаксис для джавы. Не хочешь писать на джаве, не хочешь и котлин. Все.
Аноним 14/07/20 Втр 13:41:23 175115653
>>1751134
DOM != JS. То, что DOM был кривой, ещё не значило, что нужно отключать мозг и писать на JS исключительно копипастой из гугла.
Аноним 14/07/20 Втр 13:53:08 175116654
>>1751078
Спасибо няша, уже начал.
Да, выразился не правильно. Веб конечно. Хотелось завести какой-нить мелкий пет и по ходу развивать. Например какую-нибудь телефонную книгу, и там уже говнякать. Просто мне так легче заходит инфа.
Аноним 14/07/20 Втр 14:04:41 175117655
В чём вообще мотивация тех, кто учит котлин без джавы? Они такие "О, гугл сказал, что на андроиде теперь котлин, всё сразу в котлин буду вкатываться" что ли?
Аноним 14/07/20 Втр 14:07:11 175117856
>>1751156
>DOM != JS
Вот именно, у тебя в голове все перемешалось. То что ты считаешь жабаскриптом, на самом деле есть DOM API. Нельзя jquery заменить javascript - звучит глупо, да?

>отключать мозг и писать на JS исключительно копипастой из гугла.
Отключать мозг и сидя в комитете делать ебанутый API, который с трудом могли поддерживать браузеры, которые даже этого очень хотели.

Ты еще скажи что CSS весьма удачная и продуманная технология, а не высер людей, которые, наверное, уже лет 30 не писали код.
Аноним 14/07/20 Втр 16:04:22 175129157
>>1751176
Да это идиоты, очевидно. Которым подавай все новае!
Аноним 14/07/20 Втр 16:47:38 175134258
>>1751291
А чо сразу не реакт нативе?
Аноним 14/07/20 Втр 19:01:32 175144759
>>1751291
Потому что котлин это ЯП, а не фреймворк, по этому мы, новички, делаем такой абсурдный шаг, с вашей точки зрения.
Аноним 14/07/20 Втр 19:08:10 175145160
>>1751447
Сейчас пока что нельзя воспринимать котлин как полноценный язык, это скорее надстройка для джавы. Через несколько лет будет по-другому, если не загнётся.
Аноним 14/07/20 Втр 20:18:57 175153261
>>1751447
Это сейчас больше прокси язык, подобие тайпскрипта.
Аноним 15/07/20 Срд 03:59:15 175167262
>>1751451
Что же изменится через несколько лет?
Аноним 15/07/20 Срд 06:57:45 175169963
>>1751672
-Развитие другого поколения либ, больше ориентированных на синтаксис и DSL котлина чем джавы.
-Развитие мультиплатформны, в основном оборачивание сишных либ на манер синтаксиса и DSL котлина (например, как это делают сейчас с игровыми движками).
-Запуск построенной ракета для совместного полета на Альдебаран и создание там дружеского поселения с названием "NewSun Новая Надежда".
-Первая победа над землянами в войне за господством над галактикой.
-Распространение котлина среди жителей галактики Андромеда.
Аноним 15/07/20 Срд 13:00:18 175183664
image.png 8936Кб, 2405x1603
2405x1603
контент Аноним 16/07/20 Чтв 19:54:19 175320165
Аноним 20/07/20 Пнд 14:29:27 175595466
image.png 4Кб, 213x83
213x83
а че это такое, почему без этих странных кавычек не работает? гугл его даже как символ не воспринимает
Аноним 20/07/20 Пнд 14:45:10 175596767
>>1755954
Потому что в котлине куча кейвордов совпадает с идентификаторами из библиотек. is - зарезервированное слово. Да и далеко за примером ходить не надо - на System.in котлин тоже выебнется. Почему? Потому что при парсинге исходника приоритет отдаётся сначала кейвордам, и уж потом - корректным идентификаторам. Ну и такую хуйню можно экранировать с помощью таких кавычек. Интересно, что в таких кавычках можно написать хоть идентификатор с пробелами, и можно объявить переменную с целым предложением в названии - прям как в SQL с двойными кавычками.
Аноним 20/07/20 Пнд 14:47:31 175596968
>>1755967
ааа, получается так можно вызывать методы название которых совпадает с ключевыми словами языка, понятно, спасибо, брат
Аноним 20/07/20 Пнд 14:48:35 175597069
>>1755967
Пиздец говно какое-то. А написать парсер/лексер отличающий кейворд от метода/проперти уже непосильная задача в 21ом веке? Даже жсники справились еще двадцать лет назад.
Аноним 20/07/20 Пнд 15:10:42 175598070
>>1755970
Я согласен с тобой, но почти в любом языке есть кейворды, которые никогда нельзя использовать в качестве идентификаторов, хоть по контексту и можно отличить, что есть что. Вообще, в теории котлин не виноват, что в не-котлиновских либах используются зарезервированные слова котлина, но всё-таки одной из целей его создания был нормальный интероп с джавой, а по факту нагородили кучу костылей.
Аноним 20/07/20 Пнд 15:17:39 175598371
>>1755980
Смотря каких идентификаторов. Переменную от кейорда еще можно забить отличать. А вот метод и свойство- я же говорб, такое даде вжс исправили еще в начале нулевых.
Аноним 20/07/20 Пнд 23:42:47 175642372
>>1755967
>Интересно, что в таких кавычках можно написать хоть идентификатор с пробелами, и можно объявить переменную с целым предложением в названии - прям как в SQL с двойными кавычками.
Удобно так медоты в тестах обзывать, просто тестом как есть.
Аноним 20/07/20 Пнд 23:46:46 175642773
>>1755970
>А написать парсер/лексер отличающий кейворд от метода/проперти

Я думаю это специфика всех компиляторов. Ты же не можешь и в классической джаве кейвордами переменные и методы называть, что тут ты хочешь?

Лучше бы они вместо "in" юзали ":", тут наверное питонодебилами хотели угодить. Что касается is - то обычно такие короткие имена в джава мире как раз не используют и меньше шанс попасть на переменную isinstance.
Аноним 20/07/20 Пнд 23:49:59 175643174
>>1755983
Скорее всего анализатор пробегается по ключевым словам и делит все на выражения, а уж потом начинают отделять мух от котлет.
Не вижу смысл усложнять и удлинять компиляцию.
Аноним 20/07/20 Пнд 23:51:43 175643275
image.png 13Кб, 246x707
246x707
>>1756427
В джаве не можешь.
Но это искуственное ограничение или лень.
При этом в котлине вам же разрешили называть, но через жопу.
Контекстно-зависимая грамматика это детский сад же, чтобы ее не о силить.
Аноним 20/07/20 Пнд 23:52:37 175643476
>>1756431
Это не так работает. Иначе бы ты в литералах строк не мог бы использовать ключевые слова тоже.
Аноним 21/07/20 Втр 00:07:29 175644477
>>1756432
>Контекстно-зависимая грамматика
Это потенциально UB и дикая сложность на пустом месте. Всегда будут места, когда автор хотел так, а получил вот так и компиляция прошла. И нахер тебе эти неопределенности?
Аноним 21/07/20 Втр 00:10:35 175645078
>>1756434
Я не знаю как это работает, но очевидно идет какая-то разбивка на дерево, целиком сразу весь код компилятор не понимает. Литералы строк тоже могут в этот момент разбиваться.
Аноним 21/07/20 Втр 00:20:59 175645679
>>1756444
Какое UB. Что несешь. Сегодня все языки программирования используют контекстно-зависимую грамматику. И не только программирования. И у котлина и у джавы она втом числе тоже контекстно-зависима. Просто при реализации парсера\лексера положили хуй на то, чтобы чекать еще один контекст.

>>1756450
Код разбивается на токены. Из потока токенов строится AST. И во всем этом нет никакой сложности отделять кейворды от доступа к методу.

Аноним 21/07/20 Втр 00:22:22 175645880
>>1756456
Так разрабам IDE будет сложнее.
Аноним 21/07/20 Втр 00:26:27 175646281
>>1756458
Почему у разрабов IDE нет проблем с другими языками, в которых это допустимо спецификацией?
Аноним 21/07/20 Втр 00:27:43 175646582
UB в котлине - это конечно круто.
Аноним 21/07/20 Втр 00:43:49 175647283
>>1756465
UB это не только ошибка сишнего компилятора.
Переполнение числа, тоже UB, написал одно, а компилятор прочитал по другому - тоже UB
Аноним 21/07/20 Втр 01:49:58 175648584
image.png 1032Кб, 1100x733
1100x733
Аноним 21/07/20 Втр 02:17:48 175648985
image.png 1179Кб, 1200x1200
1200x1200
Аноним 21/07/20 Втр 02:36:30 175649186
image.png 1739Кб, 1866x733
1866x733
Аноним 23/07/20 Чтв 07:17:44 175824487
>>1756432
Сейчас бы радоваться "интеллектуальному" javascript, который магически иногда не ставит (или ставит) точку запятой.
Аноним 23/07/20 Чтв 07:24:04 175824788
>>1758244
И как это он магически ставит или не ставит? Сам решает, от фазы луны?
Аноним 23/07/20 Чтв 07:33:09 175825089
>>1758247
Лол, ты даже не в курсе? Иди гугли.
Аноним 23/07/20 Чтв 10:37:05 175830490
Аноним 23/07/20 Чтв 10:57:06 175831591
Оч странно изучать kotlin, это как изучать lombok какой-нибуьть
Аноним 23/07/20 Чтв 11:14:55 175833392
Аноним 23/07/20 Чтв 12:59:01 175843893
>>1758315
Да оставайтесь в своих жопоскриптах или петухонах, кто же вас гонит то с них?
Аноним 23/07/20 Чтв 13:03:12 175844394
>>1758250
Да, конечно, вместо пробежки в лесу со своей тней, я буду гуглить вне работы всякую херню.
Аноним 23/07/20 Чтв 13:07:16 175844695
Аноним 23/07/20 Чтв 13:19:50 175845496
>>1758443
Надеюсь ты в лесу с рукой не разговариваешь.
Аноним 23/07/20 Чтв 14:45:11 175849897
>>1758438
при этом бреслав юзает петухон в своем стартапе)
Аноним 23/07/20 Чтв 14:46:54 175849998
>>1758333
Когда в джаву завезут корутины никому не нужна будет твоя хуета
Аноним 23/07/20 Чтв 15:34:50 175852599
>>1758498
Он же не пишет на нем, а основатель стартапа.
Ты, надеюсь, различаешь приложения уровня джавы (где ценник соответствующий и требования к спецам), от контентного сайта, аля "визитка", уровня джанги?
Чтобы разрыть глубокую траншею, ты ищешь экскаваторщика, а чтобы посадить розы, тебе хватит и землекопа с лопатой. и вообще, тупо искать землекопа, среди экскаваторщиков

PS: котлин это статически типизированный язык, который стал уже достаточно простым по синтаксису и близким к динамическим языкам, не удивлюсь что в будущем появятся на нем CMS, ну и появиться класс программистов, которые будут на этом писать потому, как типизированная DSL позволяет делать вещи довольно гибкие и мощные вещи для людей, которые могут быть не очень знакомы с программированием. но ты скорее всего очередной залетный зумер и даже не поймешь этот поинт, поэтому, вот тебе мое мнение - коко, пук, пук
Аноним 23/07/20 Чтв 15:36:44 1758528100
>>1758499
Стоит только снова подождать, еще чучуть, прям чуток.
А потом жрать кривые костыли, ибо обратная совместимость и все дела.
Аноним 23/07/20 Чтв 15:47:37 1758537101
Динамические языки, это эксперимент, по попытке привлечь в индустрию больше программистов, чтобы сделать разработку дешевле, за счет простого кода и дешевых доступных рабочих.

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

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

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

Поэтому если уж и жрать говно, то возьмите хотя бы тайпскрипт. и да, у питухона ебанутые хинты, как всегда гений гвидо издрочился и для декларации нескольких типов придумал какую-то кривую жопу, когда уже существовали нормальные примеры с "палкой"
Аноним 23/07/20 Чтв 15:59:38 1758542102
>>1758537
А в чем проблема то? А в том, что как только начинаешь писать код на динамических языках и выходишь за рамки стандартной упрощенной библиотеки, кода становится так же много как в статик языках. Его реально так же много, та же абстракция, те же слои, тот же легаси, та же энтропия кода.

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

Аноним 23/07/20 Чтв 16:36:53 1758569103
Аноним 23/07/20 Чтв 16:39:54 1758570104
>>1758528
Есом использовать новое апи, старое не сломает.
Аноним 23/07/20 Чтв 16:44:45 1758575105
>>1758569
Нет, это местным любителям петухонов и жопаскриптов.
Аноним 23/07/20 Чтв 16:51:32 1758579106
>>1758575
А здесь такие есть? Вроде, местные только джаву и/или котлин любят.
Аноним 23/07/20 Чтв 16:56:41 1758585107
>>1758579
Как минимум есть прослойка людей, которые хотят научиться кодить на взрослых языках, но это у них не совсем получается и они срываются на язык.
Приложение на телефоне писать то хочется, а вот учиться не очень.
Аноним 23/07/20 Чтв 22:46:51 1758825108
Не знаю хули тут сложного и что тут учить. Прочитал по диагонали треть котлин ин экшон. Недавно устроился в конторку котлин беком. Сел и сразу начал писать, чувство, буд-то я уже года 2 на нем пишу.

Аноним 23/07/20 Чтв 23:42:55 1758856109
>>1758250
Что я должен гуглить? Магию в формальном языке? Или наличие сильного ИИ в лексере жс, который сам решает когда ставить точку запятой?

>Лол, ты даже не в курсе?
Я вкурсе, что ты долбоеб, приписывающий высшим силам все тебе непонятное. У тебя и ЭВМ наеврняка работает на Божьей благодати или усилиями эльфов.
Аноним 23/07/20 Чтв 23:54:25 1758866110
Не надо полагаться на автоматические точки с запятой в JS, это работает настолько криво, что не рекомендуется это юзать и нужно всегда их ставить.
Впрочем, нормальные люди на JS писать никогда не будут.
Аноним 24/07/20 Птн 00:02:58 1758871111
>>1758866
Криво это работать не может по определению формальности. Кривыми могут быть руки.
24/07/20 Птн 00:10:00 1758874112
>>1758871
> формальности
А руки могут быть кривыми только у инвалидов, соответственно, программировать они не смогли бы, формалист хуев.
Аноним 24/07/20 Птн 02:12:25 1758907113
>>1758856
Нефига ты дебил?! Ты мог просто заткнутся и все, без этого квази-философского, маневрового высера.
Аноним 24/07/20 Птн 02:35:59 1758924114
>>1758856
>приписывающий высшим силам все тебе непонятное.
Ты в курсе, что когда бородатые дядьки говорят "магия", они подразумевают UB или плавающую ошибку (что тоже по сути UB)?

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

Ты понимаешь всю глубину своей некомпетентности, доходящую до такого абсурда? Ламер
Аноним 24/07/20 Птн 02:52:14 1758931115
>>1758924
>js
>UB
>компетентность
Аноним 24/07/20 Птн 03:04:15 1758937116
>>1758924
> когда бородатые дядьки говорят "магия", они подразумевают UB или плавающую ошибку (что тоже по сути UB)?
Но ведь так обычно говорят про любое неявное или неочевидное поведение, даже если оно детерминировано и описано в документации. Хотя по сути да, настоящая магия - UB.
Аноним 24/07/20 Птн 04:08:27 1758950117
>>1758931
Ого, к нам забежал петухонщик с растотреда, которого в расте научили, что неопределенное поведение это только когда сишечка падает. А то что это понятие широкого круга, ему, в раста-мантрах, не сказали.
Аноним 24/07/20 Птн 04:26:45 1758953118
>>1758937
UB сишки, тоже в стандарте описано, но это не мешает поджигать пуканы. И никто при этом не кричит, о формальности и что это снова плохие программисты.

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

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

Естественно со стороны это смотрится полнейшем бредом и естественно надо требовать, чтобы вам давали качественный продукт.
Аноним 24/07/20 Птн 05:06:36 1758956119
>>1758953
Нет. У UB есть четкое опредление - это поведение, которое в общем случае нельзя предсказать. А в стандарте описываются моменты, в которых может возникнуть такое UB. Работа лексера ЯП не относится к UB.
Аноним 24/07/20 Птн 05:41:33 1758965120
>>1758956
Неопределенное поведение, не является собственностью языка си. Сами UB си это частное в общем понятие. А само понятие распространяется даже до человеческого фактора.

Растаманы взяли и переобули термин под свои нужны, изнасиловав вам мозги, ибо надо было создать антагониста в лице С++ и похер, что у них там у сами херова туча сишных UB получилось, главное выдрессировать попугаев
Аноним 24/07/20 Птн 08:25:22 1759003121
>>1758965
>Неопределенное поведение, не является собственностью языка си. Сами UB си это частное в общем понятие. А само понятие распространяется даже до человеческого фактора.

Вся проблема С в том что он пытается быть системным языком при том что вся системщина там основана на UB начиная с "ну мы все понимаем, что число в указателе - это адрес в оперативке посему можно присваивать указателю целые числа".
Аноним 24/07/20 Птн 08:26:01 1759004122
>>1759003

И без присваивания указателю целых чисел - хуй тебе, а не драйвер, хуй тебе а не ядро ОС.
Аноним 24/07/20 Птн 08:32:31 1759006123
>>1758525
ахаха, так подгорело от моего сообщения да)) залетный зумер, ага))
Аноним 24/07/20 Птн 08:54:43 1759016124
>>1759006
Интересный триггер на зумера. Хотите об этом поговорить?
Аноним 24/07/20 Птн 09:00:36 1759021125
>>1759016
о чем с тобой говорить зумерок)))
Аноним 24/07/20 Птн 10:55:35 1759070126
image.png 22Кб, 220x161
220x161
>>1759021
Стоп, зумерок, не шей мне код,
Машинка джавы тут мне джит снова полома,
Всех сеньерных и полублатных
Сегодня вечером работать мы оставим.
Аноним 24/07/20 Птн 14:18:04 1759197127
Аноним 24/07/20 Птн 14:20:54 1759199128
Аноним 24/07/20 Птн 14:32:46 1759211129
Чёт дохуя инфоцыганских ссылок кидают в этот тред. Верный признак того, что через несколько лет с котлином будет та же хуйня, что сейчас с питоном.
Аноним 24/07/20 Птн 14:50:04 1759219130
>>1759211
Ну так питону уже сколько, лет пять учат инфоцыгане? Вкатыши уже подозревают, что работы нет, а тут тебе есть котлин, который свеженький и типа замена джавы! (а каждый вкатун знает, что самые высокие зп у джавистов) Думаю курсы появятся уже в этом году.
Аноним 24/07/20 Птн 15:13:42 1759238131
>>1759219
Даже уже пытаются лезть сюда со своими "сап двач, я никогда не кодил, джаву в глаза не видел, хочу начать с котлина, накидайте ссылок".
В общем, ждём скоро тысячи вопросов про функцию println() и про циклы.
Аноним 24/07/20 Птн 15:27:36 1759246132
image.png 801Кб, 650x579
650x579
>>1759211
>>1759219
>>1759238
Узбагойтесь, это я тащу в тред всякое говно, а другого и нет ру-материал, чтобы заложить тенденцию обмениваться в треде контентом и новостями, а не эмитировать стэковерфлоу.
Аноним 24/07/20 Птн 19:51:12 1759447133
Аноним 24/07/20 Птн 20:09:10 1759456134
>>1759447
Меня пугает этот чел, который руками машет. Он реально дирижирует или создает видимость?
Аноним 25/07/20 Суб 04:11:39 1759664135
Аноним 25/07/20 Суб 06:41:34 1759681136
>>1759664
Ну теперь я спокоен. а вообще ребята круто исполнили.
Аноним 28/07/20 Втр 09:57:29 1762075137
Зачем это говно когдда есть scala and clojure
Аноним 28/07/20 Втр 10:04:51 1762080138
>>1762075
Зачем это говно, когда есть kotlin.
Аноним 28/07/20 Втр 10:10:46 1762088139
>>1762075
Во-первых, не подходят для разработки под адндроид.
Во-вторых, слишком сложно для вкатышей и явадебилов. Котлин - это же просто синтакс сахар, а скалы/кложури - это отельные языки, хоть и с интеропом.
Аноним 28/07/20 Втр 13:49:08 1762215140
>>1762075
В создание языков, есть два типа людей, те которые видят в своем языке холст для творчества. И те кто хотя сделать инструмент для работы, чтобы практично и меньше мест где можно отстрелить себе яйца.

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

Является ли котлин таким инженерным языком? Частично, с большой натяжкой? да (могли бы и лучше). Но вот все остальные jvm языки (и некоторые llvm, лол), это просто реализации потребности тех или иных людей.
Я тоже хочу написать свой язык и мне как-то даже глубоко срать насколько он будет для вас удобен, я художник, я так вижу. Мне, ущербу, хоть как-то получиться в историю попасть.

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

Аноним 28/07/20 Втр 14:05:02 1762229141
>>1762215
ты дебил бля, scala с clojure интероп джава
Аноним 28/07/20 Втр 14:28:53 1762255142
>>1762215
> хоть как-то получиться в историю попасть
Вставай в многокилометровую очередь изобретателей языков. Впрочем, это больше похоже на огромную толпу тех, где один пытается перекрикнуть всех остальных.
Аноним 28/07/20 Втр 14:31:52 1762256143
Аноним 28/07/20 Втр 18:19:23 1762449144
Аноним 28/07/20 Втр 19:16:35 1762523145
>>1762215
>кто 10 лет на ней писал, меня поймут.
Пишу больше 10 лет и не испытываю такого батхерта сейчас 50% кода у меня Джава, 50% Котлин.
Да Котлин местами поприятней, но не прям радикально. Особенно когда у тебя IDE которая умееет хорошо рефакторить и генерить код.
Аноним 28/07/20 Втр 22:03:49 1762629146
>>1762523
Когда пишешь на одной только джаве, то можно вообще никуда даже не смотреть, а шутить о том, какой кобол уродливый и что он стане никому ненужен. Но когда пощупал другие языки, то джава превращается в тыкву.
А когда пощупал ромбовидное наследование и то как рукожоно это реализовал Гвидо, начинаешь любить даже джаваскрипт
Аноним 29/07/20 Срд 00:01:21 1762714147
>>1762629
>Но когда пощупал другие языки, то джава превращается в тыкву.
Я "щупал" достаточно языков, поэтому прекрасно понимаю что везде свои компромиссы. Где-то многословность - тот же го по многословности перегонит джаву. Где-то перебор с сахаром - типа С# или питона где 100500 способов сделать одно и то же. Где-то мудреные концепции в которые надо постоянно держать в голове - типа раста или эликсира.

Поэтому-то я и отношусь спокойно к джаве - да не идеальный язык, зато много разных библиотек и фреймворков на все случаи жизни и хороший тулинг.
Аноним 29/07/20 Срд 10:34:59 1762943148
>>1762714
>многословность
Очень скользкий сейчас термин, изначально имелось ввиду, что для решения той или иной задачи требуется дернуть не мало объектов (например чтобы построчно файл прочитать). То есть, говорилось про объектный бойлерплейт, если ставить рядом с питоном, где стандартная библиотека местами покрытая удобными фасадами для новичков.
Сейчас под термином многословностью некоторые понимают "длинные" имена объектов или классов.

Го - эталон по бойлерплейту. Мне кажется, надо очень любить процедурное программирование, чтобы терпеть его.

C# - по сахару норм, но с решением о кроссплатформенности они опоздали лет на 10-15. Сейчас его синтаксис и сахар кажется устаревшими, даже ts кажется моднее и молодежнее.

Аноним 29/07/20 Срд 10:49:47 1762959149
>>1762523
Иногда спрашиваю джавистов и мне кажется котлин продолжает делать ряд ошибок, с моей точки зрения. У них котлин всегда что-то типа "норм, но не вау", то есть могло быть и лучше. И в этом и беда, котлин не стал завоевывать рынок бэкенда джавистов, как-то вяло и поздно стали пилить ktor, да и вообще могли бы полностью сделать фокус на либ-тулинг, у вас же там крутая DSL есть, простор для творчества. Но нет, понесло на эту мультиплатформу.
Аноним 29/07/20 Срд 12:59:54 1763081150
>>1762959
>как-то вяло и поздно стали пилить ktor
Мы как раз его используем - и самый его большой косяк для нас это отсутствие возможности как-то генерировать API spec.
Вот есть например Swagger - который при желании можно и к существующему API на базе Spring прикрутить и получить нормальное описание API которое можно отдать кому-то. А нам приходится на конфлюенсе API описывать.

>>1762943
Речь идет о бойлерплейт в первую очередь. Недостаток удобный утилити методов в стандартной библиотеке компенсируется апачем и гуавой StringUtils - хит всех времен и народов.
Аноним 29/07/20 Срд 13:37:35 1763131151
ну и хули джава ваша, 2 дня на все про все- синтаксис, модификаторы доступа, наследование, аггрегирование, перегрузка метода, оверрайт

дальше можно смело учить котлин, прекрасный и изумительный язык, который убьет мерзкую жабу
Аноним 29/07/20 Срд 13:39:48 1763134152
>>1762629
да js охуеннее джавы с её полиморфизмом убогим
Аноним 29/07/20 Срд 13:44:32 1763140153
>>1763081
>и самый его большой косяк для нас это отсутствие возможности как-то генерировать API spec
Нифига у вас восприятие мира. Берете микро-фреймворк поверх голого http и хотите чтобы он вам еще кофе варил.
Аноним 29/07/20 Срд 13:46:06 1763142154
>>1763131
Потому что у тебя бекграунд, и ты уже что-то понимаешь. Но тут много тех, кто пытается котлин самым первым языком.
Аноним 29/07/20 Срд 13:58:34 1763163155
>>1763134
JS - это язык огрызок, язык имитация, который тормозит даже в переборе DOM дерева. Еще немного и в веб ассембли завезут нормальные визуальные движки и про твой html, кривой css и убогий js забудут навсегда.

Про бэкенд я вообще молчу, даже жопаскрипт не заслужил такого говна как нода. Вроде как, даже сам автор признался в этом.

Котлин (и не только он, но всем насрать) дарит тебе возможность пилить веб на одном языке, в одном большом мульти-проекте, без компиляции жопаскрипта в жопоскрипт.
А если включить немного фантазии, то можно вообще пилить такие CMS системы, с такими возможностями плагино-писания, от которых будут шевелиться волосы на лобке!
Аноним 29/07/20 Срд 14:01:29 1763175156
>>1763142
В ру сегменте вообще мало материала чтобы с нуля. А уча джаву, велик шанс влезть в EE и в сервлеты.
Аноним 29/07/20 Срд 14:06:54 1763186157
>>1763142
В моем понимании бекграунд это знание фреймворков и прочих ухищрений в ЯПах.

То что он перечислил - это как сказать " я могу связно говорить на англе"
Аноним 29/07/20 Срд 14:15:01 1763196158
>>1763175
Не обязательно на русском же. Но многих это оттолкнёт, да.

>>1763186
Бекграунд бывает разный, здесь я подразумеваю, когда при изучении нового языка уже не сидишь неделями с книжками, а можешь открыть официальный мануал, почитать чуток и уже через несколько дней писать почти так же, как на предыдущих языках.
Аноним 29/07/20 Срд 14:20:25 1763204159
>>1763196
>Не обязательно на русском же.
Да ну на каком еще? Как будто выучить английский, это как в магазин сходить. Понятно, что до уровня владения языком, когда читается так же комфортно как на родном, уйдет тонна человеко-ресурсов.

Если у меня от английского языка не пухла бы голова, я бы на ру борде и не сидел.
Аноним 29/07/20 Срд 14:25:17 1763211160
>>1763204
Многие вайти вкатываются, уже зная инглиш на среднем уровне. Известно ведь, что здесь далеко без него не уехать.
Хотя я сам на момент вката не знал нихуя.
Аноним 29/07/20 Срд 14:54:57 1763261161
>>1763211
>уже зная инглиш на среднем уровне
В том то и дело, что его знать надо не на среднем уровне, а на уровне родного, так как материал и так сложный.
Это инфоцыгане на уровне "хи-хи, ха-ха" говорят что надо знать английский и переменные обзывать правильно, но это потом, сначала купите курс. А на деле, на английском тут все абсолютно.

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

ОФФТОП: в свое время на пхп форумах был популярен вопрос, какой движок выбрать для сайта, и очень частый ответ был - лучший движок, это тот который написал сам (самописный). И эти все местные высокомерные бараны лайкали такие ответы, мол, да, верно. Но представляешь как это соотносится к человеку, который только что сел изучать разработку и ищет лучший вариант для изучения, с тем чтобы сесть и написать свою CMS. Это абсурд (и некомпетентность комьюнити). Забавно, что полный перевод пхп либы появился тогда, когда сам пхп стал уже и не нужен (а на тот момент перевод даже был на бразильском диалекте).

Собственно, такой же абсурд, как на ру говорящих форумах, чатах или бордах, отправлять чела читать на английском и у этих людей даже не возникает вопроса, какого хера они тут на родном пиздят.
Аноним 29/07/20 Срд 14:58:33 1763266162
>>1763261
Я тут с вами потому, что не могу написать такой текст на ангельском. Так что, я хотя бы признаю, что изучения языка это реально сложная и отдельная задача и тем более нехер её сувать новичкам.
Аноним 29/07/20 Срд 15:07:13 1763281163
>>1763261
Ну не, не как родной. Сухие технические термины, которые один раз запомнил, и потом почти всё понятно, даже легче газет всяких читается, где все выёбываются знанием кучи книжных слов. Впрочем, от материала зависит, какой-нибудь Страуструп и на родном языке очень тяжело воспринимается.
Выжить как-то можно, но оч тяжко.
Аноним 29/07/20 Срд 17:41:07 1763503164
>>1763140
У нас с восприятием все нормально. Мы понимаем, что если ты пишешь публичное или доступное широкому кругу API у тебя должен быть способ адекватно это API описать.
Сейчас стандарт это OpenAPI (Swagger) и GraphQL. Swagger легко привязывается к любым JAX-RS сервисам будь то Spring или JEE. А вот ktor - хер и альтернатив они не предоставляют. Ебитесь с конфлюенсом или чем хотите.
Аноним 29/07/20 Срд 20:59:28 1763699165
>>1763503
Так напишите, дармоеды.
Аноним 30/07/20 Чтв 14:40:49 1764340166
image.png 11Кб, 97x747
97x747
Потискал html и css на котлине (в виде DSL, который kotlinx).
Двоякое чувство осталось. Понятно что это врапперы и просто демонстрация DSL, но вот реального преимущество статической типизации я так и не почувствовал. А любой шаблонизатор типа pug вообще ложит всю эту конструкцию на лопатки.
У меня еще случился момент, когда чересчур умная идея, как-то прилепила не туда фигурную скобку и отформатировала код, и я понял, что случилось это в проекте с 100500 тегами, я бы больше офигел на моменте, где куда и что. похлеще чем когда потерял закрывающийся тег

Что касется css, так сейчас любая IDE поставляет и подсвечивает слова, писать сырой css получается даже быстрее и удобнее.

В общем, мне показалась эта фича как-то притянута за уши.
Аноним 30/07/20 Чтв 19:38:59 1764537167
Аноним 31/07/20 Птн 01:59:29 1764672168
Android studio лагает как сука (очень слабый ноут)
Подскажите аналогичную и не такую требовательную иде для разработки приложений на андроид (язык, понятное дело, котлин)
Аноним 31/07/20 Птн 02:30:37 1764677169
>>1764672
Идея чуть менее требовательная. Также кто-то советует юзать другой эмулятор.
Аноним 31/07/20 Птн 08:25:41 1764741170
>>1764672
Отключить всякую ненужную херню, типа проверки правописания, всякие анализаторы
Аноним 31/07/20 Птн 09:06:13 1764753171
Аноним 31/07/20 Птн 09:58:53 1764780172
image.png 14Кб, 433x307
433x307
>>1764753
В углу есть шляпочник, там ползунок подвигай.
Но вроде можно более точно как-то по-отключать, в том числе и лишние плагины вырубить.
Аноним 31/07/20 Птн 17:41:00 1765095173
Аноним 01/08/20 Суб 08:55:35 1765380174
>>1764340
Хотя для себя нашел экзотический кейс для этого всего.
Аноним 01/08/20 Суб 14:52:32 1765530175
image.png 80Кб, 1128x735
1128x735
Видимо где-то за бугром начали активно дарт продвигать?
Аноним 01/08/20 Суб 15:23:45 1765542176
>>1765530
Фуксия на носу вообще-то.
Аноним 01/08/20 Суб 15:29:36 1765548177
>>1765542
На чьем? То как гугл не умеет делать продукты, точнее то как они загибаются, можно вообще не париться.

Если открыть SO то видно что спрос обусловлен flutter.
Аноним 01/08/20 Суб 15:33:15 1765555178
Аноним 01/08/20 Суб 15:34:41 1765558179
image.png 2Кб, 253x130
253x130
Аноним 01/08/20 Суб 15:47:19 1765563180
Аноним 01/08/20 Суб 15:58:30 1765575181
>>1765563
Как там у дарта интероп с джавой? Или ты про то, что котлин транспайлится в жс, на что всем похуй?
Аноним 01/08/20 Суб 16:05:45 1765581182
>>1765575
Как бы и интероп с джавой нахер не нужен. Ну, то есть, гордиться тем что можешь взять тырпрайзные либи, или что язык мог пофиксить костыли джавы, которых нет в других языках - такое себе.

А вот AOT компиляция, это уже интересно. я, конечно, понимаю что VM и число библиотек там в стабильном палеозое, но за то язык с чистого языка, а не прокси
Аноним 01/08/20 Суб 16:13:24 1765588183
image.png 53Кб, 1357x376
1357x376
image.png 52Кб, 1222x373
1222x373
Да и на котлине библиотек не настолько больше написали, чем на дарте.
Аноним 01/08/20 Суб 16:13:37 1765589184
>>1765581
Но ведь котлин как раз и создавался как сахарок для джавы, чтобы все эти тырпрайзные либы было не так больно юзать. И всё. Если котлин показался тебе одним из хипстерских язычков-убийц жс, которые просто в силу хипстерскости должны пытаться запускаться в браузере, то это не так.
Аноним 01/08/20 Суб 16:15:12 1765590185
>>1765588
Добавь к котлину все библиотеки джавы и иди уже отсюда.
Аноним 01/08/20 Суб 16:32:04 1765607186
Аноним 01/08/20 Суб 16:37:44 1765610187
>>1765590
Хорошо, только подскажи какие плагины ставить для гредла и где @JvmStatic писать.
Аноним 01/08/20 Суб 16:43:26 1765616188
>>1765610
> гредла
Мавена. Никакие

> @JvmStatic
Нигде.
Аноним 01/08/20 Суб 16:49:08 1765624189
Аноним 01/08/20 Суб 16:55:53 1765631190
>>1765624
Ты думаешь, что твой градл лучше мавена просто потому, что новее и моднее?
Аноним 01/08/20 Суб 17:02:54 1765642191
image.png 15Кб, 418x253
418x253
Тот случай, когда твой язык это не просто баг-фиксы джавы и ты можешь использовать нормальную декларацию листа и мапы.
Аноним 01/08/20 Суб 17:06:21 1765644192
>>1765631
Я считаю что они два куска говна, которые могли бы сделать простую и удобную сборку джавы (и котлин), но оба навернули тырпрайз говна и теперь все копипастят одни и те же конструкции, вместо адекватного:
>huy install Spring
Аноним 01/08/20 Суб 17:24:52 1765664193
>>1765644
Мне лень строчить портянку на твой троллинг тупостью, скажу лишь, что
>>huy install Spring
на скриптоговне в лучшем случае будет
> hui install -r requirements.txt
Аноним 01/08/20 Суб 18:01:16 1765710194
>>1765664
Там намного лучше и это не только для скрипто-говна. Еще петухон вспомнил, там вообще все по своему
В любом случае, они делали эти менеджеры с расчетом на все языки, что вообще глупо. Отсюда столько однотипного копипаст-текста.

Аноним 01/08/20 Суб 18:12:36 1765729195
image.png 3Кб, 487x58
487x58
>>1765664
Пук среньк
npm install - будет для сборки с пакета
Аноним 02/08/20 Вск 15:09:00 1766259196
Котлин говно
Жава говно
Дарт гавно
Гавно гавно

Вам двачерам вообще угодить реально?
Аноним 02/08/20 Вск 16:56:46 1766349197
image.png 470Кб, 1080x1139
1080x1139
Аноним 02/08/20 Вск 17:03:18 1766360198
Аноним 02/08/20 Вск 17:03:32 1766361199
>>1766259
Я бы заинтересовался вашим котлином, но раз все крутится вокруг жаба говна то пожалуй оставлю это бумерам.
Аноним 02/08/20 Вск 17:09:03 1766367200
Можно считать что котлин провалился? Или наоборот у него сейчас рост и востребованность?

Возможно котлин достиг своего максимума?
Аноним 02/08/20 Вск 17:22:19 1766378201
15702201230280.png 280Кб, 1373x357
1373x357
>>1766361
Еще один вечный соискатель в петухоне?

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

И не потому что жаба хорошая, а просто нет альтернатив.
С++ и всякие ржавые языки, вообще не пригодны для тяжелой бизнес-логики. Ты с языком будешь бороться больше.
С# - да кому нужен вендор лок??
Го - да кому нужна кривая обертка над си, в которой нет даже стектрейса. Ты представляешь как большое приложение без стектрейса отлаживать? Или как писать гибкое приложение без дженериков? Блин, да там даже нельзя бесплатно получить букву в слове надо конвертить в руны, если ты не счастливый обладатель англ. языка

Нету больше кручи и мощнее чем джава, нет более удобнее и современная вариация чем котлин.
Аноним 02/08/20 Вск 17:25:38 1766382202
>>1766378
Ах да, дарт.
Это не язык с библиотекой флаттер. Это язык для библиотеки флаттер и больше ничего.
Завтра окажется что флаттер годнота и появитсья 100500 конвертеров в эту либу, минуя твой дарт.

Ебнешья еще к либе отдельный язык учить.
Аноним 02/08/20 Вск 17:28:02 1766385203
>>1766378
На пыхе есть symfony и zend/laminas, они серьезные и жабаподобные. А вот на питоне и жс как будто вообще нет ничего железобетонного энтерпрайзного, сплошная какая-то хуйня для заказного аутсорс клепания сайтов, или более узконаправленные легковесные микрофреймворки в которых только роутинг да обертка над реквестом и респонсом
Аноним 02/08/20 Вск 17:28:52 1766388204
>>1766382
Но ведь дарт нереальная примитивщина, проще Си.
Аноним 02/08/20 Вск 17:37:18 1766396205
>>1766388
Дарт, точнее его уже новая эволюция 2.0, это попытка сесть сразу на два стула - javascript и java. Сомнительная затея, получился такой недо-шарп от гугла.

Ты, наверное, перепутал с го?
Аноним 02/08/20 Вск 17:48:08 1766408206
>>1766385
Да, так и есть.
В реале, пхп в свое время дорос до таких размеров, что там стали писать сложную тырпразную херню. На это все и появились такие монстры как symfony и zend итд.

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

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

Аноним 02/08/20 Вск 17:50:33 1766411207
>>1766408
НО веб это всегда многолетний и растущий проект. Начнешь базу в контроллере дергать, через год охуеешь от вони говна.

Поэтому да, есть индустрия студий, где важно быстрее хуяк-хуяк и продашкн.
Аноним 02/08/20 Вск 18:08:19 1766433208
>>1766367
Котлин уже вовсю используется на андроиде. Медленно пробирается в бек, но ощущение, что он так и останется в нём где-то на уровне скалы.
Аноним 02/08/20 Вск 18:20:03 1766462209
Аноним 02/08/20 Вск 18:23:04 1766472210
>>1766462
> Kotlinᵝ
> ᵝ
А чего ты хотел? Да и к тому же оно включает джаву.
Аноним 03/08/20 Пнд 13:59:24 1767158211
Аноним 03/08/20 Пнд 22:48:25 1767773212
Только сейчас прочитал про Scalа 3.0. Я так понял, успех котлина заставил скалу повторить вираж пайтона? Походу парни расшибут скалу об скалу.
Аноним 03/08/20 Пнд 22:51:28 1767776213
>>1767773
Лол, еще туда питоновские отступы завезли.
Аноним 03/08/20 Пнд 23:15:21 1767790214
Аноним 04/08/20 Втр 20:58:56 1768533215
image.png 873Кб, 1500x2121
1500x2121
image.png 929Кб, 1500x2121
1500x2121
image.png 733Кб, 1500x2121
1500x2121
Аноним 06/08/20 Чтв 21:45:08 1770305216
Я к мобильной разработке отношения не имею, поэтому объясните мне как дэбилу: нахуй нужон этот ваш котлин, если есть дарт?
06/08/20 Чтв 21:45:58 1770306217
Аноним 06/08/20 Чтв 22:05:47 1770320218
>>1770306
Да как я тебя заебать-то успел? Я впервые в этом треде запостил!
Аноним 06/08/20 Чтв 22:06:13 1770321219
>>1770305
Котлин нужен чтобы не писать на дарте.
Аноним 07/08/20 Птн 00:44:04 1770409220
>>1770305
Ну вот, флаттер опять так лаганул, что тебя сюда вместо андрюшников закинуло.
Как напишешь нормальную VM или хотя бы вытесняющий планировщик, тогда поговорим.
Аноним 07/08/20 Птн 10:15:14 1770585221
>>1767158
Сейчас бы дебажить спринг. Вот он момент, когда фреймврорк послал тебя нахуй, а ты даже не можешь сорцы открыть и прочитать что там происходит потому что сорцы такого абстрактного говна как спринг не читаемы вообще.

И мне постоянно говорят, нафиг тебе исходники фреймворков читать. А вот чтобы понять что я буду делать в такой ситуации.
Аноним 07/08/20 Птн 10:21:29 1770599222
Аноним 07/08/20 Птн 13:39:51 1770866223
>>1770585
так и в чем проблема тогда?=(
Аноним 13/08/20 Чтв 18:20:32 1776403224
Аноним 14/08/20 Птн 22:08:09 1777708225
>>1739262 (OP)
> kotlin
Васянская обёртка над языком.
Аноним 14/08/20 Птн 23:09:49 1777737226
Котлин заебись, но нахуй он нужен без кроссплатформы?

Дарт говно, но позволяет сразу пилить под ios+android.

То есть котлин это такой выбор для тех, кто создательно хочет работать на кого-то, вместо запуска своих проектов.
Аноним 14/08/20 Птн 23:22:19 1777748227
>>1777737
Котлин хорош тем, что это не только язычок для мобилок, но и вполне себе для бекенда. Даже на нашем древнем проекте на Java EE 6 уже есть немного котлина.
Аноним 15/08/20 Суб 09:12:04 1777919228
>>1777737
Там для тебя, одарённого, специально пилять нейтив, чтобы ты на всякие ненужные мобильные оси писал.
Аноним 15/08/20 Суб 12:29:40 1778045229
>>1777919
Да, андроид нахуй не нужен, платящей аудитории там ноль, но это самая массовая платформа, так что если под неё не запилить то на проекте не будет людей вообще
Аноним 15/08/20 Суб 12:56:29 1778069230
>>1778045
> платящей аудитории там ноль
Так тебе стартап открывать или всё-таки кодить?
Аноним 15/08/20 Суб 14:43:20 1778109231
>>1778069
Школьник бунтует перед концом каникул.
Аноним 15/08/20 Суб 14:52:11 1778115232
Аноним 16/08/20 Вск 12:21:54 1778632233
основной десктоп проект достиг пика и появилась возможность перекатиться в андроид разраба, предложили самостоятельно обучиться, но через 3 недели после трансфера на новый проект, они поняли, что легче найти готового mobile дева(а может уже нашли) за те же деньги чем платить мне 2к$ в месяц за вкатывание в мобильную разработку, поэтому попросили покинуть стартап

успел прочитать это - `Head First Kotlin 2020 Griffits Devid, Griffits Don`
и пощупать пару курсов на юдеми - поковырял котлин с джавой. кстати, какое же гавно эти виджеты и лэйауты андроид студии, ощущаешь себя дауном, перетаскивая компоненты мышкой и натягивая стрелочки для позиционирования виджетов, фотошоп какой то, я бы долго не выдержал такой хуйни

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

всем удачи в освоении Котлина, замечательный язык, может еще удастся на нем пописать в будущем
Аноним 16/08/20 Вск 12:53:51 1778651234
>>1778632
>основной десктоп проект достиг пика и появилась возможность перекатиться в андроид разраба, предложили самостоятельно обучиться, но через 3 недели после трансфера на новый проект, они поняли, что легче найти готового mobile дева(а может уже нашли) за те же деньги чем платить мне 2к$ в месяц за вкатывание в мобильную разработку, поэтому попросили покинуть стартап
Вот это я понимаю, социально-ответственное поведение.
Хоть выходное пособие дали? Или попросили по собственному, а ты и проглотил?
Аноним 16/08/20 Вск 13:06:19 1778660235
>>1778651
оплатили время потраченное на учебу- 2 недели в полном размере, а оставшиеся до конца месяца часы будут оплачивать на 50%, но мне один хуй делать нечего, я чисто формально в конторе, типа отрабатываю последние 2 недели, все таски закрыты уже давно

>а ты и проглотил
а ты бы истерику устроил? там это никого не ебет, работаю по контракту на американский стартап- решили расторгнуть и расторгли. следующее место конечно буду искать с официальным трудоустройством, после такого то удара в псину
Аноним 16/08/20 Вск 17:00:56 1778824236
Sealed классы медленнее енамов? А если реализации sealed abstract класса - объекты?
Аноним 16/08/20 Вск 21:11:08 1778967237
Прочел что в 1.3 добавили контракты.
Имеется несколько подтипов sealed класса с разными типами данных внутри. Можно ли как-то с контрактами реализовать такую функцию чтобы внутри массива таких объектов происходил первого, который имеет конкретный подтип, причем чтобы функция возвращала уже скастованный объект?
val somevar = array.first { it is SomeSealedChildClass }
somevar имеет тип SomeSealedChildClass
Аноним 16/08/20 Вск 21:11:35 1778968238
как пилить UI для андроида?
Аноним 16/08/20 Вск 21:11:43 1778969239
>>1778967
> происходил первого
происходил поиск первого.
Фикс
Аноним 16/08/20 Вск 21:20:42 1778973240
Аноним 16/08/20 Вск 21:25:44 1778978241
>>1778968
Надо установить Android Studio (это такая бесплатная IDE для разработки под операционную систему Android). Запустить, создать проект, и там будет редактор форм, просто перетаскивай мышкой виджеты на форму, пиши обработчики, и всё.
Но судя по твоему вопросу, лучше для начала взять какую-нибудь книжку по основам Java страниц так на 1000 и прочитать её.
Аноним 16/08/20 Вск 21:27:14 1778979242
>>1778978
базу по джаве я знаю.
Графику в фотошопе пилить?
Аноним 16/08/20 Вск 21:32:15 1778990243
>>1778979
Для каких-нибудь сложных элементов интерфейса, вроде кастомных кнопок, действительно придётся откуда-то брать иконки, хоть самому рисовать в графическом редакторе. Но для самых основ этого не нужно.
Аноним 16/08/20 Вск 21:33:43 1778993244
>>1778990
основы понятно,но это будет неюзабельное и не красивое гавно
Аноним 17/08/20 Пнд 19:35:46 1779770245
image.png 41Кб, 834x387
834x387
помогите написать корутиновский await() для DeferredResult из спринга, пожалуйста

где я обосрался?
Аноним 17/08/20 Пнд 21:01:54 1779851246
>>1779770
я не гений, но попробуй сделать <T?> вместо <T>
Аноним 17/08/20 Пнд 21:06:23 1779857247
>>1779770
Разве корутины не зарелизили, что за эксперементал??
Аноним 17/08/20 Пнд 21:07:38 1779859248
>>1779851
по-разному пробовал, эта штука в тестах зависает намертво просто(
>>1779857
у нас на проекте старая версия пока что
Аноним 17/08/20 Пнд 21:10:52 1779863249
Как идеоматичнее и синтаксически чище сделать такое: распаковать и вернуть значение проперти, если оно не null, если null то вычислить и присвоить значение, после чего вернуть его.

https://pastebin.com/z1QrYKML
Аноним 17/08/20 Пнд 21:13:03 1779869250
Аноним 17/08/20 Пнд 21:17:29 1779875251
>>1779770
блет, походу баг в спринге. onCompletion не вызывается просто
Аноним 17/08/20 Пнд 21:18:22 1779877252
>>1779869
Надо еще присвоить значение пропсу. Короче когда проперти аля кеш.
Аноним 17/08/20 Пнд 21:20:08 1779883253
>>1779859
Что ошибка говорит? Явно же в типах объебался же?
Аноним 17/08/20 Пнд 21:28:51 1779891254
>>1779863
someProp = someProp ?: computeVariable()
Аноним 17/08/20 Пнд 21:31:52 1779894255
>>1779891
А вообще там есть ленивые вычисления для этого
Аноним 17/08/20 Пнд 21:51:28 1779903256
>>1779883
нет ошибок, просто зависание. Убрал эту функцию, написал лог в onCompletion и поставил туда брейкпоинт. В итоге результат считается нормально, но в брейкпоинт не заходит, т.е. этот метод не вызывается. Похоже на что-то такое https://stackoverflow.com/questions/39909996/spring-deferredresult-oncompletion-not-called-from-test-cases

на то что у меня на скриншоте красным подсвечено - не смотрите, я там в процессе отладки скрин делал.
Аноним 17/08/20 Пнд 22:01:00 1779909257
Аноним 17/08/20 Пнд 22:16:34 1779916258
>>1779903
Хз, не спрингую.
На практике, если платят хорошо, то нужно сорцы фреймворка изучить. Но по опыту, лучше мега фреймворки не брать.

Потому как микрофреймворки не мешают, а мегафреймворки не дотягивают до плагинный возможностей какой-нибудь CMS, где можно сотню плагинов повесить и будет работать как часы.
Аноним 17/08/20 Пнд 23:17:38 1779972259
Аноним 18/08/20 Втр 00:07:01 1780011260
>>1779909
У меня не открывается, похоже в РБ заблочили, лол

>>1779972
Чаю, именно то что хотел, понятный и лаконичный однострочник. А то я уже !! нахуярил, получилось все равно много кода для такого действия.
Аноним 18/08/20 Втр 00:41:30 1780042261
>>1779972
Если уж запихнул все в строку, то можно добить до упрощенного варианта, без ретёрна.

fun foo() = someProp ?: computeVariable().also { someProp = it }

Но такое себе изящество, на самом деле.
Из ООП головного мозга, плавно перенеслись в ФП головного мозга.
япокакал Аноним 18/08/20 Втр 01:27:21 1780075262
Аноним 18/08/20 Втр 04:27:14 1780116263
Аноним 18/08/20 Втр 04:32:16 1780118264
>>1780075
>>1780116
Не понял задумку с
Function references in Unit-returning functions
Как-то, это ломает систему типов, нет? В этом есть какой-то кейс?
Аноним 18/08/20 Втр 22:20:17 1780940265
А override fun times() для файлов или путей используется в котлине?
Аноним 19/08/20 Срд 00:41:10 1781040266
>>1780940
Где её нашел, там и используется
Аноним 19/08/20 Срд 00:43:26 1781043267
>>1780940
Но ты, наверное, с оператором перепутал?
Аноним 19/08/20 Срд 06:25:25 1781174268
Аноним 19/08/20 Срд 08:01:56 1781190269
>>1781174
Хочешь перегрузи его (если нету) для файлов или путей, через э. функции. Только я хз какой контекст? Нужна фантазия художника как минимум, чтобы символ умножения использовать в таком контексте.


Аноним 19/08/20 Срд 08:03:57 1781193270
>>1781190
У каждого котлиниста всегда под боком лежит пакет с экстеншенами. У меня там вообще солянка, но операторы еще ни разу не перезагружал.
япокакал Аноним 19/08/20 Срд 10:02:10 1781242271
Аноним 19/08/20 Срд 15:29:04 1781733272
>>1781190
Чет тупанул, я имел в виду div()
Чтобы вот так вот делать:
File("/usr") / "bin"
Аноним 19/08/20 Срд 16:39:35 1781864273
>>1781733
Так не получилось, получилось
file() / "usr" / "bin"

Хуита, не буду дальше копаться.
Аноним 19/08/20 Срд 21:54:55 1782171274
>>1781864
Какая тут логика вообще? Ты создаешь объект File, а потом хочешь добавить еще путь и создать новый, а потом еще?
Ты наркоман?

Вот, наверное, что ты хотел.
https://pl.kotl.in/aUatd7e8T
Аноним 19/08/20 Срд 21:56:48 1782172275
>>1782171
Да, это ближе к изначальной задумке. Но смысла 0.
Я хотел какую-нибудь ебанутую(крутую) штуку с перегрузкой операторов сделать, как в скале.
Аноним 19/08/20 Срд 22:26:10 1782186276
image.png 63Кб, 853x691
853x691
>>1782172
Ты можешь перегрузить и для File и каждый раз создавать новый File, беря из него старый путь (но это наркомания, но если хочется)



Аноним 20/08/20 Чтв 07:42:22 1782351277
image.png 4Кб, 499x63
499x63
че это за залупа? тысячный раз такое...
Аноним 20/08/20 Чтв 09:00:06 1782391278
Выучил котлин и базу данных, какой фреймворк нужен чтобы вкотиться бэкэндером?
Аноним 20/08/20 Чтв 09:06:48 1782397279
>>1782391
напиши обезличено о себе и своем стеке небольшой текст, как написал бы в резюме, и скажу какие у тебя шансы вкатиться на данный момент.
Аноним 20/08/20 Чтв 09:12:47 1782400280
>>1782397
У меня нет стека я вкатун
Аноним 20/08/20 Чтв 10:14:21 1782426281
>>1782351
Тоже сегодня видел на тест сборке. Вероятно наговнили в релизе, думаю поправят.
Аноним 20/08/20 Чтв 10:18:37 1782428282
>>1782391
Как вы достали уже.
Тебе себе или работу найти? Если работу найти, смотри что требуют. Напиши парсер который собирает все данные с хаха.ру и сделай рейтинг востребованного стека.
Вот тебе первое задание.

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

Какой ты у нас сегодня?
Аноним 20/08/20 Чтв 10:41:41 1782448283
>>1782428
Никто его не возьмет на работу с какими-то парсерами и прочими крудами на спринге. Раньше нужно было думать и идти на джаву. А уже после 5-7 лет на джаве, можно было сладко перекатиться на котлин.
Аноним 20/08/20 Чтв 11:09:05 1782469284
>>1782448
Да кому твоя жаба то нужна.
По честноку, если бы не андроид, то сейчас вспоминали на уровне кобола.
Если видишь резюме джавы без котлина, значит придется работать с динозаврами и с жутким легаси.
Аноним 20/08/20 Чтв 11:43:38 1782518285
>>1782469
>Если видишь резюме джавы без котлина, значит придется работать с динозаврами и с жутким легаси.
Пиздежь кста. Пока котлин не оформится как полноценный язык с собственной инфраструктурой а не как плагин для мавена, тырпрайз на него не перейдет.
Аноним 20/08/20 Чтв 12:09:14 1782567286
>>1782518
>не оформится как полноценный язык с собственной инфраструктурой
Зачем? Ну, круто там всякие SQL писать на DSL, но надо понимать что такое котлин и что ему особо не нужно заново изобретать то, что всех и так устраивает.

А вот на нейтив, я думаю, будут врапперы писать и может даже что-то интересное увидим. Но бэкенд на нейтиве писать не будут.
Аноним 20/08/20 Чтв 12:16:33 1782578287
>>1782567
Спойлер ты скипнул, да?
Аноним 20/08/20 Чтв 12:19:36 1782583288
Аноним 20/08/20 Чтв 12:54:11 1782641289
>>1782448
> крудами на спринге
Зато в джаву и правда берут.

>>1782469
Шарпист, уходи.
Аноним 20/08/20 Чтв 13:01:44 1782653290
>>1782448
>5-7 лет на джаве, можно было сладко перекатиться на котлин
Толстота то какая. Перекатился на котлин, где-то за выходные.
Сейчас тонна материала на английском по котлину, на ютубе конвеером просто контент снимают. Если человек усердный и хорошо плавает в ангельском, то смело вкатится в котлин без жабы.
Статика вообще позволяет изучать материал по докам на API
Аноним 20/08/20 Чтв 13:46:39 1782707291
>>1782653
Куда ты там перекатился, болезный? Работу-то нашел? Не на андроиде, разумеется, а на настоящем бекенде? Нет? Вот и то-то же!
Аноним 20/08/20 Чтв 19:05:23 1783209292
ktor это как лего,собирать все самому?
Аноним 20/08/20 Чтв 19:31:13 1783220293
>>1783209
Да, но хипсторки почему-то считают микрофреймворки преимуществом, а не недостатком. Проект разрастается, эволюционирует, и получается изобретённый заново кривой и нестабильный клон спринга. У питонщиков тоже так - не хочу жирный монолит джангу, хочу боттле и фласк, чтобы потом устанавливать 20 плагинов для них и ебаться о связыванием этого всего вместе.
Ещё и реклама всех этих микрофреймворков - смотрите, у нас роуты компактнее. Будто роуты пишутся не 1% времени написания проекта, а 50.
Аноним 20/08/20 Чтв 23:04:11 1783409294
>>1782653
>Если человек усердный и хорошо плавает в ангельском, то смело вкатится в котлин без жабы.
Из вакансий на чистом Котлине - только Андроид. В остальных вакансиях подразумевается знание Java и JVM.
Аноним 20/08/20 Чтв 23:07:28 1783410295
>>1782448
У меня первая работа в жизни была - Котлин + джава бекенд
Взяли Джуном, по котлину только пару хелло вордов писал до этого
Аноним 20/08/20 Чтв 23:58:31 1783426296
Язык назван в честь города Котлин, в котором я живу, но я буду программировать на питоне м джс
Аноним 21/08/20 Птн 01:01:52 1783449297
>>1782707
Это не я перекатился, это котлин к нам перекатился.

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

Если ваши динозавры бояться нового, то предложи хотя бы тесты пописать.
Аноним 21/08/20 Птн 01:05:22 1783450298
>>1783209
Да, иногда проще свое говно с 5% функционала накатить, чем сидеть в доках и потом в сорцах очередной йоба-магии спринга.
Аноним 21/08/20 Птн 01:07:34 1783453299
>>1783426
>в честь города
Тогда бы его ласково называли Кронштадт.
Нет, котлин назвали в честь острова. Удачное название, попробуй что-то нагуглить по dart или go (без golang).
Аноним 21/08/20 Птн 01:07:52 1783455300
Аноним 21/08/20 Птн 01:21:48 1783460301
cs43328529orig.jpeg 28Кб, 407x405
407x405
Аноним 21/08/20 Птн 02:38:43 1783477302
>>1783453
Бля, я обосрался. Котлин - остров, а крон - город на острове. Энивей ты меня понял
Аноним 22/08/20 Суб 11:41:20 1784732303
>>1739262 (OP)
Андроид тред дохлый, поэтому спрашиваю тут.

Есть задача - отслеживать все нотификации в бекграунде. Есть NotificationListenerService. На чем его запускать? Стандартный Service или же WorkManager? Также какие есть решения для длительных бекграунд процессов? Может что-то из корутин или RX?
FirebaseJobDispatcher, GcmNetworkManager, Job Scheduler уже рекомендуют заменять на WorkManager.
Аноним 22/08/20 Суб 15:01:18 1784868304
>>1784732
Хз че там у вас, но логика простая, отвечу в стиле мейл-ру.

Есть событие? Вешай на событие.
Есть йоба сервис которые дергает сервисы - вешай на него.
Есть аналог крона? Вешай сервис на крон.
Есть поток? Крути сервис в отдельном поток.
Все крутится в корутинах? Крути в корутине.
Rx - выкинь каку, люди от скуки всякую хуйню придумывают.
Аноним 22/08/20 Суб 19:01:24 1785023305
Котлин по хайперскиллз учил кто?
Аноним 22/08/20 Суб 19:02:29 1785024306
>>1785023
я учил джаву, потом перекатился на котлин самостоятельно
Аноним 23/08/20 Вск 16:50:18 1785616307
Почему метод verify в mokK так хуево задизайнен?
Просто посмотрите на его сигнатуру и класс Ordering
Это же пиздец
Аноним 24/08/20 Пнд 02:10:34 1785999308
>>1785616
>Просто посмотрите на его сигнатуру
Но ты нам ничего не принес, да? Ленивая ты, возмущающаяся жопа. Сейчас мы будем за тебя в каких говнолибах лазить.
Аноним 24/08/20 Пнд 08:10:36 1786062309
image.png 76Кб, 1234x589
1234x589
Я требую до 42!
Аноним 24/08/20 Пнд 08:34:05 1786063310
>>1785999
> говнолибах
Посоветуйте тогда либу для моков в юнит тестах. Сам что используешь?
Классик Mockito не позволяет корутины мокать нормально
Аноним 24/08/20 Пнд 10:20:29 1786115311
image.png 79Кб, 988x673
988x673
Нужен кодревью. Насколько этот код легко читается? Или это звездец и лучше переписать?

Я знаю, что публиковать приватные методы, это плохо и все такое. Но мне нужно для тестов чтобы API не ломать, как того навязывают юнит тесты. И да, я знаю что и для тестов этого делать не нужно, но опять же, юнит тесты навязывают дробление, а у меня красивое API, так что правило идет лесом
Аноним 24/08/20 Пнд 10:27:00 1786116312
>>1786063
Хз, мы от мокания отказались, у нас интеграционные тесты, а в юнит тестах тестим только чистые функции

Посмотри тут, если тебе там что-то не понравилось.
https://kotlin.link/
Аноним 24/08/20 Пнд 10:53:42 1786129313
>>1786115
Адовый код, переделывай
Аноним 24/08/20 Пнд 11:02:11 1786133314
>>1786129
хз как, с флагами тоже адок будет.
Только на функции разбивать.
Аноним 24/08/20 Пнд 11:26:26 1786148315
>>1786133
Нихуя себе ты гений.
Оказывается сложную функцию нужно декомпозировать, создавая небольшие функции, ахуеть просто!

Подсказка: Пиздуй создавать экстеншен для Method который проверяет соответствие аргументов
Аноним 24/08/20 Пнд 11:27:24 1786150316
>>1786148
Для KFunction то есть блять
Аноним 24/08/20 Пнд 11:50:22 1786164317
>>1786148
>Оказывается сложную функцию нужно декомпозировать
Хуя ты разбежался. Как ты собрался декомпозировать инлайн функции?

>Пиздуй создавать экстеншен для Method который проверяет соответствие аргументов
Лол, мастер дизайна АПИ
val user = User()
User::calc.callPrivateFunc(user, 1, 3)
Вместо
user.callPrivateFunc("calc", 1, 3)

Ни чего что задача может требовать объявление функции динамически?? Если трогаешь рефлексию, будь добр чтобы это была рефлексия, а не говнокаша из статики и динамики.
Аноним 24/08/20 Пнд 11:55:06 1786169318
>>1786164
Я кстати не уверен что компилятор даст получить ссылку на приватный метод.
Так что просто иди нахуй.
Аноним 24/08/20 Пнд 11:58:35 1786175319
Необходимость вызывать приватные методы это уже проблема дизайна

Если тебе надо их тестить, то делай их публичными, и не выебывайся
Аноним 24/08/20 Пнд 11:59:27 1786177320
Аноним 24/08/20 Пнд 12:03:45 1786182321
>>1786175
Тестирование не должно навязывать дизайн кода и API.
Аноним 24/08/20 Пнд 12:14:50 1786196322
>>1786182
Всё просто

Если твой код сложно тестировать, значит твой код говно
Аноним 24/08/20 Пнд 12:29:45 1786209323
>>1786196
Хуйня вбитая в неокрепшую голову.
Если по дизайну это должно быть скрыто, то некуй это публиковать или куда страшнее разносить по 100500 мелким классов.

Ты писал свой класс, ты имеешь право знать его приватное состояние, насколько оно соответствует твоим ожиданием на публичного взаимодействие API. Надо быть отбитым дебилом, чтобы не получит такое преимущество над своим кодом.
Тесты не должны ничего навязывать, тесты не должны менять дизайн программы. Это, блядь, тесты.
Аноним 24/08/20 Пнд 12:30:46 1786211324
>>1786209
Ну а нахуй ты тестишь приватный блядь метод?

Просто блядь тестируй сам класс в котором он находится
Аноним 24/08/20 Пнд 12:40:35 1786220325
image.png 7Кб, 231x107
231x107
Ппц сейчас гоферы слюной изойдутся.
чтобы в го что-то принтануть, там надо воззвать к целому пакету и не забыть его убрать, а то не скомпилиться
Аноним 24/08/20 Пнд 12:41:55 1786221326
image.png 6Кб, 403x65
403x65
АААААААААААААААА ЧТО ЖЕ ТЫ ИРОД ДЕЛАЕШЬ!!!
Аноним 24/08/20 Пнд 12:55:37 1786230327
>>1786211
Как всегда есть публичные API, которое упрощенно и внутренние промежуточные алгоритмы (методы).

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


Аноним 26/08/20 Срд 10:00:43 1788427328
>>1786221
Ого. Надеюсь этот язык станет популярным. Прикольный сахар синтаксический.
Аноним 27/08/20 Чтв 10:47:52 1789439329
>>1788427
Вот из-за таких как ты, язык медленно восторг в рабочие места на бэкенде конвертирует.
Аноним 27/08/20 Чтв 13:04:03 1789620330
>>1789439
> восторг в рабочие места на бэкенде конвертирует.
Лол, кажется, я понял, почему борщехлёбы - борщехлёбы.
Аноним 27/08/20 Чтв 13:23:00 1789661331
>>1786221
Так и до сахарного диабета недалеко.
Аноним 27/08/20 Чтв 22:25:57 1790331332
>>1786116
Интеграционные тесты это как?
Аноним 27/08/20 Чтв 23:24:35 1790393333
>>1790331
Когда пишешь тесты не для одного класса/модуля, где мокаешь все внешние вызовы, а поднимаешь сразу целый контекст из множества классов, будто это обычное приложение, и тестируешь, как они работают вместе, а не поодиночке.

мимо
Аноним 28/08/20 Птн 16:17:49 1791132334
>>1789661
Разбавляй его с perl, чтоб не слиплось.
Аноним 28/08/20 Птн 16:26:45 1791137335
>>1791132
В перле его на самом деле намного больше, код на нём нечитаемый именно из-за множества таких вот фишечек. Если и разбавлять, то сишкой.
Аноним 28/08/20 Птн 16:42:42 1791153336
>>1790331
Когда тестируют целиком, на тестовой машине, тестовом БД и прочем.
Аноним 28/08/20 Птн 17:30:13 1791207337
1570921295708.jpg 57Кб, 1024x878
1024x878
Возможно ли теоритически перевести на Котлин весь стэк т.е. набрать команду одних котлинистов и чтобы они сели писать бэкэнды с крудами точёными, фронтэнды с гуями дрочёными и мобильные версии?
Android/Kotlin/wasm на фронте
Linux - Kotlin - Spring - Postgres в тылу
Аноним 28/08/20 Птн 18:17:38 1791262338
>>1791207
Для этого его и точят.
Проблема в том что во всем этом ты будешь первопроходцем. То есть, наверняка уже есть какие-то обертки там на реакты, хуякты. Но тогда нахуя оно надо? Это как надевать сразу два гандона. Понятно, что круче будет, когда кто-то за нас напишет свои ui-hui фрейворки, без потребности нюхать js, хоть в js это будет собираться под капотом.

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

Осталось только эту плагинную систему написать, ну ты понял.
Аноним 28/08/20 Птн 22:57:02 1791529339
надо надрочить жс по работе, сука у меня кровь из глаз от него идет, это пиздец, я конечно знал что там жопа, но там вообще жопа
Аноним 28/08/20 Птн 22:57:42 1791530340
>>1791529
держи в курсе блядь
Аноним 29/08/20 Суб 06:29:39 1791664341
>>1791529
Ооо братюнь, поверь, ты скорее всего, еще не докопал до дня этого языка.
Аноним 29/08/20 Суб 06:32:12 1791665342
>>1791529
>>1791664
Надо сказать что DOM API там тоже одним местом дизайнили.
Надеюсь уже скоро вебассемебли завезут ГЦ и наконец-то выкинут html, dom, css на свалку истории.
Аноним 29/08/20 Суб 17:31:52 1791970343
>>1786220
Эта хуета просто не может быстро работать. Как и все остальное в котлине.
Аноним 29/08/20 Суб 19:14:58 1792051344
>>1791970
Ты дурачок? Это просто статический метод.
Аноним 29/08/20 Суб 19:31:54 1792062345
>>1791970
Нас посетил питон-батя.
Теперь все конструкции котлина резолвятся только в рантайме.
Аноним 29/08/20 Суб 19:32:56 1792063346
>>1792062
>Нас посетил питон-батя.
Теперь для инициализации каждого цикла в памяти выделяется массив.
Аноним 29/08/20 Суб 19:50:21 1792076347
>>1792062
Теперь GIL работает и для корутин.
Аноним 30/08/20 Вск 23:05:53 1793107348
Сап котланы. Решил вкатиться в котлин. Джаву знаю. С чего начать? Есть годные курсы, книги?
Аноним 31/08/20 Пнд 02:46:03 1793316349
>>1739262 (OP)
допустим у меня есть сырцы одного приложния мне нужно чтобы приложения автомато запускало файл который я добовлю в исходники как это мне сделать
Аноним 31/08/20 Пнд 05:15:29 1793333350
Аноним 31/08/20 Пнд 05:17:29 1793334351
Аноним 31/08/20 Пнд 05:30:18 1793336352
image.png 628Кб, 800x592
800x592
Аноним 31/08/20 Пнд 10:56:45 1793494353
>>1793316
>>1793334
забыл уточнить приложение на андройде
Аноним 31/08/20 Пнд 15:50:58 1793833354
>>1792051
> статический метод
> this
Уровень образованности в треде макакеров оставляет желать лучшего, мда уж.
Аноним 31/08/20 Пнд 17:49:03 1793963355
>>1793833
Нихуя ты обосрался, довен.
Аноним 31/08/20 Пнд 18:16:43 1794003356
>>1793833
лол, самоуверенный ламер.
Аноним 01/09/20 Втр 12:46:35 1794652357
>>1793107
нахуй целенаправленно учит ЯЗЫК? просто блять берешь и начинаешь писать, в чем проблема? ты не можешь загуглить как реализовать конструкцию в новом языке или что? в чем ваша проблема блять книжники ебучие?
Аноним 01/09/20 Втр 15:53:48 1794866358
>>1794652
Сомнительно удовольствие методом тыка языки изучать.
Это ты, линивая жопа, можешь методом тыка разобраться как твой телефон работает, но никак не писать ЯП разбивая лоб и уставая от того, что тупо не понимаешь почему происходит именно так, а не так.
Аноним 01/09/20 Втр 15:55:51 1794870359
>>1794652
И да, в отличие от петухона, на стековерфлоу может не быть 100500 вопросов в стиле, как "напечатать текст" или "как обойти массив".
Инфоцыгани еще до языка не добрались и следовательно ваннаби-программисты тоже.
Аноним 01/09/20 Втр 19:32:06 1795052360
>>1794866
глупость
>>1794870
во-первых, есть, а во-вторых, в чем проблема спросить?
Аноним 01/09/20 Втр 23:51:49 1795172361
>>1795052
В том что быстрее прочитать доку, чем задавать вопрос и ждать ответа.
Аноним 02/09/20 Срд 14:32:04 1795438362
>>1795172
так и че ты не прочитаешь тогда?
Аноним 02/09/20 Срд 19:04:03 1795664363
image.png 748Кб, 1017x491
1017x491
Аноним 03/09/20 Чтв 13:02:56 1796202364
>>1795664
> прочитать доку
что не прочитаешь тогда?
Аноним 03/09/20 Чтв 14:10:36 1796280365
>>1796202
Прочитал давно уже
Аноним 05/09/20 Суб 18:42:51 1798157366
>>1739262 (OP)
Говнище полное.
Если пишешь на котлине реализацию джавового интерфейса, ты не можешь использовать нормальные джава-коллекции, только т.н. "mapped types". То есть если есть метод, в котором аргумент имеет тип java.util.Map, в котлине надо использовать MutableMap, а не
java.util.Map.
В итоге ты в принципе не можешь написать код без использования stdlib, пиздец нахуй.
Каким надо быть долбоёбом чтобы сделать такое уебанство?
Аноним 05/09/20 Суб 21:36:34 1798269367
>>1798157
К чему претензия? Ты и в джаве не сможешь написать код без использования стдлибы. Где угодно ты не сможешь написать нормальный код без стдлибы. Ну и MutableMap в котлине это интерфейс, реализация которого это коллекция из джавы.
Аноним 05/09/20 Суб 21:38:58 1798273368
>>1798269
В джаве я могу реализовать джавовый интерфейс используя джавовую стдлибу. В котлине я этого сделать не могу, потому что мне нужна еще и котлиновая стдлиба, хотя в интерфейсах которые я имплеменчу котлиновые типы никак не фигурируют.
Аноним 05/09/20 Суб 23:02:01 1798389369
>>1798157
во-первых, ты можешь использовать kotlin.collections.MutableMap, чем тебе он не нравится?
а во-вторых, что тебе мешает написать интерфейс на джаве и спокойно использовать его в котлине?
Аноним 05/09/20 Суб 23:24:43 1798410370
>>1798389
> ты можешь использовать kotlin.collections.MutableMap
Он тянет зависимость от kotlin-stdlib, которая мне не нужна и вообще в проекте никак не используется.

> что тебе мешает написать интерфейс на джаве и спокойно использовать его в котлине?
Перечитай ещё раз. Я и пытаюсь в котлине написать реализацию интерфейса, определенного в джаве.
Аноним 06/09/20 Вск 10:17:20 1798515371
>>1798410
> Он тянет зависимость от kotlin-stdlib, которая мне не нужна и вообще в проекте никак не используется.
Зачем использовать язык без стдлибы? Пиши на джаве, зачем тебе котлин тогда вообще?
Аноним 06/09/20 Вск 12:30:54 1798602372
>>1798515
> Зачем использовать язык без стдлибы?
Вопрос был не "зачем", а "как"

> Пиши на джаве, зачем тебе котлин тогда вообще?
Эту фразу стоило написать прям на сайте котлина, чтобы люди не тратили время на это УГ
Аноним 06/09/20 Вск 16:51:48 1798771373
image.png 66Кб, 848x506
848x506
>>1798157
смоделировал эту ситуацию. действительно тупая хуйня, но ты долбоеб.
>Вопрос был не "зачем", а "как"
ты такой тупой чел, с такими пуками можно вообще что угодно говорить. пиши на питончике без стдлибы питончика, там же это наверняка можно, или нет? блять, точно. это же на любом языке невозможно, но ты, дебил, решил до этого доебаться=)
Аноним 06/09/20 Вск 17:13:37 1798801374
>>1798771
То есть в котлине
> тупая хуйня
но долбоеб при этом я. Нехило у тебя бомбануло видать, раз ты на личности перешел. Не стоит так привязываться к технологии, парень.
Аноним 06/09/20 Вск 17:30:05 1798831375
>>1798801
ты после слова долбоеб читать перестал? ладно извини бро не хотел задеть. двач меняет людей....
так что? как там на джаве пишется без джава стдлибы? может другой язык найдешь, в котором это возможно?
Аноним 06/09/20 Вск 18:12:22 1798882376
>>1798157
>>1798771
Это поведение вообще где-нибудь описано в доках? Выглядит настолько неестественно, будто это баг в котлине.
Аноним 06/09/20 Вск 18:42:13 1798918377
image.png 124Кб, 1627x1245
1627x1245
Аноним 06/09/20 Вск 18:45:47 1798921378
>>1798882
https://discuss.kotlinlang.org/t/a-hashmap-is-not-a-map/504/4
согласен, что выглядит всрато, только твой доеб еще более всратый. ты доебался не до странного поведения, а до невозможности написания кода без стдлибы, две разные вещи.
бтв я уверен что в жб не глупые люди сидят и с этого есть какие-то профиты. и в целом мне похуй на эту всратость, если бы мне нужно было реализовать джава-интерфейс, я бы использовал джаву.
Аноним 06/09/20 Вск 18:55:32 1798927379
Аноним 06/09/20 Вск 20:10:17 1798992380
>>1798921
> в жб не глупые люди сидят
То-то идея так тормозит и глючит ни дня без рестарта
Аноним 06/09/20 Вск 20:15:33 1798997381
>>1798992
Потому что написана на джаве вместо C++ или хотя бы шарпа.
Аноним 06/09/20 Вск 21:19:12 1799053382
>>1798997
>вместо C++ или хотя бы шарпа
кроссплатформу придумали для дураков, я так понимаю
Аноним 06/09/20 Вск 21:29:44 1799064383
>>1799053
Что ж, когда появилась IDEA, шарп кроссплатформенным не был да и сейчас там хуита, а не кроссплатформенность. Но уж на крестах-то можно было что-то придумать.
Аноним 07/09/20 Пнд 05:55:59 1799192384
>>1799064
Нет. Вон даже MS плюнули на свой Visual Studio и двигают Visual Code. Ибо кроссплатформенность. :-)
07/09/20 Пнд 07:06:13 1799205385
07/09/20 Пнд 12:44:25 1799407386
Аноним 07/09/20 Пнд 21:35:26 1799919387
>>1798882
В котлине все через жопу, пора бы это уже понять
Аноним 07/09/20 Пнд 22:37:09 1799980388
>>1799192
Очень толсто плюнули.
Аноним 07/09/20 Пнд 22:38:04 1799983389
>>1799919
Хочу через пизду, пора бы это уже понять
Аноним 08/09/20 Втр 21:53:52 1801129390
>>1799919
Если бомбит, то это хорошо
Аноним 12/09/20 Суб 15:03:33 1804396391
image.png 21Кб, 512x512
512x512
почему тред лучшего в мире языка программирования так непопулярен
Аноним 12/09/20 Суб 15:29:33 1804410392
Аноним 12/09/20 Суб 15:31:37 1804411393
>>1804396
Потому, что ДжетБрейнс говно
Аноним 12/09/20 Суб 15:44:08 1804424394
>>1804410
да. я его очень люблю.

>>1804411
причем тут разрабочик? ни слова про хуевость языка, но разработчик говно. чел ты?....
Аноним 12/09/20 Суб 16:24:26 1804445395
>>1804396
Тред джава господ популярен, о чем ты.
Аноним 13/09/20 Вск 12:01:58 1805067396
>>1804424
JB всю свою историю клепала IDE, в которых конечно есть своя сложность, но фактически это просто текстовый редактор + несколько матановых алгоритмов, чтобы гуй не так тормозил на IDE-специфичном функционале все равно тормозит.
А вот опыта разработки языков программирования у JB нет, как и специалистов по PLT или теории типов. Были пацаны из Nemerle, которые пилили какую-то меташтуку, но Котлин проектировали не они.
В итоге получилось то, что получилось - кривоватый сахар поверх жавы, в котором
val m: java.util.Map<String, Any> = java.util.HashMap<String, Any>()
не компилится.
Будем честны - если бы не форс со стороны гугла, эта поделка нахер бы никому не вперлась.
Аноним 13/09/20 Вск 14:10:03 1805161397
>>1804396
Потому что слой популистов-пиздунов еще не докатился до него. Точнее докатился, но в мобильном сегменте.
Просто матерые прогеры не пиздят о языках особо, не пишет в клиторре, они просто кодят.
Аноним 13/09/20 Вск 16:15:34 1805287398
>>1798918
И как из этого следует что
val m: java.util.Map<String, Any> = java.util.HashMap<String, Any>()
не должно компилиться?
Там же иерархия Map -> MutableMap -> HashMap
Аноним 13/09/20 Вск 18:50:03 1805453399
1
Аноним 14/09/20 Пнд 05:13:55 1805818400
>>1805067
Твоя проблема в том, что ты пытаешься бороться с языком, используя его на юз-кейзах, для которых он не предназначен, вместо того чтобы наслаждаться им, используя там, для чего он был задуман. В результате страдаешь сам, и исходишь на говно в этом ИТТ треде совершенно необоснованно, что не будет встречено пониманием среди местных ценителей.

В частности:
- ты пытаешься использовать тип java.util.Map. В котлине не нужно использовать этот тип. Он специально сделан неполноценным, чтобы настучать по пальцам таким долбоебам как ты. Вместо этого нужно использовать тип kotlin.collections.Map или MutableMap, который существует только в компайл-тайме, а на ран-тайме представлен старым добрым java.util.Map.
- ты пытаешься использовать язык без зависимости на стандартную библиотеку. Это обречено на фейл. Даже если ты чудом обойдешь стороной типы и функции оттуда, что уже сделает твой экспириенс работы с котлином весьма неприятным, компилятор все равно вставит обращения к этой библиотеке для компиляции языковых конструкций: корутины, рейнджи, callable references, да даже банальные автоматические проверки аргументов на налл в начале публичных методов и те требуют вызова интринсик-функции из рантайма.

Тебе необходимо принять, что для работы с котлином нужна стандартная библиотека, и дальше уже дейстовавать ситуации.
Но для этого нужно понять, что у тебя за ситуация? Почему ты всеми правдами и неправдами пытаешься избавиться от этой зависимости?
Аноним 14/09/20 Пнд 10:18:14 1805907401
>>1805067
Не просто абстрактную IDE, а в частности intellij idea - охуенно проработанную IDE для джавы, которую они улучшают своим языком
Ящетаю тут все закономерно, и нельзя сказать, что у jb нет компетенций для создания такого яп
И получилась у них конфетка по большому счету
>>1805818
Двачую
Аноним 14/09/20 Пнд 12:56:23 1806077402
>>1805287
выше пролистай. это действительно не компилируется.
Аноним 14/09/20 Пнд 12:59:06 1806079403
>>1805907
>Не просто абстрактную IDE, а в частности intellij idea
и не только идея, а еще куча ахуенных айдиишек, которые предоставляют фишки конкретно под язык. пытался недавно перейти на емакс для разработки на питончике, т.к. функционал ide мне не нужен, но оказалось так, что там столько ебли с настройкой того, что в любой intellij-based ide идет из коробки.
Аноним 14/09/20 Пнд 13:37:32 1806092404
>>1806077
Я в курсе и даже проверил. Меня объяснение интересует.
HashMap реализует и нормальную java.util.Map и котлиновскую Map, какого хере там ошибка приведения?
Из >>1798918 диаграммы это нихера не следует, да из мутных объяснений на жидбрейнсовском сайте - тоже.
Аноним 14/09/20 Пнд 14:49:54 1806142405
>>1806092
>какого хере там ошибка приведения
в ссылках все написано. так захотели дизайнеры языка. вот почему.
Аноним 14/09/20 Пнд 16:16:21 1806259406
>>1806142
>так захотели дизайнеры языка
Это нихуя не объяснение. У тебя или нормальный язык, где есть четкое обоснование почему это не валидный код, со ссылками на спецификацию языка.
Или смузи из говна для хипстоты - в этом случае, можно и сказать "так захотели дизайнеры языка".
Аноним 14/09/20 Пнд 16:21:32 1806268407
Аноним 14/09/20 Пнд 17:12:18 1806342408
>>1806259
abreslav
JetBrains Team
Aug '14
Some explanation is available here: http://blog.jetbrains.com/kotlin/2012/09/kotlin-m3-is-out/ 578

In short, Java’s Map is mutable, and in Kotlin we replace it with a pair of interfaces (read-only) Map and MutableMap to facilitate better type safety. If these extended Java’s Map, they’d have to be mutable as well.

Аноним 14/09/20 Пнд 20:19:39 1806533409
>>1806342
Да вот ничего это не объясняет.
Есть тип kotlin.Map, есть kotlin.MutableMap, есть java.util.Map и java.util.HashMap их все реализует. Причем первые два через магию компилятора, а не реализацию, а вот последний имплементит через декларацию, все как положено. Но почему-то приведение не работает. Причем не работает и для List и других коллекций.

val list: java.util.List<String> = java.util.Arrays.asList("abc", "def")
Тут он явно говорит, что asList() - возвращает MutableList и ниибет! Но это только для коллекций, для других типов все ОК.
val date: java.util.Date = java.sql.Timestamp(0)

Просто кое-кто увлекся своим йоба компилятором и забил на классическое наследование.
Аноним 14/09/20 Пнд 21:53:31 1806655410
Аноним 14/09/20 Пнд 21:54:47 1806656411
>>1805818
>>1806655
Вот только джава требует одну стдлибу, а котлин - две
Аноним 14/09/20 Пнд 22:06:49 1806665412
Не верю, вы гоните, не может котлин быть настолько днищем. Я не изучал его и всё думал, что это просто сахарок для джавы, а тут оказывается язык специально ограничивает программиста, проталкивая свою идеологию. Прям как отсутствие дженериков/эксепшенов в Go, типа сложно читать. Неужели и правда днище?..
Аноним 14/09/20 Пнд 22:44:59 1806715413
>>1806665
> ограничивает программиста, проталкивая свою идеологию.
Так делают все языки

Строго типизированные не позволяют сохранять в одной переменной разные типы

Джава заставляет обрабатывать чекед эксепшенс (хоть и признали что это был обсер)

Котлин запрещает использовать джавовую мапу т.к. разделил коллекции на мутабельные/иммутабельные

Он еще "ограничивает программиста" Заставляя на null все проверять, с этого у тебя жепа не горит случайно?
Аноним 14/09/20 Пнд 22:47:14 1806718414
>>1806715
> запрещает использовать джавовую мапу т.к. разделил коллекции на мутабельные/иммутабельные
Звучит как буллшит.
Разделил - ну ок.
Почему я не могу использовать джавовую мапу как мутабельную? Чем MutableMap безопаснее чем java.util.Map? Ничем, просто Бреславу так захотелось.
Аноним 14/09/20 Пнд 23:32:30 1806800415
>>1806656
Да хоть три, где ты видел чтобы проект на стд собирали? Без гредла или мавена никуда, а с ними там вопрос одной строки подключить любую зависимость.
Аноним 14/09/20 Пнд 23:33:53 1806802416
>>1806718
Шкальник, не траллируй дядей.
Аноним 14/09/20 Пнд 23:34:00 1806803417
>>1806800
У тебя синдром утёнка или Стокгольмский?
Аноним 15/09/20 Втр 00:13:10 1806852418
>>1806803
Причем тут с. утёнка? Что за тупо тралинг?
Аноним 15/09/20 Втр 00:26:57 1806866419
Котлин не создан чтобы победить всю несправедливость этого бренного мира, он всего лишь позволяет не писать в 2020 на топорной жабе, используя самую мощную и оптимизированную VM с развитой экосистемой той же жабы.

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

Когда код спасает от очередного гения, это достойный код. Для всего остального есть скала.
Аноним 15/09/20 Втр 08:42:58 1806994420
>>1806718
Потому что нужно чтобы мутабельная мапа наследовалась от иммутабельной

Мы не можем прописать в джавовой Java.util.Map новый супер-интерфейс, поэтому все равно бы имели дело с mapping types

А раз так, лучше сделать шаг в сторону явного определения мутабельности и иммутабедьности по-умолчанию, чтобы поощрять функциональный стиль.
Отсюда названия Map + MutableMap а не ImmutableMap + Map
Аноним 15/09/20 Втр 10:49:51 1807065421
>>1806994
> нужно чтобы мутабельная мапа наследовалась от иммутабельной
То есть метод ожидает, что ему дадут иммутабельную мапу, а пользователь подсунет мутабельную и сломает инварианты.
Либо ты сам не понимаешь как это работает, либо это совсем пиздец в дизайне языка.
Аноним 15/09/20 Втр 12:00:22 1807107422
>>1807065
> То есть метод ожидает, что ему дадут иммутабельную мапу, а пользователь подсунет мутабельную и сломает инварианты.
Че?
Не совсем понял в чем проблема

Метод принимает обычную иммутабельную мапу, это говорит о том, что он ее не будет изменять, все

Это же обычное проявление полиморфизма, что должно сломаться, если передать хоть сотый подкласс от типа, который метод ожидает?
Ты про канкарренси проблемы, что ли?
Аноним 15/09/20 Втр 14:19:43 1807196423
>>1807107
Ты верно объясняешь суть, но путаешь иммутабельные коллекции с рид-онли коллекциями. В котлине интерфейсы List, Set, Map - это именно рид-онли коллекции. Их можно читать и нельзя изменять через эти интерфейсы. Но это не запрещает фактической реализации быть изменяемой.

Их реализации могут быть как иммутабельными, т.е. не меняющимися ни при каких обстоятельствах, так и мутабельными, как стандартные MutableList/Set/Map.
Аноним 15/09/20 Втр 14:50:31 1807238424
>>1807196
Бля, да, обосрался

Вместо иммутабельная правильно будет рид-онли,
т.е. это просто интерфейсы, у одного есть условно только get, другой от него наследуется и добавляет set
Аноним 15/09/20 Втр 15:11:47 1807264425
>>1806715
>Джава заставляет обрабатывать чекед эксепшенс (хоть и признали что это был обсер)
Хватит постить этот булшит, ни Гослинг ни Гётц ничего такого не признавали. Эккель - да, писал что это была ошибка, но так он и не автор и не архитектор Явы.
Аноним 16/09/20 Срд 08:47:33 1807932426
Кто-то должен запилить очередной плагин для котлина, чтобы можно было выключить mapped types.
Аноним 17/09/20 Чтв 10:13:59 1808783427
123.png 58Кб, 894x573
894x573
Помогите пожалуйста, у меня как раз вопрос в тему. Я тупой неосилятор, который переписывает говнокод с python на котлин. Как исправить пикрелейтед?
17/09/20 Чтв 10:47:08 1808797428
>>1808783
Разобрался, но выглядит непривычно.
domains.forEach { hm[it] = hm.getOrDefault(it, 0) + 1 }
Аноним 17/09/20 Чтв 12:42:11 1808903429
>>1808783
Там же все написано. Оператор [] возвращает нуллабистый тип что как бы логично, если твоего домена там нет еще. к нему не может быть применим оператор +=.
Аноним 17/09/20 Чтв 12:44:39 1808906430
>>1808797
Выглядит как раз лучше, ты убрал ветвление с кривым форматирование и сократил до строки.
Аноним 17/09/20 Чтв 17:06:05 1809146431
А че так сложна то

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


Аноним 17/09/20 Чтв 17:17:04 1809164432
>>1809146
В этом и суть питона, что он вызывает размягчение мозга при чрезмерном употреблении. Надо иногда разбавлять хотя бы крестами.
Аноним 17/09/20 Чтв 21:11:14 1809382433
Head First хорошая книжка по котлину?
Аноним 17/09/20 Чтв 21:56:27 1809412434
>>1809146
В питоне тоже как только выйдешь за пределы стандартной либы начинаются абстракции над абстракцией и слои над слоями, только без типов это превращается в ад.

Тут просто издержка с нуллабистыми типами, красота кода местами страдает.
Аноним 18/09/20 Птн 16:12:59 1810000435
>>1809382
Нет.
ИМХО интереснее "Волшебство Kotlin"
Аноним 18/09/20 Птн 19:00:12 1810187436
>>1810000
А если с Java совсем незнаком?
Аноним 18/09/20 Птн 19:06:54 1810196437
>>1810187
Тогда сначала Head First Java.
Аноним 18/09/20 Птн 22:35:38 1810313438
Котлин создавался чтобы отсталые джава макаки смогли пощупать технологии чуть новее 2003 года. Но он по сути не оправдал ничьих ожиданий и скоропостижно скончался ещё раньше чем жаба.
Аноним 18/09/20 Птн 22:37:26 1810315439
>>1810313
Невнимательно методичку читаешь, ты забыл слова "легаси" и "кобол".
Аноним 19/09/20 Суб 00:11:59 1810369440
>>1810187
Читал Head First Kotlin. Скучно.
Т.е. если вообще ни на одном ЯП не программировал, то может быть и можно по ней поучиться.
Но "Волшебство Kotlin" интереснее.
Для её чтения знать Java не обязательно.
Аноним 19/09/20 Суб 05:47:22 1810498441
>>1810313
ох, эта попаболь шарписта.
Аноним 19/09/20 Суб 10:46:15 1810625442
Аноним 20/09/20 Вск 07:11:52 1811328443
Есть шанс сейчас полностью выбрать один из двух стеков java (+kotlin) или C# (.Net Core)
Я совершенно не ньюфаня, просто предоставляется возможность полностью погрузиться в одну из платформ, но внятной и глубокой информации по этому выбору нет (везде что-то поверхностное).
Есть у кого интересные мысли по поводу той или иной технологии, любое мнение будет полезно.
Аноним 20/09/20 Вск 08:49:24 1811340444
>>1811328
По большому счету оба стека одинаковые.
Так что выбор только в деньгах.
Если все равно идите туда, где сейчас вам платят больше. :-)
Аноним 20/09/20 Вск 09:23:25 1811353445
>>1811340
Платят одинаково, в том же месте.
Аноним 20/09/20 Вск 11:51:14 1811398446
>>1811353
Тогда выбираете по принципу "нравиться/не нравиться" чисто субъективно. На крайний случай монетку подбросьте.

Лично мне больше нравиться Koltin чем C#.
Но вам может быть больше понравиться C#.

<:o)
Аноним 20/09/20 Вск 17:50:01 1811685447
>>1811398
Котлин, конечно, синтаксис получше. Но так вот тоже выбрать нравится не нравится, сложно.
Есть ли у котлина будущее в бэкенде?
Аноним 20/09/20 Вск 19:02:00 1811751448
>>1811685
ИМХО. Ну если JetBrains не забросит Котлин, то скорее всего будет.
Аноним 20/09/20 Вск 19:16:33 1811777449
>>1811685
> Есть ли у котлина будущее в бэкенде?
Кто-то уже пишет. Но наверняка будет где-то на уровне скалы, даже джавовские фреймворки стараются не юзать и велосипедят всякие ktor'ы.
Аноним 20/09/20 Вск 19:22:00 1811787450
>>1811777
Не сказал бы. Почти все Java-вовские фреймворки работают с Kotlin без проблем.
Spring, Hibernate - точно.
А Gradle потихоньку на Kotlin переходит. :-)
Аноним 20/09/20 Вск 19:44:51 1811816451
>>1811787
>А Gradle потихоньку на Kotlin переходит.
Долго что-то переходит.
Аноним 20/09/20 Вск 19:50:15 1811825452
>>1811816
Да. Норм вроде. На initializr при создании проекта, если выбрать gradle и kotlin. Gradle на kotlin.
Аноним 20/09/20 Вск 19:50:43 1811826453
Аноним 20/09/20 Вск 20:02:54 1811841454
Может быть так что у шарпа будет более продуманные решения из-за вендор лока? Ну например градл, уж если признаться, это чистой воды звездец.
Аноним 20/09/20 Вск 20:08:00 1811849455
>>1811841
У MS продуманные решения?!
Хорошая шутка.
А так, не нравиться gradle - есть maven, sbt, ant(для изварщенцев) :-)
Аноним 20/09/20 Вск 20:15:24 1811863456
>>1811849
Maven вообще жесть. Вечно надо теребить стековерфлоу, чтобы сделать то, что ты кодом сделал бы в пару десяток строк.
Аноним 20/09/20 Вск 21:18:51 1811919457
Аноним 20/09/20 Вск 21:49:04 1811957458
>>1811340
Добавлю лишь что когда программируешь на C# то нужно думать, жависты тупо не осилят его.
Аноним 20/09/20 Вск 21:52:18 1811965459
>>1811957
Ну да, лучше бороться с языком, чем пилить бизнес-фичи.
Аноним 20/09/20 Вск 23:03:42 1812045460
>>1811957
Что там думать то, родственные языки почти, акромя синтаксиса?
Аноним 21/09/20 Пнд 12:54:10 1812395461
>>1811863
Зачем?!
Максимум что нужно, это добавление зависимостей.
Не ну, если есть еще извращенцы с кодогенерацией для web-сервисов. Но они вроде бы как не в моде.
Аноним 21/09/20 Пнд 13:08:51 1812408462
>>1812395
> с кодогенерацией для web-сервисов
Да и это одним плагином делается, настроил один раз и забыл.
Аноним 21/09/20 Пнд 13:44:56 1812453463
>>1811841
То ли дело MSBuild, ANT+IVY, но от майков.
Аноним 21/09/20 Пнд 20:27:37 1812842464
>>1812395
>Зачем?!
Нужно что-то собрать в релиз папку, что-то копировать и т.д.
Аноним 21/09/20 Пнд 20:31:38 1812845465
>>1812453
Я так и не понял как в ебанном градле подключить два независимых проекта, можно какие-то огрызки из сабпроектов делать (зачем, хз). Причем IDE делает по своему, градл по своему. Очень весело.
Аноним 22/09/20 Втр 05:07:52 1813036466
>>1812842
Э-э-э Вообще то все что в src/main/resources автоматически собирается. А внутри resources можно хоть какие папки делать.
Аноним 22/09/20 Втр 05:08:41 1813039467
>>1812845
А в чем проблема подключить один проект к другому через зависимости?!
Аноним 22/09/20 Втр 07:08:30 1813061468
>>1813036
Совать веб статику в ресурсы, такое себе. ибо надо этим кормить nginx
Аноним 22/09/20 Втр 07:13:30 1813062469
>>1813039
Нельзя делать два проекта одновременно.
Придется дернуть и собрать в maven jar-ник один проект и после этого только запустить второй.

А теперь представь что у тебя таких проектов и модулей штук 15.

В нормальном мире, градл бы мог собирать один независимый проект, потом магически подключать к другому и так далее. Но в реале тебя сразу пошлют нахер на ошибки типа - два плагина котлина подключить нельзя или прочее ошибки.
Аноним 22/09/20 Втр 07:59:20 1813073470
>>1813061
Причем тут ngnix?
В rosurces хранятся ресурсы.
Аноним 22/09/20 Втр 08:02:45 1813074471
>>1813062
Насчет многомодульных проектов в gradle я не знаю.
В maven это делается просто.
Создается проект типа pom, в котором перечисляются все нужные проекты в виде модулей.
Постоянно с такими проектами работаю.
Аноним 22/09/20 Втр 11:02:29 1813081472
Отношусь к котлину нормально, раньше было впечатление, что его второпях клепали студенты, "вдохновляясь", так сказать, всем чем можно из других языков. Потом мнение немного поменялось на нейтральное и даже позже на положительное, просто потому, что уж лучше котлин чем на старой жабе что-то ковырять. И вот спустя время, наслушавшись всяких интервью, у меня снова в голове переобулись мысли и создалось впечатление о малоопытном Бреславе (в свое время) и как он собирал свою команду студентов...

Другое, что меня сильно напугало, это, условно, юношеский максимализм и попытка захватить все платформы. Парни около 5 лет релизили прокси язык и тут же замахнулись на все что можно.
Аноним 22/09/20 Втр 12:14:24 1813129473
Аноним 23/09/20 Срд 03:43:49 1813773474
>>1813129
В джаве, походу, плохо понимают что такое модули.
Проблема в том что модуль 1 полностью независимый, и ничего не знает про внешний мир, модуль 2, в свою очередь, может подключить модуль 1, при этом не внося никаких изменений в модуль 1

И казалось бы, ну сделай модуль 1 подпроектом для 2? Да? Но блин модуль 1 он же модуль и его возможно захочет проект 3,4,5...
Аноним 23/09/20 Срд 03:47:02 1813775475
>>1813129
Другими словами, подпроекты это не модули. Это просто дробленный монолит.
Аноним 23/09/20 Срд 10:11:02 1813897476
>>1813773
А при чем тут модули?
Когда есть maven repository?!
Нужен модуль, который может работать в куче проектов.
Загоняете его в мавен репозиторий.
Заодно получаете разбивку по версиям.
Чтобы модули 3, 4, 5 в зависимости от использовали свою версию модуля 1.
Аноним 23/09/20 Срд 11:04:29 1813928477
Я считаю, что мутабельные и иммутабельные структуры данных должны образовывать свои независимые друг от друга иерархии.
Аноним 23/09/20 Срд 13:10:23 1814059478
Аноним 23/09/20 Срд 13:20:44 1814069479
>>1813773
>>1813775
Чел, у тебя или полная каша в голове или проблемы с выражением своих мыслей.

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

Если проекты независимые, то никаких
>его возможно захочет проект 3,4,5...
быть не может. Иначе они уже зависимые. Если зависимые, можно или на уровне зависимостей на проекта project(":lib") или бинарно, через публикацию атефактов в мавен репозиторий.
Аноним 23/09/20 Срд 13:21:04 1814070480
я считаю что жависты сосут хуй
Аноним 23/09/20 Срд 22:50:47 1814609481
>>1813897
Ничто не мешало бы гредлу собрать проект 1 и потом его подключить к проекту 2, да? При этом не обосраться в подключаемых плагинах.
Не так уж и сложно для системы с документацией в целую книгу.
Аноним 23/09/20 Срд 22:53:26 1814611482
>>1813928
Я считаю что мутабельные, не мутабельные типы засоряют язык программирование.

Как и нуллабельные типы. Бороться с нуллом надо, но делать для этого отдельный "зеркальный" тип, неудачное решение.
Аноним 23/09/20 Срд 23:13:39 1814629483
>>1814070
Есть такое же мнение.
Неожиданно, пакетный менеджер не должен быть "не интуитивной" йобой в томник Война и Мир.


Аноним 23/09/20 Срд 23:17:24 1814631484
>>1814629
Какой код - такая и документация.
Аноним 23/09/20 Срд 23:38:06 1814637485
Мне иногда как-то жалко вот это жабо-подобный мир, они даже и не знают, что многие вещи которые они делают, можно делать кратно (реально кратно) проще.
Аноним 23/09/20 Срд 23:47:18 1814641486
>>1814637
Не столько не знают, сколько привыкли оверинжинирить. Видел скрипты на питоне, написанные сеньором джавистом, так там километровые портянки кода, обёртки над обёртками в 10 слоёв и идентификаторы по 30 символов, в лучших традициях жабы.
Аноним 24/09/20 Чтв 01:48:00 1814708487
image.png 76Кб, 1147x721
1147x721
Дарт и котлин целуются
Аноним 24/09/20 Чтв 07:07:04 1814772488
>>1814708
ты такой милый, я тебя поцелую.
Аноним 25/09/20 Птн 05:37:44 1815612489
>>1814708
Го подглядывает, а раст всех игнорит.
Аноним 25/09/20 Птн 09:44:51 1815673490
>>1814708
Говно съело мочу, классика двача.
Аноним 26/09/20 Суб 16:25:45 1816830491
image.png 30Кб, 741x397
741x397
Котлинач, вот тебе статистика постинга в котлин-тредах, хотя тредов пока было только три.
Аноним 26/09/20 Суб 22:25:26 1817038492
>>1816830
Надеюсь скрипт на котлине эту диаграмку строит?
Аноним 26/09/20 Суб 23:05:36 1817044493
>>1817038
Нет, не котлин, он слишком сложный для написания скриптов вопреки тому, что здесь говорят.
Впрочем, изначально и скрипта никакого не было, всё руками в виме и экселе делал, это уже потом.
Аноним 27/09/20 Вск 00:14:16 1817082494
>>1817044
Мимикрок.

На мой взгляд котлин удобнее питона, в плане короткописания, если освоить и применять все его нюансы.
Из недостатков, конечно, хотелось бы какой-то интерпритатор (но со статик типами это бестолково), и такие тулзы как gradle или избыточные некоторые либы джавы, портят вкат людям, даже владеющими языками.
А, ну еще просраны короткие записи листов [], мап {k:v}.
Просто та лямбд, вроде с одной стороны круто, но с другой каждый выпук пишут на лямбдах. А чем плохи лямбды? В отличие от методов, которые понимаешь по названиями и описанию, лямбды это чистые кишки кода, в которые надо каждый раз погружаться.
Аноним 27/09/20 Вск 00:59:53 1817101495
>>1817082
На мой взгляд питон удобнее (именно для мелкоскриптов, которые лень долго писать), и дело не столько в синтаксических фичах, сколько во времени, которое пройдёт до получения результата. На питоне открыл терминал, запустил вим, написал 10 строчек, сохранил, запустил, по необходимости что-то доустановив и нащупав с помощью dir() и help() нужные функции/методы. А на котлине пока запустишь IDE и создашь проект, пока укажешь все зависимости в помнике или build.gradle, уже и забудешь, зачем всё это затеял.
Аноним 27/09/20 Вск 06:22:34 1817158496
>>1817101
Использовал одну IDE для котлина и для питона. В край я js в vs code запускал, для юзер-скриптов в браузере, это прям одномоментные почти однострочные скрипты. А вот гуманитарные программисты самоутверждающиеся за счет вима, это вообще отдельная тема, даже не хочу это трогать, уже не 2007 год, хватит этим страдать.

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

С питоном вообще беда, пока ты в стандартной библиотеке все хорошо, но как только подтащил зависимость начинает пляс с этим requirement.txt, приходилось инсталятор небольшой писать, чтобы у знакомого запустился код, без страданий. Скрипт для скрипта, это предел моих впечатлений, даже в js грамотнее сделали, хотя node.js тот еще кусок говна.
Аноним 27/09/20 Вск 06:29:36 1817160497
>>1817158
Пора уже признать, что питон это натянутая сова убого дизайна, на глобус реальности. Не все там гладко, как хотелось бы, убогость дизайна и тонна отсебятины в api каждый блядский раз приходится гуглить какие-то моменты, потому что соизволили сделать именно так, а не как у всех. Собственно, эта херня ставит крест на языке, как об карманном инструменте.
Ну и динамико-дрисня, опечатался в одну букву - "веселой тебе отладки, мудила".
Аноним 27/09/20 Вск 12:05:50 1817235498
>>1817160
а разобраться в устройстве питона нельзя было? вот просто основы понять и все.
в итоге там основы + модули и все.
шикарнейший скриптовый язык

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

>>1817158
>пляс с этим requirement.txt
Если очень не хотелось чтобы конечный пользователь ставил сам модули, ну так положи их рядом и все.
А еще вообще всю утилиту можно в зип упаковать.
И при желании вообще мог бы распространять как пакет и при его установке зависимости бы подтянулись

в общем все как обычно - выбирай любой из вариантов.

Аноним 27/09/20 Вск 12:53:24 1817271499
>>1817235
Пытался вникнуть в это все, понял что какие-то костыли поверх костылей и тупо переписал на шарфик, юзеру даже не пришлось ставить никаких йоба типа интерпретатора или виртуальной машины.
Но что касается котлина, то там тоже просто, юзер клацает на jar как на exe и все работает (винда так умеет)
Аноним 27/09/20 Вск 13:01:41 1817278500
>>1817271
>юзер клацает на jar как на exe и все работает (винда так умеет)
иии... ничего на винде не произойдет ибо жава по умолчанию не установлена. А если установлена то можно клацать на jar, а если установлен питон, то можно на py

>Пытался вникнуть в это все, понял что какие-то костыли поверх костылей
значит не пытался. там самый обычный подход с менеджером пакетов. Такое везде. Подходы одинаковые, проблемы одинаковые.
просто в динамических языках менее привычно делать портабельные вещи, но нет никаких проблем их сделать. Принцип их работы такой же как и везде - нужные либы просто лежат рядом
Аноним 27/09/20 Вск 13:16:23 1817291501
>>1817278
>менее привычно делать портабельные вещи
JS просто скопировать папку, в PHP тоже самое, если ничего не поменяли. Так что это в питоне менее привычно делать портабельные вещи.
Аноним 27/09/20 Вск 13:19:58 1817293502
>>1817291
в пхп стандартный путь как и в руби делать виртуальное окружение. Это и есть привычно.
но никто не запрещает класть пакеты рядом
и вообще все в один исполняемый зип упаковать.
ну py2exe само собой
Аноним 27/09/20 Вск 13:29:54 1817305503
>>1817293
>py2exe
Да костыль же. Как всегда работает в маня фантазиях, а в реале баг на баге, багом погоняет.
Аноним 27/09/20 Вск 13:37:39 1817312504
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов