English  |  正體中文  |  简体中文  |  Post-Print筆數 : 27 |  Items with full text/Total items : 109952/140887 (78%)
Visitors : 46296204      Online Users : 1246
RC Version 6.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
Scope Tips:
  • please add "double quotation mark" for query phrases to get precise results
  • please goto advance search for comprehansive author search
  • Adv. Search
    HomeLoginUploadHelpAboutAdminister Goto mobile version
    政大機構典藏 > 資訊學院 > 資訊科學系 > 學位論文 >  Item 140.119/67306
    Please use this identifier to cite or link to this item: https://nccur.lib.nccu.edu.tw/handle/140.119/67306


    Title: AspectW:剖面導向之例外處理與重試機制
    AspectW: an Aspect-Oriented Catch and Retry
    Authors: 高沛功
    Kao, Pei Gogn
    Contributors: 陳恭
    Chen, Kung
    高沛功
    Kao, Pei Gogn
    Keywords: Exception
    Exception handling
    Try-and-Catch
    AOP
    Catch-and-Retry
    Exception
    Exception handling
    Try-and-Catch
    AOP
    Catch-and-Retry
    Date: 2013
    Issue Date: 2014-07-07 11:08:46 (UTC+8)
    Abstract: 雖然絕大多數的現代程式語言都有嚐試與補獲(try-and-catch)的例外處理機制,提供開發人員撰寫模組性高的例外處理程式碼,既可以立即處理例外狀況,也可以將例外傳遞(propagate)到系統其他模組。但是很多例外情況是暫態的(transient),發生後,應用程式是有可能從例外狀況恢復(recovery)過來,而不必啟動例外處理的程序。例如:分散式系統在進行網路連線時,可能因為網路一時不穩定而失敗,但稍停幾秒後再進行連線就可以了。於是就有學者倡議擴充例外處理機制,增加補獲與重試(catch-and-retry)的功能。本研究採用剖面導向(aspect-oriented)的觀點,參考AspectF的方法來實作一個輕量級的補獲與重試模組,AspectW,讓開發人員可以“流利(fluent)介面”的方式輕鬆撰寫例外捕獲與重試的程式碼,達到了讓開發人員不必更動主功能邏輯程式碼就能簡單地加入補獲與重試的功能。
    Most modern programming languages support try-and-catch mechanism that enables developers to write modular exception handling code which can not only process exceptions immediately but also propagate them to the other modules in the system. However, many exceptions are transient, when occurred, the application is likely to recover from the exception, thereby rendering it unnecessary to start up the exception handling code. For example: during a network connection in a distributed system, you may fail due to network instability moment, suffice to wait for a few seconds and then re-connect it. Thus, some scholars initiate to expand the exception handling mechanism, and proposed catch-and-retry mechanism. This thesis takes an aspect-oriented point of view, and adapts the AspectF library to implement a lightweight level catch-and-retry library, AspectW, so that developers can use the “fluent interface” approach to easily write exceptions capture and retry code. As a result, developers do not have to modify the main logic code and could simply add catch-and-retry code to handle exceptions well.
    Reference: 【1】 Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, John Irwin. (June 1997). Aspect-Oriented Programming. Published in proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland. Springer-Verlag LNCS 1241. June 1997.
    http://www.cs.ubc.ca/~gregor/papers/kiczales-ECOOP1997-AOP.pdf, May 2014
    【2】 陳恭,「剖面導向程式設計(AOP/AOSD)簡介」, 政大資科系, Last revised: May 14, 2007
    http://www.cs.nccu.edu.tw/~chenk/AOP-intro.pdf, May 2014
    【3】 Emre , Benjamin Livshits, Madanlal Musuvathi (October 2009). CatchAndRetry: Extending Exceptions to Handle Distributed System Failures and Recovery, Microsoft Research. PLOS ’09, October 11, 2009, Big Sky, Montana, USA. Copyright 2009 ACM 978-1-60558-844-5/09/10
    http://research.microsoft.com/en-us/um/people/livshits/papers/pdf/plos09.pdf, May 2014
    【4】 Bruno Cabral, Paulo Marques (Sep. 2009). Implementing Retry - Featuring AOP. 4th Latin-American Symposium on Dependable Computing (LADC`09), September 2009
    http://pmarques.dei.uc.pt/papers/bcabral_pmarques_ladc09.pdf, May 2014
    【5】 系統架構設計 第14章,和春技術學院
    http://el.fotech.edu.tw/localuser/kjyang/992/SA/ch14.ppt, May 2014
    【6】 AOP入門,Spring技術手冊第四章
    http://www.dotspace.idv.tw/Book/chap4.pdf, May 2014
    【7】 Matthew D. Groves (June 2013). AOP in .NET - Practical Aspect-Oriented Programming - chapter 1,2, Copyright 2013 Manning Publications. ISBN: 9781617291142
    http://www.manning.com/groves/, May 2014
    【8】 Aspect-oriented programming, Wikipedia, modified on 1 Feb. 2014.
    http://en.wikipedia.org/wiki/Aspect-oriented_programming, May 2014
    【9】 Omar Al Zabir (11 Jun 2011). AspectF Fluent Way to Add Aspects for Cleaner Maintainable Code.
    http://www.codeproject.com/Articles/42474/AspectF-Fluent-Way-to-Add-Aspects-for-Cleaner-Main, May 2014
    【10】 Fluent interface, wikipedia
    http://en.wikipedia.org/wiki/Fluent_interface , May 2014
    【11】 如何使用AspectJ Compiler開發AspectJ程式 (2006-05-10)
    https://sites.google.com/site/swankyhsiao/aspectj-with-ajc, May 2014
    【12】 Dominik Stein (2002). An Aspect-Oriented Design Model Based on AspectJ and UML – chapter 3: AspectJ. submitted to the Department of Business Arts, Economics, and Management Information Systems, University of Essen, Germany.
    http://www-stud.uni-essen.de/~sw0136/wissensArbeiten/DiplomarbeitDIIDominikStein.pdf, May 2014
    【13】 Dominik Stein, Stefan Hanenberg, and Rainer Unland (2002). An UML-based Aspect-Oriented Design Notation For AspectJ. Institute for Computer Science, University of Essen, Germany. AOSD 2002, Enschede, The Netherlands. Copyright 2002 ACM 1-58113-469-X/02/0004.
    http://www.dawis.wiwi.uni-due.de/uploads/tx_itochairt3/publications/StHaUn_AspectOrientedDesignNotation_AOSD_2002.pdf, May 2014
    【14】 Mohsen (February 23, 2008). Using AspectJ and Java Annotations to Try Again.
    http://zoftware.blogspot.tw/2008/02/using-aspectj-and-java-annotations-to_23.html, May 2014
    【15】Arulkumaran Kumaraswamipillai (July 2007). Creating Java custom annotations with Spring aspectj AOP
    http://java-success.blogspot.tw/2013/07/creating-java-custom-annotations-with.html?utm_source=tuicool, May 2014
    【16】 C#程式語言,維基百科。
    http://zh.wikipedia.org/wiki/C♯ , May 2014
    【17】 Windows 7,維基百科。
    http://zh.wikipedia.org/wiki/Windows7, May 2014
    【18】 Microsoft Visual Studio,維基百科。
    http://zh.wikipedia.org/wiki/Visual_Studio_2010, May 2014
    【19】 .NET Framework,維基百科
    http://zh.wikipedia.org/wiki/.NET框架, May 2014
    Description: 碩士
    國立政治大學
    資訊科學學系
    101971018
    102
    Source URI: http://thesis.lib.nccu.edu.tw/record/#G0101971018
    Data Type: thesis
    Appears in Collections:[資訊科學系] 學位論文

    Files in This Item:

    File SizeFormat
    101801.pdf2929KbAdobe PDF2830View/Open


    All items in 政大典藏 are protected by copyright, with all rights reserved.


    社群 sharing

    著作權政策宣告 Copyright Announcement
    1.本網站之數位內容為國立政治大學所收錄之機構典藏,無償提供學術研究與公眾教育等公益性使用,惟仍請適度,合理使用本網站之內容,以尊重著作權人之權益。商業上之利用,則請先取得著作權人之授權。
    The digital content of this website is part of National Chengchi University Institutional Repository. It provides free access to academic research and public education for non-commercial use. Please utilize it in a proper and reasonable manner and respect the rights of copyright owners. For commercial use, please obtain authorization from the copyright owner in advance.

    2.本網站之製作,已盡力防止侵害著作權人之權益,如仍發現本網站之數位內容有侵害著作權人權益情事者,請權利人通知本網站維護人員(nccur@nccu.edu.tw),維護人員將立即採取移除該數位著作等補救措施。
    NCCU Institutional Repository is made to protect the interests of copyright owners. If you believe that any material on the website infringes copyright, please contact our staff(nccur@nccu.edu.tw). We will remove the work from the repository and investigate your claim.
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - Feedback