Задать вопрос
  • Какие основные понятия в ООП?

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

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

    И уже споров о глубинном смысле трёх волшебных слов была целая куча (а ведь если бы кто-то когда-то не решил всё уместить в одиночные слова - этой неразберихи бы не было)

    Так что из всех принципов, которые объединяют все более-менее ООП-языки остаётся только:

    1. Всё есть объект, и объект объединяет под собой некоторые данные (которые могут быть не доступны публично) и операции (методы или функции), которые можно произвести над совокупностью этих данных.
    2. Имеется какой-нибудь механизм для полиморфизма.

    В общем-то первый такой принцип можно назвать этой самой абстракцией и, отчасти, инкапсуляцией.
    Ответ написан
    Комментировать
  • Как определить тип кодирования?

    Это base64, просто в содержимом не текст, а какие-то байты.
    Ответ написан
    Комментировать
  • Как понять какой код сейчас выполняют потоки?

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

    Но если не получится это применить (например на целевой машине не стоит студия/райдер) или это просто слишком неуловимая ошибка, то Тогда остаётся только обмазаться телеметрией (логами, метриками) и смотреть, что происходит.
    Ответ написан
    6 комментариев
  • Где заказать сделать материнскую плату для старого медиа центра\неттопа, но на современное железо?

    Кажется, туда даже ноутбучная плата не влезет.

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

    К тому же тебе её ещё как-то собрать придётся и написать драйвера, чтобы новое железо и какая-нибудь новая винда могли с этой тач панелью работать.
    Ответ написан
    4 комментария
  • Есть ли какой-то стандарт у кассовых чеков онлайн версии?

    Нет. Стандарт описывает только то, какие данные должны быть в чеке, и в каком формате, но не его внешний вид.
    Ответ написан
    Комментировать
  • Что обозначает __declspec(noinline)?

    https://docs.microsoft.com/en-us/cpp/cpp/declspec?...
    https://stackoverflow.com/questions/2284610/what-i...
    https://docs.microsoft.com/en-us/cpp/cpp/noinline?...
    __declspec(noinline) tells the compiler to never inline a particular member function (function in a class).

    It may be worthwhile to not inline a function if it is small and not critical to the performance of your code. That is, if the function is small and not likely to be called often, such as a function that handles an error condition.

    Keep in mind that if a function is marked noinline, the calling function will be smaller and thus, itself a candidate for compiler inlining.

    Первая же строчка в гугле :)
    Ответ написан
  • Какой выбрать сервис для деплоя Discord чат-бота?

    У Яндекс облака есть free tier с sleeveless containers, но там придётся несколько копеек в месяц на container registry тратить.
    + ограничено количество cpu-часов
    Ответ написан
    Комментировать
  • Как называется такой переход в капкуте или где он вообще?

    Картинка разбивается на несколько слоёв, которые размещаются на 3д-сцене, а по этой сцене двигается камера.
    Благодаря этому получается вот такой эффект с параллаксом.
    Для этого вроде какой-то сервис есть, который сам это всё делает (недавно видел рекламу, но забыл название)

    А как называется - хз.
    Ответ написан
    Комментировать
  • Js какой код производительнее?

    1й вариант - очень многословный. Не говоря даже о том, что в коде ошибка (не хватает })
    2й вариант - навешиваем хендлер на все элементы, а фильтруемся уже внутри хендлера
    3й вариант - как 1й, но более читабельный.

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

    Аналогично при сравнении 1 и 3.

    Я бы не стал задумываться о том, какой из них действительно более производительный, пока не столкнулся бы с проблемой, а она врядли произойдёт.
    Используйте то, что удобнее и читабельнее в конкретной ситуации.
    Ответ написан
    Комментировать
  • Есть ли аналог tinyint в PostgresSQL?

    Вроде в каких-то расширениях есть int2, int4, int8, но это экономия на спичках реально какая-то
    Ответ написан
    Комментировать
  • Здравствуйте, дают ли АП за музыку в игре Google Play?

    Только если у тебя есть право на использование этой музыки.
    Например, если ты её написал сам, купил коммерческую лицензию, или используешь музыку со свободной лицензией (CC-0 или CC-BY), и при этом не нарушаешь условия этой лицензии (например CC-BY требует указания автора)

    Сайт, где можно поискать музыку со свободной лицензией, вам уже дали в соседнем ответе.
    Ответ написан
    Комментировать
  • Как скачать pdf?

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

    Ну или как тут: https://qna.habr.com/q/810177#answer_2220710
    Ответ написан
    Комментировать
  • Как подключиться к серверу по wss с ESP32S?

    Первая же строчка в гугле выдаёт это:
    https://docs.espressif.com/projects/esp-idf/en/v4....
    Но это не arduino
    Ответ написан
    Комментировать
  • Как работает свитч-кейс?

    https://developer.mozilla.org/ru/docs/Web/JavaScri...
    switch-case в js не умеет сопоставлять одновременно несколько значений.
    Так что никак твой код рабочим не сделать.
    Тем более, что не понятно, что он должен делать.

    В общем случае switch разворачивается примерно вот так:

    switch (expression) { // expression - это какое-то выражение. Тоесть значение одно.
      case variant1: // variant1 и variant2 - это тоже какое-то выражение. Тоесть тоже ровно одно значение.
        // ...
      break;
      case variant2:
        // ...
      break;
      default:
        // ...
      break;
    }
    
    // Вот в такое
    const value = expression;
    if(value === variant1) {
      //...
    } else if (value === variant2) {
      //...
    } else {
      // ...
    }
    Ответ написан
    Комментировать
  • Есть ли риск спалить системник при использовании блока питания с 450 ватт?

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

    В целом, даже если 450вт фактически хватает - он будет на предельных значениях работь, а тут и КПД ниже, и нагрев больше.
    + со временем (с годами) общая мощность БП может падать.

    Так что лучше в ближайшее время купить более мощный БП.
    Ответ написан
    Комментировать
  • Есть ли listIterator в php?

    Хоть бы посмотрел что он делает:
    https://docs.oracle.com/javase/8/docs/api/java/uti...

    Судя по описанию ArrayIterator - они достаточно похожие и вроде делают одно и то же.
    https://www.php.net/manual/ru/class.arrayiterator.php
    Даже свой add есть - append()
    Ответ написан
    Комментировать
  • Правильно ли составлена схема для магазина?

    1. Хранение адреса в виде записей в базе.
    Думаю, вполне можно было бы обойтись текстовым полем и id по кладр/фиас/гар (если россия).
    Всё равно все возможные форматы адресов ты нормально не покроешь (а если покроешь - это будет свой фиас)
    2. Использование float для хранение цены товара
    3. Скидка чисто в виде числа в заказе - вполне возможно, что ты захочешь ввести какую-нибудь более гибкую систему скидок.
    В текущей ситуации такое невозможно.
    Например скидку в виде абсолютного количества денег, полностью бесплатный/подарочный товар.
    Скидку только на отдельную категорию товара, или систему баллов.
    Так что я бы сделал бы отдельную таблицу со скидкой на заказ, которую бы мог потом расширять.
    (в принципе, можно оставить пока так, а потом миграцией всё исправить)
    4. (комментарий про хранение цены убран, тк я изначально не заметил поле store_price)
    5. Хотелось бы, чтобы была функция оформления заказа без регистрации.
    6. А, ну и да. В заказе должен быть указан адрес. У пользователя их может быть несколько, и должен быть способ определить, на какой именно доставлять. (а с учётом п5 - адрес должен быть самостоятельной вещью)
    + Должна быть система как и с ценой - адрес у уже завершённого заказа не должен меняться.
    7. А где статусы заказа? Типа новый/оплачен/доставка/доставлен/завершён?

    PS: всё это из расчёта, что это магазин в россии, который продаёт физические товары за рубли.
    Думаю, если закапываться, можно ещё много чего найти не только в реализации, но и в требованиях

    PPS: Применять такую схему я бы осмелился только в рамках курсовой работы в колледже. Даже на диплом это врядли тянет, не говоря о реальном мире.
    Ответ написан
  • Как объединить (сшить) 3д модель под 3Д печать?

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

    На сколько мне известно, никаких автоматических инструментов для адаптации подобных моделей нет.
    Думаю, проще взять уже адаптированную модель.
    Например вот эту: https://www.printables.com/model/177991-hyundai-tu...
    Ответ написан
    Комментировать
  • Как организовать способ вывода средств амбассадорами?

    У юкассы есть сервис выплат например:
    https://yookassa.ru/payouts/
    Ответ написан
    Комментировать
  • Как правильно писать вывод в файл?

    Он его не знает из-за того что ты fout объявил в соседней паре {}. Объяви его на уровень выше, и тогда он будет виден из обоих if-ов.
    Примерно так:
    ofstream fout("a.txt", ios_base::app);
    if(a==1){
      a++;
    }
    if(a==2){
      fout<<3<<endl;
    }


    И в будущем используй <code>...</code> при оформлении кусков кода, чтобы не ломалось форматирование, а угловые скобки не заменялись на "ёлочки"
    Ответ написан
    5 комментариев