• Пермишены в Linux?

    svd71
    @svd71 Автор вопроса
    Разобрался. Оказывается одна редиска от своего имени создала часть файлов и неизменила владельца. Отсюда и проблема поплыла.
    Ответ написан
    Комментировать
  • Eclipse vs AndroidStudio: что выбрать?

    svd71
    @svd71
    Люди может я чегото не понимаю, но AndroidStudio тот же Eclipse, но с выкинутыми пакетами. Я так же в нем и для Java использую и для C/C++. И использую remote control который вроде бы для PHP создан.
    Ответ написан
    2 комментария
  • Класс или функция PHP?

    svd71
    @svd71
    Можно. В том контексте в котором вы преподнесли смысла действительно нет.
    Но вот при рассметрении нескольких функций и полей результат уже очевиден. А зачем скреплять страницы в книге, если можно читать и так?

    Сначала ответьте себе на вопрос за каким нужно ООП и что такое класс в вашем понимании.
    Ответ написан
  • Есть огромный csv-файл с данными (over 100k строк). Как все это добро на PHP, без SSH, загнать в MySQL?

    svd71
    @svd71
    Пробовал читать файл по 1000 строк (каждый раз приходится его открывать), естественно, в 30 сек оно не укладывается...


    Таки вещи делаются через AJAX. Файл открывается на сервере и в браузер клиента пересылается инфа о количестве строк. Далее клиент позылает через AJAX короткие задания: занести в базу строки с 1 по 10. Даже при большом файле на короткие операции не такие уж длинное время требуется. После выполнения этоко маленького куска сервер через AJAX сообщает результат операции: успешно внесено, ошибка в строке NNN или что то еще.

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

    svd71
    @svd71
    А есть ли смысл для вас разбивать на разные Activiti? Может проще обходится без Intent и вести обработку в одном Java-классе, меняя только форму layout по требованию.
    Ответ написан
    Комментировать
  • В чем суть интерфейсов в программировании?

    svd71
    @svd71
    Классы позволяют проводить раширение дочерних элементов только в функционале классов. Интерфейся позволяют также раширять функциональность, но для любых классов. В этом то и главное отличие: Классы можно раширять "вертикально" (каждый потомок может расширить класс), итерфейсы позволяют раширять классы "горизонтально"(интерфейс можно имплементировать в любом классе, даже не имеющими общие предков).
    Ответ написан
    Комментировать
  • Какие есть альтернативы Raspberry PI?

    svd71
    @svd71
    Все зависит как вы собираетесь мигать лампочками.

    Дешевый вот такой вариант. Схемы, прошивки и прочее есть на сайте. Выльется в $25.
    Самый дешевый вариант вот этот. Обойдется гдето в $10.

    При наличии любого контроллера AVR можно мигать лампочками непосредственно с компа.
    Ответ написан
  • Какой купить эргономичный стул до $150?

    svd71
    @svd71
    Табурет. И при этом спину стараться держать прямо.
    Иначе к 30 годам можно превратиться в вопросительный знак.
    Ответ написан
    1 комментарий
  • Какой код лучше использовать, чтобы отлавливать ошибки MySQL?

    svd71
    @svd71
    это зависит, какую цельвы ставите. Die() останавливает выполение всех скриптов в запросе с выводом сообщения. trigger_error переводит ошибку на какую либо обработку (напрмер на запись в лог-файл или отправку сообщения администратору).

    Но оба варианта полохи, если не пользоваться PDO.
    Ответ написан
    Комментировать
  • Как в delphi писать процедуры для динамических объектов?

    svd71
    @svd71
    Если вы создаете окна одного класса, то все функции, принадлежащие этому классу будут имплементированы во все копии. Пример:
    type
     TNotepad = class(TForm) //Предок всех классов для записи блокнота
    public
      class var OnAfterCreate: TNotifyEvent; //событие, для реакции после создания 
      constructor Create(AOwner: TComponent); override; //второй возможный 
                                        //вариатнвариант
    end;
    
    TMainForm = class(TForm)
       procedure FormCreate(Sender: TObject);
    public
       procedure DoAfterCreate1(Sender:TObject); //вариант 1
       procedure  DoAfterCreate2(Sender:TObject); //вариант 2
    end;
    
    constructor TNotepad.Create(AOwner: TComponent);
    begin
     inherited;
      //варант 1
     if Assigned(OnAfterCreate) then
          OnAfterCreate(Self);
    //*1
    //вариант 2
    if Assigned(Screen.MainForm ) then
      if Screen.MainForm is TMainForm then
        TMainForm(Screen.MainForm).DoAfterCreate2(Self);
    //*2
    end;
    
    procedute TMainForm.FormCreate(Sender:TObject);
    begin
      TNotepad.OnAfterCreate := Self.DoAfterCreate1; //вариант 1
    end;
    Ответ написан
    Комментировать
  • Как в delphi писать процедуры для динамических объектов?

    svd71
    @svd71
    Событие компонентов устанавливается определенного типа, поэтому нужно смотреть в первую очередь какой тип имеет событие. Под него создается процедура или функция объекта. Например реализация для кнопки и для формы на одну единственную процедуру, если известно, что она есть:
    procedure TForm1.OnCklickFrom2(Sender: TObject);
    begin
      Caption := TComponent(Sender).Name;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    var
      Frm2 : TForm2;
    begin
      Frm2 := TForm2.Crete(Application);
      Frm2.OnClick := Self.OnCklickFrom2;
      Frm2.Button1.OnClick := Self.OnCklickFrom2;
    end;
    Ответ написан
  • В чём разница между $var и ${var}?

    svd71
    @svd71
    Подвох в том что не видно разницы в двух переменных типа
    echo $VAR ;
    echo $VARLOG;
    во втором варианте что именно имеется ввиду: отдельная переменная $VARLOG или перевенная $VAR и за ней следом выдавать LOG.
    Ответ написан
    Комментировать
  • Как настроить wifi точку доступа из Raspberry Pi и Wifi адаптера так, чтобы в сети была видна сама малинка?

    svd71
    @svd71
    что за операционка установлена?
    Судя по описанию, похоже было бы на то, что не разрешен IP_Forwarding, если это дело под Raspbian. Так же не мешало бы убедиться, выделяет ли клиенту IP и с какими параметрами.

    ПС: я подключил к WiFi-роутеру.
    Ответ написан
    Комментировать
  • Какой выбрать язык для простенького сервера?

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

    Когда вы для себя в банальном экселе составите табличку хостингов, их возможностей, выбранной СУБД и еще пару-тройку параметров которые я не указал( но для вас они могут возникнуть), то под выбранный результат уже и надо искать даже не язык, а средство решения поставленной задачи. при особом желании и ограниченных возможностях все реализовать не составит труда на каком-нибудь квикбейсике или "безязыковой" шелловской среды bash.
    Ответ написан
    1 комментарий
  • Как отреагирует сервер на более 20 sql запросов?

    svd71
    @svd71
    СУБД бывают в двух типах:
    - блокировочник: все обращения на сервер возвращают читаемое значение без всяких проблем. Скорость выполнения и логика работы очень простая. При изменении какой-либо записи, все операции временно блокируются, а потом продолжаются по окончании изменений.
    - транзакционная модель: позволяет читать и изменять записи. Измененные записи создают временные копии, которые просто ожидают подтверждение или отмену этих изменений. Пока данные не подтверждены все другие записи видят только то, что было до изменений.
    Ответ написан
    Комментировать
  • Почему не стоит использовать идентификатор сущности как первичный ключ в базе?

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

    Замечания @sebres очень даже имеют место. Многие СУБД конструируются на оптимальную работу именно с числовыми полями целого типа (хотя некоторые и позволяют использовать при желании в качестве ключа так называемый GUID - именно символьного типа). Сомневаюсь, что например MySQL имеет оптимизацию при работе с целочисленным типом: достаточно посмотреть на представление его целочисленных данных в таблице - они представлены в виде текста, а не конвертированы в 8 или 16 байтовое значение. Соотвествено сервер либо сам проводит посимвольное сравнение, либо предварительно конвертирует значение в "истинный", машинный int, что тоже сказывается на скорости. Вывод: нужно узнать, что производительней использовать для вашей СУБД.

    Преимущества суррогатного ключа: Если первичный ключ имеет большую длинну, то при формировании ссылок вторичных(внешних) ключей в других таблицах есть необходимость замиенить его чем-то одновременно компактным и одновременно уникальным, тем более подверженному автоматической генерации, а не тупо копировать длинную структуру.
    Ответ написан
    Комментировать
  • Как правильно использовать ключи MySQL?

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

    Но тут всплывает вопрос другой вопрос: удобно ли использовать для внешних таблиц такие составные ключи, ведь дублирование значений полей больше одного накладывает некоторые расходы и на скорость обработки и на занимаемое мест. В таких случаях обходятся суррогатным ключем с автогенератором с огромным запасом комбинаций (например тип BIGINT). Второй причиной, когда его нужно использовать: одно из полей (входяще в первичный ключ) может принимать значение NULL.
    Ответ написан
    Комментировать