![]() |
|
|
![]()
|
|
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: нет Всего: 134 |
Прелюдием к данному топику послужило как минимум две темы в с++ -
"Почему комп виснет при работе с файлом?" и еще одна где я бегло сравнивал stdio, fstream'ы и явовские. Предлагаю теперь более тщательно проверить различные компиляторы различных языков в различных осях на скорость работы с файлами. Итак. Текущие идеи 0)Базовые тесты 0.1) Считывания файла 0.2) Запись в файл 0.3) Копирование файла 1) Более сложные тесты. 1.1) Инвертиция файла - последний байт становится первым, первый - последним и т.д. 1.2) Рекурсивное создание директорий и создание в них файлов 1.3) Рекурсивное удаление директорий[как всех из текущей папки, так и не всех - чтобы интереснее] 2) Еще более сложные тесты 2.1) Простой препростой препроцессор. Пусть заменяет что-нибудь на что-нибудь и выдирает комментарии. 2.2) Простейший архиватор. Самый простой формат архива, который мне известен - это такой. Весь файл состоит из блоков. Заголовок блока - 1 байт. Один бит[пускай 7-ой, знаковый] показывает, что блок сжат. Если блок не сжат, то остальные 7 бит показывают размер блока. (обозначим эти биты за X) Если блок сжат, то далее в архиве идёт один байт, который надо X раз записать в выходной файл. Если не сжат - то следующие X байт идут в выходной файл без каких-либо изменений, После одного блока сразу же идёт следующий. Думаю, что пишется на коленке за час-другой . Таким образом, например, .bmpшки 8 битные сжимать хорошо(это сжатие кстати и использовалось в частности в одном доисторическом графическом редакторе. Кажется на компе "орион-128". Подробности этого граф редактора можно посмотреть в журнале "Радио" за кз какой год) 3) Обработка ошибок. Хотелось бы потестить. Но как? 4..n) ?????? Сами подтесты очень хотелось бы еще разобить где это возможно - побайтовое считывание, считывание блоками, использование системных ф-ций (CopyFile или как его там) , и special guest star - моя горячо любимая функция system! (пример - system("copy a b")) Она, кстати, может показать хороший результат. Оценку можно ставить например так - делим лучший результат данного подтеста на текущий результат данного подтеста. Получается, что максимальная оценка за один тест - 1 балл. Потом все эти баллы суммируем и определяем (пример - OCaml расправился с копированием блоками за 1 секунду, а Ada копирует файл блоками за 2 секунды. OCaml получает 1 балл, Ada - 0.5) Какие будут предложения -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: нет Всего: 71 |
С аривированием замутил ИМХО.
Запись, считывание и обход директорий самое то. Для ввода - вывода тестим stdio, fstream ы и API. Для обхода директорий можно Boost и API. Жависты с Дот нетчиками пусть тоже что - нибудь предложат |
|||
|
||||
| Mayk |
|
||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: нет Всего: 134 |
Ну ладно, опустим
О! Точно! Наконец-то появится возможность заинсталить boost.
Да. А то если за возьмутся сишники, то виртуальные машины проиграют. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||
|
|||||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: нет Всего: 71 |
Ну так что? Никому из НЕ сишников не интересно? А то готов писать хоть сейчас, только нужно определиться что...
|
|||
|
||||
| Breezy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 21.8.2003 Репутация: нет Всего: 1 |
Мне интересно
|
|||
|
||||
![]()
|
| Правила форума "Тестирование программ" | |
|
|
Правила должны соблюдаться всеми без исключения.
Для тех, кто создаёт темы: В данном разделе запрещается размещать программы, которые в той или иной степени могут принести вред потенциальному тестеру программы (например, трояны, вирусы и т.д.)
Для тех, кто тестирует: Описывая результаты тестирования программы, указывайте тип и версию ОС, а также характеристики компьютера и прочую информацию, которая может повлиять на работоспособность. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.Anderson. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разное тестирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |