Обновить
1
0.1
Роман Давыдкин @Beholder

Java-разработчик

Отправить сообщение
Горутины и Каналы — фичи, которые хвалят даже те, кто невзлюбил Go.

Возьмите себе немного Kotlin.


Ну а вообще мысль, что многопоточность может быть "простой" — это опасная иллюзия.

Галочка?

"Крыжик"!

Как всегда, ответа нет, зато минусы.

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

Моноиды, складывание чисел… А можно приводить примеры из реальных приложений где это оказывается полезно?

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

Неверный тезис. Более верен такой: "Главная цель любого бизнеса — получение прибыли".
А уж ради прибыли могут делать что угодно.

Какое-то "пи" у вас в тексте странное — ℼ (Unicode U+213C: Double-Struck Small Pi)
Когда нормальный символ — π (U+03C0: Greek Small Letter Pi)


Вполне возможно, что правая группа — это Венера по утрам (или вечерам), остальное не знаю.

Есть вопрос — почему некторые линии выделяются из общей траектории?

Compose for Desktop — было объявлено на днях, в стадии альфы.

Во-первых, так вы ничего не намеряете. Просто миллисекунды считать — это крайне грубо. Надо обязательно брать JMH.
Во-вторых, эта функция sequence работает через корутины. Да, там накладные расходы могуть быть побольше.
Более точным аналогом будет:


    generateSequence(1 to 0) { (a, b) -> b to a + b }
        .take(10)
        .map { it.second }
        .groupBy { it % 2 == 0 }
        .forEach(::println)

Здесь всё на обычных лямбдах и итераторах.

В таких уроках надо упомянуть важный момент: методы наподобие map и filter на коллекциях создают новую коллекцию, то есть могут вести к серьёзному выделению памяти, даже если в конце вычислений используется один или всего несколько элементов. Для предотвращения этого надо брать последовательности (sequence) от коллекций: list.asSequence().map { ... }.filter { ...}, тогда вычисления могут быть ленивыми и без выделения памяти. Это аналог Stream в чистой Java.


Более того, если вам не нужны распараллеливаемые streams из Java, можно рекомендовать использовать только последовательности Kotlin — оверхед при выполнении может быть гораздо меньше. А ещё свои операторы для sequences написать гораздо легче, чем для streams.

Вот бы ещё шейдер в стиле гравюры...



Но думаю, это даже теоретически не реализуемо, ибо требуется ручная работа.

Давным-давно есть такая вещь как XML, а для преобразования его — XSLT.

Что вы там этими клавиатурами набираете? Как жить без стрелок, PgUp/PgDn и прочего? А для почти всех IDE нужны F-клавиши.


Переключаться между десятком режимов, забивая ими голову, и скроллить через HJKL?


Каждый раз, когда вижу такие изделия, впечатление что это для того, чтобы было "как в кино у хакеров".


Эргономика должна быть не только для пальцев, но и для мозга.

У "Thinking in Java" ("Философия Java") было аж целых три издания, так вот первое — как раз вполне для новичков. В следующих напихали больше конкретных технологий. Не знаю, правда, есть ли у 1-го официальный русский перевод.


P.S. А, нет — даже уже четыре.

Компьюторщики в очередной раз решили, что чего-то знают про сознание...

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

Ещё одна вредная для Kotlin статья, так как вы не показали почти ничего специфичного кроме data class-ов. Вот если бы DSL какой-нибудь изобразили — это было бы полезно.

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

Информация

В рейтинге
4 223-й
Откуда
Тульская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Фулстек разработчик
Java
Kotlin
TypeScript
Vue.js