Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
Symphony

Azim Kurt

  • 350
    вклад
  • 1
    вопрос
  • 467
    ответов
  • 25%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как сделать этот эффект?

    RAX7
    RAX7 @RAX7

    P.S. лучше конечно на канвасе такое делать.
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Почему при умножении появляется большой "хвост"?

    0xD34F
    0xD34F @0xD34F Куратор тега JavaScript
    По какой причине JS результатом к выражению 1.4 + 0.2 возвращает 1.5999999999999999?
    Js как то странно считает числа, почему?
    Откуда значения?
    Почему в JS 0.1+0.2 не равно 0.3?
    Почему JS складывает с разной точностью?
    При складывании в js от куда-то берется 0.00000000000000001?
    Откуда берутся сотые доли при умножении на дробное число?
    Почему js так считает числа в данном примере?
    Почему при сложении чисел с двумя знаками после запятой, получается число с многими знаками после запятой?
    Почему JS добавляет левые цифры?
    Ответ написан более года назад
    3 комментария
    3 комментария
  • Как сделать 2d мир на canvas?

    Robur
    Robur @Robur
    Знаю больше чем это необходимо
    Какой есть простой и эффективный способ?


    Заплатить тому кто умеет.
    Ответ написан более года назад
    4 комментария
    4 комментария
  • Как установить Linux на флешку из под MacOS?

    Zoominger
    Рональд Макдональд @Zoominger
    System Integrator
    Проблем добавляет новый linux дистрибутив eXternOS

    Ну так в топку его, это очередная васянская поделка, которая проживёт пару месяцев.

    Возьмите VirtualBox, подрубите туда флешку и накатите на неё Linux. Всё.
    Ответ написан более двух лет назад
    3 комментария
    3 комментария
  • Как правильно построить поле зрения?

    samodum
    Developer @samodum
    Какой вопрос - такой и ответ
    Школьная геометрия.
    1) Сначала вычисляем угол, куда (X, Y) игрок (x0, y0) смотрит:
    dx = X - x0; dy = Y = y0;
    d = sqrt(dx*dx + dy*dy); - длина отрезка
    alpha = arccos(dx/d); - вычисляем угол. Здесь нужно будет дополнить, т.к. знак может потеряться. Смотри на dx и dy.

    2). Теперь строим угол обзора (betaLeft, betaRight):
    betaLeft = alpha - ugObz/2;
    betaRight = alpha + ugObz/2;

    3). Всё. Теперь вычисляем точки, через которые будет проходить линия обзора:
    xL = x0 + cos(betaLeft) * Radius;
    yL = y0 + sin(betaLeft) * Radius;
    xR = x0 + cos(betaRight) * Radius;
    yR = y0 + sin(betaRight) * Radius;

    И строишь через эти точки бесконечную линию, чтобы она выходила за пределы экрана. Можешь для этого подобрать Radius такой, чтобы он был больше разрешения экрана
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Оценка своего уровня. Как улучшить код?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Frontend Developer
    1. Используйте const вместо let для определения переменных которые не переопределяются в коде. Это помогает снизить когнитивную нагрузку с человека читающего код и негласный стандарт в React разработке.

    2. Такие вещи как globalStyles и конфигурацию store лучше вынести в отдельные файлы. Они могут со временем хорошо разрастись.
    По поводу globalStyles, вы вообще можете вынести их в отдельный css файл.

    3. Вместо:
    {
      isModal
      ? <Route path="/auth" component={AuthPopup} />
      : null
    }

    лучше:
    {isModal && <Route path="/auth" component={AuthPopup} />}


    4. Вместо:
    function mapDispatchToProps(dispatch) {
        return {
            autoLogin: () => dispatch(autoLogin()),
            getBrowser: () => dispatch(getBrowser()),
            getMedia: () => dispatch(getMedia())
        }
    }


    лучше:
    const mapDispatchToProps = {
      autoLogin,
      getBrowser,
      getMedia,
    };


    5. Точки с запятыми в конце то есть, то нет. Определитесь и приведите код к одному виду.

    6.
    & label {}
    & input {}
    & span {}

    Это не очень хороший подход. Во-первых ваши стили не изолированные, что может приводить к неожиданным результатам. Во-вторых у вас очень много дублирования стилей. Определите Input и Label как базовые компоненты и используйте в разных местах, то же с остальным если есть.

    7. Почему папка со страницами называется Containers? Дань бойлерплейтам?

    8. Использование trailing comma является хорошей практикой.

    9.
    import {combineReducers} from 'redux';
    import photoReducer from './photoReducer';
    import authReducer from './authReducer';
    import globalReducer from './globalReducer';
    
    export default combineReducers({
        photoReducer, authReducer, globalReducer
    })


    Все таки приятней работать с хранилищем в котором ключи не имеют в названии слова reducer:
    import {combineReducers} from 'redux';
    import photo from './photoReducer';
    import auth from './authReducer';
    import global from './globalReducer';
    
    export default combineReducers({
      photo, 
      auth,
      global,
    });


    10. Забудьте вообще, что в языке есть возможность использовать вложенный тернарный оператор:
    return e === 'invalid-email' ? 'Неверно указан e-mail'
        : e === 'user-not-found' ? 'Указанный e-mail на найден'
        : e === 'wrong-password' ? 'Неверный пароль'
        : e === 'email-already-in-use' ? 'Указанный e-mail уже используется'
        : e === 'network-request-failed' ? 'Нет подключения к интернету'
        : e === 'operation-not-allowed' ? 'Произошла ошибка, попробуйте снова'
        : e === 'popup-closed-by-user' ? 'Окно авторизации закрыто пользователем'
        : e === 'account-exists-with-different-credential' ? 'Аккаунт уже существует с другими данными, используйте другой способ авторизации'
        : e

    Это одна из самых худших практик в JavaScript разработке. Тут лучше подойдет конструкция switch case

    11. Константы actionTypes лучше вынести в папку constants и разложить по разным файлам, иначе со временем у вас там будет свалка.

    12. Вместо:
    import {SET_ACTIVE, CHANGE_VALUE, SET_DEFAULT, UPLOAD, UPDATE_IMAGE, SET_IMAGE_ERROR, SET_LIKE, SET_COMMENT, ADD_ARTICLE_SUCCESS, FETCH_ARTICLES_START, FETCH_ARTICLES_SUCCESS, FETCH_ARTICLES_ERROR} from '../actions/actionTypes';

    Лучше:
    import {
      SET_ACTIVE,
      CHANGE_VALUE,
      SET_DEFAULT, UPLOAD,  
      UPDATE_IMAGE,
      SET_IMAGE_ERROR,
      SET_LIKE,
      SET_COMMENT,
      ADD_ARTICLE_SUCCESS,
      FETCH_ARTICLES_START,
      FETCH_ARTICLES_SUCCESS,
      FETCH_ARTICLES_ERROR,
    } from '../actions/actionTypes';


    13. Попробуйте внедрить библиотеку reselect. И для получения значения из store вместо записи вида:
    function mapStateToProps(state) {
        return {
            browser: state.globalReducer.browser
        }
    }


    использовать селектор:
    const mapStateToProps = state => ({
      browser: browserSelector(state),
    });
    Ответ написан более трёх лет назад
    12 комментариев
    12 комментариев
  • Можно ли сделать анимацию картинки без знаний JS??

    Stalker_RED
    Stalker_RED @Stalker_RED
    Да, можно.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • В чем моя ошибка в изучении ЯП?

    OnYourLips
    OnYourLips @OnYourLips
    Проблема в мотивации. Вам просто не интересно и, судя по всему, не нужно.

    Но в этом ничего плохого нет, в мире есть множество других занятий, от кассира в макдональдсе до военных летчиков. Выбирайте то, к чему тянет и к чему есть возможности.
    Ответ написан более трёх лет назад
    7 комментариев
    7 комментариев
  • Что не так с python скриптом?

    denistu10
    Denis Michurin @denistu10
    Linux System Administrator/SRE Engineer
    NameError: name 'bs4' is not defined


    #!/usr/bin/python
    import requests
    from bs4 import BeautifulSoup
    
    data = requests.get('https://vulners.com/cve/CVE-2017-0147')
    dom = BeautifulSoup(data.text)
    print(dom.select('.vulners-item-full'))
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Где можно взять список зарезервированных слов JavaScript?

    Vlad_IT
    Владимир Проскурин @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    В учебниках. Вы не можете что-то выдрать из контекста и учить. Как можно учить break, не зная циклы?
    Зубрить - это не в айти.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Где можно взять список зарезервированных слов JavaScript?

    rockon404
    Антон Спирин @rockon404
    Frontend Developer
    Тыц
    Ответ написан более трёх лет назад
    12 комментариев
    12 комментариев
  • Какой лучше плагин использовать для увеличения картинок?

    webinar
    Максим Тимофеев @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Слышал про fancybox2, но там вроде надо покупать его

    fancybox3 подойдет?
    https://fancyapps.com/fancybox/3/
    Стоит 29$ одну или 110$ за безлимит, вполне подъемные деньги. Вкладывайте в стоимость проекта и вперед.

    Что-нибудь бесплатное

    Гугля знает кучу вариантов:
    fancybox free alternative
    в том числе:
    dimsemenov.com/plugins/magnific-popup
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Что значит такая запись: $this->$content в классе?

    sergiks
    Сергей Соколов @sergiks Куратор тега PHP
    ♬♬
    В переменой $content записано имя свойства. См. variable variables.

    class X {
      private $a = "A";
      private $b = "B";
      public function test($content) {
        echo $this->$content . PHP_EOL;
      }
    }
    
    $x = new X();
    $x->test("a"); // A
    $x->test("b"); // B
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Как сделать постоянно висящую табличку поверх всего?

    Vlad_IT
    Владимир Проскурин @Vlad_IT Куратор тега CSS
    Front-end разработчик
    Изучайте position: fixed
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как получить текст с div style?

    0xD34F
    0xD34F @0xD34F Куратор тега JavaScript
    document.querySelector('div[style]').textContent
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
  • Хочу сделать сайт, который по нажатии кнопки выводит таблицу с готовым запрошенным Sql в Mysql, как можно это реализовать?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    Судя по уровню вопроса, самое простое - нанять специалиста.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как это можно реализовать с помощью clip-path?

    Nikita-Fast
    Nikita-Fast @Nikita-Fast
    SVGшник и леплю что попало
    <svg  version="1.1" viewBox="0 0 210 297" xmlns="http://www.w3.org/2000/svg">
     <path transform="matrix(.73872 .67401 -.66417 .74758 0 0)" d="m157.42 35.068c11.576 1.8703 23.076 1.7628 33.532-2.9604-4.8792 14.896-5.7412 28.726-0.88931 41.041-11.052-4.0573-21.8-2.0324-32.244 0.36896 4.3409-10.936 5.5631-24.43-0.39881-38.449z" fill="#a7c6cf"  stroke="#49c2f4"  stroke-width="2"/>
    </svg>


    create new plain text document and rename it in file.svg and open Google Chrome

    preview : https://jsfiddle.net/pqbyzn3L/
    Ответ написан более трёх лет назад
    14 комментариев
    14 комментариев
  • Какой макбук для веб дизайна выбрать?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Новый MacBook Air(2014) или б.у. MacBookPro(2014)?
    MacBook Air или Pro?
    Стоит ли покупать macbook?
    Есть ли разница в производительности Macbook Pro между моделями 2014 и 2015?
    Выбор MacBook Pro, 13" 2015 или 15" 2014?
    Стоит ли в моем случае покупать Macbook?
    Ноутбук для дизайнера: стоит ли брать Macbook Pro?
    Покупка MacBook Air 13'
    MacBook Air 13" vs MacBook Pro retina 13"?
    Стоит ли покупать macbook pro retina 2014 (mgx72)?
    Как не ошибиться, покупая бу macbook ??
    MacBook Pro Retina 13" или MacBook Air 13"?
    Ноутбук для студента. MacBook или не MacBook?
    MacBook Pro late 2013 (ME864) vs 2014 (MGX72)?
    Какой macbook мне выбрать?
    Стоит ли брать MacBook air 13 для верстки?
    Хорош ли Macbook Pro версии Retina 13.3" 256 ГБ?
    Какой macbook выбрать для разработки под android и ios?
    Нормик ли MacBook Pro 13 retina дизайнеру?
    Macbook Pro 13 retina vs non-retina?
    Что выбрать для разработки: MacBook Air или MacBook Pro Retina?
    Есть ли разница в производительности Macbook Pro между моделями 2014 и 2015?
    Покупаем macbook air на ebay, какие подводные камни?
    Подойдет ли macbook pro 13 core2duo 2.66 для frontend разработки?
    Подойдет ли новый Macbook Pro Retina для веб-дизайнера?
    Покупка MacBook за 30 тысяч, для программиста?
    Macbook air 13` — различия между моделями?
    Стоит ли покупать macbook?
    Подойдет ли Macbook pro Retina 13' для видеомонтажа?
    Macbook Pro 13' или Macbook Air 13'?
    Macbook air 13" 4gb для верстальщика?
    Насколько удобно верстать html на MacBook Retina 13?
    Есть ли смысл покупать MacBook Air для веб-разработки?
    Mac mini or MacBook 13.3?
    Какой MacBook выбрать для веб-разработки?
    Какой Macbook взять для front-end разработчика?
    Какой ноутбук Apple выбрать?
    MacBook Air md760 для программирования?
    Вот me116ll/a mac book стоит ли покупать?
    Какой макубук купить для работы с PS,AI и программирования?
    Достаточно ли мощности в macbook air i7 8Гб для разработки под android?
    Macbook Air vs Macbook Pro vs Mac mini?
    Какой mac mini 2014 выбрать для дома?
    Какой MacBook Pro выбрать?
    Стоит ли брать старенький Mac Book PRO?
    Какой посоветуете приобрести MAC для дизайнера?
    Стоит ли сейчас брать mac mini(в 2016-17 году)?
    Macbook air13 2013 на сегодня ещё будет актуальным, i5 1.3 4Gb? Стоит ли брать для web разработкиф (фотошоп + sublime + браузер)?
    Макбук 13, 2016 для верстки. Хватит ли экрана?
    Стоит ли студенту-программисту брать MacBook Air?
    Какой MacBook выбрать в 2017 году?
    MacBook air 13 стоит приобретать в 2018 году?
    На какой MacBook стоит заменить MacBook Air '13 Mid 2014?
    Стоит ли брать мак с перспективой на будущее?
    Стоит ли брать MacBook Pro 13 128gb 2017 г. для backend и мобильной разработки?
    Какой макбук для веб дизайна выбрать?
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как строку с числом в конце перевести в число?

    0xD34F
    0xD34F @0xD34F Куратор тега JavaScript
    +str.match(/\d+$/).pop()
    Ответ написан более трёх лет назад
    5 комментариев
    5 комментариев
  • Как сделать по нажатию на ссылку скачивание картинки?

    Bankir77
    Bankir77 @Bankir77
    Тут и без js спокойно можно обойтись
    <a href="images/img.jpg" download>Скачать картинку</a>
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • Следующие →
Самые активные сегодня
  • gzhegow
    Григорий Васильков
    • 10 ответов
    • 0 вопросов
  • dimonchik2013
    Dimonchik
    • 10 ответов
    • 0 вопросов
  • Adamos
    Adamos
    • 7 ответов
    • 0 вопросов
  • Николай Алексеев
    • 5 ответов
    • 0 вопросов
  • mayton2019
    • 5 ответов
    • 0 вопросов
  • HistoryART
    Владимир
    • 3 ответа
    • 2 вопроса
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации