Почему не воспроизводится музыка с флешки на компьютере
Перейти к содержимому

Почему не воспроизводится музыка с флешки на компьютере

  • автор:

Запись музыки на флешку для автомагнитолы

Формат флешки для автомагнитолы

Сегодня сложно представить современный автомобиль, в котором бы отсутствовал такой важный атрибут, как автомагнитола. И это неудивительно, так как путешествовать за рулём намного комфортнее и веселее под музыку, которая может проигрываться через встроенный радиоприёмник, CD-чейнджер или USB-носитель. Однако недостаточно просто записать музыку с компьютера на флешку, поскольку некоторые магнитолы не читают определённые форматы файлов. Выясним, нужно ли форматировать флешку перед использованием и каким способом справиться с возникающими при этом проблемами.

Какие достоинства есть у современных USB-накопителей

В последние несколько лет именно флешки пользуются наибольшей популярностью среди автовладельцев, так как позволяют максимально быстро записать любимые аудиокомпозиции. Этого не скажешь о записи аудио на CD-диски, для которой ноутбук или компьютер должен как минимум обладать CD-приводом, а также специальной утилитой (к примеру, Nero или DAEMON Tools).

Ещё одним плюсом USB-накопителей можно считать их компактные габариты и большой объем встроенной памяти (на рынке доступны флешки, объем памяти которых составляет 256 Гб и более).

Автомагнитола с флешкой

Однако некоторые автовладельцы сталкиваются с тем, что их автомагнитола отказывается проигрывать аудиотреки. Что сделать в этом случае?

Как подобрать нужную флешку для магнитолы

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

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

Автомагнитола с флешками

Как записать песни на флешку для автомагнитолы

После того как USB-флешка подобрана, переходим к записи музыки:

    Первым делом изучаем инструкцию к автомагнитоле. Необходимо выяснить, воспроизведение каких форматов поддерживает устройство. Самые простые магнитолы поддерживают форматы воспроизведения мр3, wav и wma. Более продвинутые и, соответственно, дорогие устройства, легко справляются с воспроизведением flac, AAC, MPEG-1, MPEG-2 и прочих.

Подключение флешки к ноутбуку

После того как все вышеописанные операции проделаны, флешка готова для использования в автомобильной аудиомагнитоле.

Видео: как скачать музыку с компьютера на флешку

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

Возможные проблемы и способы их решения

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

Почему магнитола не видит флешку

Автомагнитола не воспринимает и не считывает вставленный в неё USB-накопитель. Чаще всего причина кроется в том, что автовладелец использует флешку со слишком большим объёмом памяти. Поэтому рекомендуется изучить инструкцию к автомагнитоле и посмотреть, какой наибольший объём она способна воспроизводить.

Файловая система NTFS

Какой должна быть файловая система

Автомагнитола также может отказаться «видеть» и воспроизводить музыку, если во флешке используется неверная файловая система. Зачастую аудиосистемы поддерживают флешки, в которых используется файловая система FAT32, поэтому если она будет другой, к примеру — NTFS, то воспроизведение будет невозможным.

Чтобы проверить файловую систему вашего носителя, необходимо подключить его к компьютеру, найти флешку в «Мой компьютер» — нажать правую кнопку мыши — выбрать пункт «Свойства», после чего откроется небольшое окно, где необходимо найти пункт «Файловая система». Если там будет значиться система NTFS, то следует произвести форматирование USB-флешки в файловой системе FAT32.

Также пользователи разных автомагнитол могут сталкиваться с различными системными уведомлениями об ошибках при использовании флешек. Так, владельцы аудиомагнитол Pioneer довольно часто встречают ошибку «ERROR-23», которая свидетельствует о том, что флешка отформатирована с использованием несовместимой файловой системы. Эта проблема легко и быстро устраняется посредством правильного форматирования флешки на компе.

Ошибка error-23

По какой причине не читаются музыкальные файлы

Накопитель использует правильную файловую систему и имеет допустимый объём, но при этом магнитола отказывается воспроизводить музыку. Бывает даже так, что ещё вчера флешка «играла», а сегодня — нет. В этом случае необходимо подключить её к компьютеру и попробовать прослушать любимые песни с него.

Если накопитель определяется, вне зависимости от того, удаётся воспроизвести музыку с ПК или нет, вероятнее всего, на флешке накопились ошибки. Избавиться от них поможет форматирование устройства. Если же носитель не определяется, то флешка просто-напросто вышла из строя, а значит, её дальнейшее использование невозможно.

Видео: что делать, если не играет музыка в машине

Как отформатировать USB-накопитель

Для того чтобы отформатировать флэш-накопитель, нужно проделать следующие действия:

  1. Первым делом подключаем накопитель к компьютеру и копируем с него информацию, если это возможно, поскольку после форматирования все данные будут полностью и безвозвратно удалены.
  2. Далее находим флешку в меню «Мой компьютер», кликаем на ней правой кнопкой мыши, находим и нажимаем на пункт «Форматировать».
  3. После этого на экран будет выведено уведомление о том, что в процессе форматирования все данные с флешки будут удалены. Жмём кнопку «ОК», после чего выбираем необходимые параметры форматирования: файловая система — FAT32, размер кластера (выбираем в зависимости от размера хранимых данных — чем больше данные, тем выше показатель), метка тома (по сути, это имя, которое будет использовать флешка в дальнейшем). Нажимаем кнопку «Начать».

Форматирование флешки

Видео: правильное форматирование флешки

Если же после форматирования автомагнитола по-прежнему отказывается корректно работать с подключённым USB-носителем, то, вероятнее всего, проблема не во флешке, а в самой магнитоле. А значит, вам придётся посетить сервисный центр, где специалисты смогут осуществить её диагностику и, при наличии возможности, устранить неполадки.

Записав любимые аудиокомпозиции на флешку, вы сможете в любое время наслаждаться ими в своём автомобиле. Если выбрано правильное устройство, музыкальные файлы будут воспроизводиться без проблем. А вышеописанные инструкции помогут не только максимально быстро записать данные на носитель, но и решить наиболее часто возникающие проблемы при его использовании в автомобиле.

Зависает магнитола при проигрывании с флешки

Если магнитола не читает флешку с музыкой, нужно рассмотреть различные причины. Такой результат можно получить вследствие ошибок в процессе записи, поломки оборудования. Чтобы определить, какой фактор спровоцировал нарушение функций магнитолы, оценивается ее работа с другим носителем. Отдельно проверяется и флеш-накопитель.

Почему магнитола не читает флешку

Причины могут быть разные: проблемы с воспроизведением некоторых файлов, поломка съемного устройства или магнитофона, несовместимость техники и флеш-накопителя, о чем можно прочитать в инструкции. Если не играет флешка в магнитоле, но ранее она функционировала без сбоев, часто причиной такого явления служит возникновение ошибок в файлах. Из-за этого они не читаются, но съемное устройство запускается, магнитола в автомобиле его обнаруживает.

Если не работает флеш-накопитель, причиной может служить вирус.

Инфицирование происходит при копировании песен с ПК. Это случается, если отсутствует антивирус на компьютере. Воспроизведение файлов на таком носителе данных становится невозможным.

Неправильная запись или формат

  • выполнялось копирование файлов FLAC или АСС;
  • в их названии присутствуют кириллические символы;
  • выбрана другая файловая система.

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

Решение второй проблемы намного проще — требуется лишь переименовать песню, которая не проигрывается при подключении внешнего накопителя. Это можно сделать на компьютере, а затем снова скопировать файл, но уже с новым названием. Есть возможность переименовать песню прямо на флешке. В этом случае используют латинские символы.

Изменить файловую систему можно на ПК. Для этого нужно нажать правой кнопкой мыши на значок «Мой компьютер». В меню выбирают «Свойства». В появившемся окне следует искать пункт «Файловая система». Необходимо лишь выбрать нужный вариант из списка (NTFS или FAT32).

Неисправности флешки

Основной проблемой является ошибка при форматировании или выполнение этого процесса при помощи неподходящей файловой системы. Если магнитола не видит флешку по этой причине, сразу появится сообщение об ошибках, которые были обнаружены при установке устройства в разъем. В данном случае нет возможности просмотреть содержимое — магнитола не считывает файлы, т. к. флеш-накопитель не открывается. При этом не получится самостоятельно восстановить информацию на съемном носителе.

Повреждение USB-разъема магнитолы

Основные факторы, способствующие возникновению подобной проблемы:

  • повышенная влажность;
  • длительная или слишком интенсивная эксплуатация устройства;
  • воздействие достаточно мощного электромагнитного поля;
  • извлечение флеш-накопителя из разъема с нарушениями;
  • механическое воздействие: сильный удар, например, при падении.

Если проявился любой из этих факторов, внешний накопитель перестанет открываться, файлы не будут копироваться. Записать информацию на такой носитель тоже невозможно. Иногда при попытке перебросить песни на флеш-накопитель обнаруживается, что ее объем обнулился. При таких исходных данных может выясниться, что магнитола перестала читать флешку. В большинстве случаев устранить поломку невозможно.

Слишком большой объем памяти флешки

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

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

Что делать

Если не читается флешка в машине, следует проверить ее на прочих устройствах: домашний ПК, ноутбук или магнитофон в другом автомобиле. При повторении той же ситуации предполагается, что срок службы накопителя окончен по естественным причинам (износ деталей) или вследствие механического повреждения. Кроме того, учитывают характер ошибки. Когда внешний носитель информации не считывается, не открывается и не обнаруживается, восстановить данные невозможно.

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

Форматирование флешки

Этот процесс уничтожит все файлы, которые хранятся на съемном устройстве. Одинаковый результат получают при выполнении быстрого и полного форматирования. Если флешка не читает информацию, необходимо нажать правой кнопкой по ее названию в списке дисков в проводнике. В открывшемся меню нужно выбрать соответствующий пункт — «Форматирование». Во всплывающем окне выбираются основные параметры, после чего необходимо нажать кнопку «Начать».

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

Правильная запись

Проверяется соответствие файловых систем съемного устройства и магнитолы. После этого на флеш-накопитель копируют песни привычным способом: путем перетаскивания или через меню, которые всплывает при нажатии на файл правой кнопкой мыши. Правильно записать информацию поможет отсутствие каких-либо действий на компьютере в процессе копирования. Если съемное устройство эксплуатируется давно, требуется предварительно выполнить форматирование. Рекомендуется правильно извлекать флешку из разъема после окончания действий.

Программная прошивка магнитолы

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

Когда решается вопрос, что делать, если магнитола не видит некоторые MP3 файлы, необходимо сначала проверить их параметры. Если основные характеристики такие же, как и у остальных песен, предполагают ошибки в программном обеспечении. В этом случае его необходимо обновить или перепрошить магнитолу.

2 варианта зависания трека идет:
— при проигрывании трека останавливается и ничего не происходит. На радио переключается нормально, а обратно ничего не происходит
— просто идет инициализация и ничего больше, так же радио может работать.
В чем может быть причина?
Решается проблема выключением машины и вынимании ключа.

Volkswagen Jetta 2012, 105 л. с. — автозвук

Машины в продаже

Volkswagen Jetta, 2013

Volkswagen Jetta, 2015

Volkswagen Jetta, 2011

Volkswagen Jetta, 2014

Комментарии 13

проблема с криво-названными файлами бывает …
у меня бывает такое иногда…

было даже такое — когда нажимаешь следующую папку, а он включает эту же песню — ларису долину блин))))) мучался я так долго пока не нашел эту ларису и удалил её)))))

и зависания периодически бывают))

проблема решилась полностью форматом флешки и чтобы только музыка там была…уже как две недели ни одного глюка!

а я удалил кривую музыку и все норм стало)
и кривые папки))
с русскими тоже глюки бывают) иногда)

Скорей всего на нее нужна абсолютно чисто щафлрматированная флешка, чтоб только мп3 были.иначе могут быть глюки. Пока нормально работает!

была такая фигня, флешка не читалась потом некоторое время. оказалось битый файл.

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

запросто…
и форматируй обязательно в фат 32, ntfs читать не будет!

нтфс да…по большей степени это виндовский формат.

нтфс да…по большей степени это виндовский формат.

да, только нормальные магнитолы и его читают )

не, такого не наблюдал…)

но бывает такой косяк — вставляешь флешку, идёт инициализация и когда флешка загрузилась то первый трек идёт очень замедленно)) но самой функции замедления в рсд-310 нет)) далее переключаю на след трек и всё воспроизводит нормально…)

а твой косяк, номер 2 который, на мой взгляд может быть по двум причинам — формат песен не поддерживается проигрывателем или сама флешка отформатирована не в FAT32!

Обсуждение популярных проблем с автомобилями часто сводится к решению задач, возникших по вине периферийного оборудования. Часто ломаются маршрутные компьютеры и регистраторы, установленные владельцами автомобилей самостоятельно. Но первую позицию по поломкам занимает именно музыка. Магнитола в авто — это неотъемлемый атрибут системы развлечений. Сегодня есть магнитолы, которые могут воспроизводить не только музыку, но и фильмы, клипы и другие видео. Даже в недорогой автомобиль можно установить отличную мультимедийную систему и получать колоссальное удовольствие от любой поездки на авто. Но все это длится ровно до того момента, как магнитола перестает читать флешку.

Причин такой неприятности может быть достаточно много. Современная техника имеет массу тонких технологий, и проследить цепочку поломок бывает невероятно сложно. Музыкальная аппаратура в вашем автомобиле может быть источником прекрасного звучания, чистейшего объемного воспроизведения многоканального типа. Но если магнитола не читает флешку, вы не сможете загрузить на носитель информации необходимое количество данных и не насладитесь в дороге нужными вам композициями. Давайте попробуем разобраться в этой задаче.

Почему магнитола перестала читать флешку?

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

  • разъем, в который вы вставляете носитель информации, мог быть поврежден неосторожным движением;
  • возможно, некачественные соединения внутри магнитолы дали сбой, оторвались проводки системы;
  • из строя могла выйти микросхема или плата, отвечающая за проигрывание музыки с флешки или карты памяти;
  • также стоит проверить работу магнитолы в других режимах (радио, диски) — возможно, устройство вообще не работает;
  • причиной может стать неисправная флешка, у которой плохой контакт или сгоревшая микросхема управления;
  • проблема также может быть в кнопках управления магнитолой, которые включают проигрывание с источника памяти.

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

Флешка определяется в магнитоле, но музыка не воспроизводится

Если аппаратная часть оказывается в нормальном состоянии, нужно обратиться к программным моментам. Здесь вам не придется тратить деньги и время на услуги специалистов, все можно сделать самостоятельно. Предположим, что при установке флешки в магнитолу аппаратура начинает делать какие-то движения, флешка определяется. Это говорит о том, что ваша музыкальная система в автомобиле жива, ничего ремонтироваться не нужно. Тем не менее, нередко сыграть что-то магнитола не может по определенным причинам. Если до этого вы уже воспроизводили музыку с данной флешки, следует произвести следующие моменты:

  • вставьте носитель в компьютер и проведите полное форматирование (для начала с помощью программных средств Windows);
  • загрузите любимую музыку, попробуйте вставить флешку в магнитолу и воспроизвести треки;
  • если ничего не помогло, скачайте специальную программу для форматирования низкого уровня (это можно сделать бесплатно);
  • после выполнения низкоуровневого форматирования снова проведите форматирование в Windows;
  • прочтите руководство к магнитоле и выберите необходимую файловую систему для форматирования (FAT, FAT32, NTFS);
  • убедитесь, что магнитола поддерживает тип и объем вашей карты памяти, это также бывает частой ошибкой.

Если вы купили флешку на 64 гигабайта, а магнитола принимает только карты памяти в файловом формате FAT (FAT16), то вы никак не сможете слушать любимую музыку с приобретенного оборудования. Дело в том, что этот формат поддерживает только носители до 2 гигабайт объемом. Потому придется раскошелиться на другой носитель информации или купить более современную магнитолу. Впрочем, такие ситуации случаются не так часто. Прежде чем купить флешку лучше всего посмотреть инструкцию к магнитоле и определить, какие проблемы могут возникнуть с той или иной памятью при ее использовании.

Программная прошивка магнитолы — редкая, но серьезная проблема

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

  • углубиться в чтение инструкции производителя, о том, как и когда нужно менять прошивку на магнитоле;
  • скачать оригинальную или измененную прошивку на доверительном сайте (осторожнее с возможными вирусами);
  • на полностью очищенную и отформатированную флешку установить данную прошивку по инструкции;
  • вставить флешку в магнитолу, выполнить все шаги, указанные в руководстве по эксплуатации магнитолы (шаги могут отличаться для разных моделей);
  • произвести перезагрузку магнитолы для ее возврата в нормальное рабочее состояние и запуска новой прошивки;
  • вставить флешку с музыкой и попробовать включить любимый трек — на этот раз все должно получиться.

Конечно, самые распространенные проблемы, когда флешка не хочет запускаться на магнитоле, — это проблемы с самой памятью. Нужно выполнить все действия из предыдущей части этой публикации или купить новую флешку специально для прослушивания музыки в машине. С помощью простых действий можно восстановить нормальную работу музыкальной системы в вашем автомобиле и забыть о том, что такая проблема существовала. Тем не менее, иногда придется обратиться к ремонту аппаратной или программной части самой магнитолы. Предлагаем полную инструкцию по ремонту аппаратной части магнитолы в исполнении специалиста:

Подводим итоги

Если случилось так, что магнитола в вашем автомобиле перестала читать флешки, это не страшно. Есть масса вариантов исправления данной неполадки. Достаточно прочитать три основные направления в исправлении неполадок и начать с самого простого — форматирования флешки. Если это не поможет, стоит проверить все видимые соединения магнитолы, а также учесть тип ее поведения при подсоединении флешки. Затем можно обновить прошивку самого устройства, что также делается достаточно просто при наличии заводской инструкции.

В ином случае придется обращаться в сервисный центр для ремонта аппаратной части магнитолы. Этот вариант сулит вам определенные расходы на услуги специалистов. Достаточно просто можно получить необходимые возможности и вернуть работоспособность магнитолы. Если же и после выполнения всех заявленных процедур проблема осталась, магнитолу придется менять. Впрочем, для машин со стационарной музыкальной системой это будет невероятно сложным и дорогим процессом, потому нужно постараться и восстановить музыкальное оборудование. Случались ли у вас проблемы с магнитолами и флешками?

Здравствуйте username-ы, ко мне обратились с просьбой разобраться, почему на флешке не играет половина музыки ⁠ ⁠

Здравствуйте username-ы, ко мне обратились с просьбой разобраться, почему на флешке не играет половина музыки, я заранее отсканил её на битые сектора, их не обнаружилось. После я попробовал проиграть один из файлов на компе и он не стал проигрываться. Мне бросилось в глаза, то что все файлы которые не воспроизводятся весят 16кб. флешка Fat 32 14GB smartbuy/

Здравствуйте username-ы, ко мне обратились с просьбой разобраться, почему на флешке не играет половина музыки IT, Железо, Данные, Файл, Программирование, Текст

На флешке стоит защита от говномузыки.

У вас просто комп слабый, надо видеокарту поменять и Виндоус переустановить.

Ярлыки по особому нужно воспроизводить 😉

Им пизда. Что за тупые вопросы. Почему — хз, убитая флэшка 90%, а ты как великий мастер просто проверку запустил и всё, что и привело битый вид к обрезкам. Но это все гадания. Может и исходно такие были.

не может трек весить 16кб

Бывало, при каче музла, некоторые файлы были как бы пусты (как в ситуации выше). Перекачка заново помогала решить проблему. Причин не искал, т.к. решение было. Сейчас могу предположить, что проблема в кэше устройства, которое файлы отрабатывало — начало и конец файла читают (т.е. что за файл и какого формата), а середину (т.е. все биты и байты трека) куда-то девает.
проверьте на источнике (комп) файлы полноценны? Возможно глючит перенос файлов. Так же замерь скорость передачи данных и потери с/на флешку.

П.с. на твердом чипе вроде как не может быть секторов битых) там же не магнитка

16 кбт это огрызок, по этому и не читается. скорее всего флешка паленая

У меня по первой на дискету весь интернет влазил

Была как то флешка с музыкой 8 Гиг ,на компе открывалась и воспроизводилась без проблем, но ни одна заведомо рабочая магнитола ее не могла прочесть. Форматировалась, прогонялась через различные программы, без толку. И самый прикол, что была в ремонте магнитола. И вот она одна , самая дешевая китайская магнитола, с наполовину убитым процессором, который вскипал через минуту, который садил питания и не выдавал нужных сигналов эту рабочую минуту пока не сдыхал прекрасно читал флешку. Причем только эту и ни одну другую. Примечательно что и магнитола и флешка были одного хозяина.

А если переименовать в txt, блокнотом открывается?

А точки в начале названия файлов нет?

Это, скорее всего, ярлыки а не файлы. Если только ваш пользователь не фанат миди музыки.

Так небось ярлыков себе накидал вместо файлов.

Учимся писать чистый код на Python: разбор задания к S1E2⁠ ⁠

Разбирать решения к этому заданию было нереально интересно. Одно и то же задание участники решили абсолютно по-разному. Если я ничего не пропустил, то среди корректно работающих решений не было повторяющихся, то есть каждый изобрёл свой собственный подход к решению задачи. Размер кода при этом варьировался от 5 до нескольких десятков строк.

Больше всего зацепило решение от @Elesae, которое было реализовано максимально коротко и аккуратно, но за счёт не очень удачных имён переменных стало куда менее читаемым, чем могло бы быть.

В нём также есть некоторые проблемы с дробными вычислениями, но это я поправлю. Пока что фокусируемся на чистоте кода.

Кстати, по совету @happyf1re поменял цветовую тему во вставках кода. Напишите, пожалуйста, в комментах, нравится или нет.

Исходные данные

Для начала я хотел бы показать имена объектов, которые использовались в коде.

А вот и код целиком:

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

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

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Начнём разбор с названия функции. Прежде всего, функция — это действие. Это не данные, а набор инструкций, объединенных друг с другом. Соответственно, вместо «счётчик страниц» лучше использовать «посчитать страницы». Такое название лучше передаст смысл объекта и покажет, что это команда, действие, а не переменная.

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Смотрим на названия параметров. `line_p_page`, `symbol_p_line`. Можно догадаться, что `p` означает `per`. Но тогда возникает вопрос — а почему `line` и `symbol` в единственном числе? «Строка на страницу», «символ на строку» — это путает. Экономия пары символов не стоит того, чтобы ради неё ухудшать читаемость.

Далее, слово `symbol` имеет смысл «символ, символика, эмблема, олицетворение чего-то». Для того, чтобы передать смысл «печатный символ», лучше использовать слово `char`. В дальнейшем вы будете часто сталкиваться с этим словом: CharField в Django, CHAR и VARCHAR в SQL и так далее.

И наконец, использование `s` здесь в принципе приемлемо, но почему-то хочется написать чуть более конкретное имя. Считайте это субъективной придиркой 🙂 Просто хочется, чтобы сигнатура функции читалась как «посчитать количество страниц, которое занимает текст, если на странице не больше 50 строк, а в каждой строке не больше 55 символов».

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Помните самый главный принцип? Имя объекта должно чётко и коротко передавать его суть.

Если название состоит из 2-3 слов, но при этом можно убрать какое-то из слов и не потерять смысл, то это нужно сделать. Короткие идентификаторы читаются лучше, чем длинные. Конечно, не нужно фанатизма, не нужно пытаться впихнуть смысл в 1 слово, если он упорно не впихивается. Но и добавлять лишние слова, которые не вносят дополнительного смысла, тоже не стоит.

`predef_lines` — какой дополнительный смысл вносит `predef`? В принципе, никакого, потому что в переменной хранится список строк. Префикс «предварительно заданные» здесь не только не добавляет смысла, но ещё и путает. Ведь никто не задавал эти строки предварительно, они были получены только что путём разбиения исходного текста по `\n`.

`format_line_num`, `format_page_num` — это похоже на названия функций. «format» — это действие. Если вы хотите передать смысл «отформатированный», то лучше использовать «formatted». Но при этом возникает вопрос — а действительно ли здесь нужно говорить про подгонку строк и страниц под книжный формат?

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Итоговый результат

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

Учимся писать чистый код на Python: разбор задания к S1E2 Программирование, Python, IT, Обучение, Длиннопост

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

Требуется програблогер / блограмист. Зарплата 100к⁠ ⁠

Ждали разбор заданий к прошлому посту, да?) Скоро будет, уже работаю над ним. Но отвлекитесь ненадолго от чистого кода, фишек Python и всего этого. Тут кое-что поинтереснее подъехало, пофундаментальнее.

Видели же рекламу курсов по программированию в духе «Делать ничего не нужно, всё очень легко и быстро, только купи курс за 100 тысяч»? Так вот, хочу дать полностью противоположное объявление. Ищу несколько человек, которые хотят научиться программированию. Обучу под ключ, бесплатно. Пахать придётся будь здоров, и будет очень сложно. А если доживёте до конца — заплачу 100 тысяч.

Требуется програблогер / блограмист. Зарплата 100к Программирование, Python, IT, Обучение, Длиннопост

Зачем мне это нужно? Затем, что у меня есть онлайн-платформа, на которой можно учиться программированию на практике, без вебинаров и видеолекций. И я хочу наглядно показать всем, как шаг за шагом происходит становление программиста, и чем отличается просмотр вебинаров/видеороликов от реального обучения программированию. Для этого нужно несколько человек, которые будут учиться и попутно вести видеодневник на YouTube или другом ресурсе.

Как это будет выглядеть:

— вы учитесь программированию на онлайн-платформе, проходите всю обучающую программу до конца. Это займёт около 1 года, если плотно и регулярно заниматься. Обучение для вас будет бесплатным, все расходы беру на себя;

— при этом несколько раз в неделю снимаете короткие ролики, в которых рассказываете о том, чему научились и с какими сложностями столкнулись;

— когда все участники либо доходят до конца, либо отваливаются в процессе, то проводим голосование среди зрителей. Тот участник, который дошёл до конца и при этом получил приз зрительских симпатий, становится обладателем приятной премии в 100 000 рублей.

Программа обучения

Python, SQL, Flask, Django, базовые знания DevOps. Паттерны проектирования, навыки написания чистого кода, инструменты (Git, Linux, Docker, pytest и прочее). Всё, что необходимо джуну для трудоустройства.

Очень много практики и разбора кода с код-ревьюером, так что на выходе будете вполне крепким джуном. Именно джуном, а не миддлом, как обещают некоторые школы. Ни один курс не сделает из вас миддла, это по определению невозможно, потому что миддл — это не только знания, но и практический опыт на реальных боевых проектах.

Критерии отбора

Раньше я уже проводил 2 аналогичных набора на бесплатное обучение, только без денежных премий с моей стороны. И здорово обжёгся на некоторых моментах, потеряв время, нервы и деньги. Поэтому в этот раз условия будут куда жёстче.

Сразу мимо, без вариантов. У вас должна быть чёткая цель «я стану программистом», и должны быть подтверждения того, что вы двигаетесь к ней самостоятельно прямо сейчас.

В прошлый раз часто слышал истории вроде «ну я пробовал год назад, немного поучил язык, но что-то не сложилось и вот забросил, а сейчас решил опять попробовать». Без обид, ребята, но ваш уровень мотивации сейчас буквально нулевой. Вероятность того, что вы пройдёте обучение до конца — такая же. Хотите прийти на платное обучение — приходите, выжмем из вас максимум, потому что затраченные деньги будут мотивировать не бросать. Но на бесплатное обучение с такой установкой точно не возьму, потому что отвалитесь в течение максимум 3 месяцев, и просто займёте чужое место и потратите время.

Участвуете в разборах кода на Пикабу, есть недавно пройденные курсы на Stepik, есть репозиторий со своими пет-проектами — вот это супер, это уже заявка на успех. А если есть только честное слово и обещание, что «обязательно буду учиться и стараться» — извините, в третий раз не поверю, дважды уже обжёгся) Многие из «обещателей» в итоге даже не начали учиться, просто перестали выходить на связь, зато чужое место занять успели. А из тех, кто всё-таки начал, никто не прошёл даже 20% курса, все отвалились по разным причинам. В итоге сейчас из бесплатного набора остались только те, кто ещё до него начинал учиться самостоятельно.

Уже и так всё видно 🙂 Пожалуйста, если вы не готовы пахать и уделять программированию практически всё свободное время — не занимайте чужое место. Я не шучу и не преувеличиваю: будет сложно, нужно будет минимум год просто жить программированием. Если у вас уже сейчас есть сомнения, что такой темп вам подойдёт, то через пару месяцев гарантированно окажется, что «ну всё-таки не получилось, форс-мажор, другие дела, не моё».

Нужно будет регулярно снимать видео со своим участием. Короткие ролики, но в них должна быть личность. Необязательно быть крутым шоуменом — достаточно просто спокойно и чётко излагать свои мысли. Если умеете в юмор — то вообще отлично, но это необязательно. Ещё раз: это не ультра-крутой профессиональный контент, это просто живой любительский видеодневник.

Шикарная камера не нужна, достаточно более-менее нормальной вебки или телефона. Монтажом заниматься тоже не нужно, при необходимости сделаю это за свой счёт. От вас — только исходное видео.

Важно: если регулярных роликов от участника не будет, то не будет и смысла учить его бесплатно, а потом ещё и доплачивать. Я делаю всё это не потому, что хочу просто так раздарить кучу денег, а потому, что видеодневники помогут:

— показать людям, что на самом деле значит «обучиться программированию»;

— хорошенько дать под зад инфоцыганам, которые загадили информационный фон по теме программирования;

— получить новых замотивированных студентов на платформе, готовых серьёзно поработать, а не рассчитывающих на то, что им в голову волшебным образом вложат знания.

Если вы хотите принять участие, то пожалуйста, оставьте комментарий в следующем формате:

— как давно изучаете программирование, как именно изучаете и какой конкретно язык;

— итоговая цель, ради которой учитесь.

Комментарии, чей формат будет отличаться от указанного, рассматривать не буду. Это чётко показывает, что даже простые вводные данные изучаются невнимательно, и лично для меня это яркий красный флажок с надписью «NO!».

Честно говоря, немного страшно пускаться в такую авантюру, потому что раньше ничего подобного не делал. Но надеюсь, что всё получится, и в итоге мы с вами сделаем реально интересный и качественный контент, за которым будут следить, как за телешоу 🙂

Учимся писать чистый код на Python: сезон 1, серия 2⁠ ⁠

Ну что ж, вот и подъехала вторая серия сериала про чистый код. Первая серия здесь.

Напоминаю, что вся эта серия постов предназначена для тех, кто изучает Python и уже имеет базовые знания. Если вы пока что не можете написать ничего сложнее `print(‘Hello, world!’)`, то посты будут для вас слишком сложными. Поскорее изучайте основы и присоединяйтесь к движу 🙂

Нейминг: выбираем хорошие имена для объектов

Выбор имён для объектов — это большая тема, поэтому она будет разделена на 2 поста. Сейчас разберём общие принципы, а в следующем посте займёмся деталями.

Начнём с короткого наглядного примера.

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Если от прочтения этого кода вы испытали неподдельное эстетическое удовольствие и решили впредь писать в таком же стиле, то пожалуйста, закройте этот пост, удалите интерпретатор Python и самостоятельно вызовите экзорцистов.

А если серьёзно, то этот пример должен ответить на вопрос «Зачем правильно выбирать имена объектов?». Прочитать вышенаписанный код и не истечь кровью из глаз навряд ли кому-то удалось. А теперь представьте, что вы с командой работаете над проектом, в котором 100 000+ строк кода, и всё написано в таком стиле.

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

Самый главный принцип

Имя объекта должно чётко и коротко передавать его суть. Оно не должно быть «просто словом», которое пришло на ум в первые 5 секунд. Оно должно недвусмысленно показывать, для чего этот объект предназначен.

В примере выше есть сразу несколько нарушений этого принципа:

— аргумент «безумно полезной функции» называется `number_or_list`, хотя в реальности функция может работать только со строкой;

— имя самой функции вообще не несёт никакой смысловой нагрузки;

— имя переменной, в которой содержится сообщение, излишне длинное, ведь тот же самый смысл можно передать гораздо проще.

Алгоритм выбора имени

1. Определяете, какой смысл имеет объект;

2. Передаёте этот смысл 1-3 словами на русском, старательно отбрасывая всё лишнее;

3. Переводите на английский.

Если у вас хороший уровень английского, то пункты 2 и 3 можно совместить. Но ни в коем случае не пытайтесь это сделать, если английский у вас пока что на уровне «Лондон из зэ кэпитал оф Грейт Бритн». Имена вроде `pikture_draw` и `data_chek_completly` — это зло и боль для любого, кто будет читать код впоследствии. Не ленитесь — пользуйтесь переводчиками и словарями.

Исправляем проблему с именами

Давайте подумаем над тем, какой смысл заложен в каждый из объектов.

1. `number_or_list`: это строка, которая выводится на экран;

2. `InsanelyUseful_function_withaveryDescriptivename`: аналог `print()`, но работающий только со строками, а не с любыми объектами;

3. `incrediblylonglowercasedvariablewhichcontainsamessage`: сообщение/вопрос для пользователя.

То есть нам нужно подобрать имена для следующих сущностей:

Переводим на английский и получаем следующие варианты:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Выбор конкретного варианта остаётся на ваше усмотрение, но есть пара нюансов.

1. Если используется 1 переменная со смыслом «просто объект», то можно использовать однобуквенное имя `s` как сокращение от `string`. Например:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Здесь неважно, какая строка передаётся в функцию. Строка и всё, никакого особого смысла у неё нет. К тому же функция короткая и принимает всего 1 аргумент. Поэтому можно смело использовать `s`.

2. Если же производится работа с несколькими разными сущностями, или у сущности есть конкретный узконаправленный смысл, то лучше использовать более наглядное имя. Сравните:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

То же самое в случае с одним аргументом, имеющим конкретный смысл:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Разбор заданий из предыдущего поста

Исходный пример в этом посте был искусственным, проблемы с неймингом в нём были доведены до абсурда. Поэтому давайте разберём конкретные решения, которые вы отправляли в прошлый раз.

Важно: если окажется, что у вас не получилось сразу выдать отличные имена для функции и её аргументов, не расстраивайтесь. Не ошибается лишь тот, кто ничего не делает. Со временем вы научитесь подбирать хорошие имена для объектов, если будете целенаправленно над этим работать.

Вот имена, которые разные пользователи подобрали для функции, разбивающей IP-адрес на 4 октета:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Самая распространённая проблема — это вложение в функцию смысла «проверяльщик IP». Но ведь её основное назначение — не проверка, а извлечение октетов из IP-адреса и возврат кортежа. Проверка самого адреса — это лишь косвенное действие. Название объекта не соответствует его смыслу.

Наиболее интересный вариант — это `checker(string)`. Судя по названию, функция проверяет строку. В чём именно заключается проверка и что это за строка — неясно. Чтобы понять, для чего нужна эта функция, придётся полностью разбирать её исходный код.

Были и другие варианты:

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Вариант с `parse_ip(ip)` наиболее близок к идеальному. Лаконично, стилистически корректно, отлично передаёт суть. Возможные аналоги: `extract_octets(ip)`, `split_ip(ip)`.

Остальные варианты тоже неплохи, но имеют некоторые недочёты, которые будут разобраны в следующей серии.

Новая задачка

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

Критерии для расчёта:

— максимум 50 строк на 1 странице;

— максимум 55 символов, включая пробелы, в 1 строке.

Значения «50» и «55» пока что можно захардкодить, то есть вручную написать в коде программы. Но если хотите, можно сделать их параметрами функции.

Обязательно подумайте над именами объектов. Самое главное в текущем задании — это не супер-крутой алгоритм, а хорошие названия. Над алгоритмами и декомпозицией задач поработаем чуть позже.

UPD: учитывайте, что в настоящем тексте будут переносы строки `’\n’`. Изначально не указал это, подумав, что все сами догадаются 🙂

Как оформлять решение

Должно быть изображение, а под ним ссылка на код. В прошлом посте вместо ссылки на код делали цитату, но это оказалось неудобно, т.к. Пикабу нещадно кромсает отступы.

1. Изображение из кода генерируется с помощью https://carbon.now.sh/

2. Ссылка на код — с помощью https://www.codepile.net/ или аналогичного ресурса.

Решения, оформленные в стиле тяп-ляп, в разбор гарантированно не попадут, потому что их неудобно читать и на работу с ними уйдёт много лишнего времени.

Как и раньше, приоритет в разборе отдаётся подписчикам. Для меня это признак того, что вам действительно интересна эта тема и вы будете ждать следующих постов.

Надеюсь, пост был полезным и интересным 🙂 Если что-то не так — пожалуйста, напишите в комментариях. Обратная связь очень важна, я хочу делать максимально качественный контент для вас.

Учимся писать чистый код на Python: сезон 1, серия 2 Программирование, Python, IT, Обучение, Чистый код, Длиннопост

Программирование на Python «для тупых» 006 Итоги по вводным темам + пара фишечек⁠ ⁠

Фишки Python: сезон 1, серия 1. Работа с консолью⁠ ⁠

Если вы часто пишете консольные приложения, которые общаются с пользователем с помощью `print()` и `input()`, то наверняка сталкиваетесь с рядом проблем:

1. Вывод в терминал довольно невзрачный, не хватает наглядности;

2. Приходится вручную возиться с форматированием текста, особенно если нужно вывести на экран таблицу;

3. Вызовы `input()` приходится заворачивать в циклы и обвешивать проверками, чтобы повторно запрашивать у пользователя данные, если он ошибся.

Можно каждый раз вручную решать плюс-минус одинаковые проблемы. А можно вместо этого сконцентрироваться на сути программы, а всю рутину свалить на готовые библиотеки. В текущем посте рассмотрим библиотеки, упрощающие вывод (print), а в следующем посте поработаем со вводом (input).

Все эти библиотеки будем устанавливать через терминал с помощью вот такой команды:

Предполагается, что вы уже умеете работать с терминалом, поэтому останавливаться на этом не будем. Если ещё не умеете, то поступайте по-программистски: заваривайте чай/кофе и открывайте Google.

Вывод данных в табличном виде — это очень распространённая задача.

Например, у вас есть список пользователей:

Фишки Python: сезон 1, серия 1. Работа с консолью Программирование, Python, IT, Длиннопост

И вы хотите вывести его в виде аккуратной таблицы:

Фишки Python: сезон 1, серия 1. Работа с консолью Программирование, Python, IT, Длиннопост

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

Но есть и другой вариант: просто воспользоваться готовой библиотекой tabulate.

Фишки Python: сезон 1, серия 1. Работа с консолью Программирование, Python, IT, Длиннопост

Функция tabulate() имеет много разных параметров, с помощью которых можно менять внешний вид таблицы. Ознакомиться с подробностями можно в документации.

Код примера в удобном виде можно забрать здесь.

Что может быть лучше, чем запустить какой-нибудь гигацикл на миллионы итераций и смотреть за тем, как прогресс-бар плавно двигается к 100%?

Визуализировать выполнение цикла можно с помощью библиотеки tqdm.

Фишки Python: сезон 1, серия 1. Работа с консолью Программирование, Python, IT, Длиннопост

Код примера в удобном виде можно забрать здесь.

С помощью этой библиотеки можно здорово оживить терминал, сделав вывод более красивым и ярким.

Фишки Python: сезон 1, серия 1. Работа с консолью Программирование, Python, IT, Длиннопост

Возможности rich не ограничиваются простым форматированием текста. Это очень мощная библиотека. С помощью rich вы можете отрисовать прогресс-бар наподобие того, который отрисовывался с помощью tqdm. Можете отображать статус выполнения задачи, отрисовывать файловую структуру в наглядном виде и так далее. На изучение может уйти немало времени, но оно того стоит. Документация здесь.

Код примера в удобном виде можно забрать здесь.

Хотите что-то добавить?

Если вы знаете ещё какую-то интересную библиотеку, с помощью которой можно упростить работу с терминалом, то пожалуйста, поделитесь с остальными в комментариях. Если ваш комментарий получит хороший отклик, то в следующих постах можно будет отдельно разобрать эту библиотеку. Работу со вводом (input) пока что не затрагиваем, она будет рассматриваться в следующем посте.

Если у вас есть свои наработки для упрощения вывода в консоль, то тоже было бы интересно посмотреть 🙂 Для отправки кода можно использовать Codepile или подобный сервис.

Программист⁠ ⁠

В магазине увидел, угарнул. Не знаю было ли тут, но решил поделиться)

Программист Фотография, Юмор, Программирование, Программист, Зарплата, Отличники, Кружки, IT юмор, IT, Мемы

А что, хороший вариант оплаты⁠ ⁠

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

А что, хороший вариант оплаты IT юмор, IT, Программирование, Длиннопост, Картинка с текстом

Базы данных — почему бизнес их боится / избегает⁠ ⁠

Базы данных - почему бизнес их боится / избегает IT, Цифровые технологии, Технологии, Microsoft Excel, База данных, Данные, Анализ данных, Большие данные, Утечка данных, Хранение данных, Прогресс, SQL, Postgresql, Postgres

Раньше странно было наблюдать, почему при автоматизации бизнес процессов заказчики боятся баз данных

Цепляние за эксель у многих происходит до последнего

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

Эксель для них это последний бастион, где они еще удерживают ситуацию под контролем. Можно залезть ручками в файл, настроить фильтры, поковыряться. Если надо, то что-то подправить в формулах и связях между таблицами

Переход к базе данных это следующий уровень сложности, знаний для контроля над которым просто нет

Тут они уже нутром понимают, что обратной дороги не будет. Придётся зависеть от этих мутных ИТ-шников, с их sql запросами и прочей магией

В экселе — все понятно, вот файл, в нем закладки с табличками

А база данных это где?

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

А если база данных в «облаке»?

В газетах вон постоянно пишут про хакеров и как из облаков данные утекают

Тут все надежно, проверено мудростью предков, и есть панацея от всех проблем: ctrl+alt+delete

IT-кот 6. Кот не злопамятный⁠ ⁠

Но он злой и память у него хорошая. Хотя это не правда, какой он злой? Однако, память у кота действительно хорошая. Почему? Потому что кот записывает все в файлы.

IT-кот 6. Кот не злопамятный IT, Кот, Образование, Файл, Длиннопост

Ранее мы выводили текстовую информацию в консоль (с помощью метода Console.WriteLine), но существуют и другие способы вывода. Например, информацию можно выводить в файл, а затем читать из файла. Для этого воспользуемся методами File.WriteAllLines для записи сведений в файл и File.ReadAllLines для получения данных из него.

Что же такое, эти Lines? Lines — это просто несколько строк текста. В предыдущем примере (IT-кот 5. Оперативная память, как у золотой рыбки) мы выводили строки в консоль по одной. Такой же подход возможен и для файла, однако, удобнее (хотя не всегда — лучше) записывать в файл и читать из него сразу все строки. Для этого сначала сразу все строки нам надо получить.

Сделать это очень просто. Во-первых, нужно определить, куда мы будем складывать строки. Для этого используем список List<string>, создав внутри метода Main переменную с именем lines, представляющую собой новый список строк:

List<string> lines = new List<string>();

Почему список новый и зачем это надо было явно указывать — разберем в следующих постах, а пока давайте заменим весь вывод в консоль на добавление элементов в список, везде написав

Console.WriteLine

Почему List<string> подчеркнуто красным? Потому что компилятор не знает, откуда брать этот список (может мы сами его придумали). Что ж, подскажем ему, указав вверху после using System; еще одно место для поисков — using System.Collections.Generic;.

Ок, список строк мы получили, но его теперь надо куда-то сохранить. Для этого укажем относительный путь сохранения — » tasks.cat « (о путях подробнее было в самом первом посте — IT-кот 1. Взаимодействие с приложениями), и попросим компьютер файл сохранить (здесь надо указать также еще одно место для поиска System.IO):

File.WriteAllLines(«tasks.txt», lines);

Прочитать данные из файла мы можем, создав новый (пример создания был выше) или очистив старый (методом Clear) список дел, а затем загрузив из него строки из файла (ниже пример с очищением):

lines.AddRange(File.ReadAllLines(«tasks.txt»));

Вроде бы все, но посмотреть то результаты работы как?

Во-первых, можно найти файл на диске и просто его открыть.

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

Пример полного программного кода — здесь (строки, начинающиеся с двух слешей, т.е. с ‘//’ называются комментариями, игнорируются компилятором и позволяют нам писать любые сообщения потомкам).

Все, пришла усталость, продолжение — в следующем посте.

IT-кот 6. Кот не злопамятный IT, Кот, Образование, Файл, Длиннопост

Винчестер-то не резиновый. (старая истина)⁠ ⁠

Было время, когда объем жесткого диска исчислялся в мегабайтах. Казалось бы 20 мегабайт — огромный объем. Так я и многие другие думали 30 лет назад. Однако все течет, все меняется. Сейчас жесткие диски в 1 Тб (в 50 000 раз больше чем 20 мегабайт) обычное явление. Мало того, в широком доступе твердотельные накопители с новыми технологиями . . .

Однако в то время (80-90е годы прошлого века) не было фильмов в цифровом формате, картинка «весила» в десятки раз меньше, софт зачастую был оптимизирован и занимал небольшой объем. Да что говорить, дистрибутив виндовс 3.1 распространялся на дискетах. Текстовые файлы весили десятки килобайт. При очень большой нужде можно было обойтись вообще без жесткого диска. Для экономии места были популярны архиваторы: winrar, arj, pkzip, pklite для сжатия выполняемых файлов и так далее. Для дискет был вариант нестандартного форматирования, к примеру утилитой pu_1700. Одна из причин пропадания свободного места на жестком диске на мой взгляд была следующая. Доступа к сети интернет и даже скажем фидо или ббс был не у всех. Обменивались между собой дискетами с софтом игрушками и так далее. Это сподвигало оставлять себе копии на дискетах или на жестком диске, что реже. Так или иначе свободное место заканчивалось, а апгрейд жесткого диска в материальном плане был очень болезненный. Соотношение цены за мегабайт доходило до 10 уе или даже больше. Поэтому старались прибегать к разного рода ухищрениям для экономии места. К примеру вырезка из старого иностранного журнала.

Винчестер-то не резиновый. (старая истина) Ностальгия, Ретро, Компьютер, Программа, Данные, Жесткий диск, IT, Экономия, Длиннопост

Один из вариантов экономии места был в виде программно-аппаратного комплекса STACKER. Аппаратную часть я не застал, говорили что даже кодирование на лету поддерживается, но софтом пользовался часто с переменным успехом. Было радостно видеть, как на 40 мб винчестер влезает почти 90 мб данных. А иногда и наоборот. Все зависело от самих данных и степени их подвержению компрессии. Функцию сжатия данных перед записью выполнял центральный процессор, что снижало общую производительность. Этим приходилось жертвовать. За то, при чтении данных скорость в среднем возрастала, поскольку физическая скорость чтения данных с накопителя не была равна объему данных после распаковки.

Винчестер-то не резиновый. (старая истина) Ностальгия, Ретро, Компьютер, Программа, Данные, Жесткий диск, IT, Экономия, Длиннопост

Система динамического сжатия данных «на лету позволяла в среднем удвоить емкость жестких дисков. Она прекрасно устанавливалась, сама делала все, что нужно, работала под DOS и под Windows, грузилась резидентом в нижнюю или в верхнюю память. Некоторое замедление работы компьютера компенсировалось увеличением емкости жестких дисков при почти полной невидимости для пользователя. (При наличии специальной платы скорость работы теоретически возрастала за счет сокращения обмена с физическим диском.) При установке стакер не было необходимости удалять что-то с диска, он сам делал все, что нужно .Можно было сжать системный жесткий диск или съемный раздел, а при желании и флоппи-диски.

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

Винчестер-то не резиновый. (старая истина) Ностальгия, Ретро, Компьютер, Программа, Данные, Жесткий диск, IT, Экономия, Длиннопост

Степень сжатия сильно зависит от того, какие файлы на диске. Если много места занимают файлы баз данных, вы можете увеличить емкость диска в 4 и более раз. Если же на диске хранятся в основном файлы со сложными изображениями, упакованные архивы или предварительно сжатые EXE-файлы (в том числе и с оверлеями), выигрыша может и не быть. К примеру Нортоновские утилиты почти не сжимались.

После установки STACKER пропадал смысл держать на жестком диске архивы, полученные утилитами сжатия данных (PKZIP, LHA, ARJ), так как они, во-первых, закрывают данные от быстрого доступа и, во-вторых, их использование не приводило к увеличению свободного места на диске, а наоборот — к уменьшению! Такой парадоксальный на первый взгляд результат объясняется тем, что размер свободного места прогнозировался стакером путем умножения среднего коэффициента сжатия на размер физически свободного места. Так как утилиты сжатия несколько эффективнее упаковывают данные, то при этом освобождается некоторое количество физического места, но одновременно уменьшается средний коэффициент сжатия, и в результате размер прогнозируемого свободного места уменьшается.

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

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

Винчестер-то не резиновый. (старая истина) Ностальгия, Ретро, Компьютер, Программа, Данные, Жесткий диск, IT, Экономия, Длиннопост

Для увеличения скорости работы накопителей выпускались программы типа SMARTDrive. Она создавала в дополнительной памяти кэш диска, существенно ускоряющий операции MS-DOS с диском. Однако так же существовал риск потери данных в случае аппаратного или программного сбоя компьютера. Сейчас кэш в накопителях встроенный и необходимости в аналогичных утилитах уже нет.

Конкуренты: В число утилит, вошедших в состав операционной системы MS-DOS 6.0, входило средство динамического сжатия данных DoubleSpace. В работе эта программа совершенно аналогична пакету STACKER. Более того, фирма Stac Electronics подавала иск по факту «заимствования» корпорацией Microsoft алгоритма программы STACKER и выиграла его. Но это уже совсем другая история. Актуальность сжатия данных на сегодняшний день применяется при бэкапе.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *