Глубокие познания как в визуальном, так и программном дизайне, архитектуре, всего что связанно с клиентской и серверной разработкой на языке JavaScript и всех сопряженных с ним современных\актуальных\надежных технологий.
Контакты
Местоположение
Россия

Достижения

Все достижения (4)

Наибольший вклад в теги

Все теги (35)

Лучшие ответы пользователя

Все ответы (39)
  • Как определиться с профессией?

    @twoone
    Я никогда не встречал счастливых людей которые спрашивают советов как имеено им жить. Читайте, много читайте информации на интересующие вас темы и все сами поймете. Если вы не можете вычлинить правильную информацию спообную сделать вас счастливым, то уже ни один совет вас не спасет. К тому же советовать любят все, поэтому вы также огребете весь спектор возможных вариантов.
    Ответ написан
  • Можно ли размещать в портфолио проекты с пройденных курсов по React и JS?

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

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

    Поэтому ещё раз повторюсь - лучше не стоит. Создайте несколько страничек самостоятельно и засеките реальное время ушедшее на черновую работу и финальную работу с цучетом рефакторинга. Предоставьте действительно полезную информацию.
    Ответ написан
  • Метод это функция или свойство?

    @twoone
    В классике метод (method) это функция ассоциированная с экземпляром класса (instance) (его объектом) или в случае статического метода непосредственно с самим классом. Свойствами (properties) называют геттеры (getters/get) или сетторы (setters/set). Так же геттер обозначают как акссесор, а сеттор как мутатор. Но зачастую можно встретить упоминание что геттер и сеттор, это аксессоры. Если метод содержит логику, то данные ассоциируются с полями (field). Методы, поля и свойства обозначают как члены (members) объекта\класса.

    Реализация классов в JavaScript отличается от классической поскольку построена на прототипах, что вносит некую долю путаницы. Путанница связанна с тем, что проблемы возникающие от потери контекста (this) вынуждают разработчиков изучать javascript намного глубже, чем это требуется в других классических языках. Из-за того что на уровне движка v8 все является членами объекта, то большинство склоняется что все в объекте это поля. И до момента объявления непосредственно методов {method(){}} это было справедливо. После необходимо разделять эти понятия даже если это всего лиш синтаксический сахар, поскольку даже в классических языках методы на самом низком уровне не могут быть чем-то отличными от полей. И всеже для ясности из называют методами.

    Исходя из всего этого методы точно не могут обозначатся свойствами.
    Ответ написан
  • Разница при обучении javascript backend?

    @twoone
    Поскольку в основе и серверного и клиентского javascript лежит движок v8 синтаксис и основные языковые конструкции идентичны. Разница начинается в реализации api которые у браузера и десктопа значительно отличаются. Кроме того сильно разнятся архитектурные подходы, стек прилегающих технологий (БД, кеширование, nginx, логирование, docker, безопасность, управление нагрузкой, оптимизации которыми на клиенте принебрегают, зачастую администрирование) и повседневные задачи (работа с потоками, понимание сокетов, работа с байтами). Но нельзя сказать что мир фронтенда проще поскольку чуть в сторону от базовых фраймворков, сразу начинается геометрия, svg\сcanvas, анимация, понимание дизайна\арта, не совсем просто dom api.

    Поэтому если вы сомневаетесь с чего начать, то лично я бы посоветовал выбирать между работой с логами в консоли и создания красивого интерфейса. Некоторые вянут в консоли, другие утомляются от красивых анимашек. К чему у вас больше лежит душа? В чем уже есть опыт?
    Ответ написан
  • Как сделать смену стилей CSS в зависимости от времени суток с помощью JS?

    @twoone
    Если сайт является spa то будет необходимо реализовать постоянную проверку времени и изменение темы путем вызова метода changeTheme.

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <link id="time-theme" rel="stylesheet" href="">
        <script src="./time-theme.js"></script>
    </head>
    <body>
        
    </body>
    </html>

    let timeRanges = new Set([
        {range: {from: `24`, to: `4`}, name:`night`, href:`./dark-theme.css`},
        {range: {from: `4`, to: `12`}, name: `morning`, href:`./light-theme.css`},
        {range: {from: `12`, to: `17`}, name: `day`, href:`./light-theme.css`},
        {range: {from: `17`, to: `24`}, name: `evening`, href:`./dark-theme.css`},
    ]);
    
    const changeTheme = timeRanges => {
        let currentHour = new Date().getHours();
    
        for(let {range, href, name} of timeRanges){
            if(currentHour >= range.from && currentHour <= range.to){
                Object.assign(document.querySelector(`link#time-theme`), { href });
        
                break;
            }
            
        }
    }
    
    changeTheme(timeRanges);
    Ответ написан