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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
image.png833 Кб, 3156x3156
Kotlin #1 /kotlin/ 1445837 В конец треда | Веб
Вкатываемся в лучший язык современности на превосходной отточенной jvm

>Что имеем:


У нас есть лучший синтаксис для джавы, немного ФП, корутины с асинхронщиной и прагматичный синтаксис.
Так же котлин очень популярен в мобильной разработки под андроид и с последнего временно является там как рекомендуемый язык джава соснула, но мы её все равно любим.
Еще параллельно пиляться kotlin-js (котлин для javascript) и kotlin-native (компилируемый в нативный код котлин).

>Хайпуют:


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

>Важно


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

>IDE - среда разработки.


Бесплатная community editon - обычно более чем достаточно, но можете попробовать триал-версию.
https://www.jetbrains.com/idea/download/

>Производительность.


Не забываем, что java самая производительная в связки с работы с базой (что является 99% тормозов для веб приложения), а значит котлин тоже так же шустр. Пруф:
https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=query
Ну и даже в холастую есть асинхронные платформы, позволяющие писать код такой же быстрый как Rust или C++ Автор не любит мазахизм и поэтому не рекомендует раст и с++ для веба

>Официальный сайт и там же чтиво


https://kotlinlang.org/docs/reference/

>Что тоже читать на русском:


https://kotlinlang.ru/

>Видосы-уроки на русском (относительно приемлемого качества)


https://www.youtube.com/watch?v=-H98SWHayL4&list=PLlb7e2G7aSpRWQNlOIhvCV9aquTH-Y0eU
https://www.youtube.com/watch?v=L9k_NdTaMeI&list=PLIU76b8Cjem4ZOt3tlWykUX1AjL9zE19t
https://www.youtube.com/watch?v=3sW6Y6gPCUQ&list=PLkMykHMYBtQxYyQ2Eg-QSKzDbpC4t1vyy

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



>Окружение (либы/фреймы):


https://kotlin.link/
Этот сайт является представлением классического "awesome kotlin" и доступен по классике на гитхабе
https://github.com/KotlinBy/awesome-kotlin
Помним, что все съедобное для джавы, подходит и для котлин

>Чаты в телеге (не дохлые):


https://kotlinby.github.io/kotlin-telegram/
2 1445857
>>45837 (OP)

>когда выучил котлин, но не выучил русский

image.png867 Кб, 817x745
3 1445948
>>45857

>сидит на двачах


>придирается к орфографии

4 1445949
Убедите выучить котлин

Голанг-господин
5 1445987
>>45949
-Есть те же корутины, но ты сам управляешь в какой пул потоков кидать, то есть все гибко и костамизировано.
Часто возникают задачи когда надо дробить кучу медиа-файлов, даже те же картинки и круто было бы это скинуть отдельно в системный поток, чтобы не ронять асинхронщину. То есть, асинхронность всего и вся, она имеет подводные камни, лучше когда оба инструмента есть

-Хороший драйвер к бд, очень быстрая скорость.

-Сама JVM, точнее JIT допилен до блеска. влито тонна зеленых и человеко-часов.

-Вроде бы уже завезли GC подобный как у го (не в курсе, меня дефолтное устраивает, шустро).

-Исключения, как бы там не верещали, но в любом app нужно пробрасывать ошибки, порой до потолка. В любом случае if err != nil портят рабочий код, бойлерплейт же.

-Лол, дженерики

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

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

-ООП и ФП парадигма, что может быть лучше.

-С работой го у меня сложились впечатления что либы пишут студенты. Все как-то "на отъ..бись" как-будто торопились.

-Субъективно, если не копаться в мусорках опенсорса - либы у джавы на порядок качественней. То что копируют и открывают для себя в js там уже давно де-факто стандарт.

-Нормальный пакетный менеджер (гредл).

Может еще что вспомню...
5 1445987
>>45949
-Есть те же корутины, но ты сам управляешь в какой пул потоков кидать, то есть все гибко и костамизировано.
Часто возникают задачи когда надо дробить кучу медиа-файлов, даже те же картинки и круто было бы это скинуть отдельно в системный поток, чтобы не ронять асинхронщину. То есть, асинхронность всего и вся, она имеет подводные камни, лучше когда оба инструмента есть

-Хороший драйвер к бд, очень быстрая скорость.

-Сама JVM, точнее JIT допилен до блеска. влито тонна зеленых и человеко-часов.

-Вроде бы уже завезли GC подобный как у го (не в курсе, меня дефолтное устраивает, шустро).

-Исключения, как бы там не верещали, но в любом app нужно пробрасывать ошибки, порой до потолка. В любом случае if err != nil портят рабочий код, бойлерплейт же.

-Лол, дженерики

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

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

-ООП и ФП парадигма, что может быть лучше.

-С работой го у меня сложились впечатления что либы пишут студенты. Все как-то "на отъ..бись" как-будто торопились.

-Субъективно, если не копаться в мусорках опенсорса - либы у джавы на порядок качественней. То что копируют и открывают для себя в js там уже давно де-факто стандарт.

-Нормальный пакетный менеджер (гредл).

Может еще что вспомню...
6 1445999
>>45987
Под хорошими либами, я еще понимаю хорошую документацию на популярные решения. Причем это не как в пхп, "вот тебе красивая строчка, а дальше сам трахайся с исходниками".
7 1446010
>>45987

>завезли GC подобный как у го


Взлольнул в голосину со школьника.
8 1446015
>>46010
Когда хочется по-троллить, но мозгов хватает только на выпук о возрасте или о орфографии.
Ты печалишь меня анон, в го треде и то матёрее тролли.
9 1446036
>>45837 (OP)

>Сама JVM, точнее JIT допилен до блеска. влито тонна зеленых и человеко-часов.


JVM будет родная оракловская в двух случаях: А - ынытпрайз и Б - если того захочет Гугл в случае Андроида.

А так получился очередной нишевой экспериментальный jvm язык вслед за Груви и Скалой. Олды по старинке будут писать на Яве, а фрики отправятся в свой загончик, дабы не портить своим помётом воздух окружающим.
10 1446073
>>46036
При условия интеропа с джавой, любые кто пишут на джаве, автоматически пишут и на котлине.
Проблем тут нет, чувак. А вот писать на "джаве" с комфортом, это плюс - однозначно по крайней мере теперь можно не пускать слюну глядя на шарп
11 1446075
>>46073

>любые кто пишут на джаве, автоматически пишут и на котлине.


Интересный у тебя логические цепочки. Наоборот
12 1446105
>>46075
Удивительный мир, да?
13 1446111
>>45948
На чанах всегда старались грамотно писать.
14 1446159
>>46111
Особенно в эпоху албанского.
Мне люто насрать, пока я понимаю собеседника. Главное мысль, а не твой дроч на буковки с нелогичными правилами языка
16 1446319
>>45837 (OP)
бамп, был небольшой опыт джава разработки, прошел курс быстренький котлина и реально некоторые вещи удобнее делать, сладко шо пиздец, но с другой стороны если ты быдло типа меня то будешь постоянно охуевать с лишних зависимостей градла скажем
image.png14 Кб, 599x67
17 1446320
Пиздец, андройд тред весь день не могут запилить, ахуеть. Как мне в эту парашу запихнуть анонимный класс? 3 часа ебусь перехожу на котлин с жабы
image.png93 Кб, 1209x729
18 1446339
>>46320
"Анонимные внутренние классы"
https://kotlinlang.ru/docs/reference/nested-classes.html
19 1446340
>>45857

>когда выучил котлин, но не выучил русский


Пока ты учил русский, он выучил котлин, маладца
20 1446342
>>46319

>лишних зависимостей градла скажем


Не понял, типа импортов? Они же автоматические и если надо скрываемые
Сложные задачи всегда обрастают сложными решениями, даже в динамико-дрисне но там иногда придется ручками импорты проклацивать
21 1446890
>>45949

>Убедите выучить котлин


Гляди как удобно и красиво, нафиг говно
22 1447111
>>46342
Да, я хуёво написал имел в виду стандартные, которые появляются при генерации проекта. Импорты всякие плагины, и так далее, еще и вдобавок теперь по дефолту они .kts
image.png845 Кб, 839x839
23 1447292
>>47111
Проблема в том что градл сразу и пакетный менеджер и система сборки (кто-то может сказать и деплоя).
По началу правда нужно только пакеты подключать отключать, но со временем когда начнешь релизить, нужно будет какая-то система сборки.

Что касается того, что стандартная библиотека джавы и котлина тонкая и многое придется тащить из вне - это одновременно и хорошо и плохо (хорошо что стандартная библиотека не тянет говна, которое тебе, может, уже и не нужно).
Например у до 9 версии таскали никому не нужный веб сервер. Нечто подобное стало и с го, стандартное решение уже смотрится сомнительно, когда есть такие производительные как fasthttp
24 1447721
>>47292
Я понимаю, что это крутое средство, но как большинство крутых средств имеет какой никакой порог вхождения. Может подскажешь мне где вообще можно нормальную инфу про градл посмотреть (кроме оффициальных доков, разумеется). Кукбук может какой или типа того. А то каждый раз как умственно отсталый пытаюсь вспомнить что писать implementation или api
image.png7 Кб, 433x122
25 1447780
>>47721
Да просто погугли, наверняка на каком-то хабре высрали давно.
Он приоритетный в мобилках, а там же много детей, по-любому статьи на ру-яз есть.

А так любой редактор типа Intellij Idea автоматом добавляет все это. Просто создай проект с градлем и все.

Из всех атрибутов тебе нужно будет только зависимости, если захочешь чтобы просто автоматом скалось что-то
dependencies{ ... } // Зависимости.

По началу тебе гредлом собирать ничего не нужно будет. Для запуска, берешь около main функции и жмешь на зеленый ромбик типа "play" (см картинку) и так и работаешь, учишь.

Вот простейший гредл-скрипт (я давно уже бухой, могут быть ошибки)
https://pastebin.com/X0czwg1s
26 1447819
>>47780
Спасибо, и про крутую интеграцию справа знаю, всегда через таски вот эти как раз и собираю, так как у меня была ситуация, когда с помощью кнопки билд некоторые таски сборки, линтовщик например, не подтягивались. Я в итоге вычитал, что при нажатии на кнопку работает какой то встроенный в идею gradle ToolBox он там дохуя хитрый и так далее. Просто такой простейший градл скрипт и я могу в принципе написать без проблем, а вот когда начнется какая то залупа с кастомными сборками и прогонами тестов через градл таски я хуй знает, гуглю как могу. Добра тебе, хорошо выпить.
27 1447822
>>45837 (OP)
базара нет пиздатый езык жаль что следующая версия езыка прогромирования джява сделает его абсолютно ненужным т.к. котлен это джява с чуть более лучшим синтаксисом
28 1447865
Правильно ли я понимаю, что Фуксия (новая версия андроида) основным языком для приложений выбрала Swift, а значит Kotlin не нужен?
30 1447930
>>47819
А ну тогда доку читай. В любом случае тебе надо понять основную концепцию и просто посмотреть какие фичи и вообще что куда.
Это лучше чем об стену биться и пытаться методом тыка изучить слишком сложные системы, метод тыка тут уже не работает
31 1447932
>>47822
К сожалению этого никогда не случиться, будут какие-то недо-сахарки, по типу лямб или недо-var.
Слишком многое на кану и слишком уже жестко задизайнен язык, чтобы сделать что-то с размахом.

В любом случае многие улучшения будут напрямую добавлять возможности в байт-код. А это даст много пиши для jvm языков. Они всегда будут на голову дальше просто, потому что это их стезя
32 1447933
>>47866
Kotlin-native
33 1447935
>>47866
Ничего не понял. На чём будут программы в гугл плее? Rust? Dart? Python? Go? Ни Джавы ни Котлина ни Свифта
34 1447938
>>47866
Почему был когда-то выбрана джава? Просто потому что это самый популярный язык и на нем миллионы разработчиков.

Я не знаю будет ли фуксия, но я точно знаю что они не будут терять легион текущих разработчиков.

Я бы переживал за судьбу го и дарта, гугл любит закрывать свои проекты, но точно не переживал за котлин, который стал основным языком для андроид и это не голословные слова, это факт
35 1447947
>>47932
Именно, JVM выросла из джавы, динозаврам ынтерпрайза все это нахуй ненужно им и на 6 норм.
image.png67 Кб, 500x500
36 1447959
>>47947
Нет, просто ты озлобленный школьник, который не осилил что-то и теперь компенсируешь все свои проблемы в ИТ-тредах.
Мы тебя еще с php-треда помним, невротика сразу видно.

>JVM выросла из джавы,


Лолец ходячий
37 1447961
>>47959
Даунич даже не различает разных людей.
image.png327 Кб, 700x700
38 1447976
>>47961
Различать людей на анонимном форуме это уже сверхспособность, ты же тупо паттерн озлобленного подростка (или взрослого который еще не перерос максимализм), поэтому значения не имеет кто ты, ты одно и тоже из тысяч.
39 1447989
>>47930
Да вот вкуриваю потихонечку. Спасибо еще раз. Сам чем занимаешься?
40 1448000
>>47989
Играюсь с котлином, переписываю с динамики и го некоторые веб проекты.
41 1448004
>>48000
И как тебе го?
42 1448007
>>47947

> JVM выросла из джавы


Да ладно? Спасибо, Капитан!
43 1448008
>>48004
Хуже говна.
44 1448010
>>48008
Бля, Храни тебя Господь
45 1448015
>>48004
Не очень, странный, юзал только ради горутин и в небольших мелких сервисах, поэтому легко переписать сейчас.
image.png87 Кб, 819x512
46 1448020
>>48015
>>48004

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

На крайняк есть async/await во всех других языках, юзать го, я лично считаю, не умеет смысла.
Ну и он уступает по производительности прогретой jvm

На картинке "стрелки с волной" в IDE показываются где функции/методы "асинхронные"
47 1448021
>>48020
И да, что важно, в котлине можешь контролировать где запускать корутины, в том числе в своем пуле потоков.
48 1448060
>>48020
Сильно, смотрел чутка Бреслава про то как он рассказывал что зачем и как они пилили и понял что плохо знаю матчасть. Ну тип смысл лезть в корутины если сам плох во многопоточности так как не было опыта, чутка читал конкаренси ин практис, ну писал threadpoolexecuter, но бля я считаю что преждем чем осваивать нечто крутое нужно поковыряться в древнем. а вы как и что думаете про project loom, если слышали?
49 1448089
>>48060
Они на конференциях зачем-то про кишки рассказывают, от чего вообще не понятно что такое корутина и какие нахер контюэшены... Но в реале там безумно просто.
Небольшой гайд на английском рассказывает именно что нужно
https://kotlinlang.org/docs/reference/coroutines/coroutines-guide.html
Там же есть пункт про Shared mutable state and concurrency, это в случае как раз параллелизма, то есть избегание гонок для shared данных (потому что корутина это не всегда параллелизм, так как если крутятся в одном только потоке, то будут последовательны, но быстры, кон).

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

>project loom, если слышали?


Там 100500 решений зеленых потоков, даже джава была изначально на них. В реале, коротины могут тебе даже не нужны.
Они нужны когда железу надо пережить больше 1000, 10.000, 100.000 запросов в секунду.
А теперь возьмем сайт с котиками,в среднем с котиками и текстом он отдает на запрос 100 кбайт. Берем 100мбитный канал и получаем ширину в 12,5 мбайт в секунду. А значит канал будет забить при ~125 запроса в секунду. О каких тут 10К или 100К можно говорить.
50 1448094
>>48089
Но со случаем корутин, круто когда от твоего сервера выжимается максимум (а значит где-то даже экономия по железу).

Причем все это не запутано (в отличие от реактивного или калбэков или промисов) и легко сопровождаемо на статически типизированном языке, с удобным синтаксисом не уступающим динамик языках и поистине качественных либах если страдал на php, js... то поймешь
51 1448095
>>48089
Ебать я вот уже день пишу сюда и удивляюсь, с каких пор на двач стали подвозить адекватных людей, за референс спасибо, он у меня вроде даже где-то сохранен был
52 1448198
>>47935
>>47865

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


> Fuchsia is designed to support a wide variety of languages. This directory contains documentation about how to bring a new language to Fuchsia.


> и позволяет добавить поддержку других языков https://fuchsia.dev/fuchsia-src/development/languages/new/structure.md

image.png1,8 Мб, 1920x1080
53 1448211
>>48198
Конечно, гугл выбрал в свое время джаву не потому что уже были мобильные разработчики и она была одним из популярных языков. И конечно он, он сделают такую ОС в которой все новые разработчики останутся в луже, подумаешь.
И именно поэтому он сделал котлин приоритетным языком и часть сотрудников вступили в организованный фонд котлина.

Я бы переживал за дарт и го, серьезно.
Да и никто не слышал про котлин-нейтив
54 1448216
>>48211
Как в свое время "пришел бизнес" и сказал - оставьте js, не суйте нам этот дарт. Так будет и здесь.
Флюгер поворачивают дяди из большого бизнеса, а не какие-то программисты запомни этот тезис
55 1448225
>>48216

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


В таком случае кобол не скатился бы до сегодняшнего состояния.
56 1448230
>>48225
Они же его и убили. Основной поворот флюгера сделал именно бизнес и будет делать всегда, никто не говорил что они на инструмент и возможности не смотрят

Посмотри с точки зрения бизнеса на котлин и поймешь что там все сделано для работу на "флюгер". Как в свое время было с С и С++, перлом и пхп и C++ c java. Смотри на котлин как на java++

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

Более того, они язык заточили под хорошую IDE, которая позволяет и (важно) помогает писать таким тупицам как я.
57 1448232
>>48230
Неудача раста - они сделали язык еще сложнее чем С++
Но удачный флюгер - текущие данные производительности, они потащили его вверх (с сожаление статистика SO лежит, просто верь мне)

Для D - удача, его внесли gcc компилятор, но за ним не стоит крупная компания, тесты печалят - все это тянет на дно.

Флаттер вытащил из бездны дарт, его отмыли и дали версию 2.0, но именно дарт тащит флаттер на дно и не ясно кто кого перетащит. Но ясно что котлин сможет легко сделать враппер на флаттер.
Если будет так, команда станет перед интересным вопросом, "на чем ехать дальше"

Моя еще надежда на более качественным маркетинг для котлина, это будет тоже флюгер, его сейчас надо продвигать везде, но грамотно.
Да и почти весь маркетинг идет на западную аудиторию (что и правильно и печально в какой-то степени)
58 1448234
Да, скрипты для gradle на котлине - тоже флюгер, даже не сами скрипты, а больше новость о переезде, в общем, они умеют и могут.
IMG20190804135926719.jpg171 Кб, 1280x853
60 1448525
Так, очкарики.
Какая простенькая среда существует для котлина?
Вот вообще похуй на эмуляторы-хуеляторы.
Достаточно будет кнопки запуск и консоли для вывода результата.

Ебучий продукт даунов андроид студио тормозит как шлюха и компилирует хелловорлд гребанную минуту. Стыд блять.
61 1448543
>>45837 (OP)
Хорошая статья про дженерики (ru)
https://programming086.blogspot.com/2018/02/kotlin-generics.html
62 1448564
>>48232

>Неудача раста - они сделали язык еще сложнее чем С++


И ты мне тут втираешь про котлиновские дженерики?
Го спроектирован так, чтобы любая макака не чесала гриву от херовой туче монад-хуенад, дженериков-хуериков, а начала писать продакшн код в первый же день. Просто, но не проще этого.
И в Го нет корутин отчасти по этой же причины - ок, мозг еще потерпит несколько выходов из здание - один основной и куча пожарных. Но вход-то должен быть один! Причем парадный и с неоновыми вывесками над дверью. А уж когда тебя катапультируют из здания, а потом парашутируют назад - это вообще снос башни. Только святая простота, только горутины: залил брагу в перегонный куб, поддаешь огоньку, смотришь на приборы и открываешь иногда кран, откуда капает, а оно само там варится, только так.
63 1448587
>>45837 (OP)
В чем преимущество котлина перед явой? Скалой?
64 1448628
>>48587
Вкатывайся, расскажешь нам.
65 1448825
>>48587

>В чем преимущество котлина перед явой? Скалой?


Что не нужно писать на джаве или скале при работе с jvmя серьезно, это такое преимущество
66 1448868
>>48825
Понятно, очередная better java для смузихлебов, через лет 5 жизни подохнет в своей узкой нише, как и скала.
67 1448870
>>48868
Да, пока у нас есть 5 лет, торопись
68 1448890
>>48868
котлин признался гуглом как приоритетный язык для андроида. Что скажешь, кретин?
69 1448892
>>48890
Я думал фуксия раньше чем через пять лет выйдет
70 1448910
>>48892
Ох, откуда вы лезете.
Какой-то отдел вероятно выбил таску и сделал playground на своем внутреннем языке.
Никакой информации про релиз и замену андроид, но опубликовали чтобы посмотреть реакцию - зачем? А затем? что гугл так делает проекты, отдел создает, выплёвывает, не выстрелил - закрыл. И это нормально.
Но маняфантазеры уже даже релизы выдумывают, которых не будет, потому как это playground под флаттер. Выстрелит флаттер, будет вам ос, но флатер тухнет, потому что никто не хочет труп дарта изучать, когда у тебя бэграунд тонны кода на jvm. да и сам флаттер смотрится ужасно, как и к дарту много вопросов

,
PS я знаю что вы жалкие тролли, поэтому паста для адекватов, кормить не буду
71 1448915
>>48892

>Кококо дарт убивца js


>Настолько шляпа что не пустили в хром.



>Кококо го убивца джавы, го заменит жабку на андроиде!


>Лол, как на этом писать?



Ну и да, котлин уже приоритетный язык для андроид где-то в сторонке плачет дарт и го
72 1448919

> Адепты уже почти ненужно языка бьют в конвульсиях ИТТ от одного упоминания ФУКСИИ, которая лишит их работы


ясн
73 1448969
>>48919
У нас есть 5 лет, жалкое ты подобие тролля :3
image.png423 Кб, 722x406
74 1448978
>>48969
Пять лет чтобы привести дела в порядок, отдать долги, попрощаться с близкими.
75 1448981
>>48915
Основная цель dart - это flutter, который после выходы fuchsia окончательно отправит javaнутых на помоечку, чем он уже занимается вполне успешно
image.png219 Кб, 357x450
76 1448984
>>48978
Лол, врач похож на Андрея Бреслава, создателя котлина)
image.png1,4 Мб, 1440x810
77 1448991
78 1448996
>>48981
Основная цель дарта это полёт в космос и освоение нибиру, слезай уже с маняфантазий.
79 1449130
Какие фреймворки используют для веб серверов на котлине?
80 1449148
>>49130
ktor - c корутинами от JB
javalin
vertx - очень быстрая асинхроная масштабируемая штука
spring - по классике

поиск тебе поможет больше чем я, но может и тут посмотреть
https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=query&l=xan9tr-f
https://kotlin.link/ // вкладка web
81 1450645
>>49148
Для этого существует реддит враперы?
82 1450669
>>50645
Для мейнстрим языков типа java, питон и т.д. - есть почти все, тупо погугли я хз что за обертки над реддитом
83 1450671
>>50669
Ну апи для реддита
84 1450677
Есть хорошая недлинная книжка или толковый онлайн курс по котлину для джависта? Именно с упором на "фундаментальные вещи вы и так знаете, а вот чо мы тут навертели прикольного и в чём плюсы и минусы по сравнению с вашим языком".
85 1450705
>>50677
Туториал от жетбрейнса, как раз вот такой, чисто синтаксис языка с приколами
86 1450737
Поясните плиз или скиньте доступный гайд для андроидо-даунов по корутинам. Графоманство Елизарова на медиуме, как и оф. документация не подходят. Я понимаю идею о том или не понимаю, чтобы код выполнялся последовательно, при этом не блокируя, как альтернатива коллбекам, которые вызываются как бы не последовательно с окружающим их кодом. Ну могу кое-как написать пару suspend fun, вызывающих друг друга.
Но сука, что за блять CoroutineContext нахуй? Что за ебаный CoroutineScope? Зачем? Для чего? В каждом месте где я хочу пукнуть корутинами я блять должен держать какой-то скоуп и на нем вызывать функции-билдеры типа launch и async? Зачем? А если буду на GlobalScope ебашить, то хули дальше? Что за ебаный пиздец вот это: override val coroutineContext = Dispatchers.Main + job ? Какой сука джоб? Я блять знаю, что launch возвращает Job, а нахуя и причем тут это?
Что такое вообще концептуально "корутина"? Я знаю, что это переводится как сопрограмма. Заебись, с чем это ассоциировать, как это визуализировать у себя в голове? Cancell'ить их можно, видите ли. Зачем? Треды в жабе никто никогда не останавливает и все живы здоровы. Зато можно без проблем написать что-то типа
repeat(1000000000) {
GlobalScope.launch {
println("ХУЙ")
}
}
Ебааать, всю жизнь я мечтал так писать, как же я жил без этого.
Еще повсюду указывают на возможные утечки, связанные с корутинами, если неправильно заюзать. То есть несмотря на вышеперечисленное, выстрелить в ногу с ними проще, чем когда-либо.
Как после этого кто-то вообще может заикаться про порог вхождения у rxjava? Там как раз в целом легко и понятно. Ну не будешь знать 95% операторов, ну будешь из Subject'ов знать только BehaviorSubject, ну и ничего, спокойно будешь писать код.
Так это ладно, судя по всему за корутинами будущее, и вот как быть, если ты тупой?
87 1450782
>>50677
400 страниц вроде, но изложение не очень, имхо, лучше правда туториал с оффсайта
88 1450785
>>50737
Нельзя запустить suspend функции в синхронном "режиме".
Поэтому есть контекст, в котором есть потоки (диспетчер) где будет все вертеться.

Ну и есть заготовленные всякие scope билдеры, чтоб было легче.
Тут подробно и понятно:
https://kotlinlang.org/docs/reference/coroutines/coroutine-context-and-dispatchers.html

Лучше читать из офф источника, при релизе 1.3 из экспериментальной версии они там что-то меняли и поэтому старые маны могли устареть.

PS
Понятно, что в одном потоке корутины будут шустро перещелкиваться - но не будет параллелизма.
89 1450801
>>48981

>fuchsia окончательно отправит javaнутых на помоечку


Фуксия никому нахуй будет не нужна без поддержки андроидовых приложений. Вспомни тот же виндоус мобайл, МС кучу бабла вливал и все равно соснул. А если будет поддержка андройд приложений, то какой смысл будет писать не на котлине, когда котлин будет позволять релизить приложения сразу и для андройда и для фуксии.
90 1450842
>>50801
Да не нужно этим одарённым отвечать, понятно что никто не будет успешный топовый бизнес делить тупо на ноль.
91 1450899
>>50801
Поэтому гугол заранее уже внедряет flutter, на нем можно писать и для андроида, и для айос, и, внезапно, для фуксии.
Saumont-JofK-HI.png108 Кб, 720x903
92 1450902
Сто лет тут не был.

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

Ну, раз такое дело - нате вам книжку - The Joy of Kotlin.
https://www.manning.com/books/the-joy-of-kotlin

Это римейк известной Functional Programming in Java (https://www.manning.com/books/functional-programming-in-java), того же автора.
Те же темы, но на Kotlin.

А вот совсем свежачок, и совершенно бесплатный:
Safe Programming with Kotlin
https://www.manning.com/books/safe-programming-with-kotlin
94 1451032
>>50902
На те вам книжку, но где ее искать ты конечно же не даешь. Благо я знаю ресурс, в котором можно все свежие книжки скачивать.

Мимо свифт господин, который плевал на кокотлин и всю его парашу.
95 1451038
>>51032
Про libgen я думаю каждый уважающий себя программист давно уже знает.
96 1451063
>>51038
+1 в карму тебя бротюнь

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


Да это надо во всяких чатиках сидеть, где один флуд и только 0,001% годноты приходит.
97 1451064
>>50908
Нам же для работы язык надо.
98 1451066
>>50902

>А теперь - вон как всё расцвело.


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

В прочем, как и на всех прочих новых языках.
99 1451104
>>51066

> котлин


> бэкенд



И как успехи?
Я несколько раз пытался, но, что-то не заходит. Не знаю почему.

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

Груви - охуенен. Но, он, в основном, для скриптов и DSL.
При попытке писать на нём большие вещи, он быстро вырождается в джаву, ибо без статической типизации большие вещи не пишут.
100 1451169
>>51064
А, так вам круды лепить. Ну тогда да, ты прав.
101 1451171
>>51104

>А скала - слишком непрактична (для энтерпрайза).


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

>Несовместимая библиотека коллекций сводит на нет все ништяки


Это вообще пушка. Scala предоставляет необходимые иплиситы, которые конвертируют коллекции Scala в Java и обратно. Но так никто не делает, т.к. нахер тебе нужна Java?

>и язык несколько путаный, и его слишком много


Ебать ты толстяк, дружище. Языка у него слишком много. Ты в курсе, что спецификация языка Scala меньше Java? При этом Scala позволяет делать вещи, которые на Java в принципе невозможны.

>я хорошо знаю скалу


На хуй пошел, дуралей. Скалу он знает, лол.
102 1451277
>>51171
Ну откуда вы лезете, блять?

>которые конвертируют коллекции Scala в Java и обратно


Я знаю, сынок.
Собственно, об этом и речь - несовместимая библиотека коллекций.
В груви сделали более лучше. Как и в кложуре.
А скалоёбы - они особенные, не такие, как все.
Чёткие и о'дерзкие.

Про остальное лень писать, иди нахуй.

И да, котлин - это такая практичная скала.
Нравится это тебе или нет.
Мне, кстати, не особо.
103 1451292
>>51171

>Ебать ты толстяк, дружище. Языка у него слишком много.


Уже даже Одерски признал, что слишком много говно напихал, а скаладебилы все копротивляются.
104 1451348
а есть фреймы котлина для веба уже вместе с докер контейнером ?
105 1451356
>>51292
Ага, так много добавил, что в дотти еще фич докинул. Уходи отсюда, толстяк.
106 1451357
>>51277
Лол, что ты можешь знать? Ты же ничего серьезного на скале не писал.
107 1451366
>>51348
Всмысле? если я тебя правильно понял, то тебе просто нужен Gradle Docker Plugin
108 1451372
>>51357
Я знаю, что скала - вещь в себе.
Для изолированных задач (определённого рода) - очень хорошо, для гибридных проектов - хуета.

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

Собственно, потому и котлин.
Которого я, как раз, не знаю, и ничего не писал на нём.
Но, мотивации и назначение языка понятны совершенно.
109 1451396
>>51104

>И как успехи


Нормально, намного проще, особенно после работы с динамикой.
110 1451397
>>51396

>с динамикой


С какой динамикой?
Или ты с питона перекатился?
111 1451617
Я правильно понимаю, что теперь это Android тред?

Помогите разобраться с RecyclerView. Есть ли в RecyclerView коробочный вариант магнита к карточке? У меня все карточки одного размера. Мне пришлось написать свой smoothScrollToPosition, переопределив из LinearLayoutManager.
На скринах VK & Instagram. На третьем прототип моего говна. Прототип, как можете заметить, подтормаживает на доскроливании.

Я перехватываю onScrollStateChanged и если newState=2 (скролл пальцем прекратился), то смотрю насколько мы проскроллены и доскролливаю либо в одну либо в другую сторону. Без такого доскролливания пользователь может остаться на середине, между карточками.
У меня используется именно RecyclerView, потому что туда прибиндин Firebase. Вроде как сейчас RecyclerView считается самым правильным способом для отображения такого контента.

Всё, что мне нужно это повторить поведение VK или Инстаграмма — в конце скролла примагничиваться либо к одной либо к другой карточке. Как это сделать правильно?
112 1451640
>>51617
PageSnapHelper
113 1451721
>>51104

Хуй дождёшься от вас.
Отвечу сам себе:
https://www.reddit.com/r/Kotlin/comments/bj5k4m/kotlin_for_backend_development/

Пишут, что всё охуенно.
А спринг (бут), типа, вообще теперь специально под котлин затачивают.
114 1451790
я так понимаю , что тырпрайз фреймвок , с контроллерами и тд так остаётся спринг ? попробовал запустить https://ktor.io по ману (https://ktor.io/quickstart/quickstart/gradle.html#intellij-extract-out-configuration-data ) на пункте Improve the app with the Application object всё и заглохло , причём ошибка есть у них и на гитхабе но решения так и нет =( , хотя по докам так контроллеры я и не нашёл , выходит чёт кой структуры нет ?
115 1451923
>>51790
Ну да. Java/JakartaEE вроде бы как скорее мертва, чем жива.
Поэтому Спринг/СпрингБут во все щели.
Ну а Котлин со спрингбутом сейчас норм заходит.
116 1451945
117 1452010
>>51945
спасяб анон , но я так понял он больше заточен под API вещи , быстро пробежал доку , не формы , не авторизация , нечего такого нет
118 1452169
>>51640
заработало, спасибо
119 1452186
Столкнулся с интересной проблемой.
В идее нельзя использовать произвольный компилятор котлина.
Только тот, что встроен в плагин.
Т.е. - хочешь последнюю версию - ставь последнюю идею.

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

Ушёл дочитывать Functional Programming In Scala.
120 1452193
>>51397

>С какой динамикой?


С js бекенд переписываю, историческое наследие.
121 1452194
>>52186
Хотя, нет, принудительно таки поставился новый плагин на (не очень) старую идею.
А до этого - не показывал кнопку "Update", сука.

>>52193
Было на Node?
А сейчас что? Спринг?
122 1452195
>>52010
За него не в курсе, но есть такая тенденция сейчас писать модульные фреймворки, типа БД или авторизация или куки отдельно, как например в flask.
123 1452196
>>52194

>А сейчас что? Спринг?


Скорее всего будет vertx (версия на корутинах), но возможно ktor, пока щупаю, тестирую и руку набиваю.

Spring - это кому как нравится мне нет. И вроде они там специальную версию для котлина пилят.
124 1452197
>>52194

>Было на Node?


Да, вроде на бэке другого и нет.
125 1452364
>>52194
Так Котлин и разрабатывается чтобы продавать IDEA :-)
ДжетБрайнс про это на всех докладах по Котлину трубят.
126 1452381
>>52010
Тут достаточно большая дока, может там будет что-нить
https://micronaut-projects.github.io/micronaut-security/latest/guide/
сам я честно говоря хоть и посоветовал на нем ничего не писал, просто смотрел какую то презенташку где его со спрингом сравнивали или типа того
127 1452824
>>52364
Тебе бесплатной коммьюнити версии с головой хватит
128 1453468
Не могу понять зачем здесь "+=" для CompositeDisposable. В чем смысл так делать?

disposable += coordinatorOwner.coordinator.refresh().doOnTerminate { promotionsLoading = false; updateLoadingIndicator() }.subscribeBy({})
129 1453535
>>53468
Это перегруженный оператор:
https://kotlinlang.org/docs/reference/operator-overloading.html#assignments
Ищи disposable.plusAssign()
130 1453543
>>53468

>RxJava


Зачем вы это едите?
131 1453546
>>53543
А что надо есть, уважаемый гурман?
Реактивные бананы?
132 1453548
>>53546
Как максимум корутины, как минимум вообще кушать синхронно потому как в 99,999% случаев тебе потоков хватит
133 1453549
>>53548
Это не ты в жс-треде днём писал про await?

Потоки, корутины и реактивность - это всё, как-бы, немножко разные вещи.

Реактивность - вообще про другое.
Это как фьючеры, но для непрерывных потоков событий, если угодно.
Какое, тут, в пизду, синхронно, корутины, и, тем более, сырые потоки?
134 1453552
>>53549

>разные вещи


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

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

Не, в жс треде не сижу, тем более под конец лета лучше избегать пассивно-агрессивных школьников/студентов.
135 1453555
>>53552

>но в конечном счете приходит нужное открытие


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

> смериться


Ебать же ж тебя в сраку, ёбаный ты папуас.

После того, как подучишь русский, попробуй разобраться с [F]RP, что это такое, и зачем это нужно.
Или, как вариант, просто не комментируй на эту тему - так тоже можно.
136 1453557
>>53555
стадия отрицания и гнева
137 1453796
Какие есть аналоги ffmpeg для котлина/жабы?
138 1453798
>>53796
Например соси хуй, быдло
139 1453802
>>53798
В школу подготовился?
140 1453810
>>53802
А ты меня заставь.
sage 141 1453811
>>53810
Соси
142 1453823
>>53811
Короткоствол, please.
143 1454106
>>53802
Не реагируйте на агрессивную малолетку, его тут обидели и теперь он думает что топит тред.

ffmpeg слишком низкоуровневая числодробилка, гугли врапперы
sage 145 1454112
>>54108
Я про аналоги ffmpeg, a не про врапперы спрашивал
146 1454256
>>54112
Как ты представляешь себе числодробилки на языках с со сборщиком мусора?
Враппер будет 100% аналогом, потому что для потребителя библиотеки разницы не будет никакой, ты будешь дергать тоже api на java. Хотя я понял что ты тролль, можешь идти уже учебники покупать
147 1454257
>>45987

>Нормальный пакетный менеджер (гредл)


спасибо проиграл
148 1454308
>>54257

>япокакал

sage 149 1454347
>>54256
Объясню по другому. Я имел ввиду не врапперы для ffmpeg, а именно аналоги этой библиотеки, работающие /имеющие врапперы для джавы/котлина
150 1454382
Котлинобояре, какая операционка лучше для разработки на котлине, винда или линуксовое семейство?
151 1454412
>>54382
Код пишу на линуксе, игры, серфинг и безделье на винде.
Но жабе пофиг, у меня так просто исторически из-за бэкенда сложилось.
153 1454455
>>54436
Tiobe самый манярейтинг, никогда не понимал почему он так популярен. У них бейсик популярнее js в почти полтора раза, вообще охуеть.
sage 154 1454502
Сап. Делаю проект в котором во многих классах используются 3 внешних файла. Чтобы не писать каждый раз по 3 раза парсинг из файла, запилил такой вот хелпер (пик 1), но при попытке засетить какой-либо лист ConcurrentLinkedQueue/arrayListOf компилятор ругается. Как это пофиксить? Пробовал malIds.toArray as Array<Int>?, но получал ClassCastException: class [Ljava.lang.Object; cannot be cast to class [Ljava.lang.Integer
155 1454532
>>45837 (OP)
А че там по скорости? А. Ясно.
sage 156 1454641
>>54502
Тред живи
157 1454710
>>54502
ты, блядь, хочешь, чтобы мы глаза ломали об твою новомодную темную тему, блядь?
да иди ты на хуй, я даже твой ебучий код читать не стал
image.png25 Кб, 246x119
sage 158 1454714
>>54710

>новомодную темную тему


Как там, в 2012?
159 1454747
>>54714
Тебе как бы намекнули что твои картиночки нафиг не нужны, кидай код хотя бы сюда.
https://play.kotlinlang.org/
И вырезай лишнее.

А так, тебе IDE сама говорит что у тебя несоответствие типов, ты конкурентную линкованную очередь кастишь к java массиву (зачем ты это делаешь)?
160 1454749
>>54502
Пробуй
malIds.toArray()
161 1454753
>>54714

> 2012


От этого тёмная тема не становится меньшим хипстерским говном.

!00 лет до этого долдонили из какждого утюга, что белым по чёрному трудно читать и портит глаза.
И вдруг - это стало полезным и модным.
А почему? Потому, что красиво смотрится на веб-страничках.
162 1454754
>>54753
Каким местом портит глаза, если текст/фон не контрастный?
sage 163 1454755
>>54749
Лол, перебирал разные toArray и правильный был toTypedArray
164 1454756
>>54436
Что не так с груви, сынок?

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

Девопс-хуёпс, опять же, вот это вот всё.

И что-то я не вижу там ничего на букву K.
165 1454762
>>54532
чего?
166 1454764
>>54756
Ты не особо умён, да? Манярейтинг как бы показал, что в эпоху заката груви, он его отрисовал резко в топ с 44 места.
Очень интересный и неожиданный у них анализ.
167 1454767
>>54764
Какого, блядь, заката?
Ты дурак?

Груви - вспомогательный язык.
Закатится он, разве что, вместе с джавой.
То-есть - никогда.

Иди подрочи свой вялый грязный хак на букву кэ, лол.
168 1454785
>>54756
>>54767
Котлин "вдохновился" у груви все нужные фичи, при этом оставил в стороне руби-говнокод, как например необязательные скобки для функций.

Дедуль, зачем груви, когда есть котлин?
169 1454905
>>54785
В груви можно делать динамическую динамику.
В скриптах это нужно.
Плюс необязательная типизация.
Плюс охуительнейшие литералы.
Прозрачная работа с BigDecimal - это охуенно.
И прочее подобное.

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

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

Ну, и совершенно прозрачная интеграция с джавой.
В котлине не так, ибо синтаксис другой (и не только).
170 1454916
>>54905
Как может быть хороший динамический язык на jvm, на сях то питоны и пхп тормозят аки черепахи.
Я прям представляю этот медленный животрепещущий старт каждый раз.

>В груви можно делать динамическую динамику.


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

>Плюс необязательная типизация.


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

>Прозрачная работа с BigDecimal - это охуенно.


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

>Плюс охуительнейшие литералы.


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

>Просто удобный язык для небольших задач и тестирования.


О да, тестировать или конфиги писать на зоопарке языков, это прям реал круто.

>gradle


Ни че что они разменяли на котлин-скрипты?

>В котлине не так, ибо синтаксис другой (и не только).


Ты походу котлина не знаешь, все тоже самое и там завезли. Вдохновлялись по полной.
170 1454916
>>54905
Как может быть хороший динамический язык на jvm, на сях то питоны и пхп тормозят аки черепахи.
Я прям представляю этот медленный животрепещущий старт каждый раз.

>В груви можно делать динамическую динамику.


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

>Плюс необязательная типизация.


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

>Прозрачная работа с BigDecimal - это охуенно.


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

>Плюс охуительнейшие литералы.


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

>Просто удобный язык для небольших задач и тестирования.


О да, тестировать или конфиги писать на зоопарке языков, это прям реал круто.

>gradle


Ни че что они разменяли на котлин-скрипты?

>В котлине не так, ибо синтаксис другой (и не только).


Ты походу котлина не знаешь, все тоже самое и там завезли. Вдохновлялись по полной.
171 1454930
>>54916

>нинужно


>не различает "можно" и "обязательно"


>...



Понятно.
Типичный представитель целевой аудитории нового супер-мега языка.
172 1454944
>>54916

> gradle


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

Но, спок, например, я не представляю на котлине.
Так, как раз, литералы и динамика решают.
173 1454950
ну и какой фреймворк для веба на нем есть?
174 1454957
>>54944
Да есть там твой DSL как в груви, успокойся. Только типобезопасный он теперь.
Если для тебя эта фраза ничего не значит, то как минимум получишь вменяемый автокомплит в DSL
image.png91 Кб, 552x743
175 1454961
>>54950
Любой из джавы или из этого списка
https://kotlin.link/
176 1454972
>>54961
какой самый простой?
177 1454973
>>54972
Открываешь и смотришь что больше нравится
178 1454978
>>54973
я еше туповат для этого,посоветуй
179 1454980
>>54978
Тогда может тебе javascript??

Как я могу тебя помочь, когда тебе надо пойти на официальный сайт и открыть доку, посмотреть примеры?
Я же не могу за тебя изучать.
180 1454984
>>54978
Javalin выглядит безумно просто
https://javalin.io/documentation#getting-started
181 1454996
>>54984
насколько у вас тут токсично?
182 1455021
>>54996
Поначалу набегают js и groovy хейтеры, но потом понимают что язык неплох, а жаба богата инструментами - и они по тихому уходят читать маны, да просвещаться.

в языке мало говна как в го, по-троллить скудно получается, а так как котлин язык номер один в андроиде,
то на нашей стороне еще легион школьников
183 1455022
>>54996
Котлину далеко до топов, хотя уже скалу обогнал на SO поэтому всегда лампово в таких малых комьюнити.
sage 184 1455285
>>55022

>Котлину далеко до топов


Ненадолго. Каждый второй теперь пишет андройдо парашу на котлине
185 1455298
Привет

Хочу выкатиться из своей работы и попробовать вкатиться к вам.
Насколько реально выучить Котлин без корп опыта? Не хочу на позицию джуна (только не ссыте, плиз). Могу несколько месяцев сидеть дома и изучать. Базово знаком с джавой

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

Может искать фриланс, ведроид или прочую поеботу?
БОльшое спасибо за внимание
186 1455403
>>55298
Не знаю что там с работой (ты это можешь быстро и сам исследовать и тут же выбрать себе стек библиотек).
Кровавый тырпрайз инертный, поэтому если там и будет котлин, то скорее всего с джавой (это я про бэкенд, в телефонах там все хорошо).

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

Что касается "я хочу и у меня это получится?".
Все реально и даже просто. Есть такой тип людей который ставят себе цель и идут вопреки. Такие люди доходят, но их мало. Так что вопрос не в возможностях и количестве знаний (которых достаточно), а вопрос в тебе именно.

>Может искать фриланс, ведроид или прочую поеботу?


Не думаю что будет для джавы, хотя может что-то изменилось сейчас (опять же, лучше сам анализируй, а то тебе насоветуют тут).
Крупная компания скорее реализует свои мечты через аутсорсинг.
Никогда не был во фрилансе и мне, почему-то, не вериться что там будет хорошая работа за хорошие деньги. Мне думается, что будешь есть говно за относительные копейки.
Надо мечтать стать владельцем крупной аутсорсинг компании, а не вот этот трэш.
187 1455408
>>55298

>А еще такое: насколько востребована в гйеропке


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

У меня такого опыта нет, поэтому ничего не скажу, но вероятно пути хорошие есть.
188 1455435
>>55298
Напиши wordpress на котлине, ты не только станешь популярным, но и привнесешь фриланс в жабо-мир
189 1455472
Нахуя в кококотлине хуета вроде inner class или companion object?
В той же Скале это на уровне концепции, типа этот класс объявлен внутри другого, значит он inner. А вот тут object рядом с классом с таким же именем, мы назовем его companion.
Нахуя котлин тащит это в синтаксис? Они бы еще цикл for обозвали каким-нибудь визитором.
190 1455480
>>55472

>inner class


Мужы много лет кодили и поняли, что так лучше и нагляднее, как например паблик по дефолту.

>companion object


Насколько я понимаю в чистом ООП нет статической хери, решили так вот поменять. На вскидку не вспомню дает это что либо или нет.
191 1455486
>>55472

> хуета вроде inner class или companion object?


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

А вот на счет companion object согласен, уродливая некрасивая хуйня получилась (пришло, кстати, из скалы что в общем-то неудивительно), это сами же jetBrains и говорят, что об этом желеют. Ну а интенция была вынести static из класса, так реально рябит, когда у тебя вроде класс, а то тут то там эти ебучие статики функции переменные и тебе в голове надо мысленно все разносить. Но правда стоит сказать, что companion object можно избежать, выноси просто функции и константы на пакетный уровень.
192 1455488
>>55486

>Но правда стоит сказать, что companion object можно избежать, выноси просто функции и константы на пакетный уровень.


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

Такая же модель в питоне и они ругают звездочку.
193 1455581
>>55488
Зачем звездочкой? Они по имени импортятся замечательно, просто не разрешай "умной" идее юзать звездочку.
194 1455600
>>55403
>>55408
>>55435
Спасибо за вразумительные ответы. bless you
195 1455637
>>54905
Посоветуй что можно по груви почитать посмотреть кроме официальных документаций и хвалебных од Баруха?
196 1455650
>>55637
Ты бы еще тут про perl или basic спросил.
image.png688 Кб, 1280x720
197 1455664
>>55650

> groovy


> kotlin

198 1455672
>>55664
какие-то унылые у вас тролли
199 1455673
>>55672
Но котлин ведь и правда убогий. Единственный его плюс в том, что он лучше джавы.
200 1455711
>>55673
Покормлю тебя немножко, вдруг задумаешься.

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

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

То есть, получается что серебряная пуля котлина, это возможность писать на "джаве" jvm, без джавы.

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

> шарп не нужен


> тайпскрипт кривой


> скала сложна


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

> То есть, получается что серебряная пуля котлина, это возможность писать на "джаве" jvm, без джавы


Ты ебанько чтоли? Я так и написал:

> Единственный его плюс в том, что он лучше джавы


Всё. В остальном как языке это говнище костыльное.
202 1455713
>>55711
Вот появиться новый вменяемый язык для бэкенда, сразу с 100500 готовых либ как у жабы. Вот тогда можно будет напрячься. Самой джаве рост тоже вредит, там у тырпрайза свои правила и обратную совместимость не нарушить - а значит красивого синтаксиса уже не видать, без выпиливания старья. не удивлюсь что тырпрайз зависнет на какой-нибудь 8 версии, как в свое время на 6
203 1455718
>>55712

> скала сложна


Ты путаешь "ненужно" со сложным. Сложного там нет.
Мы же работать хотим, а не играться дома в пет-проекты, которые забросишь уже завтра.

>вбрасываешь толстоту


Сама истина бро, какая там толстота.

> Единственный его плюс в том, что он лучше джавы


> Всё. В остальном как языке это говнище костыльное.


У тебя шизофрения.
Опять же, повторюсь - то что она лучше джавы - этого достаточно.
204 1455720
>>55718

>говнище костыльное.


Хорошее название для тайпскрипта
205 1455741
>>55718
А, так ты долбоеб просто. Тогда нахуй иди.
206 1455937
>>55650
бля я спросил так как я никогда не видел грувистов, сам то на жаве/котле пишу, просто интересно, расширяю очко кругозор
207 1455971
Пытаюсь сделать REST API на Ktor. Собственно тестовый проект уже написал. Кто-нибудь может скинуть гайд где описано как мне этот проект залить на сервер чтобы он работал и тд
208 1455973
>>55971

>сервер


linux nginx сервер*
209 1455974
>>55973

>linux


Ubuntu
фикс 2
211 1455983
>>55971
>>55982
Если и в поиске все плохо, то тупо юзай fat jar, аналог сборки все в одно, как скажем в го
https://ktor.io/servers/deploy/packing/fatjar.html
212 1455986
6
213 1456012
Встал вопрос выбора между javascript и котлин, решил взвесить многие за и против.
Результат победы котлин - 120, js - 82

Сам разбор по 10 балльной системе:
-Популярность
J - 10
K - 1

-Наличие библиотек
J - 7
K - 10 // спасибо джаве

-Качество библиотек
J - 3
K - 9 // мобильное говнише все же есть, но наследие джавы хорошее.

Рефакторинг
J - 1 // Только через поиск, средства IDE под сомнением и мажут.
K - 10

-Изучение/исследование кода
J - 3 // Динамика, только через отладку. Но более простая форма восприятия кода, ибо динамика.
K - 8 // Статика - легко, но обилие абстракций в ООП мире джавы - требует больше и опыта усилий.

-Документация библиотек (из-за нехватки которых приходиться исследовать код)
J - 5
K - 8

-Динамичность, гибкость, рефлексия
J - 10
K - 4

-Программирование хэш мапами (мапы - есть структуры)
Стиль программирования, где оперирование данными важнее алгоритмов, то есть превосходство бизнес логики над кодом (не все это понимают, но такое существует, clojure программисты меня поймут)
J - 10 // даже в питоне не так круто как в js, все мапы это объекты.
K - 0 // ненужно, другой стиль

-Статика, структурированные данные и код.
J - 2 // Достижимо частично за счет JsDoc
K - 10

-Кроссплатформенность (фронт и бэкенд)
J - 9 // есть общее, но все равно для галочки
K - 4 // Возможность есть, но пока еще непонятно насколько это удобно (не изучал)

-Производительность
J - 4 // хз почему так плохо, вроде полностью асинхронный и jit есть.
K - 10 // Местами джава библиотеки идут вровень раста и обгоняют С++, это просто показатель того, что не надо разменивать удобную джаву на что-то еще, для обычных проектов.

-Маштабируемость
J - 8 // за счет разделение на процессы, подход сразу масштабируемый
K - 7 // Нужно заранее об этом задуматься, достигается только через специальные фреймворки/библиотеки (или юзать как js по процессам между машинами без общих состояний внутри). Но качество масштабируемых библиотек у джавы на высоте.

-Синтаксис
J - 3 // наследие древних костылей, только c ES6 стало немного лучше
K - 9 // Есть бесячие мелочи, но в целом, как альтернатива джаве - идеален.

-Системные потоки
J - 0 // их нет
K - 10

-Асинхронное программирование
J - 7 // Не все еще до промисов добрались, в той же node еще не видно асинков. Так же все только в одном потоке. Несмотря на асинхронную природу, производительность реальных фреймворков оставляет желать лучшего.
K - 10 // Полный контроль потоков и горутин, отсутствие потребности писать асинк-авей (код в в suspend функциях получается как в го)

-Синхронное программирование
J - 0 // невозможно, т.е. можно тупо повесить весь процесс.
K - 10 // изначально синхронный
213 1456012
Встал вопрос выбора между javascript и котлин, решил взвесить многие за и против.
Результат победы котлин - 120, js - 82

Сам разбор по 10 балльной системе:
-Популярность
J - 10
K - 1

-Наличие библиотек
J - 7
K - 10 // спасибо джаве

-Качество библиотек
J - 3
K - 9 // мобильное говнише все же есть, но наследие джавы хорошее.

Рефакторинг
J - 1 // Только через поиск, средства IDE под сомнением и мажут.
K - 10

-Изучение/исследование кода
J - 3 // Динамика, только через отладку. Но более простая форма восприятия кода, ибо динамика.
K - 8 // Статика - легко, но обилие абстракций в ООП мире джавы - требует больше и опыта усилий.

-Документация библиотек (из-за нехватки которых приходиться исследовать код)
J - 5
K - 8

-Динамичность, гибкость, рефлексия
J - 10
K - 4

-Программирование хэш мапами (мапы - есть структуры)
Стиль программирования, где оперирование данными важнее алгоритмов, то есть превосходство бизнес логики над кодом (не все это понимают, но такое существует, clojure программисты меня поймут)
J - 10 // даже в питоне не так круто как в js, все мапы это объекты.
K - 0 // ненужно, другой стиль

-Статика, структурированные данные и код.
J - 2 // Достижимо частично за счет JsDoc
K - 10

-Кроссплатформенность (фронт и бэкенд)
J - 9 // есть общее, но все равно для галочки
K - 4 // Возможность есть, но пока еще непонятно насколько это удобно (не изучал)

-Производительность
J - 4 // хз почему так плохо, вроде полностью асинхронный и jit есть.
K - 10 // Местами джава библиотеки идут вровень раста и обгоняют С++, это просто показатель того, что не надо разменивать удобную джаву на что-то еще, для обычных проектов.

-Маштабируемость
J - 8 // за счет разделение на процессы, подход сразу масштабируемый
K - 7 // Нужно заранее об этом задуматься, достигается только через специальные фреймворки/библиотеки (или юзать как js по процессам между машинами без общих состояний внутри). Но качество масштабируемых библиотек у джавы на высоте.

-Синтаксис
J - 3 // наследие древних костылей, только c ES6 стало немного лучше
K - 9 // Есть бесячие мелочи, но в целом, как альтернатива джаве - идеален.

-Системные потоки
J - 0 // их нет
K - 10

-Асинхронное программирование
J - 7 // Не все еще до промисов добрались, в той же node еще не видно асинков. Так же все только в одном потоке. Несмотря на асинхронную природу, производительность реальных фреймворков оставляет желать лучшего.
K - 10 // Полный контроль потоков и горутин, отсутствие потребности писать асинк-авей (код в в suspend функциях получается как в го)

-Синхронное программирование
J - 0 // невозможно, т.е. можно тупо повесить весь процесс.
K - 10 // изначально синхронный
214 1456122
>>55983
Спасибо
215 1456156
>>55983
Как мне запустить сборку fat jar'a? Я написал конфиг для shadow
216 1456166
>>56156
Ладно, я разобрался. Только у меня почему-то генерируется два файла, один от shadow и другой 0.0.1.jar. Как отключить его генерацию? я до этого уже пытался сделать генерацию jar, может это последствия
image.png5 Кб, 630x55
217 1456177
>>56166
Вот
sage 218 1456229
>>56177
В общем ниебу зачем оно нужно, и без него работает.

Другой вопрос.
Я использую nginx для reverse proxy и при попытке сбилдить jar мне выдается ошибка что адрес занят. Приходится каждый раз при билде менять в конфиге сайта proxy pass на другой, билдить jar и возвращать. Как это пофиксить?
sage 219 1456233
>>56229
А, понял. У меня старые прослушивания висят и какого-то хуя не завершаются при закрытии ssh или даже при exception.
Как мне заканчивать прослушивание порта?
220 1456245
>>56233
Не понял про что ты, но вероятно приложение работает, нужно его завершить нормально (или убей процесс)
Посмотри это:
https://ktor.io/servers/features/shutdown-url.html
222 1456249
>>56233
Вот еще
https://dev.to/viniciusccarvalho/graceful-shutdown-of-ktor-applications-1h53

Если юзаешь io.ktor.server.netty.EngineMain.main
То там уже прописан хук, просто убивай процесс
sage 223 1456255
>>56249
>>56247
>>56245
Благодарствую
224 1456256
>>56249

>io.ktor.server.netty.EngineMain.main


Оно:
https://github.com/ktorio/ktor/blob/6c724f804bd6f25158d284d05c49235c67573019/ktor-server/ktor-server-cio/src/io/ktor/server/cio/EngineMain.kt#L18

>просто убивай процесс


Конечно я про сигналы SIGTERM или SIGINT (Ctrl + C)
image.png30 Кб, 412x556
225 1456265
>>56166

>я до этого уже пытался сделать генерацию


Есть таска гредла "clean" (тупо удаляет что насоздавало), имеет смысл иногда почистить, когда магию ловишь.
226 1456673
Коллеги, подскажите, есть какой нибудь БЕСПЛАТНЫЙ сайт на подобие javarash? На котором можно будет попрактиковаться в решение задач на Котлин, и с валидатором на сервере который будет говорить, правильно ли я решил задачу или нет.
227 1456706
>>56673
Он не нужен. Котлин надо учить так:
1. Учишь джаву до уверенного уровня
2. Пару дней листаешь мануалы по котлину
3. Все, ты можешь писать на котлине
228 1456737
>>56673
https://play.kotlinlang.org/koans/overview

Ну и вообще:
https://kotlinlang.org/docs/reference/

>>56706

>Все, ты можешь писать на котлине


Можешь. Но, лучше не надо.
229 1456738
>>46159
Ты не понимаешь. По письму складывается впечаталение о человеке. Если я вижу какую-то наитупейшую грамматическую ошибку, то у меня подсознательно возникает чувство неприязни к автору.
230 1456748
>>56738

>подсознательно возникает чувство неприязни


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

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

Более того правила языка избыточно усложненные и я понимаю людей, которые кладут болт вообще и пишут на уровне "ну ты меня понял", потому как в этом мире важна информация, а не как её подали.
231 1456749
>>56748

>как письмо в две руки


фикс: письмо 10 пальцами
232 1456835
>>56738
Именно так.

>>56748
Грамотность встраивается на уровне подсознания.
И оценка своей и чужой грамотности происходит тоже на уровне подсознания.

Были исследования, которые показали, что человек, сделав ошибку при написании слова/предложения испытывает физический дискомфорт в области шеи и позвоночника. Это было именно измерено, как электрические импульсы. Сто лет назад смотрел видео про это.

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

Чем плохи безграмотные тексты?
Их трудно читать и понимать. Они напрягают.
Потому, что чтение тоже происходит на уровне подсознания.

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

Также, нужно понимать, что для программиста одним из важнейших навыков является исключительно хорошее владение родным язывком (Дейкстра).
sage 233 1456846
>>56835
мамку ебал)
234 1456880
>>56835

>Были исследования, которые показали, что человек, сделав ошибку при написании слова/предложения испытывает физический дискомфорт в области шеи и позвоночника



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

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



А охотнику очень важно уметь играть на пианино.
Иди лучше код попиши, не занимайся мракобесием
sage 235 1457071
>>56748

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


Никого не поправляю, но общение к безграмотным человеком свожу к минимуму или прекращаю. Безграмотный человек всегда ограничен, и поэтому я не могу почерпнуть от него ничего полезного, интеллектуально или духовно обогатиться. Поэтому я предпочту почитать книгу или документацию, чем общаться с тупым малолетним дебилом в седьмом поколении.
237 1457105
>>56737
Спасибо, тебе анончик
14904105723570.png513 Кб, 657x516
238 1457396
В жабо мире есть какие-то топорные и пизданутые решения или я чего не понимаю вот этот ktor получился именно таким, тормозной по тестам и вообще не юзер-френдли по ощущениям как-будто берешь какой-то netty или undertow, в общем, нехера ничего не понятно, не продуманно.

Мне кажется такие проекты как javalin, выглядит именно так как нужно было делать микро-сервисное приложение.
Надеюсь когда-нибудь в джава мире появиться что-то разумное как flask у питона, где люди хотя бы стараются делать нормально.
Стикер512x512
239 1457406
240 1457532
>>57396
В джава мире очень ОЧЕНЬ дохуя всего.
Но, школота этого осознать неспособна.

Алсо, писать что-то о тормознутости и пизданутости, и приводить питон как контр-пример, это реальная хуцпа, лол.
JavaBusinessLogic.jpg105 Кб, 739x710
241 1457626
>>57532

>В джава мире очень ОЧЕНЬ дохуя всего.


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

>Но, школота этого осознать неспособна.


Что мешало запилить подобие Flask, где есть банальный url_for, который просто умножает на ноль рефакторинг url в будущем? Нет, не одного фреймворка который бы это сделал кроме возможно play, но магические говно-рельсы не в счет. Так же нет фреймворка, который бы позволил бы расширить роутинг своим роутером только писать самому с нуля на платформенных вещах как netty или undertow

Кто мешает написать нормальный логер, который бы инициализировался нормально в main, чтобы можно по всему проекту сделать единый конфинг, а не йоба xml раскиданные в resource.
Почему спринг тормозит как джанго, но на джанге в 1000 раз быстрее и легче запилить пет-проект? потому что у них в тырпрайзе проще докупить кластер, переживать за какую-то производительность

Что за трешак этот ваш gradle, почему у него получается работать по разному если стартовать в консоле и в IDE? Как вообще это возможно. Нафига они поменяли подходы и теперь есть куча примеров из старых подходов и как их добавлять в новые непонятно.
Почему я вообще должен страдать, когда мне тупо надо либо подтянуть. Почему он тормозит как блядский асфальтовый каток!!!

>Алсо, писать что-то о тормознутости и пизданутости, и приводить питон как контр-пример


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

PS кстати, пробовал почитать сорцы на котлине, и если жабо код кое как читался мной, то котлин лямбда магия для меня просто нечитаема.
242 1457703
Бля. Котлинобоги, объясните, чё с вами не так как вы к этому пришли?
Я когда с C++ пришёл в джаву - был очень рад тому, что код снова можно читать, а не тыкаться глазами о ебучие символы. Спустя полгода меня вообще перестала пугать многословность, в сравнении с тем удобством, которые даёт строгость джавы.

Про котлин все говорят, что джависту в него легко вкатываться, но, бля, я не понимаю, как после джавы с красивымиЦепочками.методов.в.верблюжьемРегистре.дляРешенияЛюбойПроблемы() можно вкатываться в эти бесконечные двоеточия, знаки вопросы, звёзды, ёлочки и прочее
243 1457762
>>57703
Двоеточия там и правд лишние, при условие что их же IDE могла бы красиво подрисовывать где типы, где переменные.

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

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

PS
Был код, где были дата классы тупо с паблик полями и за 4 года, никому даже в голову не пришло натянуть логику геттера и сеттера. В общем, эта хрень сильно притянута за уши.
244 1457766
>>57703
красивыеВерблюжьюЦепочки никуда от перехода но котлин не исчезают.
Где ты нашел бесконечные двоеточия и елочки, я не понимаю.
Знаки вопроса... За возможность писать foo?.bar?.baz вместо сам понимаешь чего на джаве можно и потерпеть знаки вопроса.
245 1457840
>>57626
В питоне нет простоты.
Она там была 20 лет назад (и в сравнении с тогдашними альтернативами, и вообще).

Теперь там есть хуета.
И именно её ты получаешь в обмен на производительность.

И нынешний хайп вокруг питона вообще никак не связан с достоинствами языка.
246 1457882
>>57626
Насчет градла кароч. Когда ты тыкаешь в идее на молоток он юзает под капотом gradle toolbox или как то так, а не исполняет конкретный таск, поэтому и по разному работает, так что это всё жидбрейнс виновны
247 1457905
>>57882
И как это лечить? снести их IDE?
248 1457906
>>57905
тыкай таски справа в выдвигающемся окошке и забивай хуй на молоточек. А вообще у меня всего одна такая ситуация была
249 1457910
>>57840
Какие 20 лет назад, ты про баганутую 2.0? Это же жесть.
Я вообще не понимаю как он с косяками тогда еще заходил кому-то.
на самом деле и не был популярен

>Теперь там есть хуета.


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

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


МО тут не сильно сыграло, скорее есть потребность в хорошем динамически строгом языке Конечно питон не из этого счета, он просто наименьшее зло из других
250 1457914
>>57910
И кстати го за счет этого и выстрелил. Люди хотели производительности, но в джаву не хотели.
Хотя язык сам по себе хорош
251 1457931
>>57914

>python


>хорошем динамически строгом языке


>go


>язык сам по себе хорош


Не продолжай, мы уже поняли, что ты говноед.
stym3a.jpg49 Кб, 600x450
252 1457938
>>57931

>Хотя язык сам по себе хорош


я про джаву
253 1457966
>>57910

>ты про баганутую 2.0


Я про 1.5.2.
И про 2.1 - 2.2.

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


Был, был. И заслуженно.
На нём писали реально большие системы.
Бизнес софт писали на полном серьёзе, ERP и прочую хуергу.

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

>динамически строгом


Ага. Натурально гомосексуальном.

Динамические языки немножечко подзаебали уже всех, за эти самые 15-20 последних лет.
Ожидания не оправдались.
Руби, кстати, сдулся именно поэтому.
А джава, именно поэтому, поднялась.

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


>Я серьезно


Это, случайно, не ты в ньюфаг-треде пишешь про то, что английский учить не надо?
Риторика очень похожая.
254 1457970
>>57966
Иди уже почитай про строгую типизацию, фантазер ты наш.

>А джава, именно поэтому, поднялась.


Не поэтому, поверь.

>Это, случайно, не ты


Нет, я бы писал что математику учить не надо.
255 1457989
>>57938
Там фильмец о твоей Даше сняли.
256 1457996
>>57626
Доре не надо использовать Eclipse.
И логика сразу найдётся.

Алсо, JBoss/Spring/Hibernate хуета != джава мир.
Так же, как и мейнстрим != лучшее.
95% чего угодно - говно. Но, я не беспокоюсь, мне хватает оставшихся 5%. ©

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

>>57989
Какая-то она худая.
Ляжки как спички.
377445283587221779990118774900343604510720n.jpg72 Кб, 1080x1350
257 1458006
>>57996

>Ляжки как спички.


Не гони.
258 1458008
>>57996

>JBoss/Spring/Hibernate хуета != джава мир.


Как толсто андроид детё

>Так же, как и мейнстрим != лучшее.


>мне хватает оставшихся 5%


Так перечисли нам свой стек, а то только пердишь в треде.

>Это не говоря уже о том, что Spring и Django - разные вещи, для разных целей


Конечно, я про это и говорю, куда там до джанги. Тут дело то не в этом, а в том что твоя джава тормозит как джанга, но с джангой и рядом не стояла
259 1458009
>>57989
Дора и потерянная бизнес-логика.
260 1458017
>>58008

>твоя джава тормозит


Твоя джава тормозит.

Как я уже говорил, питоноёб, рассуждающий в котлин-треде о тормознутости джавы - это просто какая-то нереальная хуцпа.
261 1458030
>>58017

>Думает что котлин от джавы сильно отличается.



Ты нам супер стек высрешь или нет?
262 1458045
В общем если я правильно понял, то котлин - это та же джава, в которую добавили несколько нужных и не очень нужных плюшек, несколько плюшек убрали и заменили синтаксис на более уёбищный?
263 1458048
>>58045
Да, примерно, только расскажи что кроме тернарного оператора убрали то?
264 1458054
>>58045
Котлин это язык, который позволяет тебе нормально писать над "рантаймом" jvm, не используя джавы
265 1458055
>>58048
Ты как-то неудачно сам с собой разговариваешь
266 1458075
>>57882
Да, там IDE юзает другую версию jvm
267 1458093
>>58055
Не понял(
image.png87 Кб, 1540x394
268 1458127
Бовсуновский поясняет за котлин и форсит свою шизофазическую школу: https://vk.com/spb_tut?w=wall180926159_670

Предлагаю нарезать выдержки для шапки следующего треда.
269 1458171
>>58127
Там еще был сайт с котятами про котлин
И какой-то дед или мужик с голосом деда на ютубе рассказывает в 4:3 экране почему нужно учить котлин и питон. почему идея вообще стартанула на его старой пеке
image.png143 Кб, 1596x454
270 1458175
Go vs. Java (vs. Kotlin?) 271 1458458
Пишу в ближайший тред.

Я уже давно хотел выучить программирование, не для заработка даже, а для бытовых программ(давно хотет написат парочку, для себя, рутинные). Погуглил, нашёл Go очень приятным + рекомендации хорошие, уже прошёл урок.

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

НО: Го даже на Западе, не говоря уж о России, не очень популярен, вакансий мало, а если есть - нужны опытеы люди, сеньоры. А Джава нужна везде.

Тут я говорю о том, что мб нужно брать язык с прицелом на утройство на работу? на шее сидеть заебало, а больше у меня особых компетенций нет.
272 1458569
>>58458
Вас тут легион желающих вкатиться в ИТ ради работы и бабла и где-то смело 95% отваливается по пути.
Поэтому бери что хочешь, скорее всего до конца ты не дойдешь.

Ну а если дойдешь, то уже через 2-3 года поймешь, что программирование, это унылое и неблагодарное занятие и мечты о супер топ компании и выезда за границу, уйдут так же быстро, как ероха-менеджер в пятницу вечером, у которого зарплата будет больше чем у тебя.
273 1458573
>>58458
Котлин еще менее популярен чем го, если не брать в расчет легион аналдроида.

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

Имхо, джава намертво сидит в кровавом тырпрайзе и ты о ней слышал, скорее всего, только благодаря аналдроиду. А так это COBOL нашего времени. Более того, те кто сидит в кровавом, им вообще срать на ваши скалы, груви и котлины.
274 1458776
В общем я еще раз всё хорошенько обмозговал и понял, что Котлин - это всё же годнота. В нём исправили ряд серьёзных недостатков джавы:
- добавили перегрузку операторов,
- добавили возможность писать строки-шаблоны,
- вместо equals теперь можно писать ==,
- к листам и массивам можно стало обращаться через [index], вместо .get(index) и .set(index, value). Жаль только что не запилили подобную фичу для ХешМепов, но может быть еще запилят в следующих версиях.

Но в то же время, по непонятным причинам, в котлине испортили некоторые очень годные вещи. Вот возьмём к примеру классы. В джаве всё было предельно красиво реализовано:
есть объявление класса, внутри список свойств, один или несколько конструкторов и методы. В котлине же вместо этого какая-та абракадабра, с размазанными по файлу конструкторами,
275 1458784
>>52169
>>51617
Теперь следующий вопрос: когда я быстро скроллю туда-сюда, у меня иногда приложение подвисает: я пальцем провёл слева направо, ноль отклика, а уже потом, через 500-1000 мс приложение само доскроливает направо. Как я понимаю, дело в том, что карточки из RecyclerView удаляются из памяти, а потом загружаются туда заново.

Можно ли с этим что-то сделать? Прогружать (инстанцировать заранее) наперёд N карточек? И наоборот, не удалять последние N карточек, которые были проискроллены.

Заранее спасибо
276 1458805
>>58776

>фичу для ХешМепов


Запилил ващет.
277 1458818
>>58776
То, что ты перечислил как "серьёзные недостатки" - это просто полная хуйня.
Перегрузка операторов - так вообще зло, а не благо.

У джавы нет недостатков которые не были бы продолжением достоинств.
В этом и причина её огромной популярности и востребованности.

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

Поэтому, джава + груви = наш выбор.
278 1458831
>>58818

>У джавы нет недостатков которые не были бы продолжением достоинств.


В чём например достоинство необходимости писать .equals вместо сравнения при помощи == ?

>Перегрузка операторов - так вообще зло, а не благо.


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

>необходимости писать .equals вместо сравнения при помощи == ?



Это не "необходимость".
Это - вызов метода equals().
Который может (и, часто, должен) быть переопределён у твоих объектов.

А когда у тебя написано ==, а на самом деле вызывается equals() - это хуйня.
В джаве нет двусмысленностей. И это очень ОЧЕНЬ большое достоинство.
280 1458861
>>58784
Там создали уже, если что
https://2ch.hk/pr/res/1453379.html (М)
81X6Rm5y8VL.SL1500.jpg151 Кб, 1500x1229
281 1458872
>>58861
Спасибо
282 1458883
>>58857

>В джаве нет двусмысленностей. И это очень ОЧЕНЬ большое достоинство.


Ну а как же тогда метод toString(), который можно вызвать прибавив объект к строке:
"" + object

equals() - это наверное даже еще более важный метод и он вполне заслуживает собственный оператор.
283 1458918
>>58883
Да понятно, что есть свои плюсы в том, чтобы использовать ==.
Меньше букв, например.

Но, надо понимать, что есть ещё и reference equality.
И в джаве всё логично: "==" - для примитивов (и ссылок, трактуемых как примитивы ("адреса") в этом случае), а метод equals() - для объектов.
284 1458926
>>58883

>Ну а как же тогда метод toString(), который можно вызвать прибавив объект к строке:


Ого! Скоро ты узнаешь еще больше о приведении типов!
А потом, может, кто-нибудь тебе подскажет, что приведение совершенно однозначное и описано в спецификации.
285 1458952
>>58831

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


Я уже в коде видел треш когда плюсуют какой-то объект с каким-то другим (и это не числа, не коллекции, не строки) и честно признать это взрывает мозг потому, что непонятно, как можно сложить "кровать и лампочку".
286 1458953
>>58952
Для этого достаточно чтобы у оператора + была сигнатура не позволяющая так делать
287 1458955
>>58776

>добавили перегрузку операторов


Там многие не видят момент, что они реализовали подобие __оператор__ из питона. Это круче чем банальная перегрузка операторов.
Но тут же встает вопрос, почему не сделали перегрузку оператор ":" потому как key to value - это жопа, в том числе для их распиаренного DSL которые, если по честному, не так уж и прям и гибкая удобная штука. Иногда проще билдер через точку реализовать, чем возиться с множеством объектов DSL

>- добавили возможность писать строки-шаблоны,


>вместо equals теперь можно писать ==


Да, это круто, 21 век на дворе.
Но это просто сахар, который делает работу на джаве чуть красивее, не более.

Но было бы круто если бы они пофиксили джаву и все, но их же понесло
Переставили типы, надобавляли двоеточий, "companion object" - это видимо врожденная скрытая тяга писать длинные конструкции типа "public void static", с объявлением классом - да, перемудрили. По-закрывали классы, не дали полноценной гибкости в идентификаторах видимости для get и set потому что не хватило мозгов увидеть юзкейс. Сделали нулл-безопасность, но при этом дженерики по дефолту с нуллами. Даже корутины умудрились по другому сделать, не так как у всех.

И в целом кажется все продумано, но начинаешь писать код и комбинировать все эти вещи и понимаешь что все это топорно и сделано без души.
Господи, даже нет делегата проперти на проперти, первое с чем сталкиваешься когда строишь DSL то есть они по сути делали через мапы и поэтому есть сахар делегатов для мапы
288 1458956
>>58955
Нет наследование в дата классах. Вообще когда начинаешь делать с ними что-то, понимаешь что они мало юзабельные. Больше напоминаю js объект который можно сделать налету, чем часть домен системы.

Это запутанность с return в лямбдах и инлайн функциях

Для основных структур - листов и мап можно было бы сделать урощенный синтаксис [] и {k:v} лол, тут бы и пригодился перегруженный ":"
289 1458958
>>58955
>>58956
Но фатальный недостаток котлина - это отсутствие толстой стандартной библиотеки и флагманских проектов.

Другой момент, лично у меня вызвал мгновенное отторжение, это заявленный интероп с джавой, но на деле все не так гладко по синтаксису есть доклады, да и чтобы работать с каким-нибудь хибернейтом или спрингом нужны были плагины-фиксы. У меня тогда появилось сильное чувство, что меня пытаются нае...ть
290 1458961
>>58955

> По-закрывали классы



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

> не дали полноценной гибкости в идентификаторах видимости для get и set



set можно делать менее видимым, чем get. А тебе что надо, наоборот? Ищь чего захотел, извращенец.
291 1458972
>>58961

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



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

И что получилось, те кто будут делать хрупкую цепочку, оно все равно это будут делать. А Васян, которому надо было про-мокать какой-то класс, остался в сосничестве.

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

>set


Простая ситуация DSL, когда тебе надо записывать "конфигурировать", но не ненужно читать. Точнее не нужно чтобы поля фигурировали в правых выражениях get. Тут нам и требуется публичные set, приватный get.

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

PS
ну а то что получается вот так?
get() = field
set(value) = { field = value }

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

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

А именно бэкенд надо сейчас откусывать у таких кривых титанов как джавы/пхп/js/... Причем го показал, что можно быть еще кривее, но все же суметь откусить большой кусок, если только убрать вирт машину, убрать ООП и дать асинхронность по-умолчанию.
293 1458990
>>58988
Я слышал что вроде на gradle не все так хорошо получилось? Они вроде смогли туда его пропихнув, добив груви, но что-то пошло не так?
294 1458995
Ну а еще я тупой программист и неосилятор. Я просто не могу понять плохой дизайн.

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

В этом весь ООП, они покрыли кишки сущностями, но не покрыли эти сущности интерфейсом (не за-дизайнили).

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

Я наверное слишком тупой, поэтому пойду на го.
295 1459002
>>58995
Апи курутин реально хуевое и конченное. Они решили выебнуться и выкинуть курутины в отдельный пакет из стдлибы, при этом все равно засрав стдлибу и язык дефередом и саспендом. А могли не выбеваться и сделать как в няшном шарпе с async await и полноценной Task<T> и как в дарте.
296 1459029
>>58972

>А Васян, которому надо было про-мокать какой-то класс, остался в сосничестве.


Васяну пора научится делать интерфейсы.
297 1459033
>>58955

>все это топорно и сделано без души.


>>58958

>меня пытаются нае...ть



Да, это именно то чувство.

Сначала смотришь - о, какая классная штука!
Дождались! Наконец-то!
Нахуй эту блядскую скалу!

А потом - опа, а оно всё картонное.
А внутри - говно и палки.

>>58988

>бэкенд надо сейчас откусывать



Анус они себе откусят, я думаю.

Вот это вот ощущение "наебали" - оно у каждого первого.
На андроиде люди просто вынуждены это использовать.
А на бекэнде - извините.

>убрать вирт машину, убрать ООП



Понеслась пизда по кочкам, лол.
298 1459041
>>58990

>добив груви


Разве что в твоих маня-фантазиях, лол.

Это разные языки, чувак. С разными целями.
И Груви - продуманный. Котлин - см. коммент выше.
299 1459052
>>59029
Причем тут интерфейсы твои, если ему надо расширить именно этот класс?
300 1459097
>>59033

>>убрать вирт машину, убрать ООП


>Понеслась пизда по кочкам, лол.



Если тут есть такие матёрые программисты, которые не просто с гита либы ставят, а ныряют в пучину чужого говнокода, то они поймут один момент. Текущий уровень ООП, он не совсем тот который пишут в книжках и преподносится. Если в книгах нам рисовали реальность в которой программист видит мир объектами пиздешь конечно и люди кодили в этой парадигме, то сегодня хорошим тоном является писать код небольшими методами и маленькими классами. То есть, достигается эффект, когда класс максимально решает только свою узкую задачу, подобие как в ФП пишутся функции. И вроде даже это логично, но вот только классы это не функции. На деле, очень низкоуровневый домен (бизнес-задача) покрывается таким же слоем низкоуровневых классов. Где бы в старой парадигме программист сделал бы 3-5 класса, сегодняшний джава-господин сделает 10-15 сущностей из полупустых классов. И получается, что наша логика она не решается где-то в каком-то наборе алгоритмов, она как бы размазывается на все эти классы и при этом она остается такой же низкоуровневой.

Изучать это код и сопровождать становится нереально. И именно поэтому одинаковые по сложности задачи, тот же питонист или гофер - решает проще и быстрее. Именно поэтому люди тянутся к функциям и ФП, которые дают возможность решать проблемы, а не оборачивают их.
301 1459169
>>59097

>То есть, достигается эффект, когда класс максимально решает только свою узкую задачу, подобие как в ФП пишутся функции


> Именно поэтому люди тянутся к функциям и ФП, которые дают возможность решать проблемы


Логика уровня /б

> И именно поэтому одинаковые по сложности задачи, тот же питонист или гофер - решает проще и быстрее


Мантры уровня /б
302 1459189
Сап джава боярам
Есть кто писал на груви? Я правильно понимаю, что груви это почти всегда grails или spring тоже ебошат? Что посмотреть почитать по грувям?
303 1459231
>>59189
Лично я пишу всякие вспомогательные вещи.
Тестирование, скрипты, утилиты и т.п.
Spock посмотри, например (хотя, лично я его не использую).

Т.е. это такой питон/руби но в джава мире.
(Jython/JRuby - не то, я пробовал, при том, что и тот и тот я знаю).

Консоль можно к веб-приложению прикрутить, по типу https://groovyconsole.appspot.com

И т.д.

Как полностью самостоятельный язык - немного не то, лично для меня.
Но, можно писать части джава проекта на груви - вообще беспроблемно.
304 1459237
305 1459245
>>59231
>>59237
Добра тебе, анон.
Baeldung знаю, кстати топ сайтец
306 1459255
>>59245
Запусти в той груви веб-консоли вот это:
f = new File(".")
f.eachFileRecurse {
println it.path
}
println "OK"

На самом деле - это приложение в гуглооблаке (GAE).
Исходники есть на гитхабе, см. ссылку на сайте.
307 1459259
>>59255
круто, чекну
308 1459309
>>59231

>Как полностью самостоятельный язык - немного не то, лично для меня.


Зачем тогда мараться в нем? Не проще ли взять реальные скриптовые языки.
309 1459325
>>59309
Я выше уже написал, что потратил достаточно времени на Jython и JRuby.
Тот и другой язык я хорошо знаю.
И это всё не то, если речь идёт о джава-платформе.

И чем, интересно, груви не "реальный скриптовой язык"?
Реальнее некуда.

>мараться


Ну, так не марайся, лол.
310 1459339
>>59325
Почему так привлекает jvm мир, это же мир жрущего все ресурсы, интерпретированного до jit говна
Процесс руби или питона будет отъедать меньше озу, чем груви на jvm из-за самой jvm
311 1459362
>>59339
Джава (платформа) - это инструмент для создания больших программ.
Большой и сложный инструмент с развитой экосистемой.

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

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

А JRuby, например, и быстрее нативного, и тоже, вроде бы, интегрируется в джава-приложение (и лучше, чем Jython). Но, это не то, это соединение чужеродных вещей. Так делали, пока груви не заматерел - года до 12-го, примерно.
312 1459376
>>59362

>Джава (платформа) - это инструмент для создания больших программ


Насколько больших?

>с развитой экосистемой.


Что значит с развитой?

PS не троллю, просто не люблю абстракцию
313 1459569
>>59376

>Насколько больших?


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

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

>Что значит с развитой?


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

И когда говорят о том, что джава устарела, ненужна и её скоро не будет - это, примерно, как разговоры о скором крахе доллара и мировой финансовой системы. И то и другое говорят люди, не страдающие от избытка интеллекта.
314 1459689
>>59569
А почему именно жава? Что в ней такого особого?
315 1459698
>>59689
Много всего. Кроссплатформенность. Простой язык. Эффективная виртуальная машина. Куча библиотек. Звёзды так встали. И т.д.
316 1459717
>>59689
20 лет умирает, да все никак не умрет
Посмотрим, сколько котлин протянет
317 1459729
>>59569

>Очень больших. Огромных.


Шел 2019 год, а народ до сих пор грезил монолитами.

>о них не пишут хипстеры в блогах


Забавно было бы увидеть как пишут хипстеры о подобие EE, но судя по твоим словам, еще и самописным.

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


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

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

PS
Какой-нибудь js или go господин, легко может взять платформенный http и накатить туда простенький REST. У джавы 100500 говна и толком нет платформенных решений, ты или натыкаешься на детские йоба фреймворки вида get("/" () -> ...) либо на платформенные гиганты типа netty или undertow, в которых разбираться не меньше чем в спрингу или хиббернейте с херовой документацией, то есть надо лезть прям API читать.

И в реальности, вся твоя вера в обилие библиотек, лопается как хрустальная туфелька на жирной ноге.

PS2
Тоже кстати и с ORM, большая часть велосипедов тупо тормозит, или явно проблемная. И после сотни часов тестирования и проб, оказывается что один из годных - это магический гигант хибернейт
image.png339 Кб, 640x360
# OP 318 1459782
ОП перекатился в Go лол, такое бывает
Если нужен тред, перекатывайте и бампайте сами.
319 1459816
>>59052
Что бы мокать ничего расширять не надо.
320 1459833
>>59816
Манипулировать с байткодом?
321 1459903
>>59782
Вот так, примерно, этот ваш Котлин и закончится в некотором будущем.
322 1459951
>>59833
Тебе для юнит тестов? Ну так мокито и вперед.
323 1459960
>>59951
Я тебе спрашиваю за счет чего происходит?
324 1460092
Мне нужно получить первые 100 элементов массива, элементы которого отсортированы по популярности. Я делмаю это с помощью такого кода

val popularityAnimeList: Array<Anime>? = null
get() = field ?: rawAnimeList?.sortedBy { it.popularity }?.take(100)?.toTypedArray()

И это работает, но есть одно но. У некоторых объектов популярность 0 те они мне нахуй не нужны вообще в этом случае, но они попадают в самое начало массива. Возможно поместить какое-нибудь if условие, например популярность != 0, в take?
325 1460120
>>60092
ебни filter
326 1460128
>>60120
Работает. Спасибо
327 1460171
>>60092
Тупорылый виабушник не знает про предикаты, не удивительно.
328 1460212
>>60128
Да на здоровье.
Советую поупрожняться в стрим апи на степике, там есть поток бесконечных задач от JetBrains
329 1460273
>>59960
Не влазил в кишки мокито, но в самом общем случае через прокси.
330 1460295
>>59960
Да, за счёт создания нового байткода и изменения существующего.
Внутри mockito использует библиотеку ASM.
Groovy тоже её использует, например.
Есть ещё BCEL.
331 1460376
>>60295
Ну вот и получается продолжая тему что язык настолько не гибкий, что приходится байткод модифицировать, то есть и так ограниченный много, а Васяну еще и классы по-закрывали.

Не удивлюсь, что в котлин версии 2 нужно будет вообще хэшмапы по количеству будут ограничены. Типа 10 штук на приложение, остальное докупай.
А то видишь ли, я сейчас начерчу график, где покажу что количество говнокода увеличивается с количеством коллекций в коде.

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

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

Лучше бы вообще от ООП отошли, тогда гляди не стали бы такие кишки писать как корутины или ktor.
332 1460416
>>60376
Лол, мокито и в джаве используется, алло. Тебя же не смущает что всякие гибернейты и спринги тоже под капотом байткод меняют?
333 1460421
>>60416
я про жабу и говорю как-будто kotlin не прокси язык
334 1460476
У меня есть веб апи на ktor, которое я деплою через fat jar. Возможно сделать уведомления, например в телегу, если апи выдает экзепшн?
335 1460552
>>60376
>>60421

Ты дурачок? Это риторический вопрос.

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

Или ты не понимаешь, что такое компилируемый язык со статической типизацией?
Это тоже был риторический вопрос.
336 1460571
>>60552
Жабист гордиться своими безопасными программами.
@
В жаба мире критикуется даже юзанье unsafe
@
Жабист смеется что С++ раб роняет программу с сигфолтами.
@
Жабист подключает либу гибкую, гордится либой!
@
Программа на второй фазе луны, в облачную погоду, падает хер пойми как, даже не высрав в лог
@
Жабист - считает что модификация байткода это правильно и даже круто.

Тут есть один больной хер, он просто во всех тредах пытается со всеми спорить, не важно по каким принципам. Это не ты случайно?
337 1460578
>>60571
Как связаны модификация байткода и безопасность?

Ты, вообще, понимаешь, как оно там всё устроено?
С тем же ASM'ом работал?
Это, мягко говоря, не то же самое, что менять память в сегменте кода в сишной программе.
338 1460591
>>60578

>Как связаны модификация байткода и безопасность?


Лол, фонд золотых цитат.

>Это, мягко говоря, не то же самое, что менять память в сегменте кода в сишной программе


А что же))
339 1460610
>>60591
Сынок, ты немножко утомил уже.

Судя по твоим вопросам - ты в принципе не понимаешь, о чём говоришь.
Понахватался всякой хуеты по верхам, и возомнил себя специалистом.
Иди, пиши сочинение как ты провёл лето, скоро в школу.
340 1460803
>>60476
Бамп
341 1460890
>>60803
Ищи, как перехватить исключение.
Логгинг там как-то работает же?

Отправить сообщение - это не проблема, через API сервиса.
Х.з, что там в телеге, не пользуюсь, но SMS - легко, например.
image.png253 Кб, 1920x1080
342 1460910
Интересные тенденции. Самое интересное падение скалы относительно роста котлина
343 1461028
>>60910

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


Почему тебя это удивляет?
344 1461033
>>61028
Есть один момент. Язык может уже накопить какое-то количество ответов, поэтому количество вопросов может уменьшаться.
Так же играет роль документация, на молодом языке чаще опытные программисты, которые будут нырять в доку, чем спрашивать. Спрашивают обычно ленивые копипаст-кодеры.

Данная статистика больше показывает насколько язык становится попсовым.
345 1461043
>>61033
Все немного проще. Компании, которые попробовали Kotlin, спешно переходят на него со Scala. Если ты пробовал писать на Scala что-нибудь сложнее Hello world'a, то наверное знаешь, что тулинг для данного языка полное говно, библиотеки не имеют нормальную документацию, постоянные проблемы с обратной совместимостью, токсичное коммьюнити, сам язык имеет дохера проблем, которые никто не собирается фиксить, а все чаты/форумы, которые модерируются сотрудниками из Lightbend банят неугодных, которые пытаются донести до общественности, что у экосистемы Scala есть актуальные проблемы, которые нужно решать как можно скорее.
346 1461059
>>61033
Анон выше (>>61043) всё правильно сказал.

Могу от себя добавить, что изрядная часть вопросов по скале вызвана запутанностью самого языка. Загугли scala dreaded underscore, например.
Так что, в реале, вопросов по делу для скалы ещё меньше.
347 1461073
>>61059
Никому Scala сейчас не нужна. Revolut с нее не так давно убежал как ошпаренный. Теперь клепают сервисы на Kotlin.
Тинькофф только что вбросил вакансию в java jobs - ищут разработчика на Kotlin. Т.е. и Тинек съежает со Scala.
348 1461104
>>61073

>Теперь клепают сервисы на Kotlin


>ищут разработчика на Kotlin


А надо было им сначала почитать двач, поняли бы, какое это хипстерское костыльное говно без души.
349 1461106
>>61043
>>61059

Думаете котлин выйдет в топ для сервер-сайд?
350 1461116
>>61106
Разумеется. Для этого есть все предпосылки. Язык получит лучший тулинг в плане IDE, о котором в принципе можно мечтать, т.к. его пилит JetBrains. И над плагином работает не 5 человек, которые дрочат баги по 3-5 лет как в Scala плагине, а минимум 10-15 (можешь сам посмотреть по трекеру) и баги фиксят молниеносно - от репорта до фикса обычно проходит не больше нескольких дней.
Kotlin исправил архитектурные проблемы Java и при этом не превратился в Scala с его ебанутым наглухо синтаксисом, медленной компиляцией, херовейшим тулингом и просто ебнутыми библиотеками, которые напрочь забагованы, тормозят (привет функциональное программирование на JVM!) и поддерживаются буквально несколькими разработчиками, а иногда и в одиночку.
351 1461135
>>61116
Для дискуссии.

>лучший тулинг в плане IDE


Да IDE действительно подсказывает и подсвечивает годно.
Но тормозит, злобно и ужасно. После какого-нибудь vs code, просто невыносимо. для условий что нужен по сути тупо автокомплит и рефакторинг. Для средне-ноутбука тоже не пригодно.
Ну и конечно же получается что ты сильно привязан к IDE, если не скулить что есть плагины на другие IDE и прочее мы же понимаем что это не то
Да и вообще vs code, вроде как, обогнал тулинг JB, будет ли у JB будущее вообще?

Насколько актуальная вообще jvm?
Сейчас эпоха асинхронных маленьких микросервисов. Не слишком либы джавы жирнющие и для огромных монолитов? Подымаешь crud под котлином - 150мб, подымаешь crud на том же го - 10мб. Причем под котлином надо еще и jit ждать, по началу старт интерпретированный, насколько я понимаю наверное что-то на уровне пхп

Асинхронность?
Джава/котлин по природе синхронные и эта возня с корутинами, не самая удобная, в сравнение с другими синхротронный языками с async/await. Встречаются странности, например как отлавливать исключения и как они там вообще работают у меня исключения протекали из корутин вне catch

Тут еще и дарт под ногами, судя по графику уже догоняет котлин. В отличие от котлина, у которого ничего нет у дарта есть флагман, который его и тащит.

У меня, в общем, странные надежды на будущее котлина и джавы. Конечно капитал кода огромный, как у пхп и cobol и никуда это не денется, но будет ли на этом фокус?
352 1461138
>>61135

>с другими синхротронный языками с async/await.


Чет орнул с моей автозамены)))
353 1461143
>>61135

>vs code, вроде как, обогнал тулинг JB


Пиздец, с кем я на одной борде сижу. Беги собирать портфель, недоумок.
354 1461154
>>61143

>Голословные сообщения, без содержания.


>Называет кого-то школьником


Окей
355 1461166
>>61143
Иди просрись, малыш
https://insights.stackoverflow.com/survey/2018#technology-_-most-popular-development-environments

Nodepade++ популярнее чем твоя IDE
356 1461182
>>61135
Ты сочинение написал уже?
Давай, иди готовься к школе, и так всё лето проебланил.
357 1461357
>>61073
не совсем так, просто новые микросервисы ебошат на котлине, а еще некоторые джава рефакторят на котлин, так что не факт что замена скале

мимо работал в тиньке
358 1461388
>>61357
Какой стек юзают в котлине, спринг??
359 1461471
>>61388
Какой хочешь - любой, который есть на jvm.
Кроме очевидного jruby on rails, лол. Хотя, можно и его, наверное.

Котлин ещё и в джаваскрипт компилируется.
Я не пробовал, правда.

Пробовал пару лет назад https://www.scala-js.org - забавно.
Но, практического смысла ноль - нет отдельного рантайма.
И всё компилируется в один толстый js файл.
И даже хелловорлд, в итоге, весит полтора мега, или типа того.
Как с этим в Котлине на жс - х.з., вообще не смотрел.
360 1461475
>>61471
Глянул сейчас - в Котлин жс есть отдельный рантайм и стандартная библиотека. В отличие от скалы.
Выглядит интересно, возможно, попробую.
361 1461547
>>61471

>Какой хочешь - любой, который есть на jvm.


Офигенный совет, спасибо что в гугл еще не послали.
По конкретнее можно. Ты же пишешь на джаве, какой у тебя стек (на работе/дома)
362 1461549
>>61547
Мой стек тебе вряд-ли подойдёт, лол.
Java EE + зоопарк на фронтенде

И я не пишу на Котлине, пока.
Если буду что-то делать в ближайшее время, то это, наверное, будет что-то на Swing. В конце концов, этот ваш Котлин для этого и придумали в JB. На скале это дело у меня, в своё время, не пошло дальше экспериментов, у Котлина шансов гораздо больше.

Если пойдёт, то потом будет бекэнд. Но, тут всё сложнее из-за специфической процедуры сборки и деплоймента, в моём случае. Надо будет что-то мутить. Т.е., дело не в самом языке.

Возможно, что >>61357 тебе расскажет что-то более интересное для тебя.
А так - Спринг, наверное.
363 1461560
В блядском котлине нет литералов коллекций.
Ну не пидорасы, а?
Причём, уже 4 или 5 лет висит реквест, и им похуй вообще.

Вот нахуй он вообще нужен такой?
Ещё про какие-то скрипты что-то пиздят. Про Gradle. Про замену Груви. Вообще охуеть.
Клоуны, блять.

Получается ситуация ещё интереснее чем с питоном и Гвидо, который лучше знает, какие фичи нужны, а какие - нет.
364 1461564
365 1461576
>>61475
Это все потому, что над Kotlin проектами работают целыми командами и это практически всегда инженеры JB.

А над проектами экосистемы Scala работают студенты Одерского, которые после получения PhD сваливают в коммерцию и довольно часто меняют стек, лол.

Олаф пилил Metals и его не так давно схантил Твиттер.

Феликс занимался компилятором Dotty и его схантил финтех стартап из Швеции и теперь он пишет на Haskell.

Петрашко пилил Dotty, но его схантил Страйп и теперь он пилит тайпчекер для руби, лол.

Конрад (он правда не являлся студентом EPFL) пилил Akka, но потом его все достало и его схантил эппл и теперь он пишет на Swift.

Бурмако занимался макросами в Scala, но его схантил гугл и теперь он пишет на Swift для Tensorflow.

Есть еще Шабанин, который зачем то ковыряет Scala Native, когда есть целая команда отборных инженеров Oracle, которая работает над GraalVM. Но вангую, что Scala Native - просто тезис для PhD и как только он выпуститься из EPFL, то проект просто заглохнет.

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

Scala.js разрабатывается каким-то мутным челом в одиночку, когда над Kotlin.js пашет целая команда из JB.

В общем ты понял к чему это все идет, не так ли?
sage 366 1461596
>>45837 (OP)

>Немного ФП


>нихуя из оптимизаций из фп-языков


уноси своё говно
олсо
есть хайповая скакалка в которой фп нахуй не усрался и тебе платят тупо за умение писать на жабе с другим синтаксисом
есть жаба с функциями-объектами
котлин нинужен
367 1461634
>>61576
Какая разница, что, мало успешных языков поддерживаемых 2.5 людьми? Какая разница что Котлин поддерживается стабильной командой, если весь их продукт это ява с нескучным синтаксисом?
368 1461638
>>61634

>мало успешных языков поддерживаемых 2.5 людьми?


Верно. Таких языков в принципе нет. Даже Haskell над которым лолируют в треде активно разрабатывается инженерами Майрософта. Или какой-нибудь OCaml в который Jane Street вваливает бабло и пилит библиотеки и инфраструктурные штуки.
369 1461639
>>61576
Это с каких инфоресурсов?
370 1461649
>>61638
В окамле как раз полтора человека на поддержке.
Про стабильность команды хаскеля я вообще молчу, есть несколько человек, все остальные так же приходят и уходят. Впрочем, ничего плохого в этом нет.
371 1461735
>>61388
Спринг в основном, а так много чего есть
372 1461743
>>61649
Это круто когда ты хочешь дома поиграться или пофапать на язык. Но это совершенно смешно для серьезного бизнеса.
373 1462226
>>58972

> Простая ситуация DSL, когда тебе надо записывать "конфигурировать", но не ненужно читать. Точнее не нужно чтобы поля фигурировали в правых выражениях get. Тут нам и требуется публичные set, приватный get.



Держи воркэраунд: объявляешь публичный get, кидаешь из него исключение, а чтобы никто его не вызвал, вешаешь на него @Deprecated(ERROR)

https://pl.kotl.in/1dQsdqvUC
374 1462376
>>62226
И зачем это?
Можно же просто не делать get вообще?
375 1462410
>>62226
Костылезация какая-то и пропадет он из автокоплита? Или автокоплита в другой IDE?

Я не хочу чтобы мои DSL падали в рантайме, мне же обещали супер DSL которые проверяются на уровне компиляции.
DSL который падает в рантайме, я и сам напишу. Причем это будет настоящий DSL.
376 1462549
>>45837 (OP)
Не могу найти тред джавистов, спрошу здесь.
Надо быстро разобраться с транзакциями в спринге. Нужно для работы с базами. Что почитать об этом? В Spring in Action 5 нет ничего про это.
377 1462579
>>62549
А чо, на спринг.ио тебя уже забанили, шоле?

https://docs.spring.io/spring/docs/4.2.x/spring-framework-reference/html/transaction.html
image.png323 Кб, 1001x812
378 1462596
Почему мое ktor api в дебаг версии поля, у которых значение null, парся ответ в json через gson, игнорит, просто не выводя их, а в fat jar версии задает им значение "". Код одинаковый. Как мне добится игноринга в fat jar? Ну или хотя бы задавать им null вместо " ". Поле titleEnglish имеет String? тип
379 1462736
>>62596
Не знаю, попробуй сконфигурить Gson через GsonBuilder, мб поможет
380 1462807
>>61743
От того что у тебя команда 50 рыл на пожизненном контракте продукт сам по себе лучше не станет.
Да и по продуктивности, вон Одерский с, как ты выразился, студентами, норм клепает: dotty за несколько лет, Scala 3 на 90% готова, это все при регулярных минорных релизах и подготовке к плавному переходу на новую версию. Так там хоть понятно что делается, в языке куча фич, до которых джавам в говне плыть и плыть, есть что переосмыслить, переделать, систематизировать.
Всякие кложи и эликсиры показывают что для языка-обертки вполне хватает команды до 10 человек, так что хуй знает зачем котлину нужна мега-тима.
381 1462812
>>62736
Пробовал. Не помогает
382 1462838
>>62812
Хуёво, тогда хз, попробуй как вариант просто не ебашить по кнопке run, а поочередно таски вызывать.
А, ну или просто дефолтное значение поставэ на titleEnglish и будет тебе счастье.
И вообще, если решишь проблему, то отпиши плиз
383 1462935
>>62376

> Можно же просто не делать get вообще?



Сейчас нельзя. Если get не написать, его сгенерируют автоматически.
384 1462938
>>62410

> мне же обещали супер DSL которые проверяются на уровне компиляции.



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

> Костылезация какая-то и пропадет он из автокоплита?



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

> Или автокоплита в другой IDE?



Какой другой ИДЕ, даунич? Один язык - один компилятор - одна ИДЕ
385 1462939
>>62935
Ебал я такой котлин.
Они же ебанутые, лол.
Лучше бы литералы нормальные сделали.

Вообще, есть ощущение, что у них это всё начало рассыпаться под собственной тяжестью. Чем-то напоминает говношарп. Нет изящества, безблагодатно как-то. Масштаб личности создателей немножко не тот, похоже.
386 1462940
>>62939
Скажем так с литералами (для коллекций) было бы лучше, но и без них вполне можно жить. Если посмотреть, за что люди голосуют, то там литералов даже в топ-100 нет: https://youtrack.jetbrains.com/issues/KT?q=sort by: Votes
387 1462954
>>62939
Многие со мной не согласятся. Но вот такие тезисы я вижу.

Люди тупо делали продукт и сделали как смогли. То есть никакого "для души", а просто натаскали что могли. Что самое классное IDE работает с котлином лучше, чем котлин выглядит сам. Все эти подсказки и прочее И по этой же причины котлин будет ограничен IDE всегда то есть останется обёрткой, а не языком с революционными фичами
Ну и ты будешь ограничен IDE, потому что гладиолус.

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

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

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

Я так же не понимаю этот ваш Ktor, вообще не понимаю как в 2019 году, в эпоху микросервисов можно было выпустить язык без встроенного http. Почему гофер в 5 строк подымает полноценный микросервис, а я неделю трахался с ktor?
Как оказалось, он еще и по тестам techempower не хило так просел.

PS самое мое любимое это
System.`in`
388 1462971
>>62954

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



Не пизди про спринг, он еще с 2017 года с котлином дружит: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/languages.html#kotlin

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

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

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



Непонятно как эти два утверждения следуют одно из другого. Можно например иметь революционной фичей отличную поддержку в IDE и прочем тулинге.

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

> Я так же не понимаю этот ваш Ktor, вообще не понимаю как в 2019 году, в эпоху микросервисов можно было выпустить язык без встроенного http.



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

> самое мое любимое это System.`in`



val stdin get() = System.`in`
и заебок. Не благодари.
389 1463112
>>62971
Факт в том что зарелизили несовместимым. То что потом плагины кабанчиком прибежали или спринг подсуетился сам, это не меняет утверждение о дальновидности

>Непонятно как эти два утверждения следуют одно из другого


Думать мы конечно не будем, будем маневрировать.

>То тебе полный интероп подавай


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

>ktor и есть http из коробки.


И это ужасно.

>val stdin get() = System.`in`


Это еще прекраснее.
390 1463731
Мне вот все интересно, как в вашем огрызке от for, делать реально сложные вещи как
for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1
https://github.com/golang/example/blob/46695d81d1fae905a270fb7db8a4d11a334562fe/stringutil/reverse.go#L23

Не засирая при этом область видимостью переменными из цикла?
391 1464141
>>63731
Если ты всерьёз хочешь такое писать, то этот язык не для тебя.
392 1464185
>>64141
То есть, заюзають классическую вариацию для for - никак?
sage 393 1464209
>>64141
а для кого
394 1464409
>>63731

> реально сложные вещи


> for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1


> stringutil/reverse.go



val string = "hello"
val reversed = string.reversed()
println(reversed)

Не надо ебаться с циклами, когда за тебя это уже сделали в стандартной библиотеке.
image.png134 Кб, 248x350
395 1464495
Аноны, есть ли эта книжка в открытом доступе? Поделитесь ссылкой, пожалуйста
397 1464502
>>64495
вначале я подумал на обложке урина
потом что там флаг украины
потом прочел котлин и даже не знаю что и думать
398 1464516
>>64502
Советую задуматься о том, что у тебя явно завышеная концентрация /po/ в крови.
399 1464531
>>64516
это /news/ -_-
400 1464532
>>64498
Дзенькую бардзо
401 1465270
Чем отличается
println("3. Age: ${age}")
println("4. Age: $age")
в котлине ?
402 1465373
>>63731
(0 until r.length / 2).zip((r.length - 1 downTo 0)).map { (i, j) ->
println("$i - $j")
}
403 1465407
>>65270
Фигурные скобки нужны для вызова у переменной дополнительные вызовы методов.
404 1465463
>>65407
Понятно, спасибо.
405 1465520
>>65373
жуть какая
406 1465684
Хлопци, а каковы перспективы у котлина в мобилоразработке в свете ставки гугла на дарт и флаттер?
407 1465691
>>65684
Если прям перемоделить в голове имеющую информацию, то все зависит как скоро будет годная версия native. Но судя по текущим темпам все печально.

Флаттер вроде как дает кросс-мобильную разработку, неизвестно (мне) на практике как это удобно и практично, но выглядит как серебряная пуля, которая снесет все.
Если они осилят некий "флаттер" под фронтенд, то это будет убер поинт.
408 1465737
>>65691
можно подумать флаттер это первое или лучшее на сейчас решение которое обещает кроссплатформу
409 1465740
>>65737
У котлина разве что-то есть такое?
410 1465741
>>65740
я имею ввиду вообще
и вообще при чем тут флаттер и котлин тогда, в флаттере надо писать на некоем "дарте"
image.png253 Кб, 1920x1080
411 1465756
>>65741
Твой "некий дарт" уже в затылок котлину дышит, пока ты там в бункере своем сидишь.
.png94 Кб, 2305x1223
412 1465879
>>65756

>Дарт и котлин популярнее го о котором вещают из каждого утюга


Ну это вообще пушка. Данные из google trends выглядят по адекватнее.
413 1465881
>>65691

> Если они осилят некий "флаттер" под фронтенд, то это будет убер поинт.


Так флаттер уже запускается в браузере. Просто пока на стадии альфы.
414 1465885
>>65879
u know man, these guys who take metrics from words searching...

Если я заведу скрипт который раз в 5 секунд что-нибудь пишет про dart int type он будет расти? Может быть, такие имбецилы как ты увидят это и побегут туда.
415 1465886
>>65684
Если фусчия взлетит - то норм. Иначе нет.
416 1465887
>>65886
Норм в плане дарта.
417 1465889
>>65885
Ты не очень умен, раз не заметил что это SO рейтинг, в данном контексте он показывает относительный интерес к языку.
418 1465890
>>65889
SO рейтинг, где написано Web Search?

В данном контексте он показывает погуглил - забыл.

Самые адекватные(subjectivity) оценки это redmonk. Да и мне вообще похуй на эти два языка.
419 1465893
>>65684
Я хз про перспективы, но сейчас котлин в андроиде - стандарт, все на нем пишут или переходят. Дарт как язык говно, будет жаль, если в будущем он начнет захватывать рынок. Флаттер вроде неплохо, но это кроссплатформа со всеми вытекающими.
Котлин - это уже настоящее и будущее нативной разработки для андроида + удобная и многообещающая мультиплатформа с нативным UI. У нас в компании активно используется мультиплатформа от котлина для андроида и ios. Косяки свои пока есть, но это уже неплохо работает и можно использовать. Разработка значительно ускоряется, поскольку используется единая кодовая база. Перспективы очень интересные, с учетом того, что JB в этом направлении тоже заинтересованность проявляют.
image.png268 Кб, 440x959
420 1465897
421 1465900
>>65893

>мультиплатформа от котлина


Попробуй тоньше.

Не дай бох это пасте поверят.
422 1465930
>>65893
Как будто нам выделили маркетолога.
423 1465935
>>65900
Пробую - уже несколько проектов продали на мультиплатформе. Просто потому, что так быстрее и дешевле для заказчиков.
424 1465953
ебаная капча
425 1465965
>>65935

>дешевле для заказчиков.


Хвалиться тем что получили меньше денег? Да ты точно или фанбой или маркетолог.
Типа знаешь, слоган - "теперь наши продукты с котлином пишутся быстрее и дешевле для вас"
426 1465996
>>65965
Давай вместе попробуем составить логическое следование, если компания начинает быстрее делать проекты и тратить на них меньше ресурсов, то, чисто гипотетически, можно взять еще один или несколько проектов. Или слишком сложно, тяжело осознать?
427 1466005
>>65935
Ахахахахах

Я лучше буду на хуях сидеть и писать на флаттере. Котлин говноплатформа это что-то вроде на уровне микрософтовского хамарина.

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

>Дешевле для заказчиков



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

Дальше нет смысла пояснять на двощах что-либо еще.
429 1466018
>>65996
дебил блядь тебе то больше от этого не платят
430 1466048
>>65996
Да обосрался уже, зачем ты этим говном тут обмазываешься и отмазываешься.
431 1466110
>>66006

> Когда действительно делаешь мультиплатформу - ты заявляешься к заказчику и ставишь условия + ты берешь в 2 раза больше.



Не обязательно при этом тратить в два раза больше. Меньше себестоимость разработки - больше себе в карман.
image.png512 Кб, 700x1029
432 1466121
>>65996
У джавы есть такой раздутый пузырь лжи, мол джава является каким-то супер надежным инструментом и вообще, если ты серьезный бизнес то должен выбирать именно джаву.
И вот у жирного бизнеса из уст в уста передается эта мантра. И это дает право пилить проекты медленно с большим обилием говнокода. И пофиг, что какой-то пхп-формошлёп делал это за один день вместо недели, это же была джава!

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

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

Джава ужасна, никакой груви или котлин не спасет её. Бегите! Это дно кровавого тырпрайза и на этом дне покоятся души миллионов разработчиков, которые верили в хороший код.
433 1466154
>>66121

>хороший код


>хороший


>код


борщехлебушек, ты?
434 1466191
>>66121

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


Согласен с ним. Убежал полгода назад с нее.
435 1466200
>>66121

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


А там какая джава?
436 1466204
>>66200
Могильная.
437 1466336
>>66191
Кудыть убяжал-то?
438 1466384
>>66336
Наверняка на питон или шарп?
439 1466454
>>66336
На свифт.
440 1466455
441 1466478
>>66121
А какие альтернативы?
image.png215 Кб, 480x480
442 1466512
>>66478
Для бэкенда?

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

Если нужно выжить максимум из микросервиса в ущерб простоты разработки - раст или с/с++

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

Если ты попал в такую жизненную позицию, когда понял что все языки говно и кругом сплошное наебалово и не хочется уже учить зоопарк языков, а хочется максимум гибкости, которую ты сам можешь контролировать без надменных-ограничений и костылей языка - то это js.
443 1466568
>>66512
люблю манек пишущих про производительность.
Инстаграм, ютуб нормально на питоне работают. Спотифай на рельсах живет.
Ох уж эта производительность..
444 1466661
>>66568
То что там питон масштабируется по серверам это и ужу понятно, вопрос в том сколько этих серверов у тебя будет.

В общем, ты херню сказал.
445 1466662
>>66661
>>66568
Простой пример, у тебя есть vps за 20$ и го держит 10к хостов в день, прибыль у тебя в 200 долларов. Чистая прибыль 180.
А теперь берем питон, который уже не умещается на vps и мы покупаем сервер за 120$, и чистая прибыль получается у тебя уже 80$

Печалька, да?
446 1466675
>>66662
Меня твои истории просто доебали уже, я уже не могу их слушать, блядь. Одна история охуительней другой, просто, блядь. Про говно, блядь. Про какую-то хуйню, малафью. Чё ты несешь-то вообще? Ты можешь заткнуться? Шишка, блядь, встанет — возбудимся, блядь. Чего, блядь? Про что несешь? Вообще охуеть.
image.png719 Кб, 900x900
447 1466679
448 1466751
>>66662
Какая печалька. Я думал здесь адекватных найду, но все, хватит на такую клоунаду отвечать.

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

ушел
449 1466752
>>66751
И ты сначала набири свои 10к хостов. Шизик.
450 1466758
>>66662
Проиграл на всю квартиру. Ты тут сидишь, дрочишь свои копейки, когда один программист получает сотни тысяч долларов в год.
Ну и твои рассказы о том как здорово писать приложения на пыхе и питоне с руби, ведь они такие СКЕЙЭЛЭБЛ! просто жалки.
Ты хотя бы навел справки на какие языки переехал Твиттер, Инстаграм и что сделали в Фейсбуке и ВК, чтобы их приложения обрабатывали сотни тысяч запросов в секунду.
451 1466822
>>66675
>>66751
>>66758
Теперь я понимаю насколько тут школие засело.
Им приводят пример на простых цифрах никто не мешает эти цифры по-множить на 100000 и получить ваш фейсбук или твиттер, а эти бараны рассказываю "кококо программисты дороже".

Интересно, если бы я сразу сказал про 800000$ то меня школьники зауважали больше? бестолковые бараны, с шаблонным мышлением
452 1466827
>>66752
Набираю, а что?
Ты же понимаешь, что описанный неординарный опыт на железе не с пустого места взят?
Вместо подогрева пердака, и вечного "врёти", лучше бы поучился бы у батьки как и на чем делать успешные проекты.
453 1467215
>>66512

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


> без


>костылей


> js.


Ну ты понял
454 1467249
>>67215
Наверное он имел ввиду, когда не хватает гибкости для очень частых задач и люди придумывают шаблоны программирования, не думая что это по сути идея-фикс
FPinKotlinhiresMEAP.png89 Кб, 720x907
455 1467439
Охуеть.
В августе Маннинг решил выпустить римейк Functional Programming In Scala на Котлине.
От тех же авторов, плюс добавился ещё один.
Пока там ещё нехуй читать - две вводных главы, но, сам факт.

Посмотрел бегло введение - это уже другая книга.
Разжёвывают более подробно даже простейшие вещи. Атмосфера другая.

Не знаю, хорошо это или плохо. Например, римейк FP In Java на Котлине (>>50902) получился не очень, на мой взгляд. Посмотрим, что выйдет из этого. Версия на Скала стала мега-хитом.

https://www.manning.com/books/functional-programming-in-kotlin

Пиратки, я думаю, пока нет, по очевидным причинам.
456 1467843
Какой смысл котлин скриптов, если бедная стандартная библиотека? Или в котлин скрипты можно импортить внешние библиотеки?
457 1469341
Что-то утонул тред
sage 458 1469832
>>69341
kotlin не тонет
image.png136 Кб, 432x360
459 1469847
460 1472063
#Kotlinжыви
Picture2.png142 Кб, 740x555
461 1472116
Где скала-тред?
image.png113 Кб, 1156x760
462 1472117
>>72116
Скала всё
464 1472213
>>72119
Котлин - это такое импортозамещение.
Отечественный продукт.
Результаты - соответствующие.
465 1472270
>>72119
Как у него стринг логическую хуйню возвращает?
миможавист
466 1472308
>>72270
где ты там стринг видишь?
кроме явы (жавист, блядь) никогда ничего не видел, шоле?
467 1472324
>>72308
Стринговая константа в принтлне
468 1472328
Breslav-2.jpg65 Кб, 400x400
469 1472348
>>72119
Слыш, абизьяна черножопая, ты чо женщинесс не уважаешь? Вон из ПРОГРЕССИВНОЙ ЧАСТИ ОБЩЕСТВА, на Котлине тебе писать запрещено!
470 1472354
>>65893
Если флуттэр взлетит, то js-петушки подсуетятся и соберут какой-нибудь ts2dart "из спичек и желудей". Такая попытка была несколько лет назад, но заглохла из-за ненужности дарта.
471 1472374
>>72328
и кого ты пытаешься наебать котлинопетушок?
без downTo как раз получается false во втором
472 1472375
>>72324
т.е. такой синтаксис, жавист, тебе ни о чем не говорит?
"simple integer: %d%n"
тоже константа, заебись

и доллар перед аск/деск тебе тоже ни о чем не сказал?

ты лабу2 уже написал, или ждешь, когда старший брат придет с долбильни и поможет?
image.png110 Кб, 1209x694
473 1472423
>>72354
Судя по тенденции, то либо напишут свой флаттер под js/ts, который еще окажется круче флаттер, кстати и правда говно, либо флаттер перепишут под js.

Пока кучка статических макак объясняла всему миру как хорошо писать бестолковые длинные рекурсивные дженерики и как весело кастовать числа в строки, заворачивая в кодогенерацию или рекурсию то, что делает динамико-мастер в пару строк. Динамико-господа решили что мир будет писать на динамике и вывела в топ нужные языки.
474 1472450
>>72270
булевое значение возвращает
3 сравнивают в диапазоне 1 по 10.

На самом деле, если не ошибаюсь, говно делает нечто такое
1 < 3 && 3 < 10
Естественно такое оподлививается
10 < 3 && 3 < 1

То есть, диапазоны диапазонами как бы и не является. Вообще, там в котлине полно таких WTF, как только выходишь за рамки кода презентации (смотрите паззлеры). Я хз как они синтаксис 6 лет пилили, там в некоторое говно за неделю вляпываешься.
475 1472470
>>72450
Котлин - это новый жс.
slonik2.jpg46 Кб, 600x401
476 1472474
477 1472476
>>72470
Жс несмотря на говнокастинг дает сильную гибкость кода да, там можно сделать даже свои extension functions, котлин же ничего не дает, а местами некоторое ограничивает или запутывает.

В любом случае жс с эволюционирует и становится лучше в край можешь накатить ts, а котлин умудрился даже высрать свои "асинки" для корутин, которые еще IDE-лок
479 1472523
>>72470
Котлин - это набор грязных хаков.
JB придумали его, чтобы облегчить написание своей иде на свинге.

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

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

Скала, при всех её проблемах - полноценный язык.
А котлин - именно, что набор хаков, без какой-либо стержневой идеи (null-safety - этого как-то мало).
Думаю, через какое-то время он просто развалится под собственной тяжестью.
480 1472539
>>72523
Нахеру гуглу вливать в чужой язык? Он им побоку, я думаю.
JB придумали его чтобы продвигать свои продукты, это вроде даже не секрет (какой-то там подкаст).

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

Большинство программистов не любят сложности, они не любят писать код ради кода, средний программист ленив и любит решать задачу максимум просто. Но жаба она многословна и топорна, у котлин был шанс завернуть джаву в подобие питона, сделать многие вещи просто, дать людям простые решения. Но увы, мы получаем ту же джаву, с бестолковыми абстракциями и бойлерплейтом тупо с другим синтаксисом.
image.png110 Кб, 1209x694
481 1472542
>>72539
Пространные вещи маркетологов.

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

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

-Можно было сделать котлин сразу асинхронным?

-Можно было сделать отдельный простой пакетный менеджер? Почему люди пришедшие с ноды или питона просто плюются от gradle?

-Можно было сделать синтаксис для простых типов контейнеров [], {:}...

И т.д.
482 1472545
>>72539

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


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

>Нахеру гуглу вливать в чужой язык?


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

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


>джаву, с бестолковыми абстракциями


>го


>...



Ты, чувствуется, матёрый эксперт.
Это не ты в соседнем треде рассказываешь, как поднимаешь 5К на андроиде в 26 лет? Там ещё картинки не хватает, с котиком и лампочкой?
483 1472579
>>72545

>Ты, чувствуется, матёрый эксперт.


Ни капли

>Это не ты в соседнем треде рассказываешь


Нет. Если он подымает 5К из такой перенасыщенной конкурентной среды в одиночку, то вопрос зачем он тогда пытается компенсировать свою потребность во внимании через двачи? Фантазер, ты меня называла...
484 1472589
>>72063
this_is_fine.jpg

>>72374
И это правильно.
Ибо когда я пишу for(index in 0..size-1), я ожидаю что при size=0 рейндж 0..-1 окажется пустой, а не состоящий из 0 и -1.
485 1472595
>>72589

>я ожидаю


Тебе подсунули вместо цикла-счетчика for(;;) какую-то херню, назвав это диапазоном и чтобы это вообще работало, навернули тонну костылей (в том числе downTo, until).

Проблема в том, если назвали диапазоном, и этот диапазон он равен 0..-1 - я хочу получить последовательность "0, -1", а не чтобы ты мимо индексов не промахнулся. То есть когда я вижу 3 in 10..1, мне нужно true.
486 1472599
>>72595
При чем здесь for?
Можно с тем же успехом использовать такой диапазон внутри if:
if (index !in 0..size-1) throw IndexOutOfBoundsException()

Суть в том, что пустой диапазон индексов 0..size-1 — это на практике гораздо более частая ситуация, чем 3 in 10..1, и предсказуемое поведение в первом случае перевешивает недостаток, что во втором случае для новичков результат оказывается слегка неинтуитивным.
пхп.png18 Кб, 392x620
487 1472624
стабильность.png244 Кб, 1000x750
488 1472625
489 1472691
>>72476

>котлин умудрился даже высрать свои "асинки" для корутин, которые еще IDE-лок


Это в чем, же там IDE-лок?
490 1472808
>>72691
Нет await, чтобы понять где перед тобой асинхронная функция нужно IDE и скорее всего правильная IDE
491 1473219
>>72808
Есть suspend, который дает понимание того, что код выполняется в корутине. Вызвать саспенд функцию вне корутины не даст компилятор. IDE для этого не нужна.
492 1473221
493 1473246
>>73219
А ты не очень умен, да?
494 1473395
>>73246
Не, у меня мозгов хватило, чтобы не писать на жс.
495 1473458
>>73395
Ты уверен что видишь полную картину ИТ мира?
JS
+ Единый язык бэк и фронт
+ Доступный прокси-язык TS, с честным интеропом.
+ Возможность писать как динамикой JS так и статикой TS
+ Сразу асинхронная работа, в том числе честный асинк/авэй
+ Массивы/словари сразу объекты
+ Теперь и поточная масштабирование.
+ Хорошо оптимизированный JIT, местами если знать нюнасы можно просесть всего 2 раза чем С++
+ Теперь и машинное обучение.
+ Си подобный синтаксис, а не маня-фантазии как в питоне.
+ Идея мелких библиотек утилит, вместо монструозных фреймов как в жабе.
+ Сильнейшая гибкость кода, вплоть до создания полифилов.
+ Инструменты развивающиеся конкуренцией, а не маркетингом кровавого тырпрайза.
+ Кроссмобильная разработка.
+ Десктопная разработка

- Слабая типизация и проблема с автоматическими кастами (все это фиксится TS)
- Потребность использования babel
- Асинхронная природа это и плюс и одновременно минус, накладывающий требования на первоначальный навык.
496 1473566
>>73395
если выбирать между жопаскриптом и жабой с нескучным синтаксисом то выбор очевиден
497 1473738
>>73458

> + Идея мелких библиотек утилит, вместо монструозных фреймов как в жабе.


А это разве не в джс такие монстры как реакт, вуе и тд?
мимо не-джсник
498 1473866
>>73738
А это разве монстры лол? Реакт сам по себе простая библиотека для ui. Его экосистема это все отдельные модули.

Единственный монстр это ангуляр, вот там да, довольно большой полноценный фреймворк.
499 1473914
>>73738

>монстры


Vue - ультралайт вообще.
Единственное светлое пятно во мраке современного жс, если использовать его в ES5-режиме, без .vue-файлов.

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

Но, проблема там вообще в другом. Инструментарий монструозен.

Сам по себе Node + либы, чтобы писать на том же реакте, бабель, хуябель - весит больше, чем JDK + разумный комплект либ.
И всё это постоянно бурлит, меняются версии языка, фреймворков, библиотек, инструментальный софт, короче - кипит движение в помойной яме.
Набери, например, в гугле "insane js tooling" или "javascript fatigue".
500 1473954
>>73866
На самом деле получается, что начинаешь с какого-нибудь express, все заебись, легковесно и просто, а через полгода ВНЕЗАПНО приходишь на работку а у тебя там ебанный франкенштейн из слепленных вместе десятков легковесных либ. И сидишь и думаешь, что лучше бы, блять, рельсы или джангу взял, где хотя бы все уже слепили за тебя и слеплено в любом проекте все более-менее одинаково.
мимо-перекатился-с-жирного-фреймворка-на-жс
501 1473959
>>73954
Современный жс - это лютейшая деградация технологий.
Эти пидары просто перечеркнули последние 20-25 лет развития разработки софта, и начали с нуля.
502 1473971
>>73458

>Возможность писать


Ещё жквери рамда и тд, кто как хочет так и пишет

>Си подобный синтаксис


Императивщина. Статические члены в жабу добавили для сишников и null тоже

>Инструменты развивающиеся конкуренцией, а не маркетингом кровавого тырпрайза.


TS, Angular из тырпрайза. Майки запороли ecma4, гуглы выкатили v8, дабы захватить мир хромом
Возможность писать
+ Кроссмобильная разработка.
+ Десктопная разработка
Жс неплох морды делать, адекватной альтернативы для фронта нет
DQyp6VOVAAADl-7.jpg35 Кб, 800x438
503 1474007
>>73954
У всего есть свои минусы. Да, в JS много сомнительных решений по дизайну языка и т.д., но альтернатив по факту нет и не предвидится. Слишком прост, удобен и функционален нынешний фронт, не смотря на кажущийся зоопарк маленьких "либо" и фреймворков - там все находится на своих местах и не просто так. 10 лет назад веб-разработка была ужасом на крыльях ночи, особенно фронт. Сейчас же тулзы позволяют с легкостью писать красивые UI. Ну и для бэка нода отличный вариант тоже - тот же язык, переиспользование кода, асинхронность, какая-никакая скорость и т.д.

Рельсы и джангу никто не отменял - не каждый сайту это SPA, в большинстве случаев проще будет выкатить MVP на рельсах, чем пердолиться с нодой отдельно и фронтом отдельно.
14904105723570.png513 Кб, 657x516
504 1474157
Частенько пишу некоторый визуал и юзер скрипты для сайтов, насколько же js удобен. Я прям представляю какой адок бы был, если UI дергать на жабо-подобном статическом языке.

Уже вижу тонну кастов строк в числа, длиннющие дженирики ради дженериков и абстракции ради абстракций (паттернов, в том числе фабрик)
505 1474222
>>74157

>Уже вижу ...


Ты, в общих чертах, описал разработку на typescript и ангуляре.
506 1474506
>>74222
Я и говорю, статик типы в UI это бред какой-то, тонна кода ради кода
507 1474527
>>74222
Кстати, единственный пригодный тырпрайз фреймворк
508 1474884
>>45837 (OP)

> Kotlin


Кто разрабатывает, на какие деньги, для каких задач?
509 1474917
>>74884
Как там, на Марсе? Что с погодой?
510 1474989
>>74506
Есть маленький нюанс в том, что на фронте помимо чистого UI происходит обработка кучи логики, запросов и стейт менеджмент.
511 1474990
>>74989
Поэтому, удобно иметь опциональную типизацию.

Например, идея поддерживает типы в комментариях, в том числе, ссылки на типы, определённые в файлах d.ts. При этом, ни node, ни typescript в проекте не нужны, что интересно.
512 1475006
>>72595
Ты же понимаешь, что это заложенная на уровне дизайна семантика? Даже в Ruby, от сахарности которого может слипнуться жопа, через две точки можно конструировать только неубывающие диапазоны.
513 1475009
>>75006
Нет, просто статико-контуженные не понимают, как это использовать мощный полиморфизм с возможностью оперировать данными, над типами.

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

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

То есть, статико-мэн мыслит уровнем ниже и решает проблемы которые в предметной области то и нет.
514 1485019
Перекотите уже, кто нибудь.
515 1485193
>>85019
перекоти
516 1485808
>>85193
Нет ты
517 1485842
>>85808
Нет, ты.
519 1488374
>>87810

Мало ли что он хочет, если пишет под андроид, то выбора уже нет.
520 1488605
>>88374
Мне почему-то думается, если поднять какую-то статистику, то окажется что на джаве до сих пор пишет львиная доля программистов. Маркетологи хорошо на уши присели.

Ну и надо признать что сам котлин толком еще не обкатан, не все в нем там прям так гладко, как нам рассказывают.
521 1489078
>>88605
Ну вот например статистика по андроеду: 40% из топ 500 аппов написаны с использованием котлина:
https://www.appbrain.com/stats/libraries/details/kotlin/kotlin
522 1489259
>>89078
Ну вот собственно и 38%.
У меня, у стороннего человека, от хайпа уже сложилось впечатление, что андроид это только котлин.
Тред утонул или удален.
Это копия, сохраненная 14 октября 2019 года.

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

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