<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團論壇開發語言培訓專區Delphi程序設計 → 最近關于delphi python java 和設計的一些想法


      共有7448人關注過本帖樹形打印

    主題:最近關于delphi python java 和設計的一些想法

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    最近關于delphi python java 和設計的一些想法  發帖心情 Post By:2010-12-14 10:50:19

    每個程序員就是藝術家,每個系統構架師都是哲學家

    這段時間我一直在思考各種設計上面的問題,原來一直寫delphi和一些其他腳本語言。對java一直沒有碰,這段時間看的比較多,也寫了一些小的程序,過程不說,1個月下來感覺只有四個字:不堪重負 ToT,可能你們還記得前段時間我抱怨了一下java的類庫之間的復雜關系,讓我完全沒有任何的線索

    隨即切換到python重新實現一些功能,也許是有了前面的經驗,寫的輕松了很多,雖然這段時間我連很多python的基本用法都沒學完,比如那個lambda函數,新奇呀~

    用twisted寫了一個server,10多行代碼,java那邊用mina還沒有實現邏輯就已經4、5個java文件了,當然大部分代碼ide都幫忙寫了,不過java類庫之間的邏輯關系復雜程度可見一斑。

    以我對這兩個語言的了解程度,還不足以對他們評頭論足,我發現他們在設計思路上有一些很有意思的地方,寫下來,大家看看。

    delphi聞名是他的RAD套路,還有就是所謂的“優雅”,因為寫出來的代碼規范而且可讀性強,不過很遺憾,delphi的rad貌似也沒有太大的進展了,至于用“begin end”來保持的優雅,我持保留意見,呵呵。期待后續的版本能繼續發揚RAD,這次支持泛型和unicode就很不錯,要是再多些語法糖就好了,恩啊恩啊。delphi仍然是我windows平臺下開發的不二選擇。
    python的設計思路很像delphi,走的是rad的套路,用python寫東西的時候,明顯感覺到是拋開了詳細設計的,就是一切都面向實現功能,他的語言設計是鼓勵你這么做的。python強調了函數和模塊,他的面向對象我到反而覺得有點半調子,不過無所謂,這些是意識形態上的東西,能解決問題就好。
    而用java的時候,我還沒開始寫一行邏輯代碼,已經被迫實現了4、5個接口了,而且我在沒有寫完之前,還不能把他們整合起來,也不知道是對是錯。心里懸著,感覺不舒服。

    很有意思的是,python的思路很接近我最初寫程序的時候,什么都不知道,只要把東西做出來就好的那種思路,所謂初級程序員的做法。不過這個不是全部,python的開發過程非常強調自省,也就是重構,說白了就是重新寫。而且目前的開發中更加注重的是在各種測試的情況下進行重構,也就是是有保障的重構,而非程序員一時性起,寫了也不知道對不對。我個人覺得這個是符合邏輯的,在沒有了解一個東西的時候做再多的設計都是空的,我原來也嘗試過,也看到過開發中到最后,完全和最初的設計沒有關系。失去控制,全靠程序員自己努力,更要命的是,牛B的SA還不愿意承認……

    python可以做到這一點,是因為python代碼很精簡,程序員寫作的時間很短,就算是重構這個時間消耗也比其他語言低很多,我覺得這是python做的最好的地方,他給這種“初級程序員”的開發模式提供了一個升級的可能

    這段時間也很關心各種語言的效率,不可否認,java的jvm虛擬機是一個很厲害的東西,java的執行效率在高端機器上和C在一個水平,一個可以自動管理內存的語言做到這個地步,實在讓人驚嘆。同時java的開發效率比C又高了不知道多少倍。所以在服務器端java可以說當之無愧的王者。

    這次準備放棄java轉而用python的主要原因其實是考慮到開發效率和rad的需求。前段時間考慮的方案是用java寫框架和效率要求嚴格的地方,然后用jython實現邏輯和效率要求不高的地方,不過這個想法首先被jython的超級低效率擺了一道,這個低效非常明顯而且不是幾十倍的問題,
    然后自己感覺java的各種代碼之間各種交互很多,設計上找不到rad的感覺,我也會設計很多接口,封裝,然后工廠,不知道是不是被引誘了呵呵。
    然后就是這次做的東西有探索的性質在里面,所以我自己是沒有太多經驗的,整個開發過程我預算了1次完全的重構和數次的迭代的重構。

    現在我基本上決定用python寫原型,先跑,然后如果效率上出了問題,profile一下,找問題的地方,用psyco編一下,如果還不行,就直接寫C的擴展或者用jtype在java里面做好,python里面調用。個人感覺python比較合適我的思路,也許是因為我不是一個合格的SA,我只是一個程序員圖片點擊可在新窗口打開查看
    多process的情況我也推翻了我原來的設計,盡量減少process之間的狀態共享,把程序都往單進程順序執行上堆,直到我決定寫erlang的哪一天,呵呵

    對于general purpose的框架來說,開發者一定是對這個領域很有經驗的,所以可以抽象出一套比較好的邏輯框架,然后實現成各種接口,工廠,封裝,分層來保證靈活性,這個在python的twisted庫里面也是一樣的,虧他們居然用python半調子的面向對象搞整了這么多東西出來。不過還好他們暴露出來的接口并不復雜,也就是一些回調和事件
    不過在面臨專業領域的問題的時候,這種一來就高層建模的方式或許就有點行不通了,因為沒有人敢站起來拍胸膛說,這個項目所有需求我都了解了。而且大部分需求都在根據時間變化。所以導致開始建模的那些封裝到后面可能會變成完全不適用或者需要大量適配才能使用的東西


    另外這段時間突然感覺各種語言蜂擁而起,而起很多都有自己的明確的主題,
    比如erlang對并發的處理簡直就是一絕,
    scala在jvm上的表現,整合的非常好,
    還有我最喜歡的跨平臺pascal:lazarus今天也剛剛出了0.9.26版本完美支持mac平臺的新界面框架(好像叫carbon把),跨平臺的native程序開發估計也只有他能做了,
    ruby新版的效率居然比python2.6還要高,好吧我承認,我沒有選ruby和jruby是因為不太喜歡他的語法- -,感覺啰嗦
    groove是瞄準ruby去的,不過現在還差一截

    最近看到有句話很喜歡:程序設計有兩種思路,一種是設計的很簡單以至于明顯沒有缺陷,一種是設計的很復雜以至于沒有明顯的缺陷 圖片點擊可在新窗口打開查看

    以上是這段時間的一些感受,水平很有限,拉拉雜雜一堆,行家眼里看來肯定是漏洞百出,說出來讓大家笑話了。歡迎拍磚

    支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

    返回版面帖子列表

    最近關于delphi python java 和設計的一些想法








    簽名
    主站蜘蛛池模板: 国产无套内射久久久国产| 日本精品视频一区二区三区| 强奷乱码中文字幕| 亚洲欧美在线播放| 精品四虎免费观看国产高清午夜| 怡红院美国分院一区二区| 亚洲人成在线播放网站| 狠狠久久精品中文字幕无码 | 亚洲第一网站男人都懂| 精品亚洲成a人无码成a在线观看| 国产欧美日产中文| _妓院_一钑片_免看黄大片| 成人国产精品一区二区视频| 亚洲一本之道高清乱码| 欧美高清国产在线观看| 国产成人高清亚洲一区app| r18bl各种play高h| 日韩资源在线观看| 亚洲综合区图片小说区| 跳d放在里面逛超市的视频| 国内精品久久久久久无码不卡| 亚洲va韩国va欧美va天堂| 欧美黑人疯狂性受xxxxx喷水| 嗯啊公交车上被群j| 赵云腹肌下的紫黑巨龙h| 国产精品成人无码免费| 一个人看的www在线观看免费| 最近免费韩国电影hd视频| 体育生开房互操| 阿娇被躁120分钟视频| 国产精品青青青高清在线| 一级日本强免费| 成全视频在线观看免费高清动漫视频下载 | 精品久久久久久中文字幕大豆网| 国产成人亚洲精品91专区手机 | 出租房换爱交换乱第二部| 色吊丝中文字幕| 在线观看网站黄| 中文字幕久精品免费视频| 日本三级香港三级人妇99| 亚洲va国产日韩欧美精品|