yangxiang

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            8 隨筆 :: 0 文章 :: 73 評論 :: 0 Trackbacks

          2010年6月15日 #

          [英文出處]:21 Laws of Computer Programming
          [譯文出處]:外刊IT評論


          任何一個有經驗的程序員都知道,軟件開發遵循著一些不成文的法則。然而,如果你不遵循這些法則也并不意味著會受到懲罰;相反,有時你還會獲得意外的好處。下面的就是軟件編程中的21條法則:

          1. 任何程序一旦部署即顯陳舊。
          2. 修改需求規范來適應程序比反過來做更容易。
          3. 一個程序如果很有用,那它注定要被改掉。
          4. 一個程序如果沒用,那它一定會有很好的文檔。
          5. 任何程序里都僅僅只有10%的代碼會被執行到。
          6. 軟件會一直膨脹到耗盡所有資源為止。
          7. 任何一個有點價值的程序里都會有至少一個bug。
          8. 原型完美的程度跟審視的人數成反比,反比值會隨著涉及的資金數增大。
          9. 軟件直到被變成產品運行至少6個月后,它最嚴重的問題才會被發現。
          10. 無法檢測到的錯誤的形式無限多樣,而能被檢測到的正好相反,被定義了的十分有限。
          11. 修復一個錯誤所需要投入的努力會隨著時間成指數級增加。
          12. 軟件的復雜度會一直增加,直到超出維護這個程序的人的承受能力。
          13. 任何自己的程序,幾個月不看,形同其他人寫的。
          14. 任何一個小程序里面都有一個巨大的程序蠢蠢欲出。
          15. 編碼開始的越早,花費的時間越長。
          16. 一個粗心的項目計劃會讓你多花3倍的時間去完成;一個細心的項目計劃只會讓你多花2倍的時間。
          17. 往大型項目里添加人手會使項目更延遲。
          18. 一個程序至少會完成90%,但永遠完成不了超過95%。
          19. 如果你想麻煩被自動處理掉,你得到的是自動產生的麻煩。
          20. 開發一個傻瓜都會使用的軟件,只有傻瓜愿意使用它。
          21. 用戶不會真正的知道要在軟件里做些什么,除非使用過。
          posted @ 2010-09-30 09:50 『 Y X 』 閱讀(269) | 評論 (0)編輯 收藏

          Eclipse快捷鍵按了沒有反應可能是和其他程序設置的快捷鍵沖突了,如果確認沒有沖突,可以看看是不是如下問題。

          在工具欄(Toolbars)上面點擊右鍵,選擇“Customize Perspective...”

          看看Command Group Availability 里面有沒有勾選你所設置的快捷鍵的分組,如果沒有就勾上,再試試快捷鍵能否使用。


          posted @ 2010-08-24 09:55 『 Y X 』 閱讀(3442) | 評論 (0)編輯 收藏

              當為遺留系統加入spring時,經典問題就是遺留系統需要引用spring管理的bean。幸好spring有機制可以處理這些。

              建一個類實現ApplicationContextAware接口,有一個引用ApplicationContext的靜態成員,然后,遺留系統需要引用spring管理的bean的地方,使用這個類。

          1.比如:我這里建一個SpringContext類

          package net.blogjava.chenlb;

          import org.springframework.beans.BeansException;
          import org.springframework.context.ApplicationContext;
          import org.springframework.context.ApplicationContextAware;

          /**
           * 此類可以取得Spring的上下文.
           * Spring 使new方法創建的對象可以引用spring管理的 bean.
           * 2007-10-18 上午11:12:33
           * 
          @author chenlb
           
          */
          public class SpringContext implements ApplicationContextAware {

              
          protected static ApplicationContext context;
              
              
          public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
                  context 
          = applicationContext;
              }

              
          public static ApplicationContext getContext() {
                  
          return context;
              }
          }


          2.然后在spring配置文件里加

          <bean id="springContext" class="net.blogjava.chenlb.SpringContext"></bean>


          3.其它類中引用

          MyBean myBean = (MyBean) SpringContext.getContext().getBean("myBean");


          4.如果老是寫SpringContext.getContext().getBean("...");麻煩,可以建一個工廠類來返回你要 的bean

          package net.blogjava.chenlb;

          public class MyServerFactory {

              
          public static MyBean1 getMyBean1() {
                  
          return (MyBean1) SpringContext.getContext().getBean("myBean1");
              }
          }



          原文:http://chenlb.javaeye.com/blog/135897

          posted @ 2010-06-15 19:22 『 Y X 』 閱讀(318) | 評論 (0)編輯 收藏

          <%@ page import="org.springframework.web.context.support.WebApplicationContextUtils" %>
          <%@ page import="org.springframework.web.context.WebApplicationContext" %>
          <%
              WebApplicationContext context =    WebApplicationContextUtils.getRequiredWebApplicationContext(this.getServletContext());
              SomeBean bean=(SomeBean)context.getBean(SomeBean.class);
          %>

          posted @ 2010-06-15 19:18 『 Y X 』 閱讀(429) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 政和县| 金门县| 临安市| 基隆市| 临潭县| 武胜县| 色达县| 资阳市| 镇原县| 阳信县| 讷河市| 东乡族自治县| 泰和县| 阿巴嘎旗| 泰兴市| 子洲县| 虞城县| 永顺县| 平南县| 延津县| 济南市| 周宁县| 邮箱| 茂名市| 汤阴县| 阿拉善右旗| 高雄市| 越西县| 青州市| 华容县| 旬邑县| 清原| 灌南县| 靖宇县| 稷山县| 武功县| 华池县| 屏边| 普陀区| 会理县| 六枝特区|