<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Как использовать интерфейс countable в PHP.

Как использовать интерфейс countable в PHP.

Всем привет! В этой статье мы рассмотрим, как использовать интерфейс для счета в PHP.

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

Давайте рассмотрим пример:

class Collection {
  protected $items = [];

  public function __construct(array $items) {
   $this->items = $items;
  }

  public function count() {
   return count($this->items);
  }
}

$collection = new Collection(['one', 'two', 'three']);
echo $collection->count();

Идея такая: вы имеете некоторое количество предметов, хранящееся в коллекции, вы можете передать их в конструктор при создании экземпляра объекта, вы можете иметь другие методы, которые будут добавлять предметы, но в нашем примере мы ограничимся конструктором. Дальшем мы создаем новую коллекцию, куда передаем три предмета(в нашем случае это строки). Теперь мы используем написанный нами метод count(), в котором помещаем массив в функцию count() и возвращаем результат.

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

if($collection->count() > 0) {

}

Мы можем улучшить это, написав вот так:

if(count($collection) > 0) {

}

Это будет работать, но мы не получим ожидаемого результата, так как функция с аргументом в виде объекта вернет нам логическое значение 1.

Чтобы все начало работать так, как мы хотим, нужно всего лишь добавить наследование от интерфейса. Вот так:

class Collection implements Countable {
  // код
}

Теперь при вызове функции count() с аргументом в виде объекта автоматически будет вызываться написанный нами метод count(), и все будет работать правильно.

Countable – это очень простой, но полезный интерфейс, который позволяет легко и просто производить подсчеты. Более подробную информацию вы можете найти на официальном сайте PHP.

Итак, на этом сегодня все. Спасибо за внимание!

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.