江湖的筆記

          積累比獲取更重要

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            6 隨筆 :: 1 文章 :: 0 評(píng)論 :: 0 Trackbacks

          2016年6月2日 #

              從事軟件開(kāi)發(fā)相關(guān)工作近八年,將自己形容成一名老兵。做開(kāi)發(fā)幾年,帶團(tuán)隊(duì)幾年。頭幾年編碼量較大,后幾年斷斷續(xù)續(xù)寫(xiě)點(diǎn)東西,大多時(shí)間以指導(dǎo)別人開(kāi)發(fā)為主。究個(gè)人能力而言,不算特別出色的程序員。但因工作性質(zhì)等原因,對(duì)軟件系統(tǒng)產(chǎn)品整體的把握和產(chǎn)品設(shè)計(jì)工作還是有一些心得。這幾年的工作,既有項(xiàng)目管理,也有架構(gòu)設(shè)計(jì)與分析設(shè)計(jì),還有產(chǎn)品設(shè)計(jì)。對(duì)軟件開(kāi)發(fā)的感覺(jué)相對(duì)比較宏觀,但也還是有一些方面有較為深入的了解。
              今天談?wù)勡浖_(kāi)發(fā)方法,主要原因在于最近觀察到新入行做外包開(kāi)發(fā)的小伙子們,似乎都不太注重方法這類(lèi)知識(shí)的積累。個(gè)人理解,軟件開(kāi)發(fā)是一門(mén)技術(shù)活,其直觀特點(diǎn)應(yīng)是一門(mén)偏工程類(lèi)的工作。既然為一門(mén)工程,必然有方法可循。整個(gè)行業(yè)發(fā)展至今,各個(gè)細(xì)分領(lǐng)域都有不少經(jīng)典的理論。如項(xiàng)目管理工程,架構(gòu)方法,產(chǎn)品設(shè)計(jì)方法等等。這些理論都是在工程實(shí)現(xiàn)的過(guò)程中可以借鑒和使用的方法學(xué)知識(shí),是提升工程效率和質(zhì)量的武器裝備。軟件的實(shí)現(xiàn)過(guò)程,不僅僅是一個(gè)將計(jì)算機(jī)語(yǔ)言轉(zhuǎn)換為信息系統(tǒng)的過(guò)程。它不僅包含了一類(lèi)信息流,數(shù)據(jù)流的抽象和組織工作和方法。還是一個(gè)用信息科技解決現(xiàn)實(shí)需求的過(guò)程。
              在外包行業(yè),代碼的重復(fù)堆疊的時(shí)間遠(yuǎn)比創(chuàng)新的結(jié)構(gòu)設(shè)計(jì)工作要多得多。有時(shí)候?yàn)榱粟s工,大量的拷貝和復(fù)制成為現(xiàn)實(shí)的選擇。但隨著從業(yè)年齡的增長(zhǎng),繼續(xù)使用這類(lèi)方法顯然不合時(shí)宜。這既不利于提高工作效率,也不利于提高軟件產(chǎn)品的質(zhì)量。大量的編碼實(shí)踐是提高軟件實(shí)現(xiàn)能力的不二選擇,但沒(méi)有軟件開(kāi)發(fā)方法的思考與積累,再多的量變也無(wú)法發(fā)生質(zhì)變。軟件產(chǎn)品千千萬(wàn),但其組織結(jié)構(gòu)與設(shè)計(jì)方法卻是大同小異。更多的關(guān)注軟件產(chǎn)品的設(shè)計(jì)方法而非語(yǔ)言實(shí)現(xiàn)形式,才能不斷提高軟件開(kāi)發(fā)水平。
              一名資深的架構(gòu)師設(shè)計(jì)或分析師編寫(xiě)代碼的速度不一定比從業(yè)兩三年的小伙子快,但其實(shí)現(xiàn)的軟件產(chǎn)品質(zhì)量絕對(duì)要比后者好得多!
          posted @ 2016-06-02 00:23 江湖 閱讀(160) | 評(píng)論 (0)編輯 收藏

          2012年10月26日 #

          ajax默認(rèn)使用UTF-8來(lái)發(fā)送中文數(shù)據(jù),因此在服務(wù)器端,需要通過(guò)類(lèi)似new String(getBytes("iso-8859-1"),"utf-8")去轉(zhuǎn)換。
          或者在發(fā)送前,使用escape處理中文數(shù)據(jù),再在服務(wù)器端進(jìn)行unescape操作。
          posted @ 2012-10-26 17:24 江湖 閱讀(188) | 評(píng)論 (0)編輯 收藏

          2009年1月10日 #

          aix下websphere不能打印中文字符,這需要設(shè)置jvm參數(shù) java -Duser.country=CN -Dfile.encoding=UTF-8 -Duser.language=zh -Dclient.encoding.override=UTF-8
          修改System.print能正常打印中文,Servlet中解析中文字符用request.getParameter("field")就可以了

          在windows下默認(rèn)是以ISO-8859-1讀入字符,所有需要用new String(request.getParameter("fields").getBytes("ISO-8859-1"))來(lái)處理中文

          當(dāng)然也可以在tomcat配置文件中修改編碼,中文的處理實(shí)際上是控制字符的讀入的編碼和輸出的編碼的問(wèn)題。
          posted @ 2009-01-10 01:44 江湖 閱讀(1402) | 評(píng)論 (0)編輯 收藏

          自己用到的一個(gè)方法,貼上來(lái)便于記憶

           1    protected  void execBatch(String procDate) throws HsException{
           2        CallableStatement cstmt=null;
           3        String onlineDay=getSysParam("OCRM_ONLINE_DATE"); //系統(tǒng)上線(xiàn)日期
           4        if(procDate.compareTo(onlineDay)<0){
           5            throw new HsException("00001","批處理日期應(yīng)該大于系統(tǒng)上線(xiàn)日期!");
           6        }

           7        try{
           8            String procName=getProcName();
           9            if(procDate.compareTo(getSysParam("OCRM_BATCH_DATE"))<=0) procName=procName.trim()+"_REDO";  //重跑批處理名稱(chēng)
          10            cstmt=dataSource.getConnection().prepareCall("{ call "+procName+" (?,?,?) }");
          11            cstmt.registerOutParameter(2, java.sql.Types.INTEGER);
          12            cstmt.registerOutParameter(3, java.sql.Types.VARCHAR);
          13            cstmt.setString(1,HsDate.dateTo8(procDate));
          14            Progress p=Progress.newInstance();
          15            p.start();
          16            cstmt.execute();
          17            p.setOff(true);  //退出
          18            int ret=cstmt.getInt(2);
          19            String reinfo=cstmt.getString(3);
          20            if(ret!=0){
          21                throw new HsException("00001","批處理執(zhí)行失敗!,"+reinfo);
          22            }

          23//            cstmt.close();
          24        }
          catch(Exception e){
          25            throw new HsException(HsErrorMsg.ERR_DB_ERROR,e.toString());
          26        }

          27    }
              
          這個(gè)函數(shù)一直到批處理結(jié)束后才會(huì)返回,因而執(zhí)行時(shí)要放在線(xiàn)程里面。
          posted @ 2009-01-10 01:31 江湖 閱讀(346) | 評(píng)論 (0)編輯 收藏

              訪問(wèn)jdbc Template查詢(xún)數(shù)據(jù)得到Map對(duì)象時(shí),在tomcat下用key值不區(qū)別大小寫(xiě),但是在wesphere下卻只能使用大寫(xiě),否則會(huì)出錯(cuò),例如map.get("user_name")要換成map.get("USER_NAME"),記住了!!
          posted @ 2009-01-10 01:26 江湖 閱讀(418) | 評(píng)論 (0)編輯 收藏

               摘要: 最近項(xiàng)目需要用到上傳文件,找了個(gè)fileupload組件,寫(xiě)了幾個(gè)類(lèi),記錄如下: 1.上傳操作配置類(lèi)  1public class UpConfig {  2    private long max_size=10*1024*1024;    ...  閱讀全文
          posted @ 2009-01-10 01:15 江湖 閱讀(359) | 評(píng)論 (0)編輯 收藏

          僅列出標(biāo)題  
          主站蜘蛛池模板: 盘锦市| 华安县| 清丰县| 揭西县| 诸城市| 山丹县| 将乐县| 临朐县| 砚山县| 乌鲁木齐县| 通许县| 攀枝花市| 鹤壁市| 金昌市| 囊谦县| 廊坊市| 泾源县| 丹寨县| 佛山市| 洛宁县| 浑源县| 竹北市| 象州县| 镇江市| 房山区| 郓城县| 睢宁县| 广汉市| 尤溪县| 宝兴县| 新巴尔虎右旗| 彰武县| 五莲县| 祥云县| 山西省| 明光市| 伊吾县| 张掖市| 阿巴嘎旗| 泗水县| 建阳市|