Excerpt from the book World of Movable Objects

Reading time: 5 minute
...

📝 Original Info

  • Title: Excerpt from the book World of Movable Objects
  • ArXiv ID: 1011.2042
  • Date: 2010-11-10
  • Authors: 원문에 저자 정보가 명시되어 있지 않습니다. —

📝 Abstract

This book is about the transformation of screen objects into movable and resizable and about the design of applications entirely on the basis of such elements. The screen objects have a wide variety of shapes; they can be either graphical objects or controls; there are solitary objects and very complex objects parts of which are involved in individual, synchronous, and related movements. Objects can be involved in forward movements and rotation; they can be resized and reconfigured; all these movements and situations are considered. On the basis of total movability, the new type of programs - user-driven applications - are designed. These applications continue to work according to their main purposes, but the whole control of WHAT, WHEN, and HOW must appear on the screen is passed from designers to users.

💡 Deep Analysis

Figure 1

📄 Full Content

Some time ago I wrote two articles to describe the main results of my work throughout the last four years. The first of them appeared in the late fall of 2009 and was called "On the theory of moveable objects" [5]. The second article appeared in spring of 2010 and was called "User-driven applications" [6]. These papers came in a row with my previous articles [7 -11] and summarized the results of years of work. Both papers [5,6] were accompanied by their own demonstration programs and the full codes for both projects. I tried to make those articles as short as possible because they were also published on the site www.codeproject.com, where the average and expected publications are usually short. Even with all my efforts, each of those two articles was around 30 pages. It was the limit below which I could not go; even such volume required the removal of many important explanations. As a result, both texts were left without some needed pieces, though they gave the main idea of my work. To reduce the volume of those articles, I often included into the texts some remarks on the code, but without putting the code itself next to the explanation. The codes can be looked through separately because all of them are available, but this process requires much more efforts from the readers. I got some complaints about it, but I knew these things before publishing the articles, so I had only to agree with those remarks.

The two articles [5,6] are strongly related and represent the halves of one general problem and its solution. The first article was about “How to do…”; the second was about “What would happen if the previous results were used”. The division in two parts was done only due to the technical (publishing) problems; in reality those two things must be always regarded as a single theory. So, this is the main idea of this book: to introduce the whole theory without any divisions and to do it in a more detailed form.

The book is divided into two big parts which correspond to those two articles, but there is some problem in such presentation. The book has a linear structure with the chapters going one after another. Any next chapter can use the explanations from the previous part of the book and introduce something new. At the same time, very few real algorithms have a linear structure; the structure of a tree is much more common in programming than anything else. Each new piece opens the way for a new branch or even several branches of ideas. It would be nice to have the book with the same tree structure, but I do not know how to write such a book, so I continue to write this one in a traditional linear way.

The book is accompanied by a program with a lot of examples. Even from the beginning, the examples are designed according to all the ideas of the user-driven applications, but the explanation of these ideas and the discussion of how they were born and why the applications must be designed in such a way appear much later, in the second half of the book. It cannot be done in another way: before talking about the ideas of user-driven applications I have to demonstrate the design of all the elements, without which such applications simply cannot exist. I would suggest one thing. If you are not familiar with those two articles [5,6], look through them first and at the programs that come with them. (Applications and articles are available at www.sourceforge.net .) Look at them at least in a quick way; this will give you some understanding of the whole area of discussion. But be aware that even if later you see the similar examples from the articles in the book, the later versions from the book usually have some significant additions.

This book is about two things:

• The design of movable / resizable objects.

• The development of user-driven applications.

The two theories can be looked at as the independent things because:

• The design of movable objects is not influenced in any way by the afterthoughts of where these objects are going to be used. • The design of user-driven applications is independent of the real algorithm for constructing movable objects.

At the same time there is a very strong relation between the two things, as the user-driven applications can be designed only on the basis of movable / resizable objects and all the extraordinary features of such applications are the results of their construction exclusively and entirely of movable objects. The movable / resizable objects can be used by themselves in the existing applications of the standard type, but only invention of an algorithm turning an arbitrary object into movable / resizable allowed to design an absolutely new type of programs -user-driven applications.

Often enough, when I tell people that I have thought out an algorithm of making movable any screen object, a lot of people are a bit (or strongly) surprised: “What are you talking about? Is there anything new in it? We have seen objects moving around the screen for years and years?”

📸 Image Gallery

cover.png

Reference

This content is AI-processed based on open access ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut