Recently, the pressure for fast processing and efficient storage of large data with complex relations increased beyond the capability of traditional databases. Typical examples include iPhone applications, computer aided design - both electrical and mechanical, biochemistry applications, and incremental compilers. Serialization, which is sometimes used in such situations is toriously tedious and error prone. In this book, Jiri Soukup and Petr Machacek show in detail how to write programs which store their internal data automatically and transparently to disk. Together with special data structure libraries which treat relations among objects as first-class entities, and with a UML class-diagram generator, the core application code is much simplified. The benchmark chapter shows a typical example where persistent data is faster by the order of magnitude than with a traditional database, in both traversing and accessing the data. The authors explore and exploit advanced features of object-oriented languages in a depth hardly seen in print before. Yet, you as a reader need only a basic kwledge of C++, Java, C#, or Objective C. These languages are quite similar with respect to persistency, and the authors explain their differences where necessary. The book targets professional programmers working on any industry applications, it teaches you how to design your own persistent data or how to use the existing packages efficiently. Researchers in areas like language design, compiler construction, performance evaluation, and -SQL applications will find a wealth of vel ideas and valuable implementation tips. Under http://www.codefarms.com/book, you will find a blog and other information, including a downloadable zip file with the sources of all the listings that are longer than just a few lines - ready to compile and run.
Jiri Soukup studied both electrical engineering and mathematics, and has a PhD degree in technical cybernetics. He spent his career programming and designing algorithms for applications ranging from control of a mining enterprise to connecting millions of transistors on a VLSI chip. He was the manager of the Bell Labs M.H. team that developed the LTX2 layout system - the software which was instrumental for the design of the first 32-bit microprocessor on a single chip and became the workhorse of the chip production in Bell Labs for about a decade. Later, Jiri became one of the founders of Cadence Design Systems, a VLSI CAD company in San Jose, CA. He is now the President of Code Farms Inc., a Canadian company providing methodology and tools for better software design. He is also a sea captain, beekeeper, and a licensed trapper. Petr Machacek is an experienced C/C++/C#/Java programmer with a master degree from the Czech Technical University, Prague. After working for various companies on information systems and image processing, Petr started his own company in 2012, specializing in image processing and medical applications. In this context, he uses persistent intrusive data structures for high-performance and application-specific data management. Besides all this, he is also a beekeeper, half-marathon runner, and amateur photographer.
Jiri Soukup, Petr Machacek
Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
Date of Publication
Computing: Professional & Programming
Place of Publication
Country of Publication
Springer-Verlag Berlin and Heidelberg GmbH & Co. K