Один из самых удобных способов записать данные это использование готовых форматов, такие как JSON или YAML.
Из плюсов такого подхода стоит отметить вот что:
🔸 готовый, повсеместно используемый и поддерживаемый формат
🔸 простой и понятный файл, удобочитаемый для человека
🔸 можно легко редактировать в любом текстовом редакторе без специальных программ и библиотек
Но есть и минусы
🔹 затраты времени при записи файла (кодирование данных в нужный формат строки)
🔹 затраты времени при чтении файла (декодирование данных в Python объекты)
🔹 размер файла увеличивается из-за разметки данных (скобки, запятые, переносы, отступы...)
🔹 перед записью все данные должны быть помещены в память в полном объёме (не всегда)
🔹 при чтении необходимо считать весь файл в память и только потом декодировать данные
Если нужно писать немного данных в несколько файлов, то затраты по времени не ощутимы. Обычно это файлы конфига или какие-либо метаданные. Это отличный вариант под такие задачи.
Есть и другой поход к записи файлов - это бинарные файлы. Используется, когда данных достаточно много и никто их не собирается читать глазками😳.
🔸 очень быстрая запись
🔸 чтение значительно быстрей чем JSON, YAML итд
🔸 размер файла значительно меньше, так как нет разметки
🔸 можно записывать данные по мере поступления не загружая всё в память
🔸 можно извлечь любую часть данных независимо
Из минусов
🔹 нужно определить свой формат записи данных (если не используете готовую спецификацию определённого формата)
🔹 не получится открыть файл и визуально понять что там записано, а для чтения файла потребуется знать его спецификацию.
🔹 не так-то просто создать такой файл без специальной библиотеки
В таком виде удобно записывать большой массив любых однородных данных. Например, мониторинг валютной биржи или кэшированная анимация 3D геометрии.
(Это не означает что нельзя записать данные разного типа, просто это будет не так удобно)
Представьте себе JPG-картинку. По сути это немного мета-информации и большой массив пикселей. Тоже самое со звуком или видео файлом. Поэтому, если вы попробуете открыть картинку в текстовом редакторе вы увидите что-то вроде такого
f15d cd29 a564 4578 ...
09e2 9bc4 a696 1253 ...
84e9 4de1 3b23 c24a ...
2534 5161 28e0 709d ...
...
Это и есть записанные байтики. И для их чтения требуется определённый софт который знает что с ними делать. Под каждый тип файла.
К чему это я? Читайте в следующем посте...
#tricks#basic
#release v12.6.4 a13c5e1229 r1128
Added:
- Marquee in Momo settings for long option texts
- Optionally confirm secret chat when there's a new incoming request
Fixed:
- Some real "GIF" being not playable
- Spoilers not applied on blocked users
Note. This will be the last build using the package name nekox.messenger.broken
#release v12.6.4 006a5be2b4 r1127
Added:
- Extend original force old topic view to default, force classic view and force tab view
- Switch between accounts from chat list menu
Fixed:
- Follow server behavior for vote count preview (no more count before actual vote, you can thank Durov's pets for that)
- [COT] thinking process in TranslateAlert3 not trimmed
- zh_cn strings used when zh_tw is selected
#release v12.5.1 adb88e8006 r1123
- Fixed a minor UI issue
- Switch to MapLibre for map views
- Update Cloudflare token length check to support new token (Thanks MrKristofere@GitHub)
#release v12.4.1 a3fd6d67a5 r1121
Added:
- Partial support for preserve link entities for translated messages (results may vary between languages and translate services used)
Fixed:
- Bottom padding for undo view in chat list
PS. I recently lost my job, so any financial support is appreciated. If you can't donate, starring the repository or contributing improvements is also greatly appreciated.
🎧Погружение в историю Башкирии через джаз-рок
Исполнитель
«Фирма Мелодия» переиздает пластинку, впервые вышедшую во времена позднего СССР, в 1990-м году. Альбом «Ансамбль “Орлан”» стал дебютной и самой известной записью уфимского коллектива под управлением Олега Киреева.
История «Орлана» связана с разными периодами в жизни страны. После ограничений для джазовых музыкантов в середине XX века последовали осторожные разрешения на исполнения и фестивали. По словам историка джаза Алексея Баташёва, коллективы почти принуждали работать с народными мелодиями и вплетать их в произведения. Как только контроль ослаб, многие ансамбли избавились от этого приема, а джаз, смешанный с народными мотивами, двинулся из центральных городов на восток. Где, например, в Уфе и появился ансамбль «Орлан».
Музыка
Олег Киреев, не чувствовал давления и свободно экспериментировал: «Джаз – ближайший родственник фольклора, а потому нас интересуют народные традиции, то, что живо вокруг нас, хотя и от джазовой классики мы ни в коем случае не отрекаемся». Свой основной инструмент, саксофон, Киреев обрел почти случайно: в предперестроечные годы в музыкальном училище был высокий конкурс на все специальности, кроме саксофона. Первый собственный коллектив Киреев собрал в 1984-м, а сделавший его известным в СССР и за его пределами «Орлан» – в 1986-м.
Мысль остановиться на джаз-фьюжне, пропитанном национальными мелодиями, пришла сама собой. «На праздниках была традиция, которой сейчас уже нет: родственники […] начинали петь – башкирские, татарские, русские песни, всё вперемешку. Народная музыка окружала нас повсюду», – позже говорил музыкант.
Мнение
«Башкирские легенды», родившиеся из одноименной концертной программы, не только звучат непривычно – тут есть, например, микс горлового пения и саксофона, – но и имеют небанальную историю. «Легенды» ездили по фестивалям, и в Днепропетровске ансамбль познакомился с Алексеем Баташёвым, историком и популяризатором джаза. Тот позвал музыкантов в Москву, где они записали весь материал всего за два дня в студии «Мелодии». Киреев называл процесс «мини-спектаклем, погружением в историю Башкирии через джаз-рок» и считал, что на записи им «каким-то чудом удалось воссоздать атмосферу, которая была на концертах». Эта запись стала их единственной студийной работой.
Денис Бояринов
Спустя почти 35 лет «Мелодия» вновь издает «Башкирские легенды» на виниле.
→ Слушать
#release
#release v12.3.1 3abc7c7194 r1117
- Force padding for unrounded floating button in chat
- View message history from member list of chats with admin privileges