Задать вопрос
  • Запустить приложение работающее с VK API из Украины невозможно?

    opium
    @opium
    Просто люблю качественно работать
    Купи прокси или впн
    Используй впс или сервер не на украине
    Ответ написан
    Комментировать
  • Запустить приложение работающее с VK API из Украины невозможно?

    xpert13
    @xpert13
    Full Stack Developer
    https://zaborona.help/ - просто, бесплатно, стабильно (это что касается локального компьютера).
    Ответ написан
    Комментировать
  • Запустить приложение работающее с VK API из Украины невозможно?

    kawabanga
    @kawabanga
    1) VPN. Можно свой поднять на дешевом vps.
    2) платные прокси. Вообще не вижу смысла смотреть на бесплатные.
    3) Хостинг не в Украине + разработка на удаленном сервере.
    Ответ написан
    4 комментария
  • SSH connection refused?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Вас удаленный хост не пускает, нет смысла смотреть что у вас локально висит.
    Или на удаленном компе ssh висит не на 22 порту, или добавьте опцию -vvv чтобы вывело больше дебаг инфо
    Ответ написан
    7 комментариев
  • Динамический или фиксированный жёстки диск для Ubuntu Server?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Фиксированный - означает, что место под файл-образ сразу выделится, и затем увеличиваться не будет.

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

    Если вы знаете точно, сколько места вам нужно - берите фиксированный. Если не знаете - берите место с запасом и указывайте динамический.

    Разница в производительности для данного сервера особого значения не должна иметь - дисковая активность тут не должна быть высокой, так что можно не обращать внимания
    Ответ написан
    1 комментарий
  • В каких случаях использовать ООП?

    @GreatRash
    ООП нужно использовать только тогда, когда вам от этого становится удобно. Вообще все парадигмы в программировании придумываются для того, чтобы сделать удобно себе и окружающим.

    Если вы:
    • пишете один
    • делаете одноразовые проекты (лендинги например)
    • никогда повторно не используете ранее написанный код

    то вам этот ООП будет только мешать.

    Если вы:
    • работаете в команде
    • пишете большой проект (приложение например)
    • вы и ваши коллеги постоянно используют куски ранее написанного кода

    то вам без ООП будет очень сложно обойтись.

    Так что всё зависит от вас. Не нужно использовать ООП только потому, что так кто-то делает. Пишите так, как удобно вам и окружающим. В конце концов главное - это простота кода и скорость разработки.
    Ответ написан
    21 комментарий
  • В каких случаях использовать ООП?

    Ni55aN
    @Ni55aN
    ООП уместно использовать для тех задач, где компоненты приложения будет удобнее разделить на некоторые абстракции (сущности)

    Особенности:
    • - нет необходимости применять ООП для очень мелких программ/скриптов
    • + желательно использовать в программах, которые потребуется поддерживать и улучшать
    • + необходимо использовать в больших программах (чем больше функций должно выполнять ПО, тем сложнее будет их все правильно структурировать и реализовать)


    Например, в самом простом калькуляторе нет необходимости что-то представлять в виде объектов, достаточно функционального стиля (все что от него требуется, это методы add, sub, div, mul и т.д.)
    Если что-то посложнее, тогда с одними функциями будет сложно работать, и будет сложнее разбираться в коде (поддерживать его) и понимать какая часть кода за что отвечает (нажатие кнопки, вывод результата).
    В случае с ООП можно такие компоненты представить в виде классов, тем самым оградить нужные данные и методы от остальных (классы Button, Field, и Operation, например). Конечно, и кода станет больше, но зато потом будет легче в нем разобраться, чем перебирать все функции и места, где они выполняются.
    3 принципа ООП:
    • инкапсуляция - изолирование некоторых данных и методов от прямого внешнего воздействия
      Например, у Button есть имя, но оно не должно быть доступно как public, чтобы его не могли изменять как попало, а изменять только через метод setName, который будет контролировать что можно ставить как имя кнопки, а что нельзя

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

    • полиморфизм - позволяет работать с данными не заботясь о том, какие дополнительные свойства имеют эти данные (объект) или какого они типа
      Например, есть класс Месседжер, он имеет метод отправить(что-то). В виде параметра нужно передать то, что нужно отправить, а это может быть как текст, так и файл. Это пример статического полиморфизма (хотя в JS его трудно назвать таковым, так как он с динамической типизацией и не имеет перегрузки методов, и все разборки по поводу того, что делать с данными разного типа происходят при выполнении программы). В динамическом необходимо знать только то, что умеет делать определенный объект и не важно чем он есть на самом деле и как он это делает (см. пример с классом Транспорт выше)

    Ответ написан
    2 комментария
  • Почему теряется контекст?

    KorniloFF
    @KorniloFF Куратор тега JavaScript
    Работаю по font-end / JS
    let obj = {
        name: 'kek',
        method: function () {
            console.log(this);
        }
    }
    
    function foo(f) {
        f();
    }
    
    foo(obj.method.bind(obj));


    or

    let obj = {
        name: 'kek',
        method: function () {
            console.log(this);
        }
    }
    
    function foo(f) {
        f.call(obj);
    }
    
    foo(obj.method);
    Ответ написан
    Комментировать
  • Плохо ли создавать проекты с нуля? Что значит быть про?

    @Plus3x
    c10c573f52694badb316d1aa222bc323.png
    Ответ написан
    Комментировать