Студент НИТУ МИСИС разработал решение для всех Linux-аналогов Excel

Магистрант 1 курса Института компьютерных технологий НИТУ МИСИС Кирилл Пронин написал код, который умеет работать со всеми файлами Linux-аналогов Excel для импортозамещения обработчика табличных редакторов. Решение создано для проекта компании PIX Robotics.

Благодаря техническому прогрессу и программам импортозамещения сегодня появляется много аналогов Microsoft Office. При этом, входящие в офисный пакет решения реализуется на разных операционных системах семейства Linux. Студент НИТУ МИСИС Кирилл Пронин создал обработчик табличных редакторов, который работает на любой из них, и обрабатывает все внутренние данные документов.

«Важно понимать, что каждый документ или таблица — это узловой тип данных, который называется XML. С момента появления языка программирования C# существует тип управления этими узлами — XmlDocument. Из-за широкого распространения разработчики долгое время считали его лучшим. Но это уже давно не так. Начиная с .Net framework 3.5, появился XDocument — новый тип данных для управления XML. Он обновлялся каждую версию С#, накопил огромный потенциал для работы. Однако из-за малого количества статей и примеров использования разработчики не решаются на него переходить», — пояснил Кирилл Пронин, разработчик PIX RPA, магистрант Института компьютерных технологий НИТУ МИСИС.

Чтобы разработать решение, Кирилл сначала сравнил функционал нового типа данных со старым. При обработке файлов офисного пакета XDocument оказался в 1,4 раза быстрее и использовал на 38% меньше памяти.

По словам студента, сложнее всего было унифицировать решение — «научить» приложение обрабатывать документы наиболее популярных и востребованных офисных пакетов на Linux: МойОфис, Р7 Офис, LibreOffice и др. Для этого Кирилл проанализировал историю разработки формата открытых xml-документов — ODF (Open Document Format). Выяснилось, что у всех Linux-аналогов Excel есть один общий предок, язык которого подходит для написания универсального кода. В итоге получился обработчик табличных данных, который быстро извлекает из файла только нужную информацию. Использование XDocument позволило ускорить работу и не требует установки дополнительных программ или офисных пакетов.

«Переход к использованию отечественных офисных пакетов — одна из самых актуальных задач для организаций в рамках импортозамещения. Если создавать новые документы легко, то перевести весь объем старой документации на другой формат — порой непосильная задача, за которую не каждый готов браться. Решение Кирилла позволяет выполнять переход в автоматизированном режиме, здесь и сейчас. Отдельно стоит отметить, что решение позволяет автоматизировать работу с документами открытых форматов в полной мере — точно так же, как и с документами форматов Microsoft Office. Эта работа уже внесла и будет вносить свой вклад в экономику и цифровой суверенитет не только отдельно взятых компаний или университетов, но и всей страны. Наша компания сотрудничает с НИТУ МИСИС в рамках программы PIX Просвещение, а значит, мы можем ожидать новых важных разработок в сфере RPA от студентов университета», — отметил Валентин Драздов, менеджер продукта PIX RPA, компания PIX Robotics.

О предложенном решении студент рассказал на крупнейшей конференции для .Net-разработчиков DOTNEXT.

Поделиться