Да, надо ускорять =) Первый раз на колтине, но давно люблю регулярки. 2-я задача с кол-вом букв: fun charCount(input: String) : String{ return input.split("(?
Читал книгу по основам, на чтение ушло пару дней, здесь все четко и понятно вложились в один час. Большое спасибо за видео и вложенное в него время. Видео из категории must have для старта.
Спасибо за видео! Первая задача: import java.util.LinkedList fun repeated(a1: IntArray, a2: IntArray): List { val list2 = LinkedList(a2.asList()) val result = mutableListOf() for (i in a1) if (list2.remove(i)) result.add(i) return result }
Огромное спасибо за такую большую выдачу такого материала. Я к Kotlin относился чутка с презрением, типо фу напридумывали языков всяких. А теперь начинаю видеть что он превосходит Java и временами удобнее. Но... без знаний Java я бы мало что понял с этого урока. Так что Котлин это второе дыхание Javы.
Дыхание жавы ага, этому дыханию уже наверное более 40 лет. Сначала барабан выпустили язык для кофеварок, чтобы не дай бог не было перегрузки операторов, а потом стали туда напихивать видя как язык сливает.
Небольшая поправочка - val - это read-only переменная. Т.е. не совсем константа. Чтобы задать константу, нужно использовать const val. Если декомпилировать котлиновский код каким-нибудь java-декомпилятором, то будет примерно такой результат: System.out.println(ConstValKt.getFANCY_VAL()); - в исходниках использовался val System.out.println(2); - в исходниках использовался const val, т.е. здесь компилятор напрямую закидывал значение константы
@@programmerlearner4631 константа и read-obly переменная это совершенно разные вещи и путать такое нельзя. Особенно когда используется lazy инициализация readOnly переменных.
Как всегда хороший урок, спасибо) По впечатлениям Котлин вроде бы довольно удобный, но в некоторых местах все же синтаксис выглядит даже сложнее и запутаннее. Хотя наверное это просто с непривычки
Бро, ты крут! меня как раз на работе перевели на проект с котлиным, а я особо в нем не фурычу.. а тут такой видос мне в рекомендации) Так что спасибо!)
Наиль, огромное спасибо за урок. Но очень хотелось бы от вас ещё услышать про функции области видимости: let, run, with, apply, и also. Думаю это очень не маловажная особенность в Котлин. Спасибо!
Спасибо огромное ! Искал как раз такой короткий ознакомительный курс. Котлин чем то напомнил мне груви, тоже растет из джавы, но намного упрощает синтаксис по сравнению с ней.
Решение первой задачи в 2 строки: fun getRepeatedIntersection(a1: IntArray, a2: IntArray): List { val mut2 = a2.toMutableList() return a1.filter {mut2.remove(it)} }
1. Первая задача просто не решена: в алгоритмических задачах подразумевается решение с требуемой вычислительной сложностью, а не любое работающее. Здесь представлено решение со сложностью O(n^2), а есть решение с O(n log n) - отсортировать массивы, потом пройтись по ним и "выловить" все пары. 2. Во второй задаче, алгоритмически-то решено правильно, но из-за использование конкатенации строк в цикле (что приводит к созданию новой строки и копированию в неё старой на каждой итерации) в результате общая вычислительная сложность опять получается O(n^2). Тут конечно нужно StringBuilder использовать. Ну и дублирование кода внутри цикла и после него - это ужасно конечно. 3. Тут решено с нужной сложностью, но слишком громоздкий код (да ещё создаётся куча лишних объектов). На этой задаче как раз можно было применить упомянутую функцию groupBy. Решается в одну строчку: fun groupWords(words: Array) = words.groupBy { String(it.toCharArray().apply { sort() }) }.values
у меня как то так: val a = arrayOf(1,2,3,2,0) val b = arrayOf(5,1,2,7,3,2) var bCopy = b.toMutableList() println(a.filter { if (bCopy.contains(it)) { bCopy.remove(it); true } else false })
Код "Привет, Мир!" на Kotlin вернул меня в "злые" 90е, когда мы дружно и незабвенно писали на Турбо Паскале. Там "Hello World" выглядит не на много иначе: program Hello; begin writeln ('Hello, world.'); end. Мне действительно 3000 лет и я действительно был там...
Господи, наконец-то попалось видео не облизывающее язык программирования в течение часа, а и вправду рассказывающее дельные и интересные вещи про него.
ты же в начале рассказывал про groupBy, а сам вручную его реализовал по сути fun groupWords(words: List): List { return words .mapIndexed { idx, it -> idx to it.asIterable().sorted().joinToString("") } .groupBy { it.second } .values.map { it.map { words[it.first] } } }
Довольно часто звучало выражение "как в Python". И из этого видео я понял, что Kotlin действительно многие идеи позаимствовал у Python. Мне как представителю питона видится, что многие задачи решаются намного проще и лаконичней в питоне. Наверное Kotlin будет отличной альтернативой Java, для себя же, как для питониста, я не нашёл причин осваивать дополнительный язык.
Так же было бы неплохо показать в последней задачке как класть элемент через Map.compute вместо if/containsKey, как раз было бы красивее и можно было бы элвиса запряч, когда текущий val был бы null :) (тем более если задачи из "яндекса")
@@MerlinMoorlo Можно, но желательно сперва изучить базу джава. Если вы совсем не разбираетесь в программировании, то сначала изучите пайтон. Он отлично подходит для первого яп. На пайтоне тоже можно сделать довольно крутые андроид приложения.
@@mikokz2329 а что, неплохая идея, сначала изучаем пайтон, потом изучаем джаву и только потом переходим к котлину, так пару лет уйдет чтобы до котлина добраться :)
Яндекс обычно требует задачи решать без готовых функций т.е через логику и написание функций самому с помощью циклов и прочей, если ты решишь через готовый toHashSet они даже не смотрят) накидал запару минут может не очень красиво но понятно и просто for (item in a){ if ( b.contains(item)){ c.add(item) b.remove(item) } } первая задача
Подсчет к-ва каждого символа через мапу fun count (str: String){ val result = mutableMapOf() for (i in str.indices) { val char = str[i] result[char] = if (result[char] == null) 1 else result[char]!! + 1 } result.forEach { (ch, count) -> print("$ch$count") } }
Коммент по поводу функций, когда метод находился вне класса, т. е. в процедурных языках программирования, таких как C/C++/Pascal и ещё куче языков, то он называется либо функций, либо процедурой. В зависимости от типа возвращаемого значения. void - процедура, потому что ничего не возвращает. Функция - int, double, string и т. д., потому что выполняет return в конце своей работы. А в ООП, что функцию, что процедуру называют методом. А это значит что Kotlin поддерживает процедурный стиль программирования.
Спаксибо, отличное видео! Я закончил курсы ява андроид, но на работу не берут, потому что нужен котлин. Посмотрел видео и в первом приближении понял отличия котлина от явы. Видео идеально как "getting started" при переходе с явы.
@@mon_541 да нет, как и любой другой язык, котлин можно учить в качестве первого языка. Просто нужно найти подробный курс по Котлину, где будет все рассказано с самого начала- типы данных, условные операторы и т.д. Но так как котлин и ява на 90% одинаковы, а яву я изучил, то я посмотрел несколько видео, прошел еще дополнительно простой бесплатный курс на степике и тем самым освоил котлин на приемлемом уровне. Вообще, если вы не программист(например на другом языке, 1С или типа того) я бы советовал учиться не по интернет-курсам, а пойти на годовые курсы в реале. При самостоятельном обучении в инете вы вы не сможете поддерживать высокую интенсивность обучения и мотивации. Суть обучения на годовых курсах в реале: занятия раз в неделю по 6 часов, далее задают домашнее задание, вы его выполняете. Процесс обучения происходит именно тогда, когда вы выполняете дз. Теория важна, но практика- наше все. Учиться на таких курсах не сложно, просто нужно выделять время хотя бы по час-два в день, чтобы делать дз. В группе у нас в основном были люди старше 30 лет, так что в любом возрасте можно освоить программирование. Не пожалейте 1000$ за год.
@@АлексейПерцух спасибо огромное, за подробную инструкцию, это реально было важно для меня))а то сколько не искал инфы всё не то, вроде для начинающих искал в то же время столько непонятного
Спасибо, вполне хороший урок. Для человека, который уже в проге и просто нужно освоиться в новом языке, на 2х вполне неплохо смотреть, хотя хотелось бы даже побыстрее
А как вы считаете, стоит ли переходить с Java на Kotlin, если разрабатываешь Android приложения? Лично я долго выбирал курсы по IT, рассматривал разные компании, но в итоге остановился на Skypro. Курсы оказались очень структурированными и понятными, что позволило мне начать работать уже за пару месяцев до окончания обучения))
Было бы неплохо увидеть от вас курс по Kotlin, учитывая, что курс по Java вышел отличный, что скажете?) (Если решитесь, то добавьте, пожалуйста, практические задачи)
Решение задач понравилось, всегда интересно наблюдать как у других людей голова работает) я вообще не шарю в котлине так что чисто алгоритмически скажу как бы сделал на питоне: в первой я бы создал 3й список. И его заполнял следующим образом: цикл фор первого списка по второму списку, при встрече совпадения - записать цифру в третий список, выкинуть эту цифру со второго списка и оператор continue (гугл говорит он в котлине тоже есть). И того третий список соберётся как надо. Вторая задача: примерно так же бы сделал но с одним изменением - я бы в начале CurrentLetter - пустой строкой и когда бы встречал другую букву считал бы их количество в строке, таким образом не пришлось бы потом отдельно писать кусок кода для обработки последней буквы. Третью я бы наверно также сделал.
Подскажите пожалуйста, я начинаю изучать котлин, именно с этого я решил начать путь, так как в теории понравилась андроид разработка. Андроид студио и все что нужно я уже сделал, эмулятор в том числе, прохожу обучение по видеоурокам на ютубе. Но думаю, нужно так же какие то основы так же изучить, так как логику всего я понимаю, но так же понимаю, что это вершина айсберга. Какой роадмап лучше в общем и целом?
Наш чат в Telegram: t.me/alishev_g
@Jace Jabs Привет! я его не знаю, поэтому пока такого видео не будет.
@@alishevN Привет, можно ли заказать решения задач по котлин у вас?
Как обращаться Алишер или Алишев?
Смотрел на 2х, освоил Котлин за полчаса.
Где видосики, влоггер?
спс ржу ))
Не смотрел и сразу освоил, магия
Чай
Да, надо ускорять =) Первый раз на колтине, но давно люблю регулярки. 2-я задача с кол-вом букв:
fun charCount(input: String) : String{
return input.split("(?
Читал книгу по основам, на чтение ушло пару дней, здесь все четко и понятно вложились в один час. Большое спасибо за видео и вложенное в него время. Видео из категории must have для старта.
что за книга?
@@manOfPlanetEarth The Joy of Kotlin
@@alexeypolishchuk7010 thanks!
Прекрасно, хороший темп, тембр и словарный состав.
Наполнение то что доктор прописал.
Спасибо! Переслал сыну. ))
Спасибо вам, добрый человек! Идельный вмдео урок. Сжато, по делу и при этом все пояснено.
Спасибо за видео!
Первая задача:
import java.util.LinkedList
fun repeated(a1: IntArray, a2: IntArray): List {
val list2 = LinkedList(a2.asList())
val result = mutableListOf()
for (i in a1) if (list2.remove(i)) result.add(i)
return result
}
Спасибо за полезное видео.
Подача - то что нужно.
Со знаниями Java Core было очень легко понимать о чем речь.
Огромное спасибо за такую большую выдачу такого материала. Я к Kotlin относился чутка с презрением, типо фу напридумывали языков всяких. А теперь начинаю видеть что он превосходит Java и временами удобнее. Но... без знаний Java я бы мало что понял с этого урока. Так что Котлин это второе дыхание Javы.
Дыхание жавы ага, этому дыханию уже наверное более 40 лет. Сначала барабан выпустили язык для кофеварок, чтобы не дай бог не было перегрузки операторов, а потом стали туда напихивать видя как язык сливает.
@@inbuckswetrust7357 откуда цифра 40 лет? и при чем тут котлин?
Огромное спасибо за ваш труд. Тема Kotlin очень интересна, буду и дальше рад видеть ее на канале. Удачи в начинаниях :)
хоть я и кодил всю свою сознательную жизнь на шарпах, котлин я благодаря вам освоил очень быстро. спасибо за видос!
выражаю свою огромную благодарность за столь информативное и лаконичное видео
Наиль, ещё не посмотрел, но заранее лайк 👍, давно пора по котлину плейлист сделать!!!
Небольшая поправочка - val - это read-only переменная. Т.е. не совсем константа. Чтобы задать константу, нужно использовать const val. Если декомпилировать котлиновский код каким-нибудь java-декомпилятором, то будет примерно такой результат:
System.out.println(ConstValKt.getFANCY_VAL()); - в исходниках использовался val
System.out.println(2); - в исходниках использовался const val, т.е. здесь компилятор напрямую закидывал значение константы
а константа это разве не read-only переменная?
@@programmerlearner4631 константы определяются во время компиляции. val - во время выполнения. Немножчеко разное
@@aquinary. это принципиально на что-то влияет?
@@felinooper6300 это надо знать, чтобы не путаться в терминах.
@@programmerlearner4631 константа и read-obly переменная это совершенно разные вещи и путать такое нельзя. Особенно когда используется lazy инициализация readOnly переменных.
Лайк не глядя:) Спасибо за вашу работу, Наиль и за умение хорошо подать материал)
P.S Посмотрю позже)
посмотрел?
Наиль - просто офигенный дядька! Всегда с удовольствием смотрю его видео, всегда всё чётко, понятно и без лишней воды.
Как всегда хороший урок, спасибо) По впечатлениям Котлин вроде бы довольно удобный, но в некоторых местах все же синтаксис выглядит даже сложнее и запутаннее. Хотя наверное это просто с непривычки
Потихоньку переходим в нашей команде с java на котлин. Видео очень полезное. Спасибо
зачем, почему?
какого рода компания у вас?
@@Das.Kleine.Krokodil сбер
Бро, ты крут! меня как раз на работе перевели на проект с котлиным, а я особо в нем не фурычу.. а тут такой видос мне в рекомендации) Так что спасибо!)
Наиль, спасибо за видео!!! Очень жду следующих видео про Котлин.
Наиль, огромное спасибо за урок. Но очень хотелось бы от вас ещё услышать про функции области видимости: let, run, with, apply, и also. Думаю это очень не маловажная особенность в Котлин. Спасибо!
Великолепно! Просто восхитительно! Коротко, без воды и по делу.
спасибо. было лень читать книгу, теперь стало легче)
Шикарная подача и примеры. После чтения документации закрепить его видосом было очень полезно. Спасибо.
Очень хорошее ознакомительное видео, Наиль. Как всегда - просто, чётко и понятно. Спасибо!
Спасибо огромное ! Искал как раз такой короткий ознакомительный курс. Котлин чем то напомнил мне груви, тоже растет из джавы, но намного упрощает синтаксис по сравнению с ней.
Спасибо за видео.
Третья задача:
return list.groupBy { it.toSet() }. values.toList()
функциональный подход.. а ТС похоже императивщик )
Огромное спасибо Наиль! Топ канал и топовые видео!
В этом видео всё идеально) И подача, и язык
Как же приятно учить Kotlin после Java! Не потому что Java ужасный, просто уже всё понимаешь моментально )
Согласен, пишу на Джаве +- год, и вот решил выучить Котлин :)
Я тебе больше скажу - после Java и Python - Kotlin учить еще приятнее ) Контлин - их внебрачный сын )
@@ololo2274 Jaba + Piton = Kotleta
а зачем он вам в работе был нужен?
После Java и Gosu только названия коллекций надо запомнить 😊
Огромное спасибо за проделанный труд. Зная Java, освоил Kotlin (на базовым уровне) со скорость 1.25 :)
Самый лучший ролик на ютюбе! Спасибо за подробное разъяснение кода ! нигде такого больше нет, а ведь это именно то, что нужно! Хочу ещё!!!!
Kotlin очень полюбил после Java.
Спасибо за все видео на канале, хорошая подача материала, продолжай в том же духе!
Спасибо за быстрое введение в Kotlin.
Очень суперский урок - спасибо!
вот это шикарно!!!! Лайк от СЕООНЛИ
Perfect explanation of Kotlin. Thank you for nice video!
Вот это круто, как раз на котлине сейчас пишем
Спасибо большое за Ваши видео! Очень понятно и структурировано излагаете материал.
Решение первой задачи в 2 строки:
fun getRepeatedIntersection(a1: IntArray, a2: IntArray): List {
val mut2 = a2.toMutableList()
return a1.filter {mut2.remove(it)}
}
val mut2 = LinkedList(a2.asList())
Преподаватель от бога просто )) спасибо, все очень понятно
Как раз то что я искала! Спасибо было полезно.
1. Первая задача просто не решена: в алгоритмических задачах подразумевается решение с требуемой вычислительной сложностью, а не любое работающее. Здесь представлено решение со сложностью O(n^2), а есть решение с O(n log n) - отсортировать массивы, потом пройтись по ним и "выловить" все пары.
2. Во второй задаче, алгоритмически-то решено правильно, но из-за использование конкатенации строк в цикле (что приводит к созданию новой строки и копированию в неё старой на каждой итерации) в результате общая вычислительная сложность опять получается O(n^2). Тут конечно нужно StringBuilder использовать. Ну и дублирование кода внутри цикла и после него - это ужасно конечно.
3. Тут решено с нужной сложностью, но слишком громоздкий код (да ещё создаётся куча лишних объектов). На этой задаче как раз можно было применить упомянутую функцию groupBy. Решается в одну строчку:
fun groupWords(words: Array) = words.groupBy { String(it.toCharArray().apply { sort() }) }.values
ААА, наконец-то Котлин))
Третья задача на лямбдах
fun listGrouper(input:List) : List{
return input
.groupBy(keySelector = { it.toCharArray().sorted() }, valueTransform = { it } )
.map { it.value }
}
Первая задача получилась что-то знатно короче:
execOne(one: IntArray, two: IntArray): List {
return one.filter { it -> it in two }.sorted()
execOne(intArrayOf(1, 1, 1), intArrayOf(1, 1))
Работает неправильно
у меня как то так:
val a = arrayOf(1,2,3,2,0)
val b = arrayOf(5,1,2,7,3,2)
var bCopy = b.toMutableList()
println(a.filter { if (bCopy.contains(it)) { bCopy.remove(it); true } else false })
Наиль ты болшой молодец!! Любые твои уроки, очень позноавтельные !!
Ждём марафон по Котлин 🔥
Отличный вводный урок, спасибо большое!
Материал и озвучка - хорошая. Спасибо!
Привет! Классный посыл - знакомство с Котлин. Лайк сразу.
Спасибо за твои видео, как
всегда просто и доступно)
как всегда на высшем уровне ! Спасибо
Код "Привет, Мир!" на Kotlin вернул меня в "злые" 90е, когда мы дружно и незабвенно писали на Турбо Паскале. Там "Hello World" выглядит не на много иначе:
program Hello;
begin
writeln ('Hello, world.');
end.
Мне действительно 3000 лет и я действительно был там...
Лайк заранее. Вернусь через пару недель после ЕЕ и Спринга=)
EE и Spring за пару недель? - Мужчина! ))
@@wildjoe6259, есть разница изучить азы и стать синьором. Так что всё зависит от поставленной цели:)
@@skanta как успехи?
Хорошее видео, но не охватил let{} run{} и тд, а они используются очень часто, также suspend, launch и job
Спасибо за видео, сохранил и лайкнул 👍
Круто. Есть 2 топовых java учителя Alishev и dmDev. И кто круче- я не знаю. Лайк
Пересказал документацию, красава.
Господи, наконец-то попалось видео не облизывающее язык программирования в течение часа, а и вправду рассказывающее дельные и интересные вещи про него.
8:16 Классно. Подобно в питоне можно делать.
Когда изучал джаву, то думал почему же не сделали так как в питоне
Спасибо за видос!
ты же в начале рассказывал про groupBy, а сам вручную его реализовал по сути
fun groupWords(words: List): List {
return words
.mapIndexed { idx, it -> idx to it.asIterable().sorted().joinToString("") }
.groupBy { it.second }
.values.map { it.map { words[it.first] } }
}
Довольно не плохая презентация информации, спасибо бро! Давай запилим приложение еще на минималках какое нибудь и будет вообще сказка!
СУПЕР. спасибо за труд
Спасибо за видео, выучил язык, еще бы в контексте спринга\хибера - Котлин)
Годнота, давай ищо!
Надеюсь будет больше уроков про Котлин
Решил третью так, в одну строку:
fun groupWords(a: Array): List{
return a.groupBy { it -> it.toSet() }.values.toList();
}
Довольно часто звучало выражение "как в Python". И из этого видео я понял, что Kotlin действительно многие идеи позаимствовал у Python. Мне как представителю питона видится, что многие задачи решаются намного проще и лаконичней в питоне. Наверное Kotlin будет отличной альтернативой Java, для себя же, как для питониста, я не нашёл причин осваивать дополнительный язык.
Я бы ещё добавил - как в DELPHI - (может кто изучал этот язык - многое по синтаксису взято из него)
@@МихаилСтариков-т9ч делфи это паскаль. что из паскаля взял котлин?
> я не нашёл причин осваивать дополнительный язык.
а зачем таким вопросом задаваться под видел про котлин?
Так же было бы неплохо показать в последней задачке как класть элемент через Map.compute вместо if/containsKey, как раз было бы красивее и можно было бы элвиса запряч, когда текущий val был бы null :) (тем более если задачи из "яндекса")
Как же легко переходить с Java на Kotlin, спасибо
а с нуля можно котелок пробовать если до этого не был программистом вообще?
@@MerlinMoorlo Можно, но желательно сперва изучить базу джава. Если вы совсем не разбираетесь в программировании, то сначала изучите пайтон. Он отлично подходит для первого яп. На пайтоне тоже можно сделать довольно крутые андроид приложения.
@@mikokz2329 а что, неплохая идея, сначала изучаем пайтон, потом изучаем джаву и только потом переходим к котлину, так пару лет уйдет чтобы до котлина добраться :)
@@mikokz2329 лучше уж котлин сразу чем питон
по лаконичности котлин близок к питону
Яндекс обычно требует задачи решать без готовых функций т.е через логику и написание функций самому с помощью циклов и прочей, если ты решишь через готовый toHashSet они даже не смотрят)
накидал запару минут может не очень красиво но понятно и просто
for (item in a){
if (
b.contains(item)){
c.add(item)
b.remove(item)
}
}
первая задача
Спасибо за ваш труд!
Подсчет к-ва каждого символа через мапу
fun count (str: String){
val result = mutableMapOf()
for (i in str.indices) {
val char = str[i]
result[char] = if (result[char] == null) 1
else result[char]!! + 1
}
result.forEach { (ch, count) ->
print("$ch$count")
}
}
это не покрывает требования задачи. Если символ 'A' встречается например вначале и в конце, AAAABBBAAA, то ваша реализация сделает A7B3, а надо A4B3A3
@@fanifyeyev да, согласен
Хорошее видео, но задачи решаются с представленными возможностями куда проще. 3 задача без учета ввода и вывода 2 сроки.
Лайк стоит, но просмотр будет примерно через месяц)
Познавательно, спасибо)
спасибо за контент)
Спасибо тебе за твои уроки
А я последнюю задачу сделал путём подсчёта суммы значений символов и затем сравнения таких сумм других строк.
Лучший!!!
Коммент по поводу функций, когда метод находился вне класса, т. е. в процедурных языках программирования, таких как C/C++/Pascal и ещё куче языков, то он называется либо функций, либо процедурой. В зависимости от типа возвращаемого значения. void - процедура, потому что ничего не возвращает. Функция - int, double, string и т. д., потому что выполняет return в конце своей работы. А в ООП, что функцию, что процедуру называют методом. А это значит что Kotlin поддерживает процедурный стиль программирования.
Да, верно
Спаксибо, отличное видео! Я закончил курсы ява андроид, но на работу не берут, потому что нужен котлин. Посмотрел видео и в первом приближении понял отличия котлина от явы. Видео идеально как "getting started" при переходе с явы.
долго учились ,сложно?наверное сразу котлин начинать не реально без знаний основ
@@mon_541 да нет, как и любой другой язык, котлин можно учить в качестве первого языка. Просто нужно найти подробный курс по Котлину, где будет все рассказано с самого начала- типы данных, условные операторы и т.д.
Но так как котлин и ява на 90% одинаковы, а яву я изучил, то я посмотрел несколько видео, прошел еще дополнительно простой бесплатный курс на степике и тем самым освоил котлин на приемлемом уровне. Вообще, если вы не программист(например на другом языке, 1С или типа того) я бы советовал учиться не по интернет-курсам, а пойти на годовые курсы в реале. При самостоятельном обучении в инете вы вы не сможете поддерживать высокую интенсивность обучения и мотивации. Суть обучения на годовых курсах в реале: занятия раз в неделю по 6 часов, далее задают домашнее задание, вы его выполняете. Процесс обучения происходит именно тогда, когда вы выполняете дз. Теория важна, но практика- наше все. Учиться на таких курсах не сложно, просто нужно выделять время хотя бы по час-два в день, чтобы делать дз. В группе у нас в основном были люди старше 30 лет, так что в любом возрасте можно освоить программирование. Не пожалейте 1000$ за год.
@@АлексейПерцух спасибо огромное, за подробную инструкцию, это реально было важно для меня))а то сколько не искал инфы всё не то, вроде для начинающих искал в то же время столько непонятного
@@АлексейПерцух плохой совет
подойдёт только таким же, как ты
* джава, и никак иначе
Блин, аргументы по умолчанию реально крутая фича. Печально, что в джаве их нет
жаль несколько лайкосов не поставить) очень годный урок
Спасибо, вполне хороший урок. Для человека, который уже в проге и просто нужно освоиться в новом языке, на 2х вполне неплохо смотреть, хотя хотелось бы даже побыстрее
А как вы считаете, стоит ли переходить с Java на Kotlin, если разрабатываешь Android приложения? Лично я долго выбирал курсы по IT, рассматривал разные компании, но в итоге остановился на Skypro. Курсы оказались очень структурированными и понятными, что позволило мне начать работать уже за пару месяцев до окончания обучения))
Хорошему видео не нужны ботокомментарии. И к счастью, тут их нет. Когда видео рассказывает человек с опытом, это видно по манере повествования.
А почему Котлин, в отличие от Явы, поменял местами и имяПеременной при инициализации? Для чего такое задумано?
Для того чтобы беглым взглядом при просмотре кода обращать внимание на НАЗВАНИЕ переменной, а уже потом обращать внимание на её тип
@@антонсыч-ъ9и и названия переменных при этом еще и выровнены по одному столбцу
Топовое видео и язык хороший
У меня экран стал липкий от количества синтаксического сахара!
П.С. видос и сам язык топ!
Очень удобная программа
1:05:00 Если порядок не важен, то вот решение: val result = s2.filter { e -> s1.any{it == e} }
Было бы неплохо увидеть от вас курс по Kotlin, учитывая, что курс по Java вышел отличный, что скажете?) (Если решитесь, то добавьте, пожалуйста, практические задачи)
Курс вряд ли. Я же практически все рассказал в этом видео)
@@alishevN а как же корутины?)
@@ДенисШепелёв-ф3ч это ж основы, представьте elixir за час, вы там не увидите написание распределённых систем явно за час.
Спасибо большое!!!!
то что искал
Решение задач понравилось, всегда интересно наблюдать как у других людей голова работает) я вообще не шарю в котлине так что чисто алгоритмически скажу как бы сделал на питоне:
в первой я бы создал 3й список. И его заполнял следующим образом: цикл фор первого списка по второму списку, при встрече совпадения - записать цифру в третий список, выкинуть эту цифру со второго списка и оператор continue (гугл говорит он в котлине тоже есть). И того третий список соберётся как надо.
Вторая задача: примерно так же бы сделал но с одним изменением - я бы в начале CurrentLetter - пустой строкой и когда бы встречал другую букву считал бы их количество в строке, таким образом не пришлось бы потом отдельно писать кусок кода для обработки последней буквы.
Третью я бы наверно также сделал.
Подскажите пожалуйста, я начинаю изучать котлин, именно с этого я решил начать путь, так как в теории понравилась андроид разработка.
Андроид студио и все что нужно я уже сделал, эмулятор в том числе, прохожу обучение по видеоурокам на ютубе.
Но думаю, нужно так же какие то основы так же изучить, так как логику всего я понимаю, но так же понимаю, что это вершина айсберга.
Какой роадмап лучше в общем и целом?
В задачках на кол-во букв. Есть функция сортировки. А потом часть алг-ма как автор показал.