隨筆-57  評論-129  文章-0  trackbacks-0
          我一直都想搞一個XML的模板引擎,大凡非xml的模板風格,第一感覺就是那么的不爽。
          可是CommonTemplate例外。

          CommonTemplate處處為程序員考慮周到的漂亮的語法風格,確實非常誘人。
          具體的語法我就不一一列舉了,大家可以到他的官方網站去翻閱。

          挑幾個亮點介紹一下:
          1. for循環的空處理,相信曾經麻煩了不少程序員吧。

            現在好了,CT支持如下語法:
               $for{}
               <tr>
                  <td>1</td>
                  <td>2</td>
                  <td>3</td>
               </tr>
               $forelse
               <tr>
                  <td colspan="3">沒有數據</td>
               </tr>
               $end

          2. 大膽的關鍵字利用。


            <html>
                
            <body>
                    $if{users != null && users.size > 0}
                    
            <table border="1">
                        $for{user : users}
                        
            <tr>
                            
            <td>${for.index + 1}</td>
                            
            <td>${user.name}</td>
                            
            <td>${user.coins}</td>
                        
            </tr>
                        $end
                    
            </table>
                    $end
                
            </body>
            </html>


            大家看這段代碼。一般來說,for這種常用關鍵字是不好用作id的,但是這里作為默認的循環狀態對象的id。既解決了塊對象存放的問題,又不會引起其他命名的沖突。一個字,妙!!!!

          3. 其他漂亮的特征:


            注釋版語法外套,方便于測試數據填充及可視化編輯。
            單一的語法規則,方便解析與擴展。

            等等。。。。


          好了,贊嘆之余還是給出一點點遺憾:

          boolean 運算有點丑陋。
          我個人更期望 js的boolean運算風格,沒有必要一碰到boolean 運算就返回true ? false
          我們完全可以返回一個更有意義的值,比如,我更期望這個語句能如我所愿的執行。
           
          ${ variable|| "默認值"}

          當能,如上支持,CT是有的,它的寫法是
           
          ${ variable | "默認值"}

          但是,我感覺,這個語法就有點復雜了,也不那么直觀。
          一般來說| 是按位取或,是位運算符,這里這個用法,跳躍的確實有點大,較難接受的。
          posted on 2007-11-29 21:28 金大為 閱讀(1446) 評論(5)  編輯  收藏 所屬分類: Java

          評論:
          # re: 挺一個中國程序員開發的漂亮的模板引擎:CommonTemplate 2007-11-30 08:48 | dennis
          ${ variable | "默認值"}

          你把他理解成正則不就完了,呵呵  回復  更多評論
            
          # re: 挺一個中國程序員開發的漂亮的模板引擎:CommonTemplate 2007-11-30 08:57 | 小獻
          不錯,挺適用的  回復  更多評論
            
          # re: 挺一個中國程序員開發的漂亮的模板引擎:CommonTemplate 2007-11-30 09:50 | 金大為
          @dennis
          也是,呵呵  回復  更多評論
            
          # re: 挺一個中國程序員開發的漂亮的模板引擎:CommonTemplate 2007-12-04 10:29 | 梁飛
          謝謝金兄的建議,已按照JS的風格改寫了||運算符
          since: 0.7.5  回復  更多評論
            
          # re: 挺一個中國程序員開發的漂亮的模板引擎:CommonTemplate 2008-01-16 18:15 | 大衛
          不知道有沒有太多的bug :)  回復  更多評論
            
          主站蜘蛛池模板: 石门县| 襄汾县| 鹿泉市| 元朗区| 彩票| 丰城市| 共和县| 南康市| 刚察县| 郓城县| 贺兰县| 邳州市| 合川市| 湘西| 炉霍县| 阳曲县| 原平市| 梨树县| 漯河市| 漳平市| 石屏县| 林芝县| 昌邑市| 安丘市| 双辽市| 德江县| 榆林市| 商洛市| 南昌市| 湟源县| 若尔盖县| 东港市| 疏勒县| 苍溪县| 南靖县| 开江县| 西贡区| 镇坪县| 丰原市| 钟祥市| 白水县|