.com  

 

R2J PhysicSolver Vectors, Matrices Rigid Body Kinematics
Refactoring With Relations
by Sergio Pissanetzky                 Who is Sergio Pissanetzky?
Includes code sample
Refactoring With Relations discusses refactoring with support from the relational model of  computer programs. Code in all programming languages needs refactoring, and a multi-language refactoring engine is needed to  refactor that code. Refactoring is about structure, and the book is about structure. The book proceeds to discuss the structure of code, argues that it needs to be identified, separated from language constructs, and encapsulated into a container. The encapsulated structure is preserved in a pristine state and serves as an invariant point of reference for the refactoring transformations.

The book defines "bad" code as one with a damaged structure and "good" code as one with a properly encapsulated and logically sound structure. The book proposes the relational model as the container for the structure of the program and to serve as a language-independent, non-object-oriented repository with sufficient information to support refactoring. Relations are covered as a fundamental mathematical tool used to describe structure. The model can be created from existing code by a specialized parser, and a sparse matrix partitioning algorithm can create the refactored classes by recursively encapsulating user types. The combination of the model and the algorithm makes automatic polyglot refactoring of computer code possible. The model provides for integration of refactoring tools and development tools into one platform.

The book also demonstrates that deep refactoring converts "bad" code into Strong Ownership code, a programming style described in the book, and demonstrates that the need for refactoring may be  reduced by following the Strong Ownership prescriptions during development. The book includes many practical examples, presents experimental evidence, discusses various applications and possible implementations, and covers details of the process of refactoring with relational support, as well as the conversion from the model to final object-oriented code.

Relational support for refactoring is a new concept. The production of tools will take time, meanwhile, developers are advised to mind Strong Ownership techniques. This is an 83-page eBook in PDF format presenting refactoring in a new light and a much larger scale. Downloads are provided and a page sample is available.
Scientists: get this book for free here.  
View a sample of this eBook. The sample includes the front cover, back of the front cover, Preface, Table of Contents, Index, and a few selected pages. Please note that the internal hyperlinks and content links are not enabled in the sample.
Frequently Asked Questions. Frequently Asked Questions about Refactoring with Relations.
Buy from Amazon.com Download only.
Download Code H20060304 Code H20060304 is referenced from Section 4.3 of the book, "A Case Study in Deep Refactoring". The code is in C++, and it is available as a zip file with 194 files with extensions .h and .cpp.
Home Go back home
WebMaster@SciControls.com