[История IT, Старое железо, DIY или Сделай сам] Как коллекционировать старые компьютеры и не запутаться в них. Часть 2
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Да простит меня автор первой части за то, что украл его название, но уж очень близка мне эта тема. Мы - музей Software & Computer Museum столкнулись с той же проблемой каталогизации и учета наших экспонатов. Изучив доступные музейные базы пришли к выводу, что все это как-то тяжело и некатомизируемо, решили писать свое. Интересно, что получилось? Добро пожаловать под кат.
Я не профессиональный разработчик, поэтому писал на том, с чем был хоть немного знаком - PHP+MySQL. На данный момент проект в разработке уже два года и мы достаточно активно им пользуемся для своих задач, но, к сожалению, он еще сыроват для открытой публикации.После очередного рефакторинга пришло понимание, что нужно делать модульную структуру. Поэтому я вкратце расскажу про каждый модуль.Модуль HardwareМодуль Hardware нужен для учета железных штук и содержит 3 уровня вложенности. Верхний уровень - объект. Например, ZX Spectrum 48. Объект относится к определенной категории (компьютер), выпущен компанией Sinclair и относится к платформе ZX Spectrum (к этой же платформе относится и куча других клонов, которые массово у нас производились). Есть дата релиза, габариты и вес (помогают понять, сколько места ему нужно в экспозиции и как транспортировать). Также для объекта можно добавить произвольные теги.
Второй уровень вложенности - экспонат. Это уже конкретный физический ZX Spectrum. Он имеет те же свойства, что и его родительский объект (object_id в таблице), но также ряд уникальных свойств: инвентарный номер, внешнее состояние, работоспособность, локацию и свой собственный текстовый коментарий. Например, у нас их два:
Третий уровень вложенности - предмет экспоната. Экспонат может состоять из нескольких предметов, например, сам Спектрум, блок питания от него, инструкция, коробка и так далее. Для каждого такого предмета есть категория, состояние, работоспособность, локация и комментарий и фото, по которому легко опознать предмет.
Модуль SoftwareСофтом ситуация оказалась еще сложнее. Конечно, мы добавляем в каталог не весь софт, который есть у нас на винтах и флешках, а лишь тот, к которому есть какие-то оригинальные физические артефакты. Давайте разберем этот модуль на примере игры Pacman.Верхний уровень - Software. Некое общее описание, например игра Pac-Man разработана Namco для аркадного автомата, геймплей всем понятен и известен. Да, описание на скрине не заполнено.
Но кроме аркады игра издавалась на кучу разных платформ, поэтому добавляется второй уровень вложенности - Release. Релиз связан с Software, но имеет свои особенности: платформу, на которой он был выпущен, свою обложку для этой платформы, дату выхода, носитель и описание. У нас есть Pacman для трех разных платформ, Atari 2600, Atari 5200 и Sega GameGear. При редактировании релиза можно чекбоксом отметить Primary Release и его обложка будет показываться в описании Software.
Дальше все как и в Hardware, для каждого релиза есть экспонаты и предметы. Например, картриджей с Pacman для Atari 5200 у нас целых 3 штуки, поэтому 3 экспоната, но все 3 карика голые, поэтому в каждом экспонате только 1 предмет - картридж. Достанем инструкцию или коробку, добавим эти предметы к одному из экспонатов.
Модуль CatalogЭтот модуль позволяет формировать списки по некоторым критериям. Сейчас у нас там производители железа (Vendors), платформы (Platforms) и разработчики ПО (Developers). Да, это не покрывает всех возможных ситуаций, так как что-то могли разрабатывать совместно, для каждого софта была компания-разработчик и издатель, но пока как есть. Для каждой сущности в каталоге есть название и логотип. Пример каталога производителей показан в шапке статьи. Так выглядит каталог платформ:
Для каждой платформы, производителя или разработчика можно посмотреть список экспонатов. Вот, например, ZX Spectrum. Список сортируется по алфавиту и приоритету категории. Категории железа имеют больший приоритет, чем категории софта.
Рядом с логотипом платформы есть иконка, позволяющая показать экспонаты в виде галереи картинок для более удобного поиска. Аналогичным образом работают каталоги производителей и разработчиков.
Модуль SearchТут все просто. Это поиск, к сожалению, не полнотекстный, а обычный через MySQL LIKE. Ищет по названиям экспонатов, каталогу и тегам. Сначала показывает элементы каталога (первой строчкой платформа ZX Spectrum), затем экспонаты. Например, по фразе spec найдет следующее:
Модуль CalendarЭтот модуль позволяет нам не забыть какие-то важные события из истории ИТ и подготовить тематическую выставку в музее или хотя-бы публикацию в соцсетях. Вы просто добавляете название, дату события, описание и картинку. По этому модулю есть еще куча идей и недоделок. По умолчанию он показывает события на -10 дней назад и на +20 вперед.
Пока это все, что реализовано в текущей версии 0.23. Планы на ближайшее будущее:
- подготовить шаблоны для формирования списков по локации, категориям;
- добавить поиск по описаниям;
- переработать редактирование описания для объектов железа, ПО и релизов, добавить нормальную поддержку HTML разметки или Rich Textbox;
- добавить редактор справочников (пока добавление или редактирование локаций, категорий и еще некоторых справочников производится прямо в MySQL-редакторе).
Планы на перспективу:
- сделать установщик (я эту штуку даже на гитхаб пока выложить не могу, так как без детальной инструкции никто ее не запустит);
- добавить хоть какой-то импорт. По игрушкам с той же MobyGames;
- опубликовать и попробовать собрать комьюнити вокруг проекта.
На этом у меня все. Благодарю за внимание.
===========
Источник:
habr.com
===========
Похожие новости:
- [Программирование микроконтроллеров, Схемотехника, Производство и разработка электроники, DIY или Сделай сам, Электроника для начинающих] STM32 DoomBoy SDRAM ILI9341
- [Производство и разработка электроники, DIY или Сделай сам] Создание устройства качания детских кроваток с дугообразным полозом
- [Программирование, Разработка мобильных приложений, Программирование микроконтроллеров, Умный дом, DIY или Сделай сам] Свой путь в мире, где есть готовое решение для всего
- [Законодательство в IT, Производство и разработка электроники, История IT, Процессоры, IT-компании] Микропроцессор «Байкал-М» официально получил статус интегральной схемы отечественного производства
- [История IT, Процессоры] Вехи истории Intel. 35-летие процессора i386
- [Usability, Компьютерное железо, История IT, Будущее здесь] Прекратите ругать запланированное устаревание
- [Законодательство в IT, История IT, IT-компании] Сбер увеличивает долю в Rambler Group до 100%
- [Старое железо, DIY или Сделай сам] Rage Against The eMachine: ретро-модификация компьютера (перевод)
- [Open source, C, Старое железо, Процессоры, DIY или Сделай сам] Zx spectrum128, CP/M 2.2 и терминал на STM32F407
- [DIY или Сделай сам, Экология, Электроника для начинающих] Делаем станцию мониторинга загрязнённости воздуха в домашних условиях
Теги для поиска: #_istorija_it (История IT), #_staroe_zhelezo (Старое железо), #_diy_ili_sdelaj_sam (DIY или Сделай сам), #_katalogizatsija (каталогизация), #_staroe_zhelezo (старое железо), #_staroe_po (старое по), #_istorija_it (
История IT
), #_staroe_zhelezo (
Старое железо
), #_diy_ili_sdelaj_sam (
DIY или Сделай сам
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 19:34
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Да простит меня автор первой части за то, что украл его название, но уж очень близка мне эта тема. Мы - музей Software & Computer Museum столкнулись с той же проблемой каталогизации и учета наших экспонатов. Изучив доступные музейные базы пришли к выводу, что все это как-то тяжело и некатомизируемо, решили писать свое. Интересно, что получилось? Добро пожаловать под кат. Я не профессиональный разработчик, поэтому писал на том, с чем был хоть немного знаком - PHP+MySQL. На данный момент проект в разработке уже два года и мы достаточно активно им пользуемся для своих задач, но, к сожалению, он еще сыроват для открытой публикации.После очередного рефакторинга пришло понимание, что нужно делать модульную структуру. Поэтому я вкратце расскажу про каждый модуль.Модуль HardwareМодуль Hardware нужен для учета железных штук и содержит 3 уровня вложенности. Верхний уровень - объект. Например, ZX Spectrum 48. Объект относится к определенной категории (компьютер), выпущен компанией Sinclair и относится к платформе ZX Spectrum (к этой же платформе относится и куча других клонов, которые массово у нас производились). Есть дата релиза, габариты и вес (помогают понять, сколько места ему нужно в экспозиции и как транспортировать). Также для объекта можно добавить произвольные теги. Второй уровень вложенности - экспонат. Это уже конкретный физический ZX Spectrum. Он имеет те же свойства, что и его родительский объект (object_id в таблице), но также ряд уникальных свойств: инвентарный номер, внешнее состояние, работоспособность, локацию и свой собственный текстовый коментарий. Например, у нас их два: Третий уровень вложенности - предмет экспоната. Экспонат может состоять из нескольких предметов, например, сам Спектрум, блок питания от него, инструкция, коробка и так далее. Для каждого такого предмета есть категория, состояние, работоспособность, локация и комментарий и фото, по которому легко опознать предмет. Модуль SoftwareСофтом ситуация оказалась еще сложнее. Конечно, мы добавляем в каталог не весь софт, который есть у нас на винтах и флешках, а лишь тот, к которому есть какие-то оригинальные физические артефакты. Давайте разберем этот модуль на примере игры Pacman.Верхний уровень - Software. Некое общее описание, например игра Pac-Man разработана Namco для аркадного автомата, геймплей всем понятен и известен. Да, описание на скрине не заполнено. Но кроме аркады игра издавалась на кучу разных платформ, поэтому добавляется второй уровень вложенности - Release. Релиз связан с Software, но имеет свои особенности: платформу, на которой он был выпущен, свою обложку для этой платформы, дату выхода, носитель и описание. У нас есть Pacman для трех разных платформ, Atari 2600, Atari 5200 и Sega GameGear. При редактировании релиза можно чекбоксом отметить Primary Release и его обложка будет показываться в описании Software. Дальше все как и в Hardware, для каждого релиза есть экспонаты и предметы. Например, картриджей с Pacman для Atari 5200 у нас целых 3 штуки, поэтому 3 экспоната, но все 3 карика голые, поэтому в каждом экспонате только 1 предмет - картридж. Достанем инструкцию или коробку, добавим эти предметы к одному из экспонатов. Модуль CatalogЭтот модуль позволяет формировать списки по некоторым критериям. Сейчас у нас там производители железа (Vendors), платформы (Platforms) и разработчики ПО (Developers). Да, это не покрывает всех возможных ситуаций, так как что-то могли разрабатывать совместно, для каждого софта была компания-разработчик и издатель, но пока как есть. Для каждой сущности в каталоге есть название и логотип. Пример каталога производителей показан в шапке статьи. Так выглядит каталог платформ: Для каждой платформы, производителя или разработчика можно посмотреть список экспонатов. Вот, например, ZX Spectrum. Список сортируется по алфавиту и приоритету категории. Категории железа имеют больший приоритет, чем категории софта. Рядом с логотипом платформы есть иконка, позволяющая показать экспонаты в виде галереи картинок для более удобного поиска. Аналогичным образом работают каталоги производителей и разработчиков. Модуль SearchТут все просто. Это поиск, к сожалению, не полнотекстный, а обычный через MySQL LIKE. Ищет по названиям экспонатов, каталогу и тегам. Сначала показывает элементы каталога (первой строчкой платформа ZX Spectrum), затем экспонаты. Например, по фразе spec найдет следующее: Модуль CalendarЭтот модуль позволяет нам не забыть какие-то важные события из истории ИТ и подготовить тематическую выставку в музее или хотя-бы публикацию в соцсетях. Вы просто добавляете название, дату события, описание и картинку. По этому модулю есть еще куча идей и недоделок. По умолчанию он показывает события на -10 дней назад и на +20 вперед. Пока это все, что реализовано в текущей версии 0.23. Планы на ближайшее будущее:
=========== Источник: habr.com =========== Похожие новости:
История IT ), #_staroe_zhelezo ( Старое железо ), #_diy_ili_sdelaj_sam ( DIY или Сделай сам ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 19:34
Часовой пояс: UTC + 5