Pull to refresh
0
0
Send message

Глубокий JS. В память о типах и данных

Level of difficultyHard
Reading time10 min
Views29K

Всех нас учили, что в JavaScript есть примитивные и ссылочные типы данных. Исчерпывающая информация есть в официальной документации, а на просторах интернета полно статей на этот счет.

Теория теорией, однако, JS-код исполняется не в теории, а на практике. Точнее, его компилирует и исполняет движок JS. Таких движков существует несколько, разрабатывались они разными людьми и для разных целей. Было бы наивно предполагать, что все они полностью идентичны друг другу. А значит, время разобраться, как же на самом деле хранятся вполне конкретные данные на вполне конкретном движке JS V8.

Читать далее
Total votes 42: ↑40 and ↓2+51
Comments27

8 углубленных вопросов на собеседованиях на роль сеньора в JavaScript

Level of difficultyMedium
Reading time13 min
Views29K
image

JavaScript — это мощный язык, который является частью фундамента интернета. У этого мощного языка также есть некоторые свои особенности. Например, знаете ли вы, что значение 0 === -0 равно true, или что Number("") дает 0?

Дело в том, что иногда эти причуды могут заставить вас почесать в затылке или даже задаться вопросом, был ли Брендан Эйч под кайфом в тот день, когда он изобретал JavaScript. Что ж, дело здесь не в том, что JavaScript — плохой язык программирования или он — зло, как говорят его критики. Со всеми языками программирования связаны какие-то странности, и JavaScript не является исключением.

В этом материале мы покажем подробное объяснение некоторых важных вопросов на интервью по JavaScript. Моя цель будет состоять в том, чтобы тщательно объяснить эти вопросы, чтобы мы могли понять лежащие в их основе концепции.
Читать дальше →
Total votes 44: ↑24 and ↓20+15
Comments37

База для работы в IT: почему её постоянно не хватает новичкам и нужна ли она вообще

Reading time10 min
Views28K

Опытные разработчики часто жалуются, что новичкам не хватает «базы». По их мнению, в программисты идут люди без профильного образования, что ведёт к общей деградации. Правы ли они? И что представляет собой эта «база»? Давайте разберёмся, какие навыки необходимы для успешной карьеры в IT-сфере и обязательно ли для их приобретения получать профильное высшее образование. А также приглашаем в комментарии для дискуссий.

Читать далее
Total votes 16: ↑9 and ↓7+3
Comments13

Какие неочевидные темы вспомнить перед собеседованием на Frontend разработчика

Reading time4 min
Views29K

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

Именно поэтому я решил создать небольшой чеклист, в котором собрал темы, по которым задавали вопросы либо мне, либо моим друзьям задавали на собеседованиях на Frontend разработчика. Эти темы почти не попадаются в стандартных списках по подготовке к собеседованиям, поэтому я решил сделать свой.

Приложу ссылочки ко всем топикам, про которые буду рассказывать, так что вы сможете полистать их за день перед собеседованием и освежить в памяти знания. Даже если вы не готовитесь к собеседованиям, вы можете пробежаться по ним, и попытаться найти что-то интересное для себя.

Ну что, поехали!

Читать далее
Total votes 14: ↑13 and ↓1+14
Comments19

Vue 3: Ваше первое знакомство с компонентом Transition

Reading time3 min
Views3.9K


Мы можем значительно улучшить юзер экспириенс, добавив плавную анимацию перехода между различными состояниями в нашем веб-приложении. Vue.js 3 предоставляет мощный компонент Transition, который упрощает процесс внедрения переходов во Vue-приложениях. В этой статье мы рассмотрим принцип работы компонента Transition Vue 3 и продемонстрируем его использование на реальных примерах.
Читать далее
Total votes 8: ↑7 and ↓1+7
Comments0

9 алгоритмов сортировки и поиска для JS, о которых вас спросят на собеседовании

Level of difficultyMedium
Reading time15 min
Views60K

Привет, Хабр!

Меня зовут Илья, я frontend-разработчик SimbirSoft. Долгое время вопрос изучения алгоритмов был холиварным. Со я временем убедился, что ни одно современное собеседование в крупную компанию не обходится без вопросов про алгоритмы, и в последний год их всё больше.

Даже если ты frontend-разработчик и решаешь прикладные задачи, тебе в любом случае придётся знать алгоритмы хотя бы на базовом уровне. Но статей на русском с объяснением алгоритмов и тем, как их реализовать на JavaScript, крайне мало. Поэтому хочу поделиться некоторыми алгоритмами сортировки и поиска, и немного рассказать про структуры данных. Знание алгоритмов и структур данных поможет вам в оптимизации приложений.

Статья будет полезна разработчикам любых направлений, которые начали свой путь к крепкому уровню middle.

Читать далее
Total votes 8: ↑5 and ↓3+3
Comments19

Что нового в Chrome 117?

Level of difficultyEasy
Reading time4 min
Views6.9K

Что ожидается в статье:

Три новые функции CSS позволяют легко добавлять плавные анимации появления и исчезновения.

Вычисление наборов данных более высокого порядка с помощью группировки массивов.

DevTools упрощает процесс локальных переопределений.

И многое другое.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments3

Овладейте всем потенциалом анимирования с Vue

Level of difficultyMedium
Reading time7 min
Views9.9K

Vue позволяет разработчикам писать более гибкий и переиспользуемый код за счёт наличия дополнительных возможностей для организации компонентов. И одной из областей применения этих возможностей являются анимации. В текущей статье мы разберём использование Composition API для создания анимаций в Vue с помощью CSS и JS библиотеки GSAP (GreenSock Animation Platform).

Примечание пер.: статья содержит крупные GIF-анимации.
Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments2

Feature-Sliced Design: эволюция фронтенда для быстрых экспериментов

Reading time6 min
Views64K

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

Мы используем preact/compat — с его помощью получаем доступ к множеству библиотек экосистемы React, что делает разработку более гибкой, и при этом можем использовать Preact. Но эти же плюсы зачастую оборачиваются в обратную сторону: например, нет единой методологии по проектированию приложений, как, например, в Angular. Кроме того, многообразие библиотек усложняет погружение в проект, а свобода в реализации и проектировании может обернуться захламлением кодовой базы, что пугает разработчиков, особенно новичков. 

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

Для нашей команды эти проблемы также актуальны. Чтобы их решить раз и навсегда, мы обратились к активно развивающейся методологии Feature-Sliced Design (FSD). Ниже я познакомлю с ее главными принципами и с нашим опытом ее использования. Забыл представиться — я Женя, фронтенд-разработчик в команде Quick Experiments inDrive. Расскажу, как мы занимаемся разработкой внутренних стартапов на основе бизнес-гипотез с помощью FSD.

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments12

Архитектура фронтенда и какой она должна быть

Reading time5 min
Views57K

Все мы знаем про, или слышали про практики и паттерны проектирования SOLID, GRASP, MVC, MV** и даже применяем их с переменным успехом, стараясь нащупать эффективный подход к построению приложений. Но это лишь приводит к разнообразию реализаций наших приложений и частей функционала. Уже долгое время пытаюсь понять по каким правилам должно строиться фронтенд приложение чтобы оно удовлетворяло следующим критериям:

- легкое расширение функционала приложения;
- безболезненное внесение изменений в существующий функционал;
- унифицированная структура приложения;
- быстрый onboarding новых разработчиков на проект;
- понятный и прозрачный код;
- всегда понятно где в структуре файлов расположить ту или иную функциональность. 

Какие у нас есть варианты?

Читать далее
Total votes 10: ↑9 and ↓1+9
Comments5

Принципы ООП в примерах для начинающих

Level of difficultyEasy
Reading time8 min
Views76K

Как создатель и руководитель курсов по C# я вижу, что часто у людей, начинающих изучать этот язык, принципы Объектно-Ориентированного Программирования вызывают затруднения в понимании. А так как один из лучших способов что-то понять, это посмотреть применение на примерах, то я решил написать статью с примерами принципов. Рекомендую найти какую-нибудь статью или книгу, где прочитать основную теорию, а в этой статье уже посмотреть примеры применения этой теории, чтобы понять её лучше.

На текущий момент есть различные точки зрения на то, сколько же в ООП всё-таки принципов и в этой статье мы будем считать, что этих принципов четыре: Инкапсуляция, Наследование, Полиморфизм и Абстракция. Примеры будут приведены на языке C#, однако, они очень простые, да и сама суть не зависит от языка, поэтому будет полезна всем начинающим изучать ООП программистам.

Читать далее
Total votes 26: ↑16 and ↓10+9
Comments26

Произносим термины IT правильно

Level of difficultyMedium
Reading time3 min
Views54K

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

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

Читать далее
Total votes 75: ↑60 and ↓15+64
Comments229

5 новинок CSS в адаптивной верстке, которые можно использовать уже сейчас

Level of difficultyEasy
Reading time4 min
Views28K

Hola, Amigos! На связи Игорь Мельников, Frontend-разработчик компании Amiga. Возможно, вы уже слышали про технологии, которые я описываю в статье, но не использовали их, потому что думали, что они не поддерживаются актуальными браузерами. Теперь можете смело брать их во всеоружие и применять в своих проектах! 

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

Читать далее
Total votes 53: ↑53 and ↓0+53
Comments5

10 приёмов, чтобы получить быструю и качественную картинку в Midjourney

Level of difficultyEasy
Reading time7 min
Views19K

Меня зовут Андрей Цыган - я предприниматель, управленец и как энтузиаст исследую возможности нейросетей. Я никогда не работал ни с графическими редакторами, ни даже с PhotoShop - но постоянно нуждался в таких услугах. Качественные изображения мне были нужны для презентаций, маркетинговых материалов, соц. сетей.

Из всех сетей генерации изображений мне больше всего понравился Midjourney - оптимальное качество на потраченное время. Я понимаю в самом Midjourney (не говоря про Stabble Diffusion) можно углубиться в детали - но я не дизайнер или AI artist, мои задачи прикладные.

У меня уже сгенерированно более 4000 изображений и я выделил 10 методов, которые позволяют достаточно быстро и качественно получить нужный мне контент.  Они могут использоваться как обложка к посту или лонгриду, или я чаще использую в презентации.
Надеюсь, эта статья сэкономит вам несколько часов!

Читать далее
Total votes 17: ↑15 and ↓2+18
Comments4

Debouncer: практический пример использования замыкания

Level of difficultyEasy
Reading time3 min
Views10K

Что такое дебаунсер?

Дебаунсер - это функция-обертка, которая ограничивает число выполнений переданной в нее функции, некоторым промежутком времени.

Практическое применение

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

По умолчанию, запрос будет уходить при вводе очередной буквы, но чтобы не грузить сервер запросами и не повторять рендер страницы с одинаковыми по значению данными, мы хотим обернуть запрос в дебаунсер с некоторым ограничением по времени.

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

Читать далее
Total votes 6: ↑3 and ↓3+2
Comments15

Разница между традиционными функциями и стрелочными функциями в JavaScript

Level of difficultyEasy
Reading time4 min
Views17K

Стрелочные функции — это относительно новая функция, реализованная в ES6 ( ECMAScript 6 ), которая, на наш взгляд, является просто более кратким и элегантным синтаксисом для объявления функциональных выражений в JavaScript. Хотя традиционные функции и функции стрелок работают схожим образом, мы должны остерегаться некоторых различий, которые могут быть незаметны.

Читать далее
Total votes 16: ↑11 and ↓5+12
Comments6

Сводите свой код в салон красоты вместе с ESLint

Reading time2 min
Views3.5K

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

Почему это важно?

Единообразие в написании кода упрощает его сопровождение и командную работу. Разработчики могут быстрее адаптироваться к новым модулям или файлам, поскольку они уже знакомы с установленным стилем написания кода — обезличенный код способен снижать когнитивную нагрузку.

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

И когда одну и ту же вещь можно сделать несколькими способами, на помощь приходят линтеры и устанавливают единый «правильный» путь.

Читать далее
Total votes 11: ↑5 and ↓60
Comments4

Как получить 30 удаленных работ? Опыт 300 собеседований. 9 неочевидных советов для соискателя

Level of difficultyEasy
Reading time6 min
Views67K

Этот метод дал мне конверсию 50% из собеседования в оффер на вакансию «маркетолог» с доходом от 70к.

Меня зовут Слава, 4 года назад я работал маркетологом в агентстве. И решил поискать работу мечты на hh.ru. Я знал, что даже есть агентства, которые закрывают себе клиентов на hh.ru.

Эта уверенность помогла мне выжить 3 первых месяца безуспешных попыток: ходил на собесы, делал изнуряющие тестовые и даже получил работу, с которой сбежал через 2 недели.

Читать далее
Total votes 50: ↑36 and ↓14+30
Comments52

Топ-15 шпаргалок для программистов и WEB-разработчиков

Reading time4 min
Views37K

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

Если вам не хочется делать заметки самим, то не стоит беспокоиться, потому что шпаргалки доступны по любому предмету в Интернете. Чтобы помочь вам в учебе, я составила этот список лучших шпаргалок.

Хватит разговоров, давайте перейдем к делу.

Читать далее
Total votes 12: ↑11 and ↓1+12
Comments15
1

Information

Rating
Does not participate
Registered
Activity