• 沒有找到結果。

In this chapter, we will compare our plug-in with CodeSmith and CodeCharge which we have introduced in Chatper 2. The comparison will from the point of convenience to compare these three translation toolkit. Before the table of the comparison, we will describe the advantages and drawbacks each of them.

5.1. CodeCharge

If people are developing data-driven interactive Web sites or enterprise Internet and Intranet systems, CodeCharge Studio provides a way to build users applications with support for virtually all databases, web servers and web technologies. The advantages and drawbacks are listed as follow:

„ Advantage:

1. Variety Languages – the target language CodeCharge supported are ASP, JSP, PHP, Perl, ColdFusion, and ASP.NET.

2. Graphic User Interface (GUI) workspace – It is a WYSIWYG editor.

Users interact with the GUI workspace of the IDE during the process of using CodeCharge Studio. It is convenient for users.

„ Drawbacks:

1. Incomplete external editor – Although CodeCharge provides the IDE for users to edit the program, it is not convenience for users who want to use the IDE they favorite to edit the program. The process of using the external editor is to trigger the editor users like in the CodeCharge

IDE. After users finish the program with their favorite editor, they have to back the IDE of CodeCharge for translation.

Unnecessary installation – As we mention above, users who want to translate the program, they have to return to the IDE of CodeCharge. That means all the translation is based on the IDE of CodeCharge. If users who like to use the IDE they favorite to edit the program, use the translation ability of CodeCharge only, they have to install the entire program of CodeCharge (including the IDE interface).

5.2. CodeSmith

The syntax of the templates used for Codesmith is very similar to ASP.NET. In ASP.NET, users can use delimiters to separate code that will execute on the server from HTML and JavaScript code that will be sent to the browser. In Codesmith, users use delimiters to separate the code executed by the template from the code that will be generated.

„ Advantages:

1. Well Combination – Users can operate CodeSmith in Visual Studio .Net as a custom tool. This custom tool effectively allows CodeSmith to simulate generics in that you can have a template and create specialized instances of that template by adding additional property sets.

2. Known Languages – CodeSmith can let users to edit the program in C#, VB.NET or JScript.NET languages. Users can choose the language they familiar with, and use the language to edit the program.

There is no need to learn a new language.

„ Drawbacks:

1. Inconvenient UI Design – CodeSmith don’t provide a visual environment for users to edit the User Interface of the application.

Users have to edit the UI in the text mode.

2. No Emulator – When people finish their programs, there is no emulator provided. Users can’t get the result from the emulator immediately.

Table 5-1 Comparison of the translation toolkits

Our plug-in CodeCharge CodeSmith

Operation Easy Easy Normal

Combination Good Bad Normal

Installation Easy Easy Easy

UI Design Good Good None

Emulator Yes Yes No

Target IDE VS .Net 1. FrontPage

2. DreamWeaver 3. Itself own

1. VS .Net 2. Itself own

Chapter 6 Conclusion and Future Work

6.1. Conclusion

In the above chapter, we have introduced all the things about this paper. First of all, we have described the translation toolkit developed by our lab colleague. The motivation of this toolkit is similar with the concept of Java. The author wants the concept “Write Once, Run Anywhere” being realized in the mobile environment. The usage of the toolkit is to translate the document written in the language we defined, and users can assign the target language they want to translate the document. The translated document can be executed in the mobile environment according to the language users assign. This is the usage of our toolkit.

But there is a drawback about this toolkit. When users edit the document in the language we defined, they need to work in the environment of characters. There is no IDE for users to edit the document conveniently. In this paper, our motivation is to provide a convenient IDE with users. A lot of IDE have been published in the world, there is no need to develop the IDE our own for the language we define. We can simply embed our toolkit into the famous IDE. Users who want to edit the document we define can install our toolkit, use the IDE they are familiar to edit the document.

Since our motivation is convenience, the process of embedding our toolkit should be as simply as possible. The conveniences of embedding process are described as follow:

„ Easy-to-Use:

Users who want to edit the document in our language can use the IDE they like. The target IDE we choice in our implementation is Visual Studio .NET. We package our toolkit as an executable file, users only have to download the file, install it into the IDE, and they can use the toolkit our developed. The operation of using the IDE is the same as before, there is no need to change the behavior of operating the IDE. Users can operate the IDE as usual, and they can edit the document in our language.

„ Easy-to-Install

Because our toolkit is a third-party development, users have to install our toolkit before they use it. We package our toolkit as an executable file for users to install our toolkit conveniently. The installation process is simply click the button “Next” (if users don’t want to change any default setting), and the installation process is finished. There is no need to set any class path, or connecting to any SDK after install our package. This is very convenient. After installation, our toolkit has been embedded into the IDE, and users can use our toolkit easily.

According to the characteristics we have described above, it is convenience for users no matter in the process of operation or the installation. The method of operating the IDE is the same as before. We embed our translation toolkit into the IDE, users operate the IDE as usual. The IDE embedded with our toolkit can generate the PUML code according to the dragged controls on the form. After users

have installed our plug-in, they can convenience edit the document in our language, and reduce the repeat action of developing.

6.2. Future Work

After we package our toolkit as a plug-in, users can convenience install and use our toolkit. But the target IDE in our implementation is Visual Studio .NET now, there still have lots of famous IDE published. We wish the target IDE that embedded with our toolkit could be supported more widely and the developing works can be more easily, so we propose a few future works that enhance our plug-in more complete.

We describe as follow:

„ Increase the number of IDEs:

As we mention above, the target IDE we focus to embed our toolkit now, is Visual Studio .NET which is an IDE developed by Microsoft. There are still many famous IDE Published in the world, and users not operate the IDE we focus to edit the program. In other word, there are still lots of people not use Visual Studio .NET to develop the program. Since we hope users to operate the IDE they familiar to edit the document in the language we define, we can enhance our plug-in suitable for embedding into other IDEs. This is the one part that we can still enhance.

„ Improve the combination of the IDE:

Although the IDE embedded with out toolkit can edit the document in the language we define, but the controls that supported by the IDE are limited to the basic User Interface controls. With the device computing power increasing, the application executed in the mobile device becomes more and more complex; therefore, the function of our toolkit will be

enhanced. So, the combination between the IDE and our toolkit must be improved too. In this reason, we have to make our plug-in more combined with the IDE.

In order to make our plug-in more convenience and complete, we hope to strengthen the parts we described above, make our development more complete.

Bibliography

[1] 沈聖博, "XML-based Mobile Application Development Kit", 國立交通 大學,碩士, 民國 93 年 6 月

[ 6 ] XSL Transformations (XSLT) Version 1.0, W3C Recommendation 16 November 1999

http://www.w3.org/TR/xslt

[ 7 ] Microsoft Visual Studio Developer Center http://msdn.microsoft.com/vstudio/

http://www.yessoftware.com/products/product_detail.php?product_id=1 [12] Nikola MitroviĆ and Eduardo Mena, "Adaptive User Interface for Mobile

Devices", IIS Department, University of Zaragoza, Maria de Luna 3, 50018 Zaragoza, Spain

[13] Johan Plomp, Robbie Schaefer, and Wolfgang Mueller, "Comparing Transcoding Tools for Use with a Generic User Interface Format", Extreme Markup Languages 2002 Conference

[ 14 ] MSDN , Visual Studio.NET Extensibility

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart / html/vstchExtensibilityArticles.asp

[ 15 ] Johnson Brian , Skibo Craig , “Inside Visual Studio .NET", Redmond, Washington :Microsoft Press,c2003.

[ 16 ] Chris Von See and Nitin Keskar, "XSLT Developer's Guide"

[ 17 ] XML Path Language (XPath) Version 1.0, http://www.w3.org/TR/xpath, W3C Recommendation 16 November 1999

[ 18 ] Anna Maria Jankowska, and Andrzej Dabkowski, "Content Adaptation Tag Library – An Approach for User Interface Adaptation for Different Devices", European University Viadrina, Chair of Business Informatics

[ 19 ] Kris Luyten and Karin Coninx, "An XML-based runtime user interface description language for mobile computing devices", 2001 Springer-Verlag [ 20 ] 吳仁凱, "A Visualized Kit for Developing Applications on Multiple Mobile

Devices ", 國立交通大學,碩士, 民國 94 年 6 月

[ 21 ] Les Smith , “Writing Add-Ins for Visual Studio .NET” , APress 2002 [ 22 ] Microsoft , Visual Studio Industry Partner(VSIP)

http://msdn.microsoft.com/vstudio/extend/

[ 23] Microsoft Visual Studio .NET , Microsoft Java Language Conversion

Assistant

http://msdn.microsoft.com/vstudio/downloads/tools/jlca/

[ 24 ] Code Generation Network

http://www.codegeneration.net/tiki-index.php

[ 25 ] David De Loveh, Dan Maharry, Bill Sempf, Don Xie , “Effective Visual Studio .Net ” , WROX PRESS 2002

[ 26 ] Kathleen Dollard , “Code Generation in Microsoft .NET” , APress 2004 [ 27 ] Jack Herrington , “Code Generation in Action” , MANNING 2003

相關文件