Tato diplomová práce se zabývá návrhem a implementací univerzálního bezztrátového archivátoru. To znamená aplikace sloužící pro kompresi dat, která jsou jí předána. Také popisuje implementaci rozhodovacího mechanismu, který v archivátoru zajišťuje volbu nejvhodnějšího kompresního algoritmu. Práce čtenáře seznamuje s problematikou spojenou s tvorbou archivačních programů a s možným způsobem implementace takového typu programu.
Annotation in English
This thesis describes the design and implementation of universal lossless archiver. It means the application, which is used to compress data that are passed into this application. It also describes the implementation of the decision-making mechanism in the archiver that provides the choice of the most appropriate compression algorithm. The readers are introduced with the problems, which are associated with creating repositories of programs and with potential way of implementation of this type of program.
Tato diplomová práce se zabývá návrhem a implementací univerzálního bezztrátového archivátoru. To znamená aplikace sloužící pro kompresi dat, která jsou jí předána. Také popisuje implementaci rozhodovacího mechanismu, který v archivátoru zajišťuje volbu nejvhodnějšího kompresního algoritmu. Práce čtenáře seznamuje s problematikou spojenou s tvorbou archivačních programů a s možným způsobem implementace takového typu programu.
Annotation in English
This thesis describes the design and implementation of universal lossless archiver. It means the application, which is used to compress data that are passed into this application. It also describes the implementation of the decision-making mechanism in the archiver that provides the choice of the most appropriate compression algorithm. The readers are introduced with the problems, which are associated with creating repositories of programs and with potential way of implementation of this type of program.
Vypracujte literární rešerši na téma univerzální bezztrátové archivátory.
Analyzujte požadavky na archivátory tohoto druhu.
Seznamte se s dostupnými nástroji pro tvorbu aplikací tohoto typu a vyberte nejvhodnější z nich.
Navrhněte vnitřní strukturu aplikace a uživatelské rozhraní.
Implementujte do svého programu vhodné kompresní algoritmy a rozhodovací mechanismy pro rozhodování použití konkrétního komprimačního postupu na libovolný typ dat.
Otestujte a porovnejte různé archivátory dle výsledného kompresního poměru a doby komprese a dekomprese.
Navrhněte možnosti dalšího vývoje a zdokonalení.
Research Plan
Vypracujte literární rešerši na téma univerzální bezztrátové archivátory.
Analyzujte požadavky na archivátory tohoto druhu.
Seznamte se s dostupnými nástroji pro tvorbu aplikací tohoto typu a vyberte nejvhodnější z nich.
Navrhněte vnitřní strukturu aplikace a uživatelské rozhraní.
Implementujte do svého programu vhodné kompresní algoritmy a rozhodovací mechanismy pro rozhodování použití konkrétního komprimačního postupu na libovolný typ dat.
Otestujte a porovnejte různé archivátory dle výsledného kompresního poměru a doby komprese a dekomprese.
Navrhněte možnosti dalšího vývoje a zdokonalení.
Recommended resources
Morkes, D. Komprimační a archivační programy. Brno: Computer Press, 1998. 177 s. ISBN 80-7226-089-8
Salomon, D. Data Compression: The Complete Reference. 4 Ed. London: Springer-Verlag London Limited, 2007. 1092 s. ISBN 18-4628-602-6
Salomon, D. - Giovanni M. Handbook of Data Compression. 5 Ed. London: Springer-Verlag London Limited, 2010. 1359 s. ISBN 978-1-84882-902-2
Nelson M. - Gailly, J. The Data Compression Book. 2 Ed. New York: M&T Books, 1995. 541 s. ISBN 1-55851-434-1
Salomon, D. A Concise Introduction to Data Compression. London: Springer-Verlag London Limited, 2010. 310 s. ISBN 978-1-84800-071-1
Sayood, K. Introduction to Data Compression. 2 Ed. USA: Academic Press, 2000. 636 s. ISBN 1-55860-558-4
Blanchette, J. - Summerfield, M. C++ GUI Programming with Qt 4. 2 Ed. Westford, Massachusetts: Trolltech ASA, 2008. 752 s. ISBN-13: 978-0-13-235416-5
Summerfield, M. Advanced Qt Programming: Creating Great Software with C++ and Qt 4. Westford, Massachusetts: Addison-Wesley, 2010. 536 s. ISBN 978-0-321-63590-7
Recommended resources
Morkes, D. Komprimační a archivační programy. Brno: Computer Press, 1998. 177 s. ISBN 80-7226-089-8
Salomon, D. Data Compression: The Complete Reference. 4 Ed. London: Springer-Verlag London Limited, 2007. 1092 s. ISBN 18-4628-602-6
Salomon, D. - Giovanni M. Handbook of Data Compression. 5 Ed. London: Springer-Verlag London Limited, 2010. 1359 s. ISBN 978-1-84882-902-2
Nelson M. - Gailly, J. The Data Compression Book. 2 Ed. New York: M&T Books, 1995. 541 s. ISBN 1-55851-434-1
Salomon, D. A Concise Introduction to Data Compression. London: Springer-Verlag London Limited, 2010. 310 s. ISBN 978-1-84800-071-1
Sayood, K. Introduction to Data Compression. 2 Ed. USA: Academic Press, 2000. 636 s. ISBN 1-55860-558-4
Blanchette, J. - Summerfield, M. C++ GUI Programming with Qt 4. 2 Ed. Westford, Massachusetts: Trolltech ASA, 2008. 752 s. ISBN-13: 978-0-13-235416-5
Summerfield, M. Advanced Qt Programming: Creating Great Software with C++ and Qt 4. Westford, Massachusetts: Addison-Wesley, 2010. 536 s. ISBN 978-0-321-63590-7