@android_ru

Страница 669 из 3205
Vitaliy
13.12.2016
21:54:24
Можно и на Java писать, если понимать, как она работает

И не флудить объектами на каждый чих на мобильном как бэ устройстве

Глеб
13.12.2016
21:54:48
Важно соблюдать золотую середину
нет золотой середины. Есть задача и есть наиболее удобный для её решения инструмент.

Vitaliy
13.12.2016
21:55:03
Вот именно.

Google
Vitaliy
13.12.2016
21:55:13
И язык это в первую очередь инструмент

(да, середина есть, для конкретных задач)

Quantum Harmonizer
13.12.2016
21:55:34
Инлайн лямбд
точно, и в этих же инлайнах бвает полно мёртвого кода

Vitaliy
13.12.2016
21:55:37
Поэтому если ты умеешь его использовать, понимаешь его и знаешь со всех сторон — выбирай и используй

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

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

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

Глеб
13.12.2016
21:59:50
а теперь вернемся к котлину и "модникам". У тебя есть задача написать простое клиентское приложение и совсем негусто опыта. И есть два пути - используешь котлин прям по мануалам с их сайта, а они действительно хороши и наглядны, и получаешь приемлемое приложение, которое стабильно работает на большинстве устройств, или используешь Java, мануалов у тебя весь StackOverflow, но все разные, пишешь тысячи строк кода в каждом файле, половину копипастя, и на выходе у тебя гибрид картофеля и помидоров.

Quantum Harmonizer
13.12.2016
21:59:56
На C, вопреки расхожему мнению, ты не напишешь быстрый интерфейс. Нужно очень сильно постараться, чтобы таки написать его.
Вот кстати под iOS пишут на родственных Сям языках. И говорят, что на Objective-C или Swift можно норм писать, а на C++ (Куда там С!) заколебаешься взаимодействовать с UI.

Глеб
13.12.2016
22:00:09
ботва от картофеля, корешки от помидоров

Google
Vitaliy
13.12.2016
22:01:26
Мнение про "тысячи" строк кода в корне неверно — я переписывал части проекта на Котлин, потом отказался и вернулся обратно

Разницы в объеме кода сильной не заметил

Quantum Harmonizer
13.12.2016
22:01:37
Эээ, если негусто опыта, можно писать на JS, например.
(хотя я не понимаю, как люди это делают :)

Глеб
13.12.2016
22:02:13
На сайте Котлина есть примеры решения конкретных задач?
на StackOverflow много примеров решения конкретных задач на котлине?

приходится думать и переписывать, а не копипастить

Quantum Harmonizer
13.12.2016
22:02:34
Разницы в объеме кода сильной не заметил
Я сейчас пишу библиотеку. На Java, чтоб не тащить лишнего в проект. И после Котлина я начинаю довольно неестественно сворачивать некотрые конструкции)

Vitaliy
13.12.2016
22:03:00
Вот именно что примеров решения задач на Котлине в разы меньше, чем на Java.

А думать, чтобы переписать код, не надо

Там тупо смена синтаксиса

Даже генератор есть под это

Глеб
13.12.2016
22:04:10
Это для тебя не надо. А когда у тебя нет возможности ctrl-c ctrl-v и приходится кусок кода хотя-бы прочесть, это сильно мотивирует

Vitaliy
13.12.2016
22:04:33
И как это избавляет от ботвы?

Чуваки берут примеры циклов с сайта Котлина и натягивают на них ботву с SO на Java

Quantum Harmonizer
13.12.2016
22:04:56
Есть возможность Ctrl+C — Ctrl+V, но не пойму, о чём разговор.

Vitaliy
13.12.2016
22:05:08
Получаем абсолютно то же самое, но на Котлине

Глеб
13.12.2016
22:05:28
сложно сказать, говнокода на котлине я просто _ещё_ не видел. На яве что ни проект на поддержку - то новый экспонат в палату мер и весов плохого кода

Vitaliy
13.12.2016
22:05:29
Я тоже теряю нить, если честно, не очень понимаю аргумент Глеба про ботву

Ну, выше я тебе написал пример с onDraw() =)

А вообще если у тебя и правда 2 года опыта, то ты должен понимать, что говнокодить можно на любом языке

Google
Глеб
13.12.2016
22:06:02
а кастомный onDraw я не видел ни разу :)

Quantum Harmonizer
13.12.2016
22:06:20
Ну, выше я тебе написал пример с onDraw() =)
И тут мне захотелось заглянуть в байт-код forEachIndexed

Vitaliy
13.12.2016
22:06:21
Я не верю в 2 года опыта, ты уж прости =) Оно почти везде надо же

Quantum Harmonizer
13.12.2016
22:06:26
Глеб
13.12.2016
22:06:31
прекрасно понимаю, но не понимаю нападок на производительность языка

Vitaliy
13.12.2016
22:06:38
И я писал

Если использовать Котлин по примерам с сайта, производительность будет ниже — речь об этом.

Если разобраться в нем и подстроить — будет чуть ниже.

Quantum Harmonizer
13.12.2016
22:07:17
прекрасно понимаю, но не понимаю нападок на производительность языка
Нахерачивать объекты в каждом кадре — это не хухры-мухры.

Глеб
13.12.2016
22:10:51
вот вы прицепились к onDraw. Может, и хороший пример, но мне не встречался. Более того, кроме одного прототипа и пары unit-тестов для серверного API я на котлине ничего и не писал, ибо подавай "язык, на котором кто-угодно сможет взять проект на поддержку"

но из того, что я получил после написания прототипа, сложилось крайне положительное впечатление

и желаемый результат удается получать за меньшее время

Quantum Harmonizer
13.12.2016
22:12:13
конечно, Котлин приятный и замечательный, просто нужно понимать, где он сделает нам печальку

А вот хорошее видео, в том числе про итераторы. https://www.youtube.com/watch?v=b6zKBZcg5fk

Vitaliy
13.12.2016
22:12:42
В любом методе парсинга такая генерация итераторов будет плохо сказываться на производительности

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

А по Котлину — попробуй пописать больше, поначалу и я был приятно удивлен

Quantum Harmonizer
13.12.2016
22:19:58
У меня тоже было такое ощущение, но сейчас оно больше иллюзией кажется
Лично для меня дело даже не во времени разработки. Помню, как я в проекте на Java искал, где можно заменить new ArrayList() на Collestions.emptyList(), а где он потом, сцук, мутируется. И мне не хватало Котлинских (Mutable)List, которые позволяют избавиться от защитного копирования внутри модуля.

Глеб
13.12.2016
22:23:10
Хорошее видео.

Gleb
13.12.2016
22:23:13
Блин, если каждый год все кому не лень будут изобретать по языку для андроида, полнейший бардак начнется. Джет брэйнс никто не просил - это их отвественность - изобрести новый язык, это с их громких слов - джава - говно. Всем остальным как бы нормально - вот теперь и бегают в попытке все свои пирожки распродать - деньги вернуть

Google
Gleb
13.12.2016
22:23:58
и главное - идите впаривайте сервер-сайдам - нет блин на андроиде как медом для изобретателей намазано

Глеб
13.12.2016
22:24:22
так для андроида нет альтернативы джаве кроме котлина

потому и налетели

Quantum Harmonizer
13.12.2016
22:24:38
Дык андроид быстрее энтерпрайза развивается.

так для андроида нет альтернативы джаве кроме котлина
Пробовал груви. Вроде же и скала можно.

Глеб
13.12.2016
22:24:59
сервер уже давно можно хоть на JS писать

Gleb
13.12.2016
22:25:00
так для андроида есть альтернатива -

айос

Admin
ERROR: S client not available

Глеб
13.12.2016
22:25:32
с их obj-c?

избави бог от этой богомерзкой дряни

Евгений
13.12.2016
22:25:49
Свифт же

Глеб
13.12.2016
22:26:12
а срачик о производительности свифта в сравнении с obj-c не завезли?

Sergey
13.12.2016
22:26:28
Свифт же
а дадут саппортить проект на obj-c и что тогда?

Quantum Harmonizer
13.12.2016
22:26:39
Евгений
13.12.2016
22:26:39
Не соглашаться)

Gleb
13.12.2016
22:26:43
у них своя платформа - свой язык, и на альтернативы - вроде как не экспериментят - просто не понятно - нафига??? тебе дали сдк, дали язык - пользуйся, изучай

Quantum Harmonizer
13.12.2016
22:27:09
а дадут саппортить проект на obj-c и что тогда?
Да пиздец, там же interop стремится к нулю, насколько я понял.

Глеб
13.12.2016
22:27:25
эдак можно было бы до сих пор на C или Fortran'е писать

Google
Quantum Harmonizer
13.12.2016
22:28:27
Что? Есть язык, который эффективнее решает свои задачи? Да и хуй с ним!

Глеб
13.12.2016
22:29:07
Пробовал груви. Вроде же и скала можно.
на груви не пробовал, но он мне кажется мутным. А вот скала - это 1000 и 1 способ выстрелить в ногу, если отвлечься, очень требовательный к навыкам язык.

Глеб
13.12.2016
22:30:46
а что до производительности котлина - Рим не за один день строился, думаю, допилят они компилятор.

Quantum Harmonizer
13.12.2016
22:30:57
Но, например, { view -> не катит, нужно писать { View view ->

И груви невыносимо медленный в рантайме.

Dim
13.12.2016
22:31:39
Мы столкнулись с Anko. И поняли, что лучше уж в хмлку заглядывать. Ну либо сильно рефакторить код в модули.

Gleb
13.12.2016
22:31:43
Проблема в том что бизнес когда нас нанимает и ротирует - свято верит что мы понимаем друг друга... а мы сами себе альтернативы тем временем придумываем. 70 % вакансий - это саппорт существующих проектов.... вот чем плохи изобретения (лично моё мнение)

Если б каждому давали по проекту с нуля - делай как хочешь - так я тока ЗА "многообразие" подходов, пока оно меня не касается ?

Quantum Harmonizer
13.12.2016
22:33:07
Dim
13.12.2016
22:34:03
Что не так с Anko? (Спрашиваю как дилетант, тут у меня мало опыта)
Можно задуматься пока пишешь и сделать из потока мыслей поток DSL-ля))

Это все красиво конечно, до поры до времени. Сложные штуки я бы все же предпочел на Java + xml делать.

Либо разность, дробить эту анковскую верстку по файлам

Gleb
13.12.2016
22:49:48
что-то как-то по каждому тезису хотелось-бы узнать источник информации.
Личный опыт и банальная логика. 1. Бизнес не интересуют наши проблемы кроме своих доходов(потому что это бизнес). 2. Вскусного и приятного на планете намного меньше чем желающих на это вкусное и приятное, ибо как за рутиное скучное и беспонтовое никто браться не хочет.

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

ну эт конечно сильно утрировано, но в общих чертах получается так

Dim
13.12.2016
23:00:35
Народ, кто-нибудь использует RealmRecyclerView? Как его негладко скроллить?

smoothScrollToPosition работает, обычный scrollToPosition нет(

Страница 669 из 3205