Kotlin: Вкатываемся в новый язык на превосходно отточенной jvm с богатейшим набором библиотек от java.
>Что имеем: У нас есть синтаксический сахар поверх джавы, немного ФП (удобные лямбды), корутины с асинхронщинной, DSL и многое другое. В синтаксисе можно встретить много WTF-решений (как же без них), но в целом, плюсы перевешивают минусы. Так-то, во всех языках есть что-то что раздражает. Параллельно jvm платформы пиляться kotlin-js (котлин для javascript) и kotlin-native (компилируемый в нативный код котлин). В целом, DSL позволяет даже писать на HTML и CSS, если кому-то это надо. Котлин имеет полный интероп с джавой, от чего его не совсем корректно сравнивать со scala.
>Хайп: Язык был подкреплен гуглом в связки мобильной разработки, а с недавних пор рекомендован как основной язык для андроида, из-за чего начался рост популярности языка. Также для языка был создан фонд, чтобы в случае покупки создателей не повторилась судьба с джавой. Вероятно условия гугла. В связи с этим, котлин очень популярен в мобильной разработке, порой даже раздражает, что весь свежий контент пишут именно о телефонах. Но нужно помнить, котлин это та же джава и сейчас мы видим, многие фреймворки предлагают решения сразу на двух языках (как минимум пишут примеры, но в целом котлин имеет хороший интероп и так).
>Производительность. Не забываем, что java (с JIT) одна из самых производительных платформ. Она делит топ 10 наравне с многими другими производительными платформами. Также у джавы хорошо оптимизированный драйвер базы данных, что видно по тестам. https://www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=query Нередко именно база-данных является узким местом в веб-приложениях.
>Q: ...кококо, котлин уничтожит джаву! A: Нет. Котлин сильно завязан на джаву и не заменяет её, а скорее дополняет (как typescript дополняет javascript). Джаву никто и ничто не заменит в ближайшие 15-20 лет, у этого языка чрезвычайно огромный капитал написанного кода, поэтому переживать за неё не стоит. В любом случае конкуренция это хорошо, джава стала развиваться (попутно завозя годноту в байткод).
>IDE - среда разработки. Бесплатная community edition - обычно более чем достаточно (и работает шустро), но можете попробовать триал-версию. https://www.jetbrains.com/idea/download/
>Telegram В телеге есть чаты по котлину. Это полу-белорусское комьюнити, которое клонирует пачками чаты (раньше про джаву - JavaBy и KotlinBy в Gitter). Крайне не рекомендую посещать это рассадник из ЧСВ макак. В чатах лобызаются одни и те же лица и если ты им не понравишься (а ты им не понравишься) будут постоянно тебя подстрекать пассивной агрессией или принуждать к анальным правилам, которые они вспоминают только тогда, когда пишешь ты. Конечно, ты можешь терпеть и сидеть в этой помойке, но если не хочешь словить негатив и получить ложное представление о ру-комьюнити, не рекомендую посещать этих ребят. Лично видел как токсично слили пчела за расспрос про api java. Если можешь в ангельский, лучше сразу нырнуть в слаку. https://kotlinlang.org/community/#kotlin-online-resources Но лично я рекомендую не заниматься херней в чатиках, а спрашивать сразу на StackOverflow, тем самым ты сразу поможешь тысячи другим пользователям (и себе в будущем, если забудешь): https://stackoverflow.com/questions/tagged/kotlin Там можно спрашивать даже банальные вещи (кроме неопределенных), они потом хорошо гугляться и превращаются в простой справочник. Серьезно, анон, прекращайте спрашивать на древних форумах, бестолковых чатах, и даже двачах. Если уж совсем плохо с английским и не можешь в переводчик, то там есть ру-язычная версия сайта, но это так себе идея
>>1615386 Пох, буду сюда периодично контент кидать какой-то. Может не часто, но стабильно. Моей активности для очередного паблика или блога не хватит, а вот для треда контента найдется.
>>1615403 Мне не нравится что треды не перекатывают. А висеть с 1,5 аноном в дохлом треде, такое себе удовольствие (кому контент то кидать? Самому себе не очень, а так хоть мимокрокодил какой пробежит, проникнется).
Есть системные потоки, они легче чем процессы, но все равно достаточно тяжелые для некоторых решений. Поэтому и используют такие типо "микропотоки", которые постоянно переключаются средствами программы (а не ОС).
Скажем в среднем больше 1.000-10.000 потоков не создашь на машине, а вот 100.000-1.000.000 корутин это нормально.
Ну и утилизация ресурсов. Пока твоя корутина открывает файл или читает из файла (стоит в ожидание, это долго), другая в это время может поработать.
Это как в го, только тут можешь управлять всем этим.
>>1615443 Простой пример (условный), скажем есть у тебя приложение которая отдает 100байт json, с потоками отдает у тебя (условно) 1000 запросов в секунду, а вот с корутинами 100.000.
Если у тебя бложик про котят, с html шаблоном в 500кб, то тебе, корутины скорее всего не нужны, у тебя канал забьется быстрее чем ты 200 запросов в секунду будет.
То есть асинхронное программирование не всегда нужно, но хорошо когда оно есть.
>>1615484 Братишка, давай шашки из грязи сделаем. Я просто придумал. Чёрные мы из грязи просто слепим, шашки, так? А белые, значит, мы тоже из грязи слепим, и, я как раз вот, от папироски бумажку, я её выкидывать-то не буду. Я её на мелкие такие кусочки нарву, и, и в эту грязь сверху аккуратно вставлю, так? И будем, ну, чтоб совсем уже тебе грустно не было, мы будем на интерес играть какой-нибудь, хочешь? В шашки?
>>1615299 (OP) Только сейчас увидел что питон из первого места "вырезан". Это не цензура, лол, это их блядская статическая менюшка закрыла.
Кстати, офигел, как удобно парсить файлы на котлине (вот этот сахарок с лямбдами и функциями-расширениями). В общем, переписал все свои питон скрипты, которые по мелочи парсили файлы.
Я знаю что и котлин может в скрипты, но я "на месте" никогда не писал, деплоил все, поэтому fat jar оказались очень удобный для меня. Удобнее чем костыли с virtenv в питоне. И да, на винде так же как и питон можно запустить по-клику (на .jar), подобно .exe файлу.
Посоны, нахуя нужен котлин, когда есть няшный шарпик? Ладно я понимаю, если жабамакака какая пикает котлин, чтобы крышей не поехать. Но если ты свежий вкатышь и пикаешь первый язык в 2k20, всязываться с котлином и тем более с жабой - долбоебизм чистой воды.
>>1615652 >кложа так популярна кложа не так плоха, лисп синтаксис это если понравилось сразу то все остальное кажется убогим, вот в скале адок тот еще.
>>1615793 Шарп был хорош лет 10-15 назад, сейчас только за одну точку с запятой можно дропнуть язык. А эти нэймспейсы с вложением, жуть. В общем, он хорош, но морально устарел.
Но главные фатальный недостаток - отсутствие такого же количества решений (либ) как в джава мире. Не факт что тебе чего-то не хватит, но согласись лучше когда все же имеется что-то чем этого нет.
И да, эта путаница с CORE. Что там есть, что читать, чего нет, нафига мне это?
>>1616199 Это как раз понятно. Раньше можно было говорить, что если .NET как платформа и не дотягивает до JVM, то уж точно всем очевидно, что как язык шарп превосходит джаву. Ну и джавистам было из-за чего пооблизываться в сторону конкурирующей платформы. А теперь есть котлин - удобынй современный язык для JVM, как раз плюс-минус аналог шарпа. Все, теперь .NET точно не нужен.
Это печалит для шарпа. Он даже руби не догоняет. Хотя язык хорош, не спорю. Но котлин лучше.
PS У го, конечно большие результаты, но что-то мне кажется, в условиях самописных костылей, они тупо накручивают звезды друг другу. Нечто подобное делали в свое время на гитхабе, массова плюсуя комменты или минусуя
>>1616886 Можно, котлин как раз про синтаксис свой. Просто нужно будет понимать и уметь пользоваться джава либами (в том числе и из SDK типа коллекций, даты там...)
>>1617293 Да это пиздеж потому что. Связь котлина с джабой только в том, что они компилятся в байткод jvm и то, что котлин имеет интероп с джабой и все. Чтобы изучить котлин, джабу знать не надо. И, в отличии от джабы, котлин может компилится в LLVM IR, поэтому можно писать не под jvm (например, чтобы писать код для ios).
>>1617508 Читал 1, не оч на самом деле понравилось (но сойдет) Видел 2, пока еще не читал. А так мне офф документации хватило и чуток в try.kotlin поиграл.
>>1618220 У нас котлин поверх легаси и мы вот скорее не переписываем, а делаем рефакторинг. Но в монолите это дается сложно. А разгуляться на всю архитектуру не разрешают (есть зудящее желание начать рядом писать с нуля).
>>1619520 Каким же долбаебом надо быть, если все что ты не можешь понять называть говном?
Кейсы разные: -Ты пришел с работы/вуза/школы/садика и хочешь полежать, почилить в видосики, а не снова убивать глаза об буквы в мониторе.
-Ты не хочешь с головой лесть в ебеня, а просто хочешь глазком глянуть, что же этот котлин такое (или другая технология).
-Ты матерый чел, который знает, что повторение материала с другого "ракурса" улучшает запоминание (при этом устав уже кодить или читать)
-Ты возишься и слушаешь видосики как подкаст на фоне, лишь периодично поглядывая на второй монитор, если кто-то говорит про незнакомые/интересные вещи.
Я конечно понимаю, какому-нибудь питонисту синтаксис этот покажется магическим или вырвиглазным, но насколько это удобно (сам раньше питонячил мини-утилитки).
>>1621352 Как по мне, эти apply, also, run, let и прочие скобы - одни из самых спорных сахаров. Вроде удобно, мы можем опустить некоторые переменные, что приятно на глаз, но одновременно это плодит ещё одну вложенность, что не очень. Поэтому очень просто можно обосраться с ними.
>>1624716 Они очень удобны когда метод не возвращает this, а очень надо не размазывать инициализацию на 100500 строк (то есть, уместить все один логический блок).
В той картинке как раз этот случай, putAll возвращает void, а мог и this. Тогда можно было записать цепочку. return mutableLIst().putAll(list)
Многие конструкции в коте очень удобны и не всегда очевидна их мощь на первый взгляд (особенно если перекатил из топорных языков типа джавы, го, питона).
PS: Для клонирования коллекций есть toList() и toMutableList(), я там просто в дженерики игрался из какого-то примера
>>1624829 Ну вообще я знал, что это лямбда и я не изучал руби а стоит?. Твой пример здесь очень кстати. Я просто вёл к тому, что если злоупотреблять этим выражением, то можно снизить читаемость самого кода
>>1625949 Я в расте увидел запись if let Ok(lines) = read_lines("./hosts")
И понял как глубоко можно упороться на ровном месте. Вероятно, сначала let создает lines, потом отрабатывает Ok и уже потом if. Как все таки легко придумать вторую скалу.
Доставьте прикольчик по котлину, где вроде б индус в твиттере написал а-ля "wtf kotlin" и дальше проверка на наличие значения в рендже. И там было что-то вроде 5 in 0..10 = true и 5 in 10 downTo 0 = false (только как-то иначе).
>>1628721 read_line реал ворлд функция возвращающая Option(content) или Err if let конструкция сопостовляет паттерн и двигает значение/указатель, если он есть, в переменную Если паттерн не совпадает if let дает возможность не обрабатывать остальные случаи readline("./hosts") -> Ok(%content%) if сопостовляет паттер Ok и двигает %content% в let lines
>>1629201 В твоем примере переменная остается опциональной и на каждый чих ее нужно принудительно извлекать. Исключения разворачивают стек вызовов, уже поэтому их следует избегать, особенно на языке для мобильной платформы.
>>1629201 Не понимаю жирнишь ты или зелёный Это уже миллиард раз обсасывалось null - "The billion dollar mistake" мира программирования. Проскальзывает где угодно, семантически значить может вообще любую хуйню, в конце концов ты придешь или к стрелянию себе в ноги, или к лишней обработки кейса конкретно с null Выбрасываемые исключения, обрабатываемые говном по типу try..catch, если ты про них - генератор миллиарда строк спагетти кода, который можно заменить той же простой структурой Option(/Maybe)/Result. Еще и калбек стак нахуй взрывает, да
if let пиздатая сахарная структура, полностью отрожающая происходящее и в логике, и в мувах памяти раста
>>1629243 Я тебе пофиксил без ошибки на миллиард долларов (на котлине), правда проблему динамических данных это не решает никак, зато стильно и молодежно
val lines = readLines("./hosts") ?: listOf() if (lines.size > 0) {...}
>>1629243 Засовываешь в свой язык всякое говно мамонта вида Option(/Maybe)/Result, до посинения пишешь иерархию из угловых "скобок". @ Где-то по соседству в каком-то котлине просто вводят тип с вопросиком "String?" и решают все проблемы через несколько операторов типа "?." или "?:"
Я буду угорать если kotlin-native допилят по производительности и он скинет раст или кресты.
>>1629338 >Я буду угорать если kotlin-native допилят по производительности и он скинет раст или кресты. Не станет никогда >несколько операторов типа "?." или "?:" Никто в здравом уме не будет писать подобное унхендлед говно в продакшен Я как человек пишущий на котлине с 2012 говорю
>>1629368 >Не станет никогда Писать околосистемное на вменяемом синтаксисе. Это то что нужно человечеству уже давно. Тут больше вопрос производительности и работы с памятью. Если он будет решен, то проблем не будет. И так же будут писать игры на котлине, на каком-нибудь godot.
>Я как человек пишущий на котлине с 2012 говорю >Ругает основные операторы работы с null Вот тут мы конечно с тобой приехали, жалко не сразу понял что ты зеленый.
>>1629554 Все так. Scala - не более чем академическая поделка мистера Обербского, который пилит грант за грантом в надежде досидеть до пенсии у себя в Лозанне. Какого-либо коммерческого и практического применения Scala нет и не может быть, когда есть тот же Kotlin или последняя версия Java. То, что решается на Java/Kotlin за пару часов - на Scala выливается в несколько месяцев усердной работы.
>>1629865 Где-то в нулевые было такое понятие как "ламер", в общем, не компетентный человек, который сам твердо уверенный в обратном. Вот при просмотре этого хера, несколько лет назад, у меня возникло именно такое впечатление. Его мнение соткано из десятков голословных высказываний о программировании, которые он нахватался где-то из инета, создавая впечатление продвинутого программиста.
Он как-то ляпнул, про то как часто приходится из интерфейсов делать абстрактные классы. То есть, человек совершенно не разбирается в фундаментальных понятиях. Он буквально как джун видит в абстрактный классах обычный класс, в который тупо можно напихать общее функции, -"ну, а если я уже их напихал туда, то зачем мне интерфейс теперь".
Ребят, посоветуйте пожалуйста какие-то ресурсы, где можно увидеть современный пример имплементации проекта на Spring, используя Котлин. Можно репо, книгу, курс в инете , да что угодно, потому что я уже неделю не могу найти подходящий материал. Желательно описание создания АПИ вместе с подключением к БД. Я знаю, что все можно найти на spring.io , но там все по частям без архитектуры + не везде есть пример на котлин. Буду благодарен за любую инфу
>>1631603 >Scala - 33 Уже размотали скакалку. Язык нигде не используется, кроме как в попильных конторах и команде мистера Обербского, который пилит гранты и считает деньки до выхода на пенсию.
>>1631257 Тут у вас какой-то обмудок посты трёт, так что пока его ссаными тряпками не выгоните, я ливаю (и вам рекомендую). Двач превратился в форум нулевых, лол.
Джаву знать обязательно? Хочу вкатиться в разработку под мобилку. Пишу на свифте. А кроссплатформеная хуйня, типа хамарина - гиблое дело. Так же флаттер подохнет скоро и вылезет новый уродец.
>>1632769 Нужно уметь разбираться в джавовом API (например коллекции, работа с датой). Трудно сказать что кому нужно, я жабу трогал еще в 2009 и мало что там уже помню, просто имею большой бэкграунд разработки на разных языках и в котлин вкатывался без джавы вообще.
>>1635205 Ну ну, ваши кроссплатформо-додики об этом вещают хуй знает сколько лет уже. Лет 20 пытаются идеальную залупу для шлёпанья кроссплатформы запилить, пока что самый лучший вариант — реакт натив с ъэловордами по 120 мб, кекс.
>>1635309 А этот слоган хоть раз не обосрался ирл? Везде всё равно надо всё подпиливать напильником под каждую платформы, и везде всё одинаково убого выглядит (кроме как на линуксах, там вообще ебаный цирк с зоопарком и всё убого по умолчанию).
>>1635749 Да нет, флаттер это хуитка уровня Qt — вроде как кросплатформа, и вроде как даже не такая уёбищно медленная как джава, но такая же ненативная и кривая, и под каждую платформу энивэй городить свою прослойку костылей. На выходе как всегда зоопарк из 3-4 технологий вместо 2-х на 2 платформы.
Реальное применение рн и флаттера — прототипирование. Можно посадить макаку-дизайнера выучить жс и пусть сам дрожит свои анимашки, кек. А заодно перестанет рисовать кучу картонной хуиты на каждый пук.
>с топ языком на ваще все ui платформы >с топ языком Вот тут орнул с жс-макакена
>>1635985 Охуительные истории. Есть куча компаний использующих рн в продакшене годами, причём как основную технологию для мобилок, расскажешь им про то что рн только для прототипирования. При этом там выигрыш по скорости разработки по сравнению с двумя отдельными приложениями минимум 50%.
>>1635986 Если нюфаня, то пощупай сначала джаву. Джава позволяет стать богатым, а котлин позволяет вытащить 30 сантиметровую фаллос из задницы и почувствовать себя человеком на современном языке.
Если хочешь го, то это та же 30 сантиметровая глыба в жопе, но еще с шипами.
>>1636100 Конечно, ведь удобнее постоянно в одном потоке дрочить и строки в числа превращать (и на всякий случай еще раз, а то вдруг где-то там в строку маня функцией превратилось).
>>1636101 Если шипы в заднице не мешает, то проблем нет. Но если уж есть говно, то я бы порекомендовал javascript, этот хотя бы действительно популярный.
>>1635991 >Есть куча компаний использующих рн в продакшене годами Есть ещё хоть кто-то не слезший с него через год после старта? >При этом там выигрыш по скорости разработки по сравнению с двумя отдельными приложениями минимум 50%. Если ты пишешь приложуху для пиццерии с 2 экранами (на которых 2 списка картинка-текст) — то да, ахуенно забустит. Иначе на любом сложном экране это будет либо блевотина ебаная с 15 фпс, либо на половину нативный код для каждой платформы. Вот и нахуя это говно в прод тащить? Ты серьёзно считаешь, что какие нибудь airbnb обосрались на такой "оптимизации" рабочих процессов, а твой деревенский маня-стартап не обосрётся?
>>1636065 Единственное что там можно писать напрямую — это какой нибудь сервисный слой, и то при условии уже написанного бойлерплейта из абстракций с 3-х сторон, лол.
Хотя в больших прилагах, где целые отделы дрочат эти сервисные слои — это действительно может сэкономить кучу бабла (наверно).
>>1636721 >чел сравнил перформанс UIKit и SwiftUI (с кодом, где последний спамит объектами в память на каждой итерации, кек) >но подписал как Свифт и обжс >в обжс использовал обжсишный класс вместо аналогичного плюсового или сишных функций со статикдиспатчем Дальше не смотрел, типичный бенчмарк уровня хохляцкого маркетолуха (очень релевантно ирл).
Долго ли вкатываться kotlin+spring boot если ты oracle разраб? Знаю о базах данных все, но рядом сосоны хуярят микросервисы и оживлённо о чем то говорят, а у меня зависть. И стоит ли оно того или тоже настопиздит быстро?
>>1638271 Потому что тот анон (я) предлагал не менять рабочее шило на хуй пойми что, и говорил про возможный юзкейс где можно реально выиграть от использование к/н, а не заработать себе анальной боли.
Давай посчитаем плюсы и минусы твоего подхода: + Вроде как всё на одном языке - Языки на самом деле разные, хоть и с одним синтаксисом - Никаких shared библиотек между платформами кроме какого нибудь http/websocket клиента нет и не будет - корутины в к/н в отличие от жвм версии работают только в 1 потоке - ещё куча всяких заёбов унаследованных от жавы, вроде падений при изменении констант в рантами (кекус) - или крашей при изменении любой переменной вне мэйн треда (лол, энджой юоур парсинг джейсон паузес 10 фпс) - когда кто-то уйдет и потребуется замена — это на пол года минимум (хорошего свифтера за месяц можно спокойно найти, отсобеседовав десяток кандидатов) - когда нужно будет заюзать какую-то нативную либу (IGListKit/Realm/etc) — пиздуй покрывать биндингами (и эти биндинги ещё тестами) всю либу - когда нужно просто написать проект на каком нибудь Texture/ComponentKit — ты идёшь нахуй со своим котлином (см. пункт про многопоточность) - проблемы с биндингами и версиями библиотек (привет из линукса, ц++ и 1995 года). Ну разве что если ты не работаешь в гугле и у вас там всё не лежит в ебаной монорепе.
Именно поэтому, глядь, анон и сказал что реально полезен этот к/н может быть разве что в сервисном слою.
>>1638308 Я не силен в этой нативной херне, но звучит больше так, что проблема больше свифта/обжектива, что он компилиться там в какую-то херню.
В там же в идеале должно только функции дергаться ну и какие-то там виртуальные функции поверх рантайма.
То есть, дерганье MyApi.yoba() должно быть одинаковым для всех? Не пойму, почему нельзя в котлине дергать прям API обжектива напрямую, котлин тут скорее выступает тупо как транслятор как и с js (но там сложнее, там есть динамика).
>>1638303 Откуда мы знаем что там тебя настапиздит. Меня вот сначала копро и го понравился, а потом чет от го стало мерзко и противно. Все индивидуально, пока сам не попробуешь.
Вы, блядь, как докторскую собираетесь писать. Возьми язык да играйся с ним. Зайдет не зайдет, похер вообще, главное фан.
>>1638308 В целом да, сейчас пока супер качественных средств для мультиплатформенного UI на котле нету, пока все ждут компоуз, который вроде как должен стать таким средством. Но если UI на котле вынести за рамки и оставить его нативным (что является большим плюсом, для мобилок то точно), то все таки единая кодовая база даже только для одного сервисного слоя это большой плюс. Баги исправляются сразу под все платформы в одном месте, не надо привлекать двух разрабов на одинаковые задачи. В целом быстрее проекты делаются. По поводу технических проблем, ну да, пока жизнь не сладкая, но с каждым релизом котлина становится лучше. С ABI вроде должны что-то решить, планируется свой удобный формат для mpp библиотек, планируется дорабатывать компилятор для KN. Мультитредовые корутины должны появится уже в 1.3.71 (они уже готовы, должны были в 1.3.70 выкатить, но че то там накосячили с релизами). Проблем с изменением переменных вне тредов нету, это такая безопасная модель памяти, чтобы в ноги из разных потоков себе не стрелять. Нативные либы используются очень просто, никакие байдинги там ковырять не надо. Делается единый мультиплатформенный интерфейс, который реализуется на каждой платформе с использованием нативных либ. Со стороны ios можно как на KN сразу писать, либо прям на свифте сделать реализацию. Так сейчас почти все МПП либы и делают, интерфейс на котле, а реализации на нативных языках или KN.
Так что профиты свои есть и если правильно все приготовить, то будет больше плюсов, чем минусов. Всяко получше, чем флаттер-параша на мерзком дарте без перспектив.
>>1638371 >Я не силен в этой нативной херне, но звучит больше так, что проблема больше свифта/обжектива, что он компилиться там в какую-то херню. В обыкновенные бинарныки он компилируется.
>В там же в идеале должно только функции дергаться ну и какие-то там виртуальные функции поверх рантайма. Ну так пиши на C, с любым языком так и будет работать. Ну, только поебаться с размерами типов данных на разных компиляторах/плафтормах и временем жизни объектов.
>То есть, дерганье MyApi.yoba() должно быть одинаковым для всех? Нет, не должно быть. От размеров данных, мемори менеджмента, фич языка и фич конкретного компилятора (как с плюсами) слишком дохуя зависит. Даже в выдроченных авторами вариантах (вроде swift-k/n) тебе всё равно придётся писать биндинги и заниматься прочим дрочерством, ловя баги на переходе из одного кода в другой. Даже эпл нормальные биндигни obj-c - swift не смогла написать, там типы постоянно конвертируются туда-сюда и получается лагучее говно.
> котлин тут скорее выступает тупо как транслятор Вась, так он в машкод компилится, а не в обж-с, ты о чём нахуй? Ты хоть понимаешь, что а) Трансляция в обж-с несёт больше ограничений и костылей для всех платформ где к/н вообще возможно будет работать, чем компиляция напрямую в машинный код? б) У него уже куча таких костылей из жвм (вроде констант падающих в рантайме)?
>>1638371 >То есть, дерганье MyApi.yoba() должно быть одинаковым для всех? И как вот это говно сделает твой код кроссплатформенным? Дёргая разные апи ты всё равно наплодишь платформозависимого кода. А объективно, чисто как язык вне жвм, к/н сосёт у свифта, а про билбиотеки/коммунити/офф. саппорт можно и не говорить. Нахуя ухудшать себе условия работы?
>>1638414 >В целом да, сейчас пока супер качественных средств для мультиплатформенного UI на котле нету, пока все ждут компоуз, который вроде как должен стать таким средством. Не станет. Ключевой поинт с которым я тут начал срать — то, что за 20 лет никому не удалось (от нокии в лучшие годы до оракла), то не удастся никому и сейчас.
>Баги исправляются сразу под все платформы в одном месте, не надо привлекать двух разрабов на одинаковые задачи. Под какие задачи-то? Поправить строчки в кверибилдерах? Хотя если там этих строчек пол ляма то я только за, кек.
>С ABI вроде должны что-то решить, планируется свой удобный формат для mpp библиотек, планируется дорабатывать компилятор для KN. В плюсах уже лет так 30 делают этот ABI, кекус. Под всё и сразу его всё равно нельзя будет сделать, будет костыльная хуйня стоящая на куче компромиссов.
>Проблем с изменением переменных вне тредов нету, это такая безопасная модель памяти, чтобы в ноги из разных потоков себе не стрелять. А выглядит как защита от макаки, которая в реальной жизни будет только мешать. Это же как ебаные эпловские глобал-стейе костыли, из-за которых всю работу с UI нужно делать на мэйн треде, нахуя так портить себе жизнь ради полутора джунов?
>Нативные либы используются очень просто, никакие байдинги там ковырять не надо. >Делается единый мультиплатформенный интерфейс, который реализуется на каждой платформе с использованием нативных либ. /0 Так это и есть биндинги, лол.
>Всяко получше, чем флаттер-параша на мерзком дарте без перспектив. И в десяток раз меньше чем в нативной разработке. По факту это реальная замена каких нибудь плюсов в сервисных слоях (и кроссплатформенных либах вроде апишек всяких фаербейзов).
>>1638414 >Проблем с изменением переменных вне тредов нету, это такая безопасная модель памяти, чтобы в ноги из разных потоков себе не стрелять. Ну вот опять же пример: есть на айоси Texture (ex AsyncDisplayKit), авторы которого подтирают говно за эплом, и помогают выносить всё что можно из мэин треда. Там чуть ли не 70% кода, обычно бегущего в главном потоке паралелится. Как что-то подобное использовать в связке с k/n если я хочу ебически сложные интерфейсы и 60фпс на говне мамонта?
>>1638506 Не вижу проблем в связке с kn. Просто пишешь на свифте все свои многопоточные свистелки-перделки, а с общим кодом связь через один поток, а оно там на многопоточных корутинах все будет выполняться. Ну или просто не менять состояние kn объектов из других потоков и проблем не будет. Не представляю себе боль с многопоточным ui, в котором вьюшки из разных потоков взаимодействуют с логикой, там такого накуралесить можно.
>>1638578 >Java EE они тоже "выкинули", выходит, и на энтерпрайз ораклу насрать. А зачем им пердеть и развивать его, если все на пружине сидят? Теперь будут только в яву сахар вливать, а остальное коммьюнити пусть пилит.
>>1638556 >>1638574 >>1638662 Я про язык в целом, а не про гуй. Почему-то не от одного джависта не слышал ничего, кроме истеричного гогота, в ответ на WORE. Хотя с гуем тоже куча ебли, вон жб свой форк этой жавовой хуйни сколько лет уже пилят.
>>1638768 >Что блядь за константы падающие в рантайме Ну такие вот константы, работа с которыми не проверяется в компайлтайме. Я хз что это за хуйня, но свалить могу только на динамикомакаковую жвм.
Может кто объяснить, почему с Collections.sort() мы можем чисто лямбду кинуть (она конвертиться в компаратор), а вот с list.sortWith() уже нет, надо через анонимный класс? https://pl.kotl.in/vFhnMZhtM
>>1639425 Как я сам понял, они не смогли реализовать SAM для котлина (работает только для джава) потому, что в отличие от джавы есть функциональные типы (в жабе только классы и интерфейсы) и, в общем, получается какой-то адок.
В какой-то степени вариант: list.sortWith(Comparator { a, b -> a - b }) Мне даже нравится, он явный, иначе будет уже какой-то совсем ппц. Ты думаешь что функция лямбду принимает, а она там магически какой-то объект превращает). Магия это всегда выстрел в ногу, явное лучше чем не явное. тьфу, пистон во рту застрял
>>1639513 start.spring.io ведь изначально генерит помник со своим плагином, который всё это и делает. Не удивлюсь, если этот плагин и юзает под капотом jar plugin и dependency plugin.
>>1639514 Ну хуй его знает, я вот EE пытался учить, и он мне казался огромным, сложным и бесконечным, забил, легко вкатился в спринг. Вот подумываю всё же нормально вкатиться в EE, но понятия не имею, как подступиться. Для поддержки легаси на работе наполовину осилил как-то сервлеты, EJB, JMS и JAXB и JSP, но и с ними очень заебался.
>>1641537 Меня один раз так затроллили. Недо было поменять местами две колонки в двумерном массиве инт. Я с ^= сделал, а мне подсунули на ввод одну и ту же колонку местами поменять и этой операцией я всю колонку в 0 превратил, ведь на само себя ноль дает.
>>1641537 > Но всё равно только с целыми числами работает Теоретически, похуй, какие биты переставлять, пусть это хоть структура. Вот только высокоуровневые языки начинают выёбываться.
>>1642282 > Ну в жабобайтоёбство компилируется какая разница - один хер на жава-машине выполняется. Ну охуеть теперь, тогда сишка - это фреймворк для паскаля, всё равно в один код компилируется.
>>1642282 С каких пор JVM что-то плохое. Любой язык тащит за собой толстый рантайм. Со многих инженерных позиций, VM является техническим преимуществом, но с точки зрения прикладного разработчика без разницы, что там у него под боком - VM, интерпретатор, рантайм.
И только лишь для великовозрастных дебилов, с синдромом затянувшегося юношеского максимализма, очень важно что там у него под боком, не понимая, что такие удобство как исключения или JIT со спекулятивной оптимизацией это заслуги именно VM иди пиздуй ручками ошибки обрабатывай, глупый гофер, который не смог в жабу.
С тех пор как вышел майнкрафт фор виндовс 10 все поняли какое же ЖАБАГОВНО жрали все эти годы. Когда графа уровня ПС1 требует топмашину и 8+ гигов оперативы.
Жаба - 32ГБ минималочка хелллоуворлда.
Ведроид - почувтсвуй себя яблочником с устаревшим айфоном с топовой моделью
>>1650120 У Netty есть готовый HTTP сервер. Это конечно не спринг - когда пара аннотаций и у тебя и парсинг запроса и авторизация и логгирование и тразакции. Да там больше кода, но это твой код, ты его видишь кто кого вызывает, что там под капотом. У тебя нет вопросов когда соединение будет возвращено в connection pool я сталкивался с проблемой когда в connection pool не возращаются соединения и новые запросы тупо встают раком. Если сервер возвращает 401 на валидный запрос - ты знаешь где у тебя авторизация происходит. Классы напрямую вызывает друг друга, а нее магически через кишочки спринга.
>>1650159 >Да там больше кода, но это твой код Это самое страшное. Сервера уже отлажены и научены и причем тут спринг? Есть тонна годных решений, где у тебя вся бизнес-логика твоя, и все у тебя пол контролем классические фреймворки с middleware подходом Я уверен что в нетти надо ручками за чанками следить, так же следить за пулом. А обосрешься где, узнаешь только через пол года, от анона которому не лень будет письмо написать у меня так было, полгода проект для определенных новичков частично не работал и не логировал, потому что был молод и глуп и думал что я могу писать более быстрый и качественный код.
Послушайте! Ведь, если звезды зажигают — значит — это кому-нибудь нужно? Значит — кто-то хочет, чтобы они были? Значит — кто-то называет эти плевочки жемчужиной?
>>1657420 Оттуда так и "не перезвонили", хотя вступительный собес прошёл норм. Читал инфу, что HR там просто так обрабатывают кандидатов, чтобы набить себе KPI. Ещё варианты?
>>1653844 За деньги не бери, если перекот из жавы, то слишком много воды и размазывание простых вещей. Пара глав годные, чтобы понять как писать полу ФП.
>>1660841 Не совсем подходит к "желательно ремоут и на за бугор", но как вариант принимается. Всё, что я слышал о Сбере - неплохие з/п, куча бюрократии - просто ТОННЫ её, так себе железо и вообще работать на любой из банков так себе затея. Всё правильно говорят? Вообще типо у меня ~ B1 (B2 листенинг, ридинг и врайтинг + A2-B1 толкинг) уровень инглиша и 2г стажа работы в общей сложности. Я понимаю, что это типо meeehh такое себе, нужно ещё обождать годик и подтянуть спикинг до B2 хотя бы, чтобы врываться в зарубежный щит или аутсос какой-нибудь, но бля... Хочется этот годик именно в таких условиях и провести, чтобы ин-плейс качался инглиш, была практика общения, плюс параллельно рос стаж и всё такое. Где блять такое искать?! Ну не хочу я сидеть в ёбаном душном офисе и ждать ёбаный год с хуем, чтобы потом начать действовать. Какой в этом смысл? Плюс у нас в команде всем похуй на инг, никто его толком не знает (фулл бумеры максимум B1 ридинг с переводчиком), работаем на внутренний рынок. Получается, что одно из моих преимуществ тупо простаивает и не прокачивается, т.к. свободного времени мало, да и хули толку учить слова и выражения, если потом попиздеть не с кем на ингле. Поэтому я сейчас хочу вкатиться хотя бы в околоанглоязычную среду, пусть даже за меньший прайс, поебать вообще. Но я хочу здесь и сейчас! нет, говна на палочке не хочу Но на хх прям динамо полное, никому нахуй не всрался недомидл :/
> куча бюрократии Это влияет максимум на сроки, ибо просто создаёшь на специальном портале заявку и ждёшь. Но нужно это сравнительно редко, да и никто тут никуда не торопится.
> так себе железо Как повезёт. Мне дали ноут с i7, 32 оперативы и SSD На 250 гигов. Но я слышал и о тех, кому давали с древним i3 двумя гигами.
>>1661353 Двачую этого >>1661365 на бюрократию похуй в принципе, про железо тоже не актуально уже, ща вообще всех неофитов к удаленным рабочим местам подключают и маки выдают.
>>1661365 Посмотрел на их ваки, выглядит посолиднее, чем то, где я работаю сейчас. Плюс вроде как есть изучение инглиша в офисе. Возможно, стоит попробовать.
>>1661366 Вот честно, работаю сейчас удалённо ~месяц в связи с понятно чем, не испытваю ни малейшего дискомфорта. Обращаюсь за помощью к коллегам в разы реже, чем в офисе, потому что ВНЕЗАПНО появилась бОльшая ответственность, меньшее кол-во отвлекающих факторов и т.д. Я просто сажусь и ебошу, разбираюсь в архитектуре сервиса, как он взаимодействует с другими и всё такое. В офисе, обычно, я пытался решать таски "в лоб" и побыстрее. Прочитал, понял суть, потом тут отвлекли, тут позвали на чаёк, тут кароч позвонили на телефон, в итоге уже 5 вечера, а я пообещал ПМу, что завтра будет готово. И ты такой спрашиваешь какого-неть суньёра или своего TL -- слууух, а я правильно понимаю, что вот тут "так и так, и потом нужно сделать вот так? и должно получиться вот это?" и далее следует одобрение и/или подсказки. На удалёнке же появляется время именно разобраться с тем как это РЕАЛЬНО работает, поиграться с реализацией, проявить проектировочные скиллы какие-то свои. Кароч хз, сумбурно описал, но мне на удалёнке норм. Тут я реально ощутил рост, скажем так. Я тут ещё и сроки стал ставить гораздо более реалистичные, чем в офисе. Вотъ. Это я к тому, что... блин, ну не везде же нужны онли сеньёры на ремоут?! Я убеждён, что как бы всегда есть таски, которые "неплохо бы отдать вот этому новобранцу, пусть поучится/разберётся, пока мы занимаемся делами поважнее", не? Это, конечно же, уже не задачки уровня (изменить size с 10 на 1000 или добавить в аннотацию X - name = "jopa"), но как бы и ок, я люблю пожоще! Ну и да, удалёнка не с пустого места возникла. Я просто живу в ебенях и каждый день по 30км то в одну сторону на работу, то в другую наворачиваю. Заебало пиздец просто. Времени на саморазвитие 0 или около того. А снимать хату дорого, мне мамке ещё приходится помогать финансово.
>>1661446 > вроде как есть изучение инглиша в офисе Я не сильно этим интересовался, но там не всё так просто. Курсы есть, но слышал, что бесплатные они только после года работы.
>>1661450 Честно, мне достаточно, что они там просто есть. Я готов вкладывать в своё будущее монету, даже если эта монета будет разницей между з/п на моей текущей работе и будущей. Просто, как я уже описал выше, сейчас только в выходные есть время, которое, конечно же, не хочется полностью тратить на инг. А если сразу после работки на часок залетаешь в соседний кабинет и вот уже "Helou zere! Haw ar u tudei?" то эт совсем другое дело! Ну и вообще я планирую на след. месте не меньше 2-х лет проработать, т.к. надоело уже скакать так часто. 2 года - 3 работы (3м, 8м, 1г).
>>1661464 Я тут радуюсь, что лямбдах теперь не надо в конце рисовать "});", а тут вообще адок со скобками, тире, квадратными скобками и амперсантом. И это только хеллоу-ворд
Такое может нравится только таким типам людей, которые просто по дефолту хотят казаться "не такими как все". Вопроса удобства в этом синтаксисе нет.
>>1661484 В 2020 такой синтаксис абсурден. Может, 60 лет назад и имело смысл экономить на грамматике языка (ниже требований к кодировкам, парсер занимает меньше места), но сейчас, в эпоху эмодзи в исходниках, толку от этого 0.
>>1661486 Тут кусок лиспа, который умудряется высрать "половину" символов с клавиатуры, всего в трех строчках. При этом, я уже вижу, что это не предел безумия со скобками. Понятно, что практического смысла это имеет мало и те кому это нравится, скорее вызывают ощущения асоциальности.
К счастью, современное программирование, это не экскременты одного супер-гения (коим продолжает кормить фольклор в кино и сериалах), программирование это продукт совместной работы многих программистов. И очень важно чтобы вы писали такой код, который смогли бы понять сами.
>в эпоху эмодзи в исходниках Мы будем вспоминать хипстеров, которые уже канули в Лету и будем бугуртить с ниххотя можно еще увидеть задержку в развитие у некоторых и, например, встретить даже эмо. Есть слой профессиональных вменяемых разработчиков, которые даже твиттера не имеют. и им некуда срать свое мнение. И этим людям нужен просто удобный инструмент. То что тебя удивляет поддержка юникода в сорцах, это печально. хотя нахрена добавили смайлы в юникод, тоже отдельный вопрос, но я видел чисто ру-язычный проект, где тесты писали по русски и это лучше чем читать плохой английский.
>>1661506 >хотя можно еще увидеть задержку в развитие у некоторых и, например, встретить даже эмо Они просто ОЛДЫ и ностальгируют по тому времени, когда они на сэкономленные деньги мамки ездили к своей любимой эмочке за 1000 км
В моем городе черно-белые огни, Засыпают фонари, вспомни обо мне, В твоем сне я приду к тебе, Извне, наравне, на дне, не выдержишь Последнего поцелуя, сдувая с щек слезы, Ревнуя, почему ты, почему я... В моей пропасти не произнести слово Прости, нет злости, прощаю глупости. В метро так тепло, почему оно? Почему не ты??
Как цветок среди песков, Я роняю лепестки! Дай же мне напиться тобой, Чтоб столкнуть потоки, Дай же сделать хоть глоток, И увянуть навсегда, Муки равнодушия, так жестоки!
В моей голове много мыслей и тебе, Не понять, не подойти, не обнять, Опять один, среди льдин, солнца свет, Не поможет, нет, я храню обет молчания, Твои обещания, так легко не сдержать, Отчаяния...почему ты...почему я... В моем городе нет ни света, ни тепла, Наши тела разбросаны по полюсам, Знаю сам наперед, что произойдет, Проломится лед и я провалюсь, Надеюсь, что ты забудешь про меня, С этого дня меня не существует, Ветер дует в моем поле нету боли, Я на воле!
Я ньюфаг и гуглю плохо. Есть приложение на андроид, есть сервер. Возможно ли совершить авторизацию на этом ресурсе через котлин? Например, я хочу войти в вк. Накидайте ресурсов, пожалуйста.
>>1667790 Вообще, да, тупо грузить страницы, заполнять формы и отсылать их, а содержимое страниц парсить. Интересно, много ли мобильных апок так делает?
Тут есть android разработчики? Какой самый правильный способ скрыть top bar в приложении с его названием?
Пипец конечно, ни в одном уважающем себя приложении этой строчки сверху нет, в андроид студии она не отображается, но стоит запустить приложение, и тадам, какая-то хрень сверху экрана.
Сап котлетач. Есть веб приложение на спринге, и оно на моем инстансе два ядра @ два гига съедает всю память сразу после запуска. В котлине ж вроде обещали сокращение памяти. Как можно принудительно ограничить жор машины хотя бы до 300мб?
>>1672003 > намудрили В целом, заметно, что котлин в силу синтаксических фишечек несколько сложнее джавы.
> this > super Это и в джаве есть.
> init Тоже джава, но с кейвордом читается лучше, чем незаметные фигурные скобки посреди класса.
> val/var > int a и const int a Предполагается, что ты будешь в основном юзать вывод типов, и достаточно указать, что у тебя переменная или константа.
> var a: Integer > функции задом наперёд пишут Говорят, что это должно влиять на мышление - сначала думаешь, какую именно сущность ты хочешь объявить и для чего, и уж только потом её тип. Но хуита это всё, тоже думаю, что языкоделы считают C++ абсолютным злом и пытаются делать как угодно, лишь бы не как в плюсах.
>>1672003 > Почему вообще нельзя было сделать допустим int a и const int a? Зачем каждый раз писать это блядское var? var a: Integer Чтобы явно не указывать тип переменной, потому что компилятор сам может выводить типы. А чтобы было понятно, какая переменная объявляется, используют var и val.
Можно ли использовать котлин без его рантайма/стандартной библиотеки? Хочу просто джаву с синтаксическим сахаром и null-safety (корутины нахуй не нужны).
>>1673925 Тащит, да. Некоторые классы ему нужны прям на уровне языка. Например, функция main обязательно принимает котлиновский Array<String>. А за ними и весь рантайм тащится.
>>1674071 Интероп заключается в том, что можно юзать жабьи либы в котлиновском коде и наоборот, и с этим проблем нет. Но это не значит, что можно выкинуть стандартную либу, котлин - это не просто сахаорк поверх джавы, а отдельный язык.
>>1674058 Array<String> в котлине не существует в рантайме как настоящий класс, вместо него во время исполнения используется джавовский массив.
Но ты прав в том, что определенные конструкции языка требуют во время исполнения поддержки из рантайма, например, неявные проверки на налл, фукнциональне типы, делегаты и ссылки на методы/свойства.
>>1674088 > можно юзать жабьи либы в котлиновском коде и наоборот, и с этим проблем нет Так с этим тогда и в скале проблем нет. Уж точно не сложнее, чем запускать котлиновские корутины в жаве.
>>1674086 > А чем тебя рантайм не устраивает? > Ты делаешь свою библиотеку и не хочешь лишних зависимостей? Да, хочется получить типа-джавовую-библиотеку, и не хлебнуть потом говна когда кто-то заюзает её в котлине и получить эксепшен из-за бинарной несовместимости разных версий kotlin-stdlib.
>>1674109 > Да, хочется получить типа-джавовую-библиотеку, и не хлебнуть потом говна когда кто-то заюзает её в котлине и получить эксепшен из-за бинарной несовместимости разных версий kotlin-stdlib.
Это маловероятно, в котлине за этим следят. Вон okhttp например перешел в 4-й версии с джавы на котлин, и не парится по поводу зависимости на stdlib совершенно.
Но если это тебя так заботит, можешь всегда слить свою библиотеку с kotlin-stdlib и обработать прогардом, чтобы все лишнее выкинул. Только обязательно сделай релокацию пакетов kotlin, иначе тогда тебя точно котлин-пользователи на вилы поднимут.
Здарова аноны! делаю клиент-серверную штуку. По задумке пользователи сами будут ее хостить в локальной сети.
сделал гуй для сревера: поля для порта и других настроек + кнопки старт/стоп
Сейчас понял, что сервер ktor, который я решил использовать, хуй заставишь стартовать не сразу, а в рантайме по нажатию кнопки.
Пока вижу выход: делать два jar файла - для гуя и для собственно сервера, гуй будет запускать jar-ку сервера. Как это провернуть мавеном? Нужно сделать два независимых модуля, или один в другом? сори если ебланский впорос
>>1672003 >Почему в Kotline так всрато намудрили с конструкторами? Со всеми этими base this super init. И с переменными типа val/var?
Меньше бойлерплейта, когда поля тоже самое что аргументы. Станет понятно с опытом. В дарте вроде наглядно и проще, просто видимо вдохновлялись скалой, а в скале ппц нафантазировали.
>Почему вообще нельзя было сделать допустим int a и const int a? Зачем каждый раз писать это блядское var? var a: Integer
Очевидно - короче, когда кодишь полжизни, начинает выбешивать бойлерплейт. Лучше вопрос - почему не let.
>У меня иногда ощущение, что некоторые языки делают хуёвый синтаксис просто что бы не сказали, что они похожи на C++/C#.
Многие языки, по ощущениям, писали больные на голову люди. Но тебе нужен удобный инструмент, или шашечка?
>Вот тот же Go Есть мнение, что это язык внутренней кухни, который вытащили наружу, чтобы за счет легиона халявы опенсорса отдебажить этот кусок говна. Есть мнение, что гугл не умеет в языки и даже в библиотеки.
Поясните вкатывальщику в адроид. Дрочил котлин, жаву знаю не особо. Че могут спросить по джаве? Понятно, что java.collections могут спросить, а чего еще?
В общем, удалённой работы на бэке я так и не нашёл, а менять работу надо. Подскажите какой-неть годный ресурс/курс/книжку, где за короткий срок (месяц-два) я смогу вкатиться в ведроид, а то тут вакансий хоть жопой жуй. Только именно ведроид, а то я недавно наткнулся на 7ч курс Kotlin Android developer, где почти 6ч рассказывают об основных конструкциях самого котлина.
>>1696278 Nothing не для этого нужен. Когда тебе ничего не хочется возвращать - не возвращай, будет Unit aka void. Nothing используется, чтобы указать, что функция никогда не завершится, т.е. не дойдёт до '}'.
Нужно выполнять тысячи тысяч миллионов на самом деле чуть меньше конкурентных HTTP реквестов через разные прокси максимально быстро, с минимальными затратами, ну вы понимаете. Какое наилучшее дизайн-решение с использованием этого вашего котлина? Что у вас есть: корутины, асинхронщина, какой-нибудь быстрый HTTP-клиент на ультралегких файберах? Хочу вкатиться в язык на какой-нибудь конкретной задаче, посоветуйте, в какую сторону смотреть.
>>1697878 Да потому что нихуя толку нет от этого вашего Котлина! Ахуенный язык, и хули?! Нет работы на нём. НЕТУ, СУКИ! Вы суки подсадили меня на Котлин, а я теперь не могу смотреть на другие языки, все они не такие как надо, а вот Котлин норм. Я хочу писать целыми днями на нём, ХОЧУ ЧИТАТЬ КНИЖКИ ПО НЕМУ, ХОЧУ ПАРСИТЬ САЙТЫ НА НЁМ, ХОЧУ ПИСАТЬ БОТОВ НА НЁМ, ХОЧУ... а работы НЕТУ, СУКИ, НЕТУ !!!!!!!!! Везде здравствуйте мы ознакомились с вашим резюме, скажите, вы на Джяве будете писать? Видим у вас ещё есть опыт С++ и Питона, может быть на них? Нет, к сожалению вакансий на Котлин у нас нет, всего доброго. СУКИ ВЫ ВСЕ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>1697878 >До сих пор #1 тред. А ведь это было нес месяцев назад. Проблема не в котлине, а в том в /pr большая часть народа это вкатывальщики и они, конечно, трутся в тредах топ языков. А другая половина это динозавры с форумов по программированию, тех же топ языков, потому что другого и не знают (и не хотят знать). То есть, сам раздел /pr слишком дохлый для таких языков. исключение было с го, но там просто зеленые развлекались как могли, тред был полностью из лулзов
>>1697920 >>1697924 Мимо ОП, лучше вялый тред, чем оффтоп и троллинг на весь тред превращение во флуд-чатик с говнометанием об вентилятор
И да, у нас все хорошо, полностью на котлине, даже дома. Язык реально удобный и после него говна кушать не хочется.
Мне на котлине нравится писать, а вот собирать контент от ваннаби программистов, оказалось скучно, это же не питон или js, где каждый час срут подкастами и вблогами. ну и да, весь ваннаби контент все еще производят в рамках мобильной разработки
>>1698627 Удобный то может и удобный, ты что делать прикажешь? Где мне работу на нём найти? Я не могу теперь смотреть на другие ЯП после него. Мне недавно хрюша сказала, что за 3г её работы не было ни одной ваки на котле для бэка. Агенство популярное, все слышали его название, сотрудничает с зарубежкой и нашими 50/50. ПлюсЫ да, жава да, шарп да, пайтон да, жс да, го да, руби да, котлин - ондроид онли и то с обязательным знанием жавы. Ховно этот ваш котлин, манятна?! Не нужно было пробовать эту наркоту, теперь не слезть...
>>1699915 А ЖИТЬ КАК ПРИКАЖЕШЬ? Я С ГОЛОДУ ПОДЫХАЮ С ТВОИМ КОТЛИНОМ! НИКТО НЕ БЕРЁТ НА РАБОТУ ЗДРАВСТВУЙТЕ А ВЫ МОЖЕТЕ ЛУЧШЕ НА ДЖАВЕ ПИСАТЬ А ТО У НАС КОТЛИНА НЕТ НА БЭКЕ. HELLO SORRY WE ARE USING JAVA 14 ON THE PROJECT PLZ POSHEL NAHUI WITH KOTLIN !!!
>>1699915 ну от этого будет зависеть моя зп и карьерный рост, естественно мне это интересно, я ведь смогу в итоге взять на себя и андроид и iOS разработку
>>1699825 Не особо похожи, на самом деле. Разве что синтаксически схожие места есть, а так в целом совсем разные языки, разные модели памяти. Сам пишу под андроид, но у нас в компании начинают все перекатывать на Kotlin Multiplatform. Потому самому иногда приходится и на свифте немного писать.
>>1700080 Да вроде норм, в проде несколько проектов, полет нормальный. Очень удобно получается переиспользовать код. Для разработки под андроид кардинально ничего не меняется, все тоже самое, все привычно. Разве что многопоточных корутин нету в модуле с общим кодом, но это в 1.4 точно исправят. А вот айосникам страдать приходится, gradle осилить не могут, котлин учить надо и т.д.
>>1697920 У меня, конечно, есть подозрение что ты зеленый тролль. И я не эксперт по поиску работы на котлин, но в чем собственно проблема? Если вакансия котлина в связке джавы и работатель хочет чтобы ты знал джаву, то вероятно, там уже пишут все на котлине, просто остался легаси джавы или нужно просто разбираться в этом стеке, ибо если ты знаешь котлин без джавы, велик шанс получить андроид-разработчика у которого в голове совсем другие знания.
>>1700512 Немножко пропукаюсь... Я реально раньше джаву уважал за свою консервативность, особенно когда сидел еще на пхп, а там умудрялись по молодежному высирать версию за версией как же было трудно перекатить проект даже с 5.2 версии на 5.3, а теперь я смотрю на это все и офигиваю.
>>1700506 Братушка, я бы очень хотел быть зеленью, но "зелёненький" я разве что по кол-ву опыта в разработке. Этот анон >>1657311 - я. Проблема заключается в несостыковке с моими желаниями, а именно - работа на удалёночке. Java - это вонючий ентерпрайз и ремонтную работу тут хуй найдёшь. Но так уж получилось, что меня взяли сюда ещё будучи сопляком, причём основной язык у нас именно Kotlin, а не Java. Я за всё время, что прогаю (вообще, а не комм. опыт), испробовал достаточное количество языков, чтобы с уверенностью сказать, что Kotlin мне понравился больше всех. Было дело писал на шарпе в 2к17 и, помнится, похожее говорил про него тогда. Но я реально устал метаться туда-сюда и хвататься за новые яп и их фреймворки. Я не хочу юзать Python или Java лишь потому, что у них самый большой кусок рынка. Я хочу писать код и получать от этого удовольствие. Но вот незадача, спустя полтора месяца активного (!) поиска работы и хождения по собесам 2-3 раза в неделю, у меня до сих пор 0 предложений. Причина #1 - большинство вакансий предполагает работу именно на Java, про Kotlin говорят одно и то же нинужон, поэтому тут просто тренировка прохождения собесов, не более. Причина #2 - большинство вакансий это всё же ведроид, 90% моего опыта тут мимо. Причина #3 - по тем немногочисленным вакансиям, которые подходят, либо игнор, либо "извините, недостаточно опыта". Причина #4 - мб я просто ничегонезнающий хуй, и поэтому меня все динамят, но я с этим не согласен и готов спорить. И чего теперь делать я вообще не понимаю. То ли начинать активно осваивать андроид и вкатываться туда, раз весь котлин там... При этом сразу 2.5г опыта оказываются на помойке, и хоть я и считаю, что приобрёл очень хорошие фундаментальные знания в бэке, хрюше и TL с ехидной улыбкой на лице на это похуй, а за 40k я снова вкатываться не собираюсь. То ли сидеть и ждать хуй пойми чего - когда котлин взлетит до небес, а я тут как тут. Но что делать сейчас тогда?! Команда у нас разваливается и все активно ищут работу... и вроде я тоже могу найти спокойно... НО БЛЯТЬ НЕ НА ЁБАНОМ КОТЛИНЕ КОТОРЫЙ Я ЛЮБЛЮ БОЛЬШЕ СВОЕЙ ЖИЗНИ ГОСПОДИ ЗА ЧТО !!!!!!!!11
>>1700675 > большинство вакансий это всё же ведроид так это на котлине работу не найти или просто все вакансии для андроид разрабов? >2.5г опыта оказываются на помойке какого опыта, мань, ты кто блять software ingenier или примадонна, которой должны предоставить стек технологий, устраивающий нашу звезду? все эти языки- всего лишь инструмент, а ты тут вой поднял как будто фашисты твою хату сожгли
>>1703559 >>1703591 На котлине настолько приятно работать, что хочется больше писать код, чем чесать языком. Если на каком-нибудь хаскле или расте или го, удобнее с пеной у рта защищать язык, чем на этом что-то долго писать, то котлин это как знакомство с ангелом, простое умиротворение. Даже погадить в треде не хочется.
>>1704105 Это не взаимозаменяемые языки. Даже если кто-то попытается юзать твой свифт в андроиде или тырпрайзе, он сразу столкнётся с отсутствием инфраструктуры. Котлин - это не "ответ свифту", это в первую очередь ответ джаве. Соответственно, синтаксис сравнивается с джавой, а не с чем-то другим.
>>1704120 Это был какой-то зеленый. Котлин, по сути, та же джава. Проблем внедрить язык нет, а вот улучшить условия труда - да (потому что голая жаба, это невыносимый кусок говна - это тупо дрына, которой махать и махать. А вот котлин уже какая-нибудь рапира, легкая, удобная, с сотней вариантов тактик и подходов)