Реклама

QMediaPlayer — Аудио плеер на Qt

Предлагаю написать простенький аудио плеер для mp3 файлов с использованием Qt/C++, который будет иметь плейлист, возможность запуска/паузы/остановки треков, а также пролистывания треков. Для реализации данной задумки в Qt имеются классы QMediaPlayer и QMediaPlaylist, которые относятся к модулю multimedia. А для отображения плейлиста воспользуемся QStandardItemModel и QTableView. Статьи данного цикла: Кастомизация плеера в стиле AIMP Структура проекта…

Ruby — модули

Модули в Ruby похожи на классы, за исключением того, что: Модуль не может иметь экземпляров Модуль не может иметь подклассов Модуль определяется между операторами module … end Действительно… класс модуля некоего модуля является суперклассом класса класса некоего класс. Понятно? Нет? Давайте разберёмся. Существует два типичных способа использования модулей. Один является коллекцией сходных методов и констант в одном…
Advertisement

Qt Сертификация

Ещё с 2009 года было возможно сдать экзамен на Qt сертификацию и стать Сертифицированным Qt разработчиком или Qt специалистом. Сейчас экзамены и сертификации обновлены, чтобы охватить последние функции Qt. Для того, чтобы поддержать качественное обучение и подготовку Qt разработчиков к экзаменам, Qt Company также запускает партнёрскую программу обучения. Имеется три вида экзаменов: основы Qt и QML, Widget…

День рождения сайта — 1 Год

Сегодня 28 июня, а значит сегодня «День Рождения сайта EVILEG». Год назад был зарегистрирован домен и сделана первая запись в блоге. И вот теперь настал день подвести первые итоги жизни ресурса за год. Свой путь сайт начал с описания технологий волоконно-оптических линий связи, но всё меняется. Некоторые темы уходят в тень, некоторые усиливаются, появляются новые…

Ruby — Singleton методы

Поведение экземпляра класса определяется его методом, но бывают случаи, когда мы знаем, что определённый экземпляр должен иметь особое поведение. В большинстве языков, мы должны решить эту проблему определением другого класса, который будет инстанцирован один раз. В Ruby же мы можем дать любому объекту свои собственные методы с конкретным поведением для одного конкретного экземпляра класса. В…

Ruby — контроль доступа

Недавно, мы говорили, что Ruby не имеет функций, только методы. Однако имеется более, чем один вид методов. В этой главе мы ознакомимся с контролем доступа. Рассмотрим, что происходит, когда мы определяем метод на верхнем уровне, не внутри определения класса. Мы можем подумать, что этот метод будет аналогичен функции в более традиционном языке, таком как C.…

Ruby — переопределение методов

В подклассе, мы можем изменить поведение экземпляров класс переопределив методы суперкласса. Или, допустим, мы решили расширить метод identifity суперкласса вместо того, чтобы заменить его. Для этого мы можем использовать оператор super. Данный оператор выполняет вызов метода суперкласса. super позволяет нам также передавать параметры в метод суперкласса. Это может быть полезно в том случае, если предварительно потребуется модифицировать или…

Ruby — наследование

Наша классификация объектов в каждом дне жизни является на самом деле иерархической. Мы знаем, что все кошки млекопитающие, а все млекопитающие являются животными. Наименьшие классы наследуют характеристики из больших классов, к которым они принадлежат. Если все млекопитающие дышат, то все кошки также дышат. Мы можем выразить эту концепцию в Ruby: Хотя мы не указываем, как Cat…

Ruby — классы

Реальный мир наполнен объектами, и мы можем классифицировать их. Например, очень маленький ребёнок, вероятно, скажет «гав-гав», когда увидит собаку, независимо от породы; мы же на самом деле видим мир в терминах категорий. В терминологии  объектно-ориентированного программирования категория объекта «dog» называется классом, и некоторые конкретные объекты принадлежащие классу называются экземплярами этого класса. Как правило, чтобы сделать…

Ruby — методы

Что является методом? В Объектно-ориентированном программировании мы не оперируем данными непосредственно извне, скорее объект имеет некоторое представление о том, как оперировать ими (когда его хорошо попросят). Вы можете сказать, что мы передаём сообщение в объект, и эти сообщения, как правило, выполняют некоторые действия и возвращают ответ. Это случается без нашего обязательного знания того, как объект…