Open-source Tangram version released

Source: Internet
Author: User
Tags xslt

Tangram Open-source version releasedAfter an unforgettable busy schedule, Tangram's first full version was eliminated. Looking back at the past few years in Beijing, I have been deeply touched. developing products is a tough task. That's right! My experience in body and body makes me deeply aware that brave people are brave but fearless. This unforgettable experience strengthened my confidence. In fact, it is very difficult to fulfill a wish with your heart. In the plan, Tangram is divided into three versions: Open Source, free edition, and commercial edition. The Open Source version has just been submitted:
Https://sourceforge.net/projects/tangramproject;
Http://www.codeplex.com/Tangram
China:

Http://www.webaddin.com

Http://www.zdnet.com.cn/download/windows/swinfo/0,2008005031,39289318s,00.htm
The free version of Tangram will be released within the next week. In terms of its meaning, Tangram is a Chinese folk intellectual game: Qiqiao. Its basic starting point is to combine complex geometric patterns with the simplest seven types of geometric images. This simple game shows the Chinese people's plain understanding of the complex world in ancient times. In fact, the ancient philosophers of China have long reflected their basic understanding of the material world. Therefore, there are also the saying that "gold", "Wood", "water", "fire", "Earth" and other five elements interpret the world. In addition, the gossip theories such as "Tai Chi", ", and" "also reflect the same effect. This is the so-called" five-line gossip ". In the face of today's software world, due to a long period of accumulation, today is a colorful world compared to 10 years ago. In the middle of 1990s, the rise of the first generation of Internet, so that people fully appreciate the magic of software changing the world, especially Java, COM ,. the maturity of net, HTML, and other software forms makes today's world more and more people feel that these mysterious things have become part of people's daily life and work. In many aspects, software development is not a high-tech factor. Therefore, finding more effective software construction methods has always been the goal of people. Just as people have experienced in exploring the mysteries of the material world, from the molecular theory to the atomic theory, people have summed up the periodic table of the elements of mendelev. This is an excellent job, this allows people to see the structural order of the material world from a new perspective. At the same time, it also shows people a basic way to understand the world, that is, in the face of complicated phenomena, it is necessary to "collect" independent objects to form a basic "basis". Based on this "basis", we should look for deduction rules for relevant phenomena. The Tangram framework is the product of such thinking. for software development on Windows platforms, traditional COM technology is becoming increasingly popular. NET technology and classic C ++ technology have been developing on their own tracks, and each has its own loyal support group. Undoubtedly, each field has its own strengths. Therefore, there is no indication of who will exit the stage of history. The basic idea of Tangram is to allow developers to freely combine the above three aspects in a certain sense: we expect the cview objects from C ++, ActiveX objects from com, and those from. the managed object of net forms a public software "base", allowing developers to form descriptive software combinations in a consistent manner, which is the basic starting point of the Tangram framework. Considering the method of software development, the idea of Tangram is not to be eliminated. The main point is to try to simplify the method of software construction. Let's look at a basic software framework: if we are based on the conventional C ++ Development Scheme, it is hard to imagine the development process of this architecture. To a certain extent, the development of this framework is not technically difficult, but there is no doubt that it is a very tedious task. From today's perspective, most developers cannot get rid of the limitations of code to construct such a complex software framework. Like the modern industrial impact workshop, new ways of thinking will surely bring about new changes, which make people believe that today's construction technology will build a building on dozens of floors, it is neither a great thing nor a great craft. Similarly, the key to solving the problem is not the technical breakthrough of the code, but the progress of the solution. After careful observation, we find that, as shown in the software framework, it can be fully described through highly readable XML. Therefore, the focus of thinking is naturally changed. This change is just like XSLT changing the face of XML technology. One of the key ideas of Tangram is that, the logic of how to interpret an XML Description and convert it into a real GUI completely removes the limitations of the Code circle, freeing people from the depth of the software building. The initial obstacle to using Tangram may be an issue of "thinking". For a developer who has been in the coding state for a long time, Tangram may be a blind spot in thinking. Maybe, it is hard for developers to realize that the improvement of the description scheme will greatly simplify their development work and greatly expand their control space. XML is very suitable for describing hierarchical structures. This is an indisputable fact. From the perspective of web development practices, many complex websites are basically implemented through XML technology, in particular, the emergence of XSLT technology makes the XML position more and more consolidated. Generally, for a "plane user area", developers usually want to "plan" it using two types of structure: one is "split form "; the other is the paging form of various styles. For modern developers, it is no stranger to "architecture" of a specific user region using the forms of these two types of architecture actions. We can see that large software frameworks such as Eclipse and Visual Studio are already using a large number of such means to enhance the overall expressiveness of the software. In terms of framework behavior, if the structure of these two types of architecture behavior can be "normalized", then the basic technical line will be roughly laid. Based on this consideration, we first construct a basic Tangram XML node, which is described as follows: <tangramnode name = "objname" caption = "OBJ caption" id = "objid" cnnid = "tangramlitetabwnd. tangramconne" VBA = "0" vbaid = "0" width = "446" heigh = "143" tag = ""/> This XML section provides a basic Tangram Element structure, the name attribute is the name of a Tangram node for the development stage to retrieve objects. This name is unique and the ID attribute is used to represent the Object ID value, whether it is a COM framework or. NET framework, all need this ID to create the object, the cnnid attribute is prepared for the c ++ object, this attribute indicates an object library, it can contain any number of C ++ cview objects, and the rest of the attributes will be explained in succession. For split forms with the "cut" function, we can describe them in the XML subnode mode. A typical split form can be described as follows: <tangramnode name = "SP2" id = "tangramsplitter" cnnid = "tangramconnector" caption = "SP2"> <row> <tangramnode name = "FM2" id = "ID" width = ""596" heigh = "77"> </tangramnode> <tangramnode name = "FM3" id = "ID2" width = "596" heigh = "109"> </tangramnode> </row> <tangramnode name = "fm4" id = "ID" width = "596" heigh = "77"> </tangramnode> <tangramnode name = "fm5 "id =" I D2 "width =" 596 "heigh =" 109 "> </tangramnode> </row> </tangramnode> from this node, This is a split form with two rows and two columns, XML can make the description of this form very clear, and further clearly give the precise description of the object at each location, for the "Paging" structure of various styles, similar descriptions can be used. In fact, a paging window can be abstracted as a split form with one row and n columns, in terms of geometric representation, the UI style is different. Within the Tangram framework, the paging form is a special splitting form. From the above analysis, we can see that technically only the above two types of nodes can form a primitive Foundation, and now a key technical problem is: how can we deal with the iteration and combination of these nodes? Technically, if we regard various paging structures as special cases for splitting forms, the key to the technology is to split the form's "Composite Structure ", once this problem is solved, as long as there are enough paging styles and a world of rich UI frameworks, it comes down to the establishment of a descriptive rule, this is a key part of the Tangram framework and the key to freeing the UI architecture logic from code constraints. For a Tangram node without subnodes, we can regard it as a Tangram "atom", which is equivalent to a basic geometric element. In this way, the motivation of Tangram is very clear, A basic starting point is that these atoms need to compose many different UI worlds. This is both a simple idea and an ambitious idea. In the logic of TANGRAM, the splitting form represents a composite structure and is also a "generalized" abstraction, that is, it contains various "tabbed" forms with different styles. In the world of TANGRAM, XML descriptions formed by the combination of such "generalized" splitting are called the "Tangram framework", which is independent of each other, it will be converted to a common cframewnd object. In other cases, it may be implemented as a part of another framework, or, it is dynamically created on the "Site" of another atom. In this sense, Tangram is a dynamic connection to the world. The technical implementation of split forms reflects the concept of dynamic recursion based on description. Within the Tangram engine, this is an excellent embodiment of XML technology. Tangram's construction of the "framework" begins with the most primitive "Atom". This construction process is embodied in a visual design process of "What you see is what you get, since we get rid of the code, we cannot let developers fall into complicated XML writing logic. Therefore, all things come with the end of the design process, related XML descriptions are naturally formed. In terms of structure, the two most critical objects in TANGRAM are: 1. Tangram "Atom". We call it the basic Tangram element. In the real software world, these atoms, will be implemented as a variety of C ++ view objects, ActiveX control objects or.. Net object. These various things will form a rich and colorful Software world. 2. Tangram "framework", which is essentially a combination of split forms, frameworks and composite frameworks formed by a combination of frameworks, it is equivalent to building that supports different styles in the world. Developers do not have to worry about how these frameworks are created. They only need to care about what services these frameworks can provide, atomic-level elements become the "things" that developers must care about ". In the Tangram engine, the Tangram framework as a composite structure is a "set" of software functional units. Generally, we map it to a "document template" object in the sense of VC ++. Therefore, as a document embodiment, this type of object is stored in a special XML file. We call this type of object XTML, which is similar to HTML files, the composite behavior between frameworks is similar to the hyperlink behavior in HTML files. In TANGRAM, the composite behavior of frameworks is implemented through "Asynchronous pluggable protocols, by consistently providing this software "HYPERLINK" capability, we hope to improve the combination capability between software components in essence to form a public and extensive public software resource space, improve the construction capability of the software from a new level. Can Tangram change the developer's software construction model? This is a subtle problem. From the perspective of the slave machine, we hope to achieve this effect. From the result, a large number of codes are replaced by clear XML descriptions, which cannot be denied, as a matter of fact, there have been changes. Let's take a look at the effects of Tangram: 1. You can generate a expressive software framework without the need for coding: 2. View software composition in Web Development Mode-powerful software hyperlink: 3. Internet-based software expansion, a special case, ie band expansion: 4. A flexible and robust desktop "side bar" system: the open-source Tangram framework can only contain a subset of all functions of Tangram due to authorization protocol restrictions. For example, cannot provide support for Microsoft Visual Basic for application. As a simplified framework, Tangram opensource only provides support for COM technology, however, it is sufficient to ensure that developers can develop powerful and robust application systems. The following is an open-source screen: Provide valuable comments.

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.