Один из самых удобных способов записать данные это использование готовых форматов, такие как 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
Hırvatistan’dan gelen kursiyerlerimiz, Keşan’daki Baykar Uçuş Eğitim Merkezi’nde düzenlenen #BayraktarTB2 SİHA eğitimini başarıyla tamamlayarak mezun oldu.
Mezun olan kursiyerlerimizi tebrik ederiz. 🇹🇷🤝🇭🇷
Trainees from Croatia have successfully completed their #BayraktarTB2 UCAV training at the Baykar Flight Training Center in Keşan.
We congratulate our newly graduated trainees. 🇹🇷🤝🇭🇷
https://sosyal.teknofest.app/@baykartech/114993655653054300
Jandarma'nın Yanında, Gökyüzünde 10 Bin Saat! 🇹🇷✈️
Jandarma Genel Komutanlığı envanterinde 10.000 saat boyunca görev yapan J11 (S18) kuyruk numaralı #BayraktarTB2 SİHA’mız emekliye ayrıldı. Terörle mücadeleden sınır güvenliğine, emniyet ve asayişten stratejik altyapıların korunmasına kadar kritik görevlerde gökyüzündeydi.
J60 kuyruk numaralı yeni bir #BayraktarTB2 SİHA'yı Jandarma Genel Komutanlığımıza hediye ettik.
10,000 Hours in the Skies, Serving the Gendarmerie 🇹🇷✈️
The #BayraktarTB2 UCAV with tail number J11 (S18) has been retired after successfully completing 10,000 flight hours in the inventory of the Gendarmerie General Command. From counterterrorism to border security, law enforcement to the protection of strategic infrastructure, it played a vital role in critical missions.
As part of our continued support, we have donated a new #BayraktarTB2 with tail number J60 to the Gendarmerie.
Yılmadan, yorulmadan göklerde 1️⃣.0️⃣0️⃣0️⃣.0️⃣0️⃣0️⃣ saat! 🇹🇷
Tirelessly soaring through the skies for 1️⃣.0️⃣0️⃣0️⃣.0️⃣0️⃣0️⃣ hours! 🇹🇷
#BayraktarTB2✈️🚀
▶️HD Video
Milli Kanatlar Hırvatistan Semalarında! ✈️
Baykar ile Hırvatistan Savunma Bakanlığı arasında #BayraktarTB2 SİHA ihracatını kapsayan tarihi anlaşma Zagreb’de imzalandı. 🇹🇷🇭🇷
Bu anlaşma ile #BayraktarTB2, NATO ve Avrupa Birliği üyesi bir ülkenin daha envanterine girdi.
Hayırlı olsun.
Our Indigenous Wings in the Croatian Skies! ✈️
A historic agreement between Baykar and the Croatian Ministry of Defense for the export of #BayraktarTB2 UCAV was signed in Zagreb. 🇹🇷🇭🇷
With this agreement, #BayraktarTB2 has entered the defense inventory of yet another NATO and EU member state.
Polonya #BayraktarTB2 Sistemi Lojistik Destek Sözleşmesi kapsamında NSPA Genel Direktörü ve Polonya Savunma Bakanlığı temsilcilerinin katılımıyla Özdemir Bayraktar Milli Teknoloji Merkezimizde imza töreni gerçekleştirdik.
🇹🇷🤝🇵🇱
As part of the Poland Bayraktar TB2 System Logistics Support Contract, we held a signing ceremony at the Özdemir Bayraktar National Technology Center with the participation of the NSPA Director General, their accompanying delegation, and representatives from the Polish Ministry of Defense.
10.000 saatlik uçuş süresi ile ömür devrini tamamlayan, TSK envanterindeki S5 kuyruk numaralı #BayraktarTB2 İHA'mız vatani görevini hakkıyla yerine getirdi! 🇹🇷✈️
The Bayraktar TB2 UAV, with tail number S5, which was part of the Turkish military's inventory, has completed its service life after 10,000 flight hours, fulfilling its duty to the nation with distinction! 🇹🇷✈️
▶️HD Video
Dost ve kardeş ülke Kenya’dan gelen kursiyerlerimiz, Keşan’daki Baykar Uçuş Eğitim Merkezi'nde #BayraktarTB2 SİHA eğitimini başarıyla tamamlayarak mezun oldu.
Mezun olan kursiyerlerimizi tebrik ederiz.🇹🇷🤝🇰🇪
Trainees from our friendly and brotherly country, Kenya, have successfully completed their #BayraktarTB2 UCAV training at the Baykar Flight Training Center in Keşan and graduated. ✈️
We congratulate our newly graduated trainees.🇹🇷🤝🇰🇪