ru
Feedback
Заметки вкатуна | IT | программирование

Заметки вкатуна | IT | программирование

Открыть в Telegram

Использую этот канал для понятного конспектирования новых знаний по программированию. Надеюсь вы найдете тут много полезного 🤓

Больше
498
Подписчики
Нет данных24 часа
Нет данных7 дней
Нет данных30 день
Архив постов
Рубрика #лайвкодинг Задача: придумать алгоритм на поиск пути с максимальным колличеством жертв. Предлагаем свои решения в ком
Рубрика #лайвкодинг Задача: придумать алгоритм на поиск пути с максимальным колличеством жертв. Предлагаем свои решения в комментариях💻

Шпаргалка по SQL JOIN 🌗
Шпаргалка по SQL JOIN 🌗

Инкапсуляция - не сокрытие, тогда что это? В широком смысле слова инкапсуляция это и вправду сокрытие, но на собесе от вас ждут более точечный и конкретный ответ. Да и в целом знать более конкретно что это не будет лишним. Инкапсуляция - объединение данных и методов в одном классе, где данные защищены и доступны через методы. Инкапсуляция помогает защитить данные от некорректного доступа и изменения извне, она гарантирует, что внутреннее состояние объекта скрыто от внешнего кода и доступно только через соответствующие методы.

Выкладывать ли какие-то заметки по фронту? HTML, CSS, REACT и тд
Anonymous voting

📝 Шпаргалка по шаблонам проектирования. Она может быть полезна как знатокам, так и джунам в качестве спасательного круга, ко
+1
📝 Шпаргалка по шаблонам проектирования. Она может быть полезна как знатокам, так и джунам в качестве спасательного круга, когда на собесе нечего ответить по паттернам. Сохраняй себе и делись с друзьями! Версию в исходном качестве скину в комментариях.

Почему singleton это антипаттерн? Многие знают этот факт как аксиому, которую не нужно доказывать. "Ну антипаттерн и все, на собесах вообще молчим про него" Но за этой аксиомой кроется несколько интересных деталей, объясняющих почему синглтон это антипаттерн. 1) Синглтон сильно осложняет тестирование, так как Singleton предоставляет глобальную точку доступа к единственному экземпляру класса, его трудно изолировать для тестирования. Тесты должны учитывать влияние других частей системы на этот единственный экземпляр. 2) И самое интересное - singleton нарушает почти все принципы solid(4 из 5). Остановимся тут поподробнее: S - Принцип единой ответственности: Класс синглтона, помимо выполнения своих непосредственных обязанностей, занимается еще и контролированием количества своих экземпляров. Зависимость обычного класса от синглтона не видна в интерфейсе класса. O — принцип открытости/закрытости: объекты должны быть открыты для расширения, но закрыты для изменения. Синглтон нарушает данный принцип, так как контролирует точку доступа и возвращает только самого себя, а не расширение. L — принцип подстановки Барбары Лисков: объекты могут быть заменены экземплярами своих подтипов без изменения использующего их кода. Это неверно в случае с синглтоном, потому что наличие нескольких разных версий объекта означает, что это уже не синглтон. I — принцип разделения интерфейса: много специализированных интерфейсов лучше, чем один универсальный. Это единственный принцип, который синглтон нарушает не напрямую, но лишь потому, что он не позволяет использовать интерфейс. D — принцип инверсии зависимостей: вы должны зависеть только от абстракций, а не от чего-то конкретного. Синглтон нарушает его, потому что в данном случае зависеть можно только от конкретного экземпляра синглтона.

Джуны и удалёнка. Удалёнка для джунов это не вариант(по моему субъективному мнению) и вот почему: Отсутствие живого общения с тимлидом и коллегами. Это сильно замедляет рост начинающему специалисту. Конечно, вы можете возразить "я же могу созваниваться по видеосвязи, я же могу писать за помощью и ТД..." Нет, это все х***я, когда речь идёт о росте. В офисе, когда все рядом, вы можете просто дёрнуть нужного человека и задать любой вопрос, хоть самый тупой, но вы получите ответ, случится что-то ещё - зададите ещё вопрос. За таким же вопросом вам будет стремно выдергивать человека на целый созвон, текстом писать свой тупой вопрос, от которого, как вам будет казаться, так и веет кринжом, и будете стараться все решать самостоятельно, иначе говоря вариться в собственном соку, от чего нет никакого толка. Сейчас рынок запихивает сотрудников обратно в офисы, джуны должны этим пользоваться и охапкой черпать опыт, пока дают. Если вам в условиях заявляют о полной удалёнке, лучше отказаться, и искать минимум гибрид. Джун, который работал год на удалёнке ≠ джун, который год работал из офиса рядом с опытными коллегами. А что думаете вы?

Настолько БАЗА, что уже даже немного баян. Тем не менее если вы Джун и у вас проблемы со структурами данных и алгоритмами, то
Настолько БАЗА, что уже даже немного баян. Тем не менее если вы Джун и у вас проблемы со структурами данных и алгоритмами, то эта книга поможет вам решить их. В игровой форме с картинками объясняются популярные алгоритмы и структуры данных, а так же смежные с ними определения (big O notation, логарифмы) Так же все что тут есть вас будут спрашивать на собесах. Про структуры данных, сложность операций с ними, и простенькие алгоритмы сортировки уж точно.

Все уходим писать код для российских дронов!

Естественно я знаю, что HTML это не ЯП. Все это ради рофла, смешно читать как прогеры со 100 процентной вероятностью начинают
Естественно я знаю, что HTML это не ЯП. Все это ради рофла, смешно читать как прогеры со 100 процентной вероятностью начинают говниться и люто душнить 😁

Быстрая сортировка (Quick Sort): Один из самых быстрых алгоритмов сортировки. Этот алгоритм относится к группе алгоритмов "разделяй и властвуй". Он выбирает опорный элемент из массива и разделяет массив на две части: элементы, меньшие опорного, и элементы, большие опорного. Затем он рекурсивно сортирует каждую из этих частей. Быстрая сортировка обладает хорошей производительностью и может быть ОЧЕНЬ эффективной на практике. Давайте разберем алгоритм поэтапно. Всего у этого алгоритма 3 этапа: 1)берем не отсортированный массив [5,2,4,6,1,15] 2)выбираем ”опорный” элемент, от которого будем отталкиваться при разделении, пусть это будет “6” 3)размещаем меньшие значения слева от опорного элемента, а большие - справа, делаем это путем прохода каждого элемента Итак, получаем [1,4,2,5] - 6 - [15] Как видим у нас слева и справа от опорного элемента образовалось 2 массива, при том что правый массив сортировать больше не нужно! Так как там один элемент. Итого у нас остается только левый массив, с которым мы повторяем шаги с 1 по 3.(тут проявляется рекурсивность алгоритма, тут мы выполняем те же действия, а в коде функция вызывает сама себя) 1) берем не отсортированный массив [1,4,2,5] 2)выбираем ”опорный” элемент, от которого будем отталкиваться при разделении, пусть это будет последний элемент “5” 3)размещаем меньшие значения слева от опорного элемента, а большие - справа, делаем это путем прохода каждого элемента Итак, получаем [1,4,2] - 5 - [] повторяем шаги 1-3 для оставшегося левого массива, опорный элемент в следующем проходе будет “4” [1,2] - 4 Теперь обьединяем все полученные массивы воедино: [1 ,2 ,4 ,5 ,6, 15] PROFIT! Теперь вы знаете рекурсивный алгоритм быстрой сортировки. Пример реализации на C# выложу в комментариях.

Сколько раз перепроверяете код перед отправкой?
Сколько раз перепроверяете код перед отправкой?

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

Фронты поймут. И это ни*уя не смешно
Фронты поймут. И это ни*уя не смешно