сегодня выбралась впервые за неделю (две??) учиться на свежий воздух (читайте: выдуть пыль из клавиатуры тëплым морским ветерком 😄)
оцениваю опыт на 100/10 ☀🌊
оцениваю опыт на 100/10 ☀🌊
🔥12❤1👌1
return lineOfSymbols.charAt(random.nextInt(lineOfSymbols.length()));
она написала эту строчку, перечитала, сошла с ума и больше никогда не была онлайн
она написала эту строчку, перечитала, сошла с ума и больше никогда не была онлайн
👀5
Forwarded from Уютное сообщество джавистов
Объясните разницу между Linkedlist и Arraylist.
ArrayList — это реализация интерфейса List, основанная на массиве. ArrayList внутренне обрабатывает изменение размера этого массива при добавлении или удалении элементов. Вы можете получить доступ к его элементам за константное время по их индексу в массиве. Однако вставка или удаление элемента подразумевает сдвиг всех последующих элементов, что может быть медленным, если массив огромен, а вставленный или удаленный элемент находится близко к началу списка.
LinkedList — это двусвязный список: отдельные элементы помещаются в объекты Node (узел), которые имеют ссылки на предыдущий и следующий Node. Эта реализация может оказаться более эффективной, чем ArrayList, если у вас много вставок или удалений в разных частях списка, особенно если список большой.
Однако в большинстве случаев ArrayList превосходит LinkedList. Даже перемещение элементов в ArrayList, хотя и является операцией O(n), реализовано в виде очень быстрого вызова System.arraycopy(). Это может даже оказаться быстрее, чем O(1) вставка в LinkedList, которая требует создания экземпляра объекта Node и обновления нескольких ссылок под капотом. LinkedList также может иметь большие накладные расходы памяти из-за создания нескольких небольших Node объектов
#вопросы_с_собеседований
LinkedList — это двусвязный список: отдельные элементы помещаются в объекты Node (узел), которые имеют ссылки на предыдущий и следующий Node. Эта реализация может оказаться более эффективной, чем ArrayList, если у вас много вставок или удалений в разных частях списка, особенно если список большой.
Однако в большинстве случаев ArrayList превосходит LinkedList. Даже перемещение элементов в ArrayList, хотя и является операцией O(n), реализовано в виде очень быстрого вызова System.arraycopy(). Это может даже оказаться быстрее, чем O(1) вставка в LinkedList, которая требует создания экземпляра объекта Node и обновления нескольких ссылок под капотом. LinkedList также может иметь большие накладные расходы памяти из-за создания нескольких небольших Node объектов
#вопросы_с_собеседований
👀3
пост для тех, кому нужна поддержка:
да, ок решать задачку несколько дней, неважно, сколько времени на этапе учёбы уходит на решение – главное тут даже не результат, а уровень понимания того, что ты делаешь 🤞🏻
да, ок тупить на занятиях: лучше протупить сейчас и запомнить через ошибку, чем сделать это на собесе;
да, ок, что иногда нет ни сил, ни времени. работа есть работа, сон есть сон, без них далеко не уедешь. и впихивать в своё расписание учёбу между двумя нервными срывами так себе идея: лучше дать голове отдых, когда организм того потребует, а потом выделить целый выходной на то, чтобы в спокойном темпе догнать материал. стараться покодить каждый день тоже важно, но не в ущерб здоровью;
да, ок чувствовать, что жизнь изменилась, зациклилась, стала однообразной или что она вообще пролетает мимо. у меня сейчас так: но я знаю, ради какой цели всё это. это отрезвляет;
и – да, ок переживать о настоящем и будущем, ок нуждаться в поддержке и давать слабину. это часть процесса 🫂
да, ок решать задачку несколько дней, неважно, сколько времени на этапе учёбы уходит на решение – главное тут даже не результат, а уровень понимания того, что ты делаешь 🤞🏻
да, ок тупить на занятиях: лучше протупить сейчас и запомнить через ошибку, чем сделать это на собесе;
да, ок, что иногда нет ни сил, ни времени. работа есть работа, сон есть сон, без них далеко не уедешь. и впихивать в своё расписание учёбу между двумя нервными срывами так себе идея: лучше дать голове отдых, когда организм того потребует, а потом выделить целый выходной на то, чтобы в спокойном темпе догнать материал. стараться покодить каждый день тоже важно, но не в ущерб здоровью;
да, ок чувствовать, что жизнь изменилась, зациклилась, стала однообразной или что она вообще пролетает мимо. у меня сейчас так: но я знаю, ради какой цели всё это. это отрезвляет;
и – да, ок переживать о настоящем и будущем, ок нуждаться в поддержке и давать слабину. это часть процесса 🫂
❤13🔥4🤝2🌚1
сегодня с двумя коллегами обсуждали решение задачки, где мы в массиве из 10 тысяч значений ищем самое часто встречающееся. после когнитивно-затратных попыток connect all the dots и объяснить, как я написала функции, родился вывод:
надо мощно и срочно учиться переводить свой код в слова, чтобы диалог с коллегами шёл как по маслу, а не катился как перекати-поле через поломанные причинно-следственные связи 😬
надо мощно и срочно учиться переводить свой код в слова, чтобы диалог с коллегами шёл как по маслу, а не катился как перекати-поле через поломанные причинно-следственные связи 😬
🤓4👌1
заметили, как я пропала? ;) сейчас обо всём расскажу
👀4
короче, ни для кого не секрет, что учёба – это КАПЕЦ какое когнитивное испытание. это огромные изменения на нейронном уровне и стресс, от которого, как известно, мозг привык нас беречь. вот и меня пытается: сажусь за задачку, а потом обнаруживаю себя за просмотром какого-то тру-крайма. или решаю посмотреть лекцию, но заваливаюсь работой, начинаю тревожиться и зашлифовываю это всё нервным срывом.
как следствие: не могу спать, вижу сны, как меня выгоняют с курса, просыпаюсь в дикой тревоге и не могу физически сесть учиться дальше. просто не могу. мозгу стало настолько сложно, что он в панике смотрит не на конкретную задачку, с которой я рано или поздно справлюсь, а генерирует вместо этого сцены позора на занятии или даже на гипотетическом собесе. знали бы вы, как я сражаюсь с желанием написать преподавателю и отмазаться от урока по причине завал в жизни. да, завал, но у кого нет?
мне даже одногруппникам помочь с задачками кажется сейчас легче, чем сесть на 5 минуток и разобраться как следует самой в какой-то более новой теме.. потому что я чувствую, что моё понимание неидеально, и, следовательно, не стоит сил и времени, которых и так нет. вот такие приколы от мозга
как следствие: не могу спать, вижу сны, как меня выгоняют с курса, просыпаюсь в дикой тревоге и не могу физически сесть учиться дальше. просто не могу. мозгу стало настолько сложно, что он в панике смотрит не на конкретную задачку, с которой я рано или поздно справлюсь, а генерирует вместо этого сцены позора на занятии или даже на гипотетическом собесе. знали бы вы, как я сражаюсь с желанием написать преподавателю и отмазаться от урока по причине завал в жизни. да, завал, но у кого нет?
мне даже одногруппникам помочь с задачками кажется сейчас легче, чем сесть на 5 минуток и разобраться как следует самой в какой-то более новой теме.. потому что я чувствую, что моё понимание неидеально, и, следовательно, не стоит сил и времени, которых и так нет. вот такие приколы от мозга
🥴2🤝2
что мне может гипотетически помочь?
1. абсолютно точно: адекватное планирование. разбить мой огромный план-капкан на всю жизнь на 2-3 пункта на каждый день и спокойно ему следовать, не пытаясь бежать вперёд себя. огромный нынешний план без деления на дни, где просто вкинут список лекций для пересмотра и невыполненных домашек, не подходит: это самосаботаж. галочки возле выполненных пунктов теряются на фоне того, что ещё предстоит сделать, а это толлько деморализует.
2. вспоминать почаще о временах первоначальной эйфории, когда было ещё не так сложно и всё получалось, и использовать это ощущение как мотивацию, а не как инструмент для того, чтоб себя же пристыдить за неуспехи.
3. эта картинка:
1. абсолютно точно: адекватное планирование. разбить мой огромный план-капкан на всю жизнь на 2-3 пункта на каждый день и спокойно ему следовать, не пытаясь бежать вперёд себя. огромный нынешний план без деления на дни, где просто вкинут список лекций для пересмотра и невыполненных домашек, не подходит: это самосаботаж. галочки возле выполненных пунктов теряются на фоне того, что ещё предстоит сделать, а это толлько деморализует.
2. вспоминать почаще о временах первоначальной эйфории, когда было ещё не так сложно и всё получалось, и использовать это ощущение как мотивацию, а не как инструмент для того, чтоб себя же пристыдить за неуспехи.
3. эта картинка:
❤3
сегодня сделаю шажок навстречу себе и не стану сливаться с занятия. доделаю работу, спокойно займусь домашкой, сколько успею, позанимаюсь до урока, на уроке наделаю столько ошибок, сколько смогу, хорошо высплюсь и посвящу завтрашний день лекциям. рада, что создала этот канал, где могу при свидетелях озвучить свои слабости, страхи и планы. это помогает 🫶🏻
❤8🤓2
посмотрела одну лекцию, разобралась получше с композициями, решила одну из 5 оставшихся задачек и никто не умер ✨
❤6👌2🤓1👨💻1
поняла, что надо расширять свой java-кругозор и смотреть на язык шире. находить материалы, искать полезные знакомства, слушать более опытных людей и погружаться в язык не только с академической точки зрения, но и как в будущий рабочий инструмент, с которым нам ещё дружить много лет (идеальный сценарий) 🤝
нашла клёвую подборку полезных материалов на ru и eng на хабре. там много всего: и нетворкинг, и доп. материалы, и курсы, которые можно слушать параллельно, чтобы глубже разбираться в темах, которые мы сейчас проходим на занятиях. делюсь🥂
нашла клёвую подборку полезных материалов на ru и eng на хабре. там много всего: и нетворкинг, и доп. материалы, и курсы, которые можно слушать параллельно, чтобы глубже разбираться в темах, которые мы сейчас проходим на занятиях. делюсь🥂
Хабр
Java для новичков: подборка материалов для самостоятельного изучения и сообществ для погружения
Привет, Хабр! Меня зовут Егор Ерохин, я — наставник на курсе «Java-разработчик» Яндекс Практикума и Java-тимлид. В этой статье я собрал как русскоязычные, так и англоязычные ресурсы, которые помогут...
🔥3🤓2
однажды ты спросишь меня, что я выберу: внутренние классы или внешние? в ответ я промолчу, и ты так и не узнаешь, что я просто потеряла дар речи после сегодняшней лекции и выбираю только один класс — свой пятый, где мне 11 лет и я бью крапиву палкой и ничего вот этого всего не знаю
работаем дальше, коллеги
работаем дальше, коллеги
❤12🤓1
тиня-айтиня | java, backend, db ♨️
однажды ты спросишь меня, что я выберу: внутренние классы или внешние? в ответ я промолчу, и ты так и не узнаешь, что я просто потеряла дар речи после сегодняшней лекции и выбираю только один класс — свой пятый, где мне 11 лет и я бью крапиву палкой и ничего…
с вложенными и внутренними классами, кстати, всё оказалось не так страшно, как показалось на первый взгляд. с реализацией их мне ещё работать и работать, а вот с пониманием помогла статья на хабре
Хабр
Внутренние и вложенные классы java. Часть 1
Внутренние и вложенные классы java. Часть 1 02.03.2017 — 2019 год Часть 1. Начало Цель статьи: Рассказать о внутренних, вложенных, локальных, анонимных классах. Показать примеры их использования....
🔥1🤓1
если вы думали, что я забила на Яндекс Лекториум, то вот и нет ✨
послушиваю иногда фоном лекции, что-то понимаю, что-то нет, но в голове зато хоть что-то остаётся. и сегодня я попала на СУПЕРСКУЮ лекцию про архитектуру кода для джавистов: конечно, из понятного мне было процентов 30, но какие они, эти 30!!
читал лекцию Сергей Федосеенков, глава отдела разработки битуби продуктов Маркета, и иллюстрировал всё примерами из жизни и практики (круто и наглядно!). иногда на каком-то базово-гуманитарном уровне не верится, что все эти сложные и абсолютно человечески реализованные сервисы — это просто набор компуктерных команд, методов, переменных и классов. но вот ты видишь, как знающий человек показывает тебе на примере кода, как реализуются бизнес-стретегии, как функционируют соединения к базам данных, в которых хранятся условные заказы с чипсиками — и ну это с ума сойти, это РЕАЛЬНО 🥹
послушиваю иногда фоном лекции, что-то понимаю, что-то нет, но в голове зато хоть что-то остаётся. и сегодня я попала на СУПЕРСКУЮ лекцию про архитектуру кода для джавистов: конечно, из понятного мне было процентов 30, но какие они, эти 30!!
читал лекцию Сергей Федосеенков, глава отдела разработки битуби продуктов Маркета, и иллюстрировал всё примерами из жизни и практики (круто и наглядно!). иногда на каком-то базово-гуманитарном уровне не верится, что все эти сложные и абсолютно человечески реализованные сервисы — это просто набор компуктерных команд, методов, переменных и классов. но вот ты видишь, как знающий человек показывает тебе на примере кода, как реализуются бизнес-стретегии, как функционируют соединения к базам данных, в которых хранятся условные заказы с чипсиками — и ну это с ума сойти, это РЕАЛЬНО 🥹
❤3🤝2
часовую лекцию пересказывать, конечно, не стану, если захотите, она лежит 👉🏻на ютубе в записи. но вот что мне хорошо запомнилось и чем хочу поделиться: какие принципы хорошей архитектуры кода существуют?
📌 нужно всеми силами избегать дублирования кода, потому что это приводит к проблемам. например: если вы посадили баг или вам нужно доработать код, не всегда очевидно, где искать продублированные куски. в итоге что-то дорабатывается, что-то нет, и выходит так себе
📌 kiss: keep it simple, stupid. мне кажется, знаменитейший принцип, знакомый всем, от новичков до супер-прожжённых прогеров. не нужно решать задачу сверх-сложными методами, а лучше инкапсулировать логику совсем просто, супер-наивным способом, чтобы потом всегда можно было вернуться к переработке кода или даже всей архитектуры и не потеряться в трёх тысячах сосен :') в трёх соснах блуждать приятнее. а может быть, окажется, что этих трёх как раз и достаточно
📌 есть ещё пять принципов SOLID, спикер не стал останавливаться на каждом, но пояснил, что это аббревиатура, и каждая буква в ней — какой-то принцип объектно-ориентированного программирования. я почитала об этом отдельно, очень хорошие и важные принципы, которыми мы уже сейчас на занятиях пользуемся и сами того не знаем :) напишу о них отдельный пост завтра-послезавтра!
в общем, час пролетел продуктивно: по большому счёту я вдохновлялась сложной терминологией и пыталась на каком-то интуитивном уровне понять, о чём идёт речь 😂
но и без полезностей не ушла! так что продолжаю ратовать за подход к обучению «вписывайся в любые учебные авантюры, а там уж если и поймёшь процентик, то тоже хороший результат» 👀
📌 нужно всеми силами избегать дублирования кода, потому что это приводит к проблемам. например: если вы посадили баг или вам нужно доработать код, не всегда очевидно, где искать продублированные куски. в итоге что-то дорабатывается, что-то нет, и выходит так себе
📌 kiss: keep it simple, stupid. мне кажется, знаменитейший принцип, знакомый всем, от новичков до супер-прожжённых прогеров. не нужно решать задачу сверх-сложными методами, а лучше инкапсулировать логику совсем просто, супер-наивным способом, чтобы потом всегда можно было вернуться к переработке кода или даже всей архитектуры и не потеряться в трёх тысячах сосен :') в трёх соснах блуждать приятнее. а может быть, окажется, что этих трёх как раз и достаточно
📌 есть ещё пять принципов SOLID, спикер не стал останавливаться на каждом, но пояснил, что это аббревиатура, и каждая буква в ней — какой-то принцип объектно-ориентированного программирования. я почитала об этом отдельно, очень хорошие и важные принципы, которыми мы уже сейчас на занятиях пользуемся и сами того не знаем :) напишу о них отдельный пост завтра-послезавтра!
в общем, час пролетел продуктивно: по большому счёту я вдохновлялась сложной терминологией и пыталась на каком-то интуитивном уровне понять, о чём идёт речь 😂
но и без полезностей не ушла! так что продолжаю ратовать за подход к обучению «вписывайся в любые учебные авантюры, а там уж если и поймёшь процентик, то тоже хороший результат» 👀
🔥4👌2