Результаты поиска
Как получить доступ к свойствам объекта из метода объекта?
Каков "purist" или "correct" способ доступа к свойствам объекта из метода объекта, который не является методом getter/setter?
Я знаю, что снаружи объекта вы должны использовать getter/setter,, но изнутри вы бы просто сделали это:
Java:
String property = this.property;
PHP:
$property = $this->property;
или ты бы так и сделал:
Java:
String property = this.getProperty();
PHP:
$property = $this->getProperty();
Простите меня, если мой Java немного не в порядке, прошел год с тех пор, как я программировал в Java...
EDIT:
Похоже, люди предполагают, что я говорю только о частных или защищенных переменных / свойствах. Когда я узнал ОО, меня научили использовать геттеры/сеттеры для каждого отдельного свойства, даже если оно было общедоступным (и на самом деле мне сказали никогда не делать никакой переменной/свойство общедоступным). Итак, я, возможно, начинаю с ложного предположения с самого начала. Похоже, что люди, отвечающие на этот вопрос, возможно, говорят, что вы должны иметь общественные свойства и что они не нуждаются в геттерах и сеттерах, что противоречит тому, чему меня учили, и тому, о чем я говорил, хотя, возможно, это тоже нужно обсудить. Хотя это, вероятно, хорошая тема для другого вопроса...
Какова наиболее эффективная графовая структура данных в Python?
Мне нужно уметь манипулировать большим (10^7 узлов) графом в python. Данные, соответствующие каждому узлу / ребру, минимальны, скажем, небольшое количество строк. Каков наиболее эффективный , с точки зрения памяти и скорости , способ сделать это?
Дикт диктов более гибок и прост в реализации, но я интуитивно ожидаю, что список списков будет быстрее. Опция списка также потребует, чтобы я хранил данные отдельно от структуры, в то время как дикты позволят сделать что-то подобное:
graph[I][J]["Property"]="value"
Что бы вы предложили?
Да, мне следовало бы немного прояснить, что я подразумеваю под эффективностью. В данном конкретном случае я имею в виду его в терминах произвольного поиска доступа.
Загрузка данных в память не является огромной проблемой. Это делается раз и навсегда. Трудоемкая часть-это посещение узлов, чтобы я мог извлечь информацию и измерить интересующие меня показатели.
Я не рассматривал возможность сделать каждый узел классом (свойства одинаковы для всех узлов), но похоже, что это добавит дополнительный уровень накладных расходов? Я надеялся, что у кого-то будет какой-то непосредственный опыт с подобным случаем, которым они могли бы поделиться. В конце концов, графики-это одна из самых распространенных абстракций в CS.
Что такое lambda (функция)?
Что такое lambda в мире компьютерных наук для человека, не имеющего опыта работы в области компьютерных наук?
476   2   06:46, 29th August, 2020
В чем смысл интерфейсов в PHP?
Интерфейсы позволяют создавать код, который определяет методы классов, реализующих его. Однако вы не можете добавить код к этим методам.
Абстрактные классы позволяют делать то же самое, а также добавлять код к методу.
Теперь, если вы можете достичь той же цели с абстрактными классами, зачем нам вообще нужна концепция интерфейсов?
Мне сказали, что это связано с теорией OO от C++ до Java, на которой основан материал PHP OO. Является ли эта концепция полезной в Java, но не в PHP? Может быть, это просто способ избежать того, чтобы заполнители были завалены в абстрактном классе? Я что-то упустил?
Сложность замены Regex
Ответа на этот вопрос я нигде не получил. Какова сложность выполнения Regex-го совпадения и замены?
Edit: я работаю в python. Но хотелось бы знать в целом о самых популярных языках / инструментах (java, perl, sed).