看板 Soft_Job 關於我們 聯絡資訊
※ 引述《Lordaeron (Terry)》之銘言: : : 後面那兩個是不是真的就快我不太確定,只是有文件宣稱,我沒用過。 : Python vs : perl : http://benchmarksgame.alioth.debian.org/u64q/perl.php : java : http://benchmarksgame.alioth.debian.org/u64q/python.php ...... : 純比較,有興趣的人自已玩玩吧. 岔回原文好了。我不太想提別人的成功案例多漂亮,因為那些案例是累積了多少 個人的多少個人時做出來的。而你我呢,一天頂多8個人時。 我用python工作並且製作產品,最爽的部分就在於XML的處理。我要處理的XML檔案 動則上GB的尺寸。XML規格不詳,只能看情況,一件歸一件。主要的處理方式,是 自己定義需要截取哪些欄位資料,拿出來另存為CSV。 path = [] for event, node in xml.etree.ElementTree.iterparse(File, events=('start', 'end')): if node == 'start': path.extend([node.tag]) if node == 'end': if '/'.join(path) == 'xxx/yyy/zzz': yield take_values(node) path = path[:-1] node.clear() 以上述的程式為核心,寫出來之後交出去。交出去的東西,就是所謂「產品」。 這樣,需求滿足,他高興,我也高興,程式也不會因為資料太大就當掉。 當然這是所謂的「另存新檔」的類型,是IO-bound,但不算資料分析, 效能方面,就給他用線性速度就能接受了。有什麼不滿意嗎? 沒什麼不滿意的,因為,這是工作,而不是我個人的作品。 我覺得,就好像在機車行修車,就好好修車,不要幻想你修過的引擎會升級為 噴射機的引擎。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.159.130 ※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1413051676.A.0C5.html
drkkimo: 如果你的例子是說明python被拿來作什麼 那ok ,如果是來 10/12 02:33
drkkimo: 說明pyhond作什麼事有優勢的話,這個例子 就算每次都 10/12 02:34
drkkimo: 是case by case,用java來作會有比較麻煩或不好嗎? 10/12 02:35
yauhh: 很早下班,是不是優勢?有效實現邏輯,是不是優勢? 10/12 02:36
drkkimo: 這就是我想問的 用java來寫這個需要的時候會比用python 10/12 02:38
drkkimo: 久很多嗎? 10/12 02:38
drkkimo: 時候=時間 打錯 10/12 02:38
yauhh: Java沒有寫得跟python一樣快啊 10/12 02:38
drkkimo: 我是覺得叫二個各熟j和p的人來寫這個 花的時間不會差的 10/12 02:40
yauhh: 同樣是python,也要想一下要用哪種XML工具會做得比較快。 10/12 02:40
drkkimo: 太多(也許p可以少打一點字) 這也關係到我搞不清楚的另 10/12 02:41
drkkimo: 一件事 以前是寫C++的人覺得用java就輕鬆多了 但現在 10/12 02:41
yauhh: 當然啊,假如你在Java環境中一下子就能想好程式, 10/12 02:42
drkkimo: 常聽到寫python的人說java好麻煩 寫java明明就比寫C++ 10/12 02:42
drkkimo: 幸福多了吧  10/12 02:43
drkkimo: 意思是寫py的如果去寫寫C++應該就會說j好用了 10/12 02:46
yauhh: 但我的經驗,在python是根本不熟的時候,想一想、寫一寫, 10/12 02:46
yauhh: 突然就寫完了。當然這我相信前提是我有functional program- 10/12 02:47
yauhh: ing的基礎,有加成。但是,Java方面,同樣不夠熟的情況, 10/12 02:47
yauhh: 則不如使用python時這樣自由自在。Java手側翻了、讀了, 10/12 02:48
yauhh: 寫完了還要擔心是不是漏抓了什麼Exception。 10/12 02:49
drkkimo: maybe,我二個都有在寫(雖然需要寫p的時機少非常多)可能 10/12 02:50
drkkimo: 寫p之前j就寫了很久 所以感受不到什麼p好寫的好處 10/12 02:51
drkkimo: 不過哪個開發快真的要找二個各熟它們 實力也差不多的 10/12 02:52
drkkimo: 人來比較才會有參考性一點 10/12 02:53
hl4: py要寫得快,要多看別人怎麼寫,如果只會基礎語法自然寫不快 10/12 04:09
yauhh: 是嗎?在不熟的情況下,我自己摸就很快寫完了。 10/12 10:39
yauhh: 還有,我想提的是,以一個imperative語言來說,我說python 10/12 10:49
yauhh: 可以實現「邏輯」,所指的是包括classic logic。因為語法簡 10/12 10:50
yauhh: 單,副作用自己控制,做起來真的是先把程式語法先丟在一旁 10/12 10:51
yauhh: 但是用Java可不一樣了,你得先把程式結構搞定,然後才有 10/12 10:51
yauhh: 剩下的力氣去想重點的資料操作。 10/12 10:52
yauhh: 這不是語言熟起來寫多快的問題,而是語言讓你有多少時間 10/12 10:53
yauhh: 抓住重點。 10/12 10:53
dritchie: 有些人 Java 寫起來就真的比寫 Python 快阿... 不能確定 10/12 11:12
yauhh: 就說了快不是重點 10/12 11:46
yauhh: 我倒寧願在python的速度中,因為以python語言來看,我可以 10/12 11:47
yauhh: 把它當作imperative,也可以把它當作object-oriented, 10/12 11:48
yauhh: 也可以當作functional。獨孤九劍一體八式,但貴在應用。 10/12 11:50
dritchie: 我說的寫起來快是指開發時間 10/12 12:33
Lordaeron: 不管你寫多快,它就是跑不快,所以用法都跟PERL相同. 10/12 13:40
Lordaeron: 這就是現實. 10/12 13:40
pest: Hello World跑再快也是Hello World而已 醒醒啊~ 10/12 14:07
mepowerlmay: 華山論劍 孤獨的是自己 10/12 16:55
Lordaeron: 因為台灣人都只寫HELLO WORLD. 10/12 19:57
qoo1991: 樓上你確定台灣人只寫hello world? 10/12 20:39
PoorLoser: 我都寫 This is a book. 10/12 20:49
cyclone350: yauhuu太主觀了吧...這case用其他語言應該開發速度也 10/13 00:02
cyclone350: 不會比python慢。 10/13 00:03