Hello, LVE, you wrote: LVE> the Subject is actual for developers of various editors, a CAD and games. Too then I will impart experience, to be exact I will write once again too most that already wrote repeatedly. To begin with I will describe programming paradigms existing in With ++ from a box because not from their box it is even more. 1. Procedural programming 2. The functional programming 3. Object-oriented programming 4. The generalized programming (C templates ++) Now, as to object linking: 1. In compile time (compile time) 2. During execution (runtime) Each paradigm implements the variants of binding, and objects in this case the conditional concept, we tell so it is the data and methods of operation with them. Object Management Group (OMG) and others research for a long time already methods of floppy object management but if to generalize there are only two approaches: 1. Date transmission 2. Transmission of methods Date transmission it that follows principle CRUD, that is REST, SQL and other. Transmission of methods accordingly XML-RPC, CORBA and so on. Both that and another allows to transfer the data or methods, but it becomes in essence different methods. Further we pay attention to classification of computing systems: to Carry out date transmission or methods it is possible to address, for example, different methods to operative storage (a stack, a heap), on tcp/ip and so forth. Accordingly and speed of operation will differ very strongly. Simply addressing to property of object (date transmission) or causing a method (transmission of methods) we already we make a choice in favor of this or that mode of work. Further we talk about two specific platforms, it.NET and QT. The first that would be desirable to tell that with.NET it is necessary to dump on Qt if it would be desirable to acquire in one possibilities and thus not to lose in others. But basically who worked as that with this or that it will be clear about what further speech goes. At the heart of many classes a certain root class named object as the reflection is supported lies. If to take Qt reviewing it is possible to begin with meta-obektoj systems. If it is necessary to create high-speed producing binding in compile time the generalized programming with the same templates of a C ++ perfectly approaches. During execution time it is possible to transfer interfaces, properties, methods and signals-SLOTS (analog of events). Let it and not so quickly also works somewhere on polymorphism, somewhere on switches (see generated moc files), but opens ample opportunities. Whether thus does not play a special role similar objects immediately in the runtime program are sewn up or connected by means of plug-ins being dynamic libraries. Thus it is reached already at this level, and thanks to a reflection nothing hinders to connect other methods of date transmission or methods over an existing layer. All it adds flexibilities, but does not relieve of tiresome writing of components. Now, as to books, in my private library of carefully selected books there is Buch Gradi (not including older issuings): 1. Object-oriented design with examples of application 2. The Object-oriented analysis and designing 3 issuing 3. Unitized development process of the software 4. UML 2 issuing But on architecture I would recommend the User guide Fowler Martin "Architecture of corporate program applications". It about enterprise, than as a matter of fact the big programs combines also are.