Вопросы с тегом «oop»

203
Геттер и сеттер?

Я не PHP-разработчик, поэтому мне интересно, если в PHP более популярно использовать явные методы получения / установки, в чистом стиле ООП, с закрытыми полями (как мне нравится): class MyClass { private $firstField; private $secondField; public function getFirstField() { return...

200
Как я могу создать копию объекта в Python?

Я хотел бы создать копию объекта. Я хочу, чтобы новый объект обладал всеми свойствами старого объекта (значения полей). Но я хочу иметь независимые объекты. Итак, если я изменю значения полей нового объекта, на старый объект это не должно...

199
Аспектно-ориентированное программирование против объектно-ориентированного программирования

Как и большинство разработчиков здесь и во всем мире, я разрабатывал программные системы с использованием методов объектно-ориентированного программирования (ООП) в течение многих лет. Поэтому, когда я читаю, что аспектно-ориентированное программирование (AOP) решает многие проблемы, которые...

197
Зачем вам явно нужен аргумент «self» в методе Python?

При определении метода для класса в Python он выглядит примерно так: class MyClass(object): def __init__(self, x, y): self.x = x self.y = y Но в некоторых других языках, таких как C #, у вас есть ссылка на объект, к которому привязан метод, с ключевым словом "this" без объявления его в качестве...

197
Как я узнаю, когда создавать интерфейс?

Я нахожусь в процессе обучения, когда чувствую, что должен больше узнать об интерфейсах. Я часто читаю о них, но мне кажется, что я не могу их понять. Я читал примеры, такие как: базовый класс Animal, с интерфейсом IAnimal для таких вещей, как «Walk», «Run», «GetLegs» и т. Д., Но я никогда не...

195
Структурировать как объекты в Java

Это полностью противоречит способу Java создавать объекты, подобные структуре? class SomeData1 { public int x; public int y; } Я вижу класс с аксессорами и мутаторами, более похожими на Java. class SomeData2 { int getX(); void setX(int x); int getY(); void setY(int y); private int x; private int y;...

195
Apache Spark: количество ядер и количество исполнителей

Я пытаюсь понять взаимосвязь количества ядер и количества исполнителей при запуске задания Spark на YARN. Тестовая среда выглядит следующим образом: Количество узлов данных: 3 Спецификация машины узла данных: Процессор: Core i7-4790 (количество ядер: 4, количество потоков: 8) Оперативная память: 32...

194
Использование модификатора «final», когда это применимо в Java [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

193
Разница между репозиторием и уровнем обслуживания?

В чем разница между шаблоном репозитория и уровнем сервиса в шаблонах проектирования ООП? Я работаю над приложением ASP.NET MVC 3 и пытаюсь понять эти шаблоны проектирования, но мой мозг просто не понимает этого ... пока !!...

191
Как я могу понять условие `else` циклов Python?

Многие программисты Python, вероятно, не знают, что синтаксис whileциклов и forциклов включает необязательное else:предложение: for val in iterable: do_something(val) else: clean_up() Тело elseпредложения является хорошим местом для определенных видов действий по очистке и выполняется при обычном...

189
Ты не будешь наследовать от std :: vector

Хорошо, это действительно трудно признаться, но у меня сейчас есть сильное искушение унаследовать std::vector. Мне нужно около 10 индивидуальных алгоритмов для вектора, и я хочу, чтобы они были непосредственно членами вектора. Но, естественно, я хочу иметь и остальную часть std::vectorинтерфейса....

189
Отсутствует инструкция возврата в не пустом методе

Я столкнулся с ситуацией, когда в непустом методе отсутствует оператор return, а код все еще компилируется. Я знаю, что операторы после цикла while недоступны (мертвый код) и никогда не будут выполнены. Но почему компилятор даже не предупреждает о возврате чего-либо? Или почему язык позволяет нам...

188
Как питонный способ обнаружить последний элемент в цикле for?

Я хотел бы знать лучший способ (более компактный и "питонический" способ) сделать специальную обработку для последнего элемента в цикле for. Существует фрагмент кода, который следует вызывать только между элементами, подавляя в последнем. Вот как я сейчас это делаю: for i, data in...

188
Как удалить все нулевые элементы из ArrayList или String Array?

Я пытаюсь с такой петлей // ArrayList tourists for (Tourist t : tourists) { if (t != null) { t.setId(idForm); } } Но это не приятно. Кто-нибудь может предложить мне лучшее решение? Некоторые полезные ориентиры для принятия лучшего решения: Цикл while, цикл For и тест производительности...