當初沒有用物件導向好好處理的結果就是現在要重寫(其實往某方面想,在短時間內把一份連函數呼叫都沒有的程式碼進行整理並上線其實也算不錯的成績吧XD),目前進度普普通通。
新版的權限處理系統正在茁壯當中,這次我採取物件導向的策略,和MySQL的連結作成一個物件,權限查詢系統作成一個物件,使用者清單作成一個物件等等。物件導向發揮了令人滿意的效果,程式碼看起來有條有理多了,把相關的程式碼和資料集中在一起果然是對的啊XD。美中不足的是物件內部對於資料庫的存取還是常常會出錯,就好像Windows XP下Kernel mode物件之間的關係啊orz
今天花比較久除錯的地方是Session的部份,由於我對HTTP不熟,所以對Header、Cookie機制完全缺乏了解(雖然手邊有一本HTTP Essential,可是沒有時間看orz),所以今天一直很努力找出為甚麼網頁輸出以後修改Cookie的功能就會「故障」的原因,後來休息看漫畫才想到header一定要在Content之前出現這個基本常識orz。不過後來Bug還是沒抓完就跑去看漫畫了XD
明天的話可能會去補習吧,也該準備國考了。
全文連結
星期六, 9月 30, 2006
星期五, 9月 29, 2006
共筆小怨念
之前在表決這個學期的共筆制度的時候,由於組頭人選難產,所以本學期共筆制度遂改成所謂「互審制」。差別在於,原本的組頭制在共筆寫出來以後會由班上專門負責某科目的「組頭群」負責審稿,而互審制則是寫稿的共筆小組自己審(可以組內互審,可以統一由某組員審.....方式由小組自己決定),而作為新共筆制度好不好的試金石:第一本藥理共筆和病理共筆已經發下來了。
讀了以後和周圍一些認識的人討論的結果,是真的感覺到共筆品質有下降,比如第一本病理共筆劈頭就寫「Golgi Body:製造蛋白質」,看了頗為無言。小瑕疵很多(明顯的字拼錯,如「入鈉出鈣」寫成「入納出鈣」),排版也不統一,內容上「課本補充」那些好東西也比較少。
共筆品質下降或許很多部份可歸咎於互審制的原罪,互審制是把審稿的工作分散到班上每一個人,但是畢竟班上不可能每一個人都有組頭等級的幹勁和責任感。可是這不代表現行的互審制已經最佳化,沒有改進的空間。
個人自己的感覺,現行制度最大的問題是人力編排的問題,以前組頭制,每次寫共筆至少用到三個組員加三個組頭總共六個人,但是現在互審制卻只用三個人,而且是組內互審,就算不考慮「班上每個人」和「班上每個組頭」能力平均值在統計的差異,也會有幾個問題:
1.負擔的問題
以前寫共筆會用到三個組頭加上三個寫稿人,工作由六個人分擔,現在卻由三個人包辦寫稿加審稿,每次寫共筆的每人平均工作負擔變兩倍。寫稿用了不少精神,審稿品質當然可能會下降,不是說審的人一定會亂來,但可能就沒力氣去對照課本,或是雖然很認真,但因為比較累所以可能就比較容易出錯。何況現在已經進入高年級,大家私下都很忙,一次要一個人又寫稿又審稿,可能就忙不過來了。
2.品質震盪問題
一本共筆的品質是每個組員付出心力的平均值,統計上說:取越多點來平均,平均值的震盪幅度就會比較小,比較不會大好大壞。應用到共筆製作上,每次做共筆的人數多一點,所有人都一起放水的機率就會比較小,三個人同時偷懶放水的機率永遠大於六個人同時偷懶放水的機率。人數多一點,有人放水就會有另外的人救,比較不會產生考前遇人不淑共筆爆掉的情況。以這點來看,組內互審只用三個人是不智的,寫稿和審稿應該用不同的組別,人數才比較夠。
3.互相放水問題
組內互審有個特性就是「這次稿子你審,下次換我審」或是「這次我審你,下次你審我」,這種「互相制衡」的關係非常的明確且緊密,而明確且緊密的「互相制衡」就會導致「互相退讓」,比較不是非常有責任感的組,可能就會你審我的稿鬆一點,我審你的稿也鬆一點。組頭制之下組頭都不大敢輕易退稿,何況是對「感情好 + 會一起做共筆做很久 + 下次會審你稿」的人退稿?
小結
個人的建議是做一次共筆應該用兩組共筆組,一組寫稿一組審稿。這樣基本上寫稿的寫稿,審稿的審稿。審稿人不必打字,就會有多一點的力氣更仔細抓錯或是看課本。碰到不負責任的共筆組也比較不必害怕,因為有另外一組進行救援。互相放水的情形也少點,因為這次審稿的人近期未必會被這次寫稿的人審稿,不同小團體也比較不容易因為感情和整個學期都要一起寫共筆的關係互相放水。
這樣對已經很辛苦的學藝股長會不會很麻煩?可能改變制度又要重新排班,會增加學藝的負擔。其實有個簡單的方法:就是這次寫稿人的稿,由下禮拜同一節課的共筆組進行審稿,這樣共筆排班根本不必重排,只要做個推文表決加上一只行政命令就好:「以後制度改成,這次寫的人由下次寫的人進行審稿」,就可以了。
不過這些東西目前只是個人碎碎念,或許班上同學覺得其實這樣的品質還是可以接受,沒有人想要改革,只是我自己特別龜毛,或是說其實大家只是不熟悉制度,時間久了就會上軌道,又或許班上只有很少人很不負責,大多數人做出來的共筆其實還是好共筆。甚至或許大家都有自己的準備之道(比如上課認真作筆記或是認真看課本),根本不太需要共筆。或許我的推論根本不符現實,寫稿審稿一次來其實完全不會更累,品質沒有差,或是組內的人其實都鐵面無私勇敢退稿。這些都是未定之數,還要觀察一段時間,個人認為:第一次考試應該就是對共筆好壞的重要檢驗。 全文連結
讀了以後和周圍一些認識的人討論的結果,是真的感覺到共筆品質有下降,比如第一本病理共筆劈頭就寫「Golgi Body:製造蛋白質」,看了頗為無言。小瑕疵很多(明顯的字拼錯,如「入鈉出鈣」寫成「入納出鈣」),排版也不統一,內容上「課本補充」那些好東西也比較少。
共筆品質下降或許很多部份可歸咎於互審制的原罪,互審制是把審稿的工作分散到班上每一個人,但是畢竟班上不可能每一個人都有組頭等級的幹勁和責任感。可是這不代表現行的互審制已經最佳化,沒有改進的空間。
個人自己的感覺,現行制度最大的問題是人力編排的問題,以前組頭制,每次寫共筆至少用到三個組員加三個組頭總共六個人,但是現在互審制卻只用三個人,而且是組內互審,就算不考慮「班上每個人」和「班上每個組頭」能力平均值在統計的差異,也會有幾個問題:
1.負擔的問題
以前寫共筆會用到三個組頭加上三個寫稿人,工作由六個人分擔,現在卻由三個人包辦寫稿加審稿,每次寫共筆的每人平均工作負擔變兩倍。寫稿用了不少精神,審稿品質當然可能會下降,不是說審的人一定會亂來,但可能就沒力氣去對照課本,或是雖然很認真,但因為比較累所以可能就比較容易出錯。何況現在已經進入高年級,大家私下都很忙,一次要一個人又寫稿又審稿,可能就忙不過來了。
2.品質震盪問題
一本共筆的品質是每個組員付出心力的平均值,統計上說:取越多點來平均,平均值的震盪幅度就會比較小,比較不會大好大壞。應用到共筆製作上,每次做共筆的人數多一點,所有人都一起放水的機率就會比較小,三個人同時偷懶放水的機率永遠大於六個人同時偷懶放水的機率。人數多一點,有人放水就會有另外的人救,比較不會產生考前遇人不淑共筆爆掉的情況。以這點來看,組內互審只用三個人是不智的,寫稿和審稿應該用不同的組別,人數才比較夠。
3.互相放水問題
組內互審有個特性就是「這次稿子你審,下次換我審」或是「這次我審你,下次你審我」,這種「互相制衡」的關係非常的明確且緊密,而明確且緊密的「互相制衡」就會導致「互相退讓」,比較不是非常有責任感的組,可能就會你審我的稿鬆一點,我審你的稿也鬆一點。組頭制之下組頭都不大敢輕易退稿,何況是對「感情好 + 會一起做共筆做很久 + 下次會審你稿」的人退稿?
小結
個人的建議是做一次共筆應該用兩組共筆組,一組寫稿一組審稿。這樣基本上寫稿的寫稿,審稿的審稿。審稿人不必打字,就會有多一點的力氣更仔細抓錯或是看課本。碰到不負責任的共筆組也比較不必害怕,因為有另外一組進行救援。互相放水的情形也少點,因為這次審稿的人近期未必會被這次寫稿的人審稿,不同小團體也比較不容易因為感情和整個學期都要一起寫共筆的關係互相放水。
這樣對已經很辛苦的學藝股長會不會很麻煩?可能改變制度又要重新排班,會增加學藝的負擔。其實有個簡單的方法:就是這次寫稿人的稿,由下禮拜同一節課的共筆組進行審稿,這樣共筆排班根本不必重排,只要做個推文表決加上一只行政命令就好:「以後制度改成,這次寫的人由下次寫的人進行審稿」,就可以了。
不過這些東西目前只是個人碎碎念,或許班上同學覺得其實這樣的品質還是可以接受,沒有人想要改革,只是我自己特別龜毛,或是說其實大家只是不熟悉制度,時間久了就會上軌道,又或許班上只有很少人很不負責,大多數人做出來的共筆其實還是好共筆。甚至或許大家都有自己的準備之道(比如上課認真作筆記或是認真看課本),根本不太需要共筆。或許我的推論根本不符現實,寫稿審稿一次來其實完全不會更累,品質沒有差,或是組內的人其實都鐵面無私勇敢退稿。這些都是未定之數,還要觀察一段時間,個人認為:第一次考試應該就是對共筆好壞的重要檢驗。 全文連結
星期三, 9月 27, 2006
星期二, 9月 26, 2006
天才
一個沒學過鋼琴的大學生,學六個禮拜的鋼琴可以到達什麼地步?了不起到徹爾尼一百吧。
可是最近社團來了個超級學弟,只練了六個禮拜的琴就到達了李斯特超技練習曲。
當然「天才型」和「苦練型」的鋼琴家還是聽的出差別。學弟雖然彈了「鐘」「馬采帕」等超技練習曲(我練了十六年的鋼琴還是彈不出來啊囧),但整體音樂給人的感覺,只是「以超級快的速度把手指放到正確的地方」這樣的感覺而已,只能說那位學弟具有不可思議的精確度和靈敏度,音樂性還沒展現出來。仔細看他的運指,還是可以看見初學者常見的問題,比如四五指在彈快的時候無法使力等(更讓我相信他真的只學了六個禮拜)。看他彈「鐘」真的會被他的速度和準確度嚇到,但是拿巴哈小步舞曲請他彈,他觸鍵只有初學者水準的事情馬上穿幫XD。
但撇開這些初學者特有的問題不談,這位學弟只要有好好練琴,絕對是未來的明日之星。我昨天和他會面的時候彈了蕭邦冬風給他聽,他隔天就當場彈給我看orz。因為他不懂彈冬風必備的甩腕動作,他的冬風沒有速度感,可是在一分鐘一百拍的速度下他卻能夠穩定的彈出前面幾頁。(我到達同樣的地步大概下了半年的苦功)。
社團裡面的大老們正在幫他物色老師,據傳連葉綠娜大師可能會親自出馬收他為徒,甚至可能免費教學,不過這部份還沒得到確認,可以確認的部份是葉綠娜大師的學生不敢收他。
這位學弟的名字叫做邱靜哲,我覺得值得等待(我現在一點都不懷疑蕭邦七歲就會寫波蘭舞曲=.=)。 全文連結
可是最近社團來了個超級學弟,只練了六個禮拜的琴就到達了李斯特超技練習曲。
當然「天才型」和「苦練型」的鋼琴家還是聽的出差別。學弟雖然彈了「鐘」「馬采帕」等超技練習曲(我練了十六年的鋼琴還是彈不出來啊囧),但整體音樂給人的感覺,只是「以超級快的速度把手指放到正確的地方」這樣的感覺而已,只能說那位學弟具有不可思議的精確度和靈敏度,音樂性還沒展現出來。仔細看他的運指,還是可以看見初學者常見的問題,比如四五指在彈快的時候無法使力等(更讓我相信他真的只學了六個禮拜)。看他彈「鐘」真的會被他的速度和準確度嚇到,但是拿巴哈小步舞曲請他彈,他觸鍵只有初學者水準的事情馬上穿幫XD。
但撇開這些初學者特有的問題不談,這位學弟只要有好好練琴,絕對是未來的明日之星。我昨天和他會面的時候彈了蕭邦冬風給他聽,他隔天就當場彈給我看orz。因為他不懂彈冬風必備的甩腕動作,他的冬風沒有速度感,可是在一分鐘一百拍的速度下他卻能夠穩定的彈出前面幾頁。(我到達同樣的地步大概下了半年的苦功)。
社團裡面的大老們正在幫他物色老師,據傳連葉綠娜大師可能會親自出馬收他為徒,甚至可能免費教學,不過這部份還沒得到確認,可以確認的部份是葉綠娜大師的學生不敢收他。
這位學弟的名字叫做邱靜哲,我覺得值得等待(我現在一點都不懷疑蕭邦七歲就會寫波蘭舞曲=.=)。 全文連結
星期日, 9月 24, 2006
星期五, 9月 22, 2006
內閣制
最近政壇似乎很流行內閣制,本座也覺得台灣還是適合內閣制的。
有學者主張:總統制和內閣制互有優缺點,總統制之下立法機關和行政機關有兩個獨立的民意來源,有正當性互相制衡,優點就是穩定,缺點就是國會和總統分屬不同政黨的時候施政效能容易低落。總統制更容易保障人權,因為行政和立法部門不容易聯合起來,只有立法機關制定惡法或是行政機關違法行政且司法機關為不正裁判的時候人權才容易受到侵犯。
而內閣制之下行政部門由國會推舉產生,優點是行政部門幾乎和國會保證同一政黨,政策容易通過,施政效率較高,但第一個缺點是在國會中小黨林立的情況下,會因為經常性合縱連橫而導致閣揆的更換,甚至形成所謂「閣揆潮」,導致政局不穩。第二個缺點是人權保障比較有問題,因為行政和立法容易被同一勢力掌控,不容易發揮分立制衡的功能。
不過看這幾年來台灣的政局,這種論述似乎未必成立。總統制行政立法互相獨立,被更換的機率比較低,理論上應該帶來更安定的政局,可是在台灣卻導致行政立法互相惡鬥,要說政局很穩定實在說不過去。甚至當領導人因為某些因素威信低落,而導致其號令無法被有效服從時,基於國家運作的需要,此時應該更換一個領導人,可是因為總統制極為穩定的因素,導致這個更換的動作無法被執行。
更有甚者,台灣歷次修憲,總統權責不符,國會對於行政院長沒有同意權,而對付行政院長有效的武器:倒閣,卻因為有被解散國會反擊的危險,導致動用成本太高,就算成功也不一定要的到喜歡的行政院長,因為行政院長由總統自己任命。這些現象導致行政院長的生死幾乎全操於總統一人之手。至於可以對付總統的彈劾及罷免。兩者門檻都太高不易發動,而彈劾更需要通過大法官會議的審查。而大法官又是總統提名立院同意,而台灣總統又喜灣強勢提名,或是提名「假中立、真黨友」的大法官,在外國行得通,利用公正超然大法官進行彈劾這個方法,在台灣卻因為惡質政客形同虛設。
總統單獨控制行政院長,立院對行政院長只有自殺炸彈,而對總統只能乾瞪眼。無怪乎憲法明文說行政院長對國會負責,仍然有許多學者稱台灣為總統制。如果搭配其他法律的設計,比如檢察總長過去由行政院長/總統任命,導致檢調系統對總統失靈。大法官倘若是總統黨友,可以以護憲之名行制憲之實,秒殺立院決議不費吹灰之力。監察院可以寧願讓他空轉,也不願意提名雙方均可接受的人選,左腳踩行政,右腳控司法,轉個頭可以不理立院決議,要稱為超級總統制也不為過。其實最近的政治僵局倒是把我國現行憲法的缺點全部暴露了出來,權力分立,互相制衡的設計被破壞的太嚴重了(可不是因為台灣憲法包含了中國領土這種理由)
所以如果可以把憲法修正成內閣制,對台灣應該是一件好事。如果怕修憲曠日費時,那麼加強立法院對行政院長的制衡,比如至少恢復立法院對行政院長的同意權,同時憲法、法律清楚明白明文訂定行政院長和總統的權力分界,讓國家的運作機制可以隨環境不同,在總統制和內閣制中順利來回擺盪,而不是總統有權無責,行政院長有責無權,立院決議形同具文。這樣對台灣也應該不錯。這時突然想起某有二零零八總統相者說:「憲法剛修好,不要一直改,重要的是行憲」,個人其實是不贊同的,趕快把憲法修好吧! 全文連結
有學者主張:總統制和內閣制互有優缺點,總統制之下立法機關和行政機關有兩個獨立的民意來源,有正當性互相制衡,優點就是穩定,缺點就是國會和總統分屬不同政黨的時候施政效能容易低落。總統制更容易保障人權,因為行政和立法部門不容易聯合起來,只有立法機關制定惡法或是行政機關違法行政且司法機關為不正裁判的時候人權才容易受到侵犯。
而內閣制之下行政部門由國會推舉產生,優點是行政部門幾乎和國會保證同一政黨,政策容易通過,施政效率較高,但第一個缺點是在國會中小黨林立的情況下,會因為經常性合縱連橫而導致閣揆的更換,甚至形成所謂「閣揆潮」,導致政局不穩。第二個缺點是人權保障比較有問題,因為行政和立法容易被同一勢力掌控,不容易發揮分立制衡的功能。
不過看這幾年來台灣的政局,這種論述似乎未必成立。總統制行政立法互相獨立,被更換的機率比較低,理論上應該帶來更安定的政局,可是在台灣卻導致行政立法互相惡鬥,要說政局很穩定實在說不過去。甚至當領導人因為某些因素威信低落,而導致其號令無法被有效服從時,基於國家運作的需要,此時應該更換一個領導人,可是因為總統制極為穩定的因素,導致這個更換的動作無法被執行。
更有甚者,台灣歷次修憲,總統權責不符,國會對於行政院長沒有同意權,而對付行政院長有效的武器:倒閣,卻因為有被解散國會反擊的危險,導致動用成本太高,就算成功也不一定要的到喜歡的行政院長,因為行政院長由總統自己任命。這些現象導致行政院長的生死幾乎全操於總統一人之手。至於可以對付總統的彈劾及罷免。兩者門檻都太高不易發動,而彈劾更需要通過大法官會議的審查。而大法官又是總統提名立院同意,而台灣總統又喜灣強勢提名,或是提名「假中立、真黨友」的大法官,在外國行得通,利用公正超然大法官進行彈劾這個方法,在台灣卻因為惡質政客形同虛設。
總統單獨控制行政院長,立院對行政院長只有自殺炸彈,而對總統只能乾瞪眼。無怪乎憲法明文說行政院長對國會負責,仍然有許多學者稱台灣為總統制。如果搭配其他法律的設計,比如檢察總長過去由行政院長/總統任命,導致檢調系統對總統失靈。大法官倘若是總統黨友,可以以護憲之名行制憲之實,秒殺立院決議不費吹灰之力。監察院可以寧願讓他空轉,也不願意提名雙方均可接受的人選,左腳踩行政,右腳控司法,轉個頭可以不理立院決議,要稱為超級總統制也不為過。其實最近的政治僵局倒是把我國現行憲法的缺點全部暴露了出來,權力分立,互相制衡的設計被破壞的太嚴重了(可不是因為台灣憲法包含了中國領土這種理由)
所以如果可以把憲法修正成內閣制,對台灣應該是一件好事。如果怕修憲曠日費時,那麼加強立法院對行政院長的制衡,比如至少恢復立法院對行政院長的同意權,同時憲法、法律清楚明白明文訂定行政院長和總統的權力分界,讓國家的運作機制可以隨環境不同,在總統制和內閣制中順利來回擺盪,而不是總統有權無責,行政院長有責無權,立院決議形同具文。這樣對台灣也應該不錯。這時突然想起某有二零零八總統相者說:「憲法剛修好,不要一直改,重要的是行憲」,個人其實是不贊同的,趕快把憲法修好吧! 全文連結
物件導向
學習物件導向這麼多年來,第一次深深覺得物件導向真是妙用無窮啊。
一年之前寫的班網完全沒有使用物件,那時候因為時間壓力就只想抄短線,所以採用程序導向,想到什麼功能就塞一個函式在include裡。
隨著班網的進度逐漸向前邁進,開始加入更多的函式,開始使用暫存變數,函式間開始互相呼叫,結果那些謎一般的include檔開始變成垃圾窩,一大堆地位平行的函式,加上主檔案無盡的暫時變數、又臭又長的函數呼叫,錯綜複雜的呼叫關係,天書一般自己都讀不懂的程式碼.....
套用物件導向有什麼好處?好處實在多太多了。
物件導向第一個好處,主檔案是主檔案,物件是物件,譬如把驗證使用者登入和Session控制的功能寫成一個物件,那麼原本要進行使用者登入、控管的主要檔案負擔就會輕很多。而且負責登入的頁面只需要把介面畫出來還有把收到的參數丟給物件,而物件只要負責處理傳進來的參數。如此一來,負責登入頁面的程式碼就只有介面的部份,而驗證物件則只有負責驗證物件的程式碼和變數,兩種不一樣的程式不會相互混雜,只透過容易理解、除錯的簡單介面相互溝通。程式從原本的「一坨」變成兩個均質的純物質,除錯、變更工作變得更為輕鬆。
反之,那種堅持不要用物件,堅持採用「我只要把不同類方法放在不同檔案就可以了」的人,即使勉強可以把方法移出呼叫者的檔案,但呼叫用的參數和暫時變數仍然不可能弄走,結局就是程式還是很混亂,至少至少「很多亂七八糟的變數」混合在一起的情況無法避免。
物件導向第二個好處,「物件」這種東西可以重複利用,寫程式的人,永遠不知道上頭要叫你實做什麼新功能。上頭心血來潮,吾人鞠躬盡瘁。愛用物件導向的人,隨時可以從物件之中抽出物件,什麼?上頭要交代的新功能和我們原有物件的功能類似,可是程式碼有很多細部不同?沒關係,吾人可以從現有的物件之中抽出共同的抽象物件,然後讓新的物件繼承原有的抽象物件,照樣可以快樂的實做。要擴充現有的功能?沒關係,創造新物件繼承舊物件,程式不必改太多,上頭的要求照樣快樂達成。
反之,程序導向的基本教義派這時候就會卡關,物件有繼承,可是方法沒有繼承,這時只能出動傳說中的複製貼上,讓原本已經混亂無比的函數世界加入更多的動盪不安,更難除錯,更多暫時變數。當未來不斷進行修改的時候,還容易改出怎麼抓都抓不到錯的怪程式。而且方法不能像物件一樣進行late binding,所有的重擔都壓在呼叫方法的那邊,所以程序導向的程式常常會有長串的switch或if,維護性只會隨著時間越變越差。
物件導向第三個好處是可以利用public、protected、private等關鍵字進行封裝。程式員可以把「物件」想像成「家族」,然後對每個資料和方法進行個別的設定,敏感性的資料可以設定只有同一家的才能存取,內部的「骯髒方法」可以禁止外部隨便呼叫。結果就是物件和外界可以互動的「接觸面積」大幅減少,程式自然比較不容易亂。
物件導向的「繼承」廣義而言並不只限定於狹義的父子關係繼承,「包含」也可以視為一種繼承。一個物件可以拿很多其他物件當作成員,而每個成員物件又可以拿很多別的物件當作成員,彼此之間卻因為封裝的關係,仍然顯得層次井然,容易維護、容易擴充。
比如更動課表的PHP可以包含一個「認證暨課程修改物件」,而這個「認證暨課程修改物件」可能包含很多接受呼叫用的介面函式、內部處理資料的函式、一個連接課程表的資料庫物件以及負責使用者登入控管的授權物件。而授權物件可以包含許多內部方法,可能又包含一個通往帳號密碼資料庫的資料庫物件。而資料庫物件可能包含一個Mysql連結、登入資料庫的帳號和密碼、儲存查詢結果用的暫時陣列。如果不採用物件導向,而改用程序導向來實做,那可能同一份程式碼就會有無數個不同目的的暫時變數,放密碼的、資料庫存取用的、課程相關的....以及一大堆Mysql連結,加上一大堆不同目的的函數呼叫放在一起,一下子叫資料庫,一下又存取課程表、一下又讀授權表,等會又連接新資料庫....程式想要不出錯也難。
所以想要程式好維護的看官們,下次碰到寫程式就給他來個物件導向吧!就算只有方法沒有資料也沒關係。沒有資料,以後可能有。而就算是純方法構成的物件,也可以拿來做很多好玩的事情,比如接水管(物件裡面有指向某抽象物件的指標,然後該抽象物件的抽象方法可以有很多種不同的實做,密碼學的程式庫就常常搞這種事)、或是達到更好的擴充性和存取控制、增加可維護性等等,使用物件導向能夠讓程式設計發揮到極致啊orz 全文連結
一年之前寫的班網完全沒有使用物件,那時候因為時間壓力就只想抄短線,所以採用程序導向,想到什麼功能就塞一個函式在include裡。
隨著班網的進度逐漸向前邁進,開始加入更多的函式,開始使用暫存變數,函式間開始互相呼叫,結果那些謎一般的include檔開始變成垃圾窩,一大堆地位平行的函式,加上主檔案無盡的暫時變數、又臭又長的函數呼叫,錯綜複雜的呼叫關係,天書一般自己都讀不懂的程式碼.....
套用物件導向有什麼好處?好處實在多太多了。
物件導向第一個好處,主檔案是主檔案,物件是物件,譬如把驗證使用者登入和Session控制的功能寫成一個物件,那麼原本要進行使用者登入、控管的主要檔案負擔就會輕很多。而且負責登入的頁面只需要把介面畫出來還有把收到的參數丟給物件,而物件只要負責處理傳進來的參數。如此一來,負責登入頁面的程式碼就只有介面的部份,而驗證物件則只有負責驗證物件的程式碼和變數,兩種不一樣的程式不會相互混雜,只透過容易理解、除錯的簡單介面相互溝通。程式從原本的「一坨」變成兩個均質的純物質,除錯、變更工作變得更為輕鬆。
反之,那種堅持不要用物件,堅持採用「我只要把不同類方法放在不同檔案就可以了」的人,即使勉強可以把方法移出呼叫者的檔案,但呼叫用的參數和暫時變數仍然不可能弄走,結局就是程式還是很混亂,至少至少「很多亂七八糟的變數」混合在一起的情況無法避免。
物件導向第二個好處,「物件」這種東西可以重複利用,寫程式的人,永遠不知道上頭要叫你實做什麼新功能。上頭心血來潮,吾人鞠躬盡瘁。愛用物件導向的人,隨時可以從物件之中抽出物件,什麼?上頭要交代的新功能和我們原有物件的功能類似,可是程式碼有很多細部不同?沒關係,吾人可以從現有的物件之中抽出共同的抽象物件,然後讓新的物件繼承原有的抽象物件,照樣可以快樂的實做。要擴充現有的功能?沒關係,創造新物件繼承舊物件,程式不必改太多,上頭的要求照樣快樂達成。
反之,程序導向的基本教義派這時候就會卡關,物件有繼承,可是方法沒有繼承,這時只能出動傳說中的複製貼上,讓原本已經混亂無比的函數世界加入更多的動盪不安,更難除錯,更多暫時變數。當未來不斷進行修改的時候,還容易改出怎麼抓都抓不到錯的怪程式。而且方法不能像物件一樣進行late binding,所有的重擔都壓在呼叫方法的那邊,所以程序導向的程式常常會有長串的switch或if,維護性只會隨著時間越變越差。
物件導向第三個好處是可以利用public、protected、private等關鍵字進行封裝。程式員可以把「物件」想像成「家族」,然後對每個資料和方法進行個別的設定,敏感性的資料可以設定只有同一家的才能存取,內部的「骯髒方法」可以禁止外部隨便呼叫。結果就是物件和外界可以互動的「接觸面積」大幅減少,程式自然比較不容易亂。
物件導向的「繼承」廣義而言並不只限定於狹義的父子關係繼承,「包含」也可以視為一種繼承。一個物件可以拿很多其他物件當作成員,而每個成員物件又可以拿很多別的物件當作成員,彼此之間卻因為封裝的關係,仍然顯得層次井然,容易維護、容易擴充。
比如更動課表的PHP可以包含一個「認證暨課程修改物件」,而這個「認證暨課程修改物件」可能包含很多接受呼叫用的介面函式、內部處理資料的函式、一個連接課程表的資料庫物件以及負責使用者登入控管的授權物件。而授權物件可以包含許多內部方法,可能又包含一個通往帳號密碼資料庫的資料庫物件。而資料庫物件可能包含一個Mysql連結、登入資料庫的帳號和密碼、儲存查詢結果用的暫時陣列。如果不採用物件導向,而改用程序導向來實做,那可能同一份程式碼就會有無數個不同目的的暫時變數,放密碼的、資料庫存取用的、課程相關的....以及一大堆Mysql連結,加上一大堆不同目的的函數呼叫放在一起,一下子叫資料庫,一下又存取課程表、一下又讀授權表,等會又連接新資料庫....程式想要不出錯也難。
所以想要程式好維護的看官們,下次碰到寫程式就給他來個物件導向吧!就算只有方法沒有資料也沒關係。沒有資料,以後可能有。而就算是純方法構成的物件,也可以拿來做很多好玩的事情,比如接水管(物件裡面有指向某抽象物件的指標,然後該抽象物件的抽象方法可以有很多種不同的實做,密碼學的程式庫就常常搞這種事)、或是達到更好的擴充性和存取控制、增加可維護性等等,使用物件導向能夠讓程式設計發揮到極致啊orz 全文連結
星期三, 9月 20, 2006
三面夾殺
好像又回到了高中程式設計師的生活,身為班上以及整個系上目前的首席程式設計師,有很多事情等著我做。什麼?不相信我是首席程式設計師?其實我大五的學長有兩個專門寫系學會的程式,不過現在他們在醫院忙,而和我同屆的人好像就我對PHP比較熟(或是高手都躲起來避免當工人XD)。而我的下一屆學弟竟然沒有人會寫PHP。沒錯,雖然學校有開相關的選修課程,可是修過學校的選修課程和具有真正的熱忱和生產能力好像是兩回事情。總而言之,現在整個醫學系的程式和班上的班網全部是本座在維護,再加上本座想去比NCPC,就有三項任務了。
系學會的事情目前還是電子通訊錄的問題,雖然Bug不斷被發現,不過目前狀況還算是OK,沒有什麼重大災變orz。而且系學會裡面學長寫的程式碼其實是很好的documentation,很多函數不必去翻書或是上官網就可以查到,資料庫的部份也是成熟的,我只需要進行Refactoring就好了。
班網的問題是我比較頭痛的,901學長當初給的code連認證系統都沒有,程式碼一大堆複製貼上,變數命名沒有規則,最神奇的是一大堆code之中沒有任何一行呼叫過副程式,物件導向更不用講....所以上個學期我很火速的改建了這個幾近違建的codebase。可是那時候急就章的結果很多該做的事情都沒有做,沒有施行物件導向,導致整份程式碼都是難以閱讀的方法還有一長串參數列。認證系統甚至直接把使用者的帳號和雜湊過的密碼直接存成cookie@@(這應該算是超大的安全漏洞吧)總而言之現在這份程式碼自己也看的一頭霧水,維護的時候改這裡就會爆那裡,應該趁剛開學不忙的時候打掉....
NCPC比想像中順利,Springer Verlag出版社的The Algorithm Design Manual幫了很大的忙,DP、圖論、搜尋、簡單數論什麼都有,趕快恢復當年南區連續擊敗全國三等獎選手的功力吧XDD 全文連結
系學會的事情目前還是電子通訊錄的問題,雖然Bug不斷被發現,不過目前狀況還算是OK,沒有什麼重大災變orz。而且系學會裡面學長寫的程式碼其實是很好的documentation,很多函數不必去翻書或是上官網就可以查到,資料庫的部份也是成熟的,我只需要進行Refactoring就好了。
班網的問題是我比較頭痛的,901學長當初給的code連認證系統都沒有,程式碼一大堆複製貼上,變數命名沒有規則,最神奇的是一大堆code之中沒有任何一行呼叫過副程式,物件導向更不用講....所以上個學期我很火速的改建了這個幾近違建的codebase。可是那時候急就章的結果很多該做的事情都沒有做,沒有施行物件導向,導致整份程式碼都是難以閱讀的方法還有一長串參數列。認證系統甚至直接把使用者的帳號和雜湊過的密碼直接存成cookie@@(這應該算是超大的安全漏洞吧)總而言之現在這份程式碼自己也看的一頭霧水,維護的時候改這裡就會爆那裡,應該趁剛開學不忙的時候打掉....
NCPC比想像中順利,Springer Verlag出版社的The Algorithm Design Manual幫了很大的忙,DP、圖論、搜尋、簡單數論什麼都有,趕快恢復當年南區連續擊敗全國三等獎選手的功力吧XDD 全文連結
星期二, 9月 19, 2006
星期日, 9月 17, 2006
暑假的最後一天
再怎麼長的時間也有盡頭,再快樂的假期也有終點,美麗的暑假終於要告一段落,羞澀的本座要邁向嶄新的盛夏新學期。
昨天大概就是重灌電腦加上寫程式。因為電腦的Zend Platform除錯功能好像壞掉,只要一個Step in就會讓Apache整個爆掉,Restart也不行,還一定要Stop + Start,經過多次修復無效後,我決定重灌。
重灌Windows 2003本身很順利,映像檔恢復一下就好了,裝其他應用程式也沒有什麼困難。比較神奇的是,Zend Platform裝好以後功能仍然是壞掉的。於是昨天我所有的時間就全部用在Zend和Apache、Mysql這些東西的Configuration上。
一開始我是裝Appserv 2.5.6,但是Zend Platform根本偵測不到裡面包含的Apache 2.2,所以只好移除Zend platform再移除Appserv 2.5.6,然後改用比較舊的Appserv 2.4.6。裝了2.4.6以後總算Zend Platform偵測到Apache了,可是赫然發現Appserv 2.4.6裡面的PHP是4.0不是5.0,決定裝Zend Platform自己有的Zend Core PHP 5.0。這樣裝一裝,拼裝車終於裝好了。
但是試用的結果還是不滿意,因為Zend Core PHP好像有很多Extension沒開,像是Multi Byte Support String好像就有問題(被PHPMyAdmin Complain),所以2.5.6不行,2.4.6也不行,那怎麼辦?只好放棄所謂的整合包了,乖乖的到官網一個個下載。結果想要下載的時候www.php.net連不進去,費了好一番功夫改用us2.php.net才成功下載到我想要的東西。
軟體的安裝當然還是很順利,大家都知道恐怖的在後面的設定。也是花了一大堆時間,最後成功的改httpd.conf,加入PHP的Type和Module,指定PHP.ini的目錄。再來是解開PECL PHP擴充包,然後改php.ini指定路徑,最後是設定phpmyadmin,按照網路上的Step By Step改設定檔搞定phpMyadmin。
不過雖然最後花了一大堆時間處理Zend Platform,但因為最後的結果還是怪怪的,大部分的除錯還是使用最原始的echo符號orz 全文連結
昨天大概就是重灌電腦加上寫程式。因為電腦的Zend Platform除錯功能好像壞掉,只要一個Step in就會讓Apache整個爆掉,Restart也不行,還一定要Stop + Start,經過多次修復無效後,我決定重灌。
重灌Windows 2003本身很順利,映像檔恢復一下就好了,裝其他應用程式也沒有什麼困難。比較神奇的是,Zend Platform裝好以後功能仍然是壞掉的。於是昨天我所有的時間就全部用在Zend和Apache、Mysql這些東西的Configuration上。
一開始我是裝Appserv 2.5.6,但是Zend Platform根本偵測不到裡面包含的Apache 2.2,所以只好移除Zend platform再移除Appserv 2.5.6,然後改用比較舊的Appserv 2.4.6。裝了2.4.6以後總算Zend Platform偵測到Apache了,可是赫然發現Appserv 2.4.6裡面的PHP是4.0不是5.0,決定裝Zend Platform自己有的Zend Core PHP 5.0。這樣裝一裝,拼裝車終於裝好了。
但是試用的結果還是不滿意,因為Zend Core PHP好像有很多Extension沒開,像是Multi Byte Support String好像就有問題(被PHPMyAdmin Complain),所以2.5.6不行,2.4.6也不行,那怎麼辦?只好放棄所謂的整合包了,乖乖的到官網一個個下載。結果想要下載的時候www.php.net連不進去,費了好一番功夫改用us2.php.net才成功下載到我想要的東西。
軟體的安裝當然還是很順利,大家都知道恐怖的在後面的設定。也是花了一大堆時間,最後成功的改httpd.conf,加入PHP的Type和Module,指定PHP.ini的目錄。再來是解開PECL PHP擴充包,然後改php.ini指定路徑,最後是設定phpmyadmin,按照網路上的Step By Step改設定檔搞定phpMyadmin。
不過雖然最後花了一大堆時間處理Zend Platform,但因為最後的結果還是怪怪的,大部分的除錯還是使用最原始的echo符號orz 全文連結
星期六, 9月 16, 2006
程式設計的一天
今天早上其實大約五點二十的時候我就醒了,為甚麼呢?因為我附近的房間有那種爬行時翅膀擦動會發出響聲的蟑螂,所以在極度的噁心下我就睡不著了,六點二十起來吃早餐,然後七點寫班網到九點,去補習一點四十五回家,再寫程式寫到現在。
利用PHP $_SESSION新功能的Authentication的架構基本上大概完成(謎之聲:其實只是依據phpBB2的code的架構然後把資料庫的部份改用$_SESSION實作,了不起加個物件導向而已),可是要debug的時候,發現家裏的Web server好像故障。Zend Studio Remote Debugging只要Step over就會害Web server當掉,更新相關軟體版本,重裝兩次還是無法解決,所以決定明天起床重灌Windows 2003。
Windows 2003用到目前的感覺真的是讚,除了我所說的Web server故障以外幾乎沒有任何系統異常,即使灌了一大堆有的沒的東西,系統速度照樣超級順。驅動不管怎麼連灌都不會操壞系統。再加上撥影片聽foobar效果都比XP好,根本是把XP打進垃圾桶去了,想必以後都不會和Windows XP再續前緣了XD 全文連結
利用PHP $_SESSION新功能的Authentication的架構基本上大概完成(謎之聲:其實只是依據phpBB2的code的架構然後把資料庫的部份改用$_SESSION實作,了不起加個物件導向而已),可是要debug的時候,發現家裏的Web server好像故障。Zend Studio Remote Debugging只要Step over就會害Web server當掉,更新相關軟體版本,重裝兩次還是無法解決,所以決定明天起床重灌Windows 2003。
Windows 2003用到目前的感覺真的是讚,除了我所說的Web server故障以外幾乎沒有任何系統異常,即使灌了一大堆有的沒的東西,系統速度照樣超級順。驅動不管怎麼連灌都不會操壞系統。再加上撥影片聽foobar效果都比XP好,根本是把XP打進垃圾桶去了,想必以後都不會和Windows XP再續前緣了XD 全文連結
星期五, 9月 15, 2006
驚!Office 2007 Beta2 TR下載連結!
迷之連結
在網路上亂逛的時候找到的。什麼?你已經有Office 2007 Beta 2了?呵呵,不好意思,那個版本已經太老舊了,現在真正最犀利、最in、最酷、最哈、最棒(謎之聲:您這些形容詞比Office 95還要舊....)的Office 2007版本是Beta 2 Technical Refresh,簡稱Office 2007 Beta2 TR。
微軟Beta 2的下載已經要收費了,請各位愛好者趁微軟更新網站以前,趕快下載吧orz
---
Update:這個東西好像要先裝原來的Beta 2才能裝耶,大家自己看看吧XD
Update 2:什麼,已經找不到Office 2007 beta 2的下載點了嗎?孩子,試試看這裡吧 全文連結
在網路上亂逛的時候找到的。什麼?你已經有Office 2007 Beta 2了?呵呵,不好意思,那個版本已經太老舊了,現在真正最犀利、最in、最酷、最哈、最棒(謎之聲:您這些形容詞比Office 95還要舊....)的Office 2007版本是Beta 2 Technical Refresh,簡稱Office 2007 Beta2 TR。
微軟Beta 2的下載已經要收費了,請各位愛好者趁微軟更新網站以前,趕快下載吧orz
---
Update:這個東西好像要先裝原來的Beta 2才能裝耶,大家自己看看吧XD
Update 2:什麼,已經找不到Office 2007 beta 2的下載點了嗎?孩子,試試看這裡吧 全文連結
星期四, 9月 14, 2006
Edonkey倒了
消息來源
自從美國最高法院做出Grokster敗訴的歷史性判決以後,美國的點對點公司就一個個倒下,要不然就是被告倒,要不然就是被告以前選擇和解,然後自己收攤。
eDonkey應該算是招牌老字號的點對點軟體,印象中高中的時候好像就有人在用這個東西。根據使用者的說法,ED2K一向以資源豐富著名。
eDonkey倒了會對ED2K網路有很大的影響嗎?恐怕不會,因為現在ED2K網路的霸王並不是eDonkey,而是開放原始碼的相容產品:eMule。eDonkey倒下,可能只是讓習慣檔案分享的人改用eMule而已。
雖然打倒了eDonkey,但是智慧財產權擁有人卻要面對更可怕的對手:eMule,eMule基於開放原始碼的特性,開發者來自全球各地,並不是由一家可以告的公司集中開發。eMule原始碼也是向全世界公開,而相關的eMule改版早就是過江之鯽,即使真的有人一個個向開發eMule的人提出告訴,這些開發者沒有從促成非法分享獲得實際的利潤,要告倒恐怕有難度,即使告倒了,也會有人補上來繼續開發。就算真的告到某個國家沒有人敢繼續開發,還是會有其他國家的人繼續開發eMule,所以eMule基本上是告不倒的對手吧。 全文連結
自從美國最高法院做出Grokster敗訴的歷史性判決以後,美國的點對點公司就一個個倒下,要不然就是被告倒,要不然就是被告以前選擇和解,然後自己收攤。
eDonkey應該算是招牌老字號的點對點軟體,印象中高中的時候好像就有人在用這個東西。根據使用者的說法,ED2K一向以資源豐富著名。
eDonkey倒了會對ED2K網路有很大的影響嗎?恐怕不會,因為現在ED2K網路的霸王並不是eDonkey,而是開放原始碼的相容產品:eMule。eDonkey倒下,可能只是讓習慣檔案分享的人改用eMule而已。
雖然打倒了eDonkey,但是智慧財產權擁有人卻要面對更可怕的對手:eMule,eMule基於開放原始碼的特性,開發者來自全球各地,並不是由一家可以告的公司集中開發。eMule原始碼也是向全世界公開,而相關的eMule改版早就是過江之鯽,即使真的有人一個個向開發eMule的人提出告訴,這些開發者沒有從促成非法分享獲得實際的利潤,要告倒恐怕有難度,即使告倒了,也會有人補上來繼續開發。就算真的告到某個國家沒有人敢繼續開發,還是會有其他國家的人繼續開發eMule,所以eMule基本上是告不倒的對手吧。 全文連結
星期二, 9月 12, 2006
[轉錄]身分被冒用--自保方法
(轉錄自ptt2)
演藝人員趙詠華其夫婿(醫生)被人冒用身分證申請大哥大及信用卡,然後大量使用,以致信用破產,無法向銀行借貸,所以招開記者會。剛巧昨晚友人寄來下列資訊,特此轉寄各親朋好友共享之!超級重要.---被冒用了不要笨笨的跑去找警察伯伯報警!!
請耐心看完以下
【身份証遺失的自保方法】、
【被冒名申請大哥大門號的自保方法】、
【信用卡被盜刷、或被冒名申辦信用卡的自保方法】
------------------------------------------------------------------------------
【身份証遺失的自保方法】
錯誤示範:
因為事關許多人的權益,也是為不讓不法之徒有機可趁,身份証遺失時,請千萬記得:
(1)向警察局備案遺失->錯誤示範:因為於法無據,我翻遍六法全書,也找不到「備案」二字。
(2)開立遺失三聯單->錯誤示範:只有刑案才開立報案三連單,沒有遺失三連單這種東西。
(3)向金融聯合徵信中心登錄遺失記錄->錯誤示範,沒必要。
一般民眾身份證遺失或被竊或被搶直覺上會向警察單位報失,但實際上益處不大吶,因為那是電視上說的,根本於法無據,難道你先向銀行借錢,再去報案遺失身分証就不用還錢ㄚ!萬一被冒用,還是得上法院,現在的警察單位不會理你啦!
正確做法:請馬上準備:
1、二月內大頭照黑白彩色均可,要二吋的。
2、規費200元。
3、帶印章及戶口名簿正本或駕照正本
(最後領到的畢業證書正本或役男可帶退伍令正本也可以)。
4、親自前往戶籍所在地戶政事務所辦理身份證領/補/換發手續,約5-10分鐘即可。
金資中心也馬上與戶政機關電腦記錄取得連線 http://www.ris.gov.tw/
日後身分文件以最後一次「身份證領/補/換發日」為主
(上網可查詢http://www.ris.gov.tw/docs/uping.html)
這樣一來,歹徒就無法籍著銀行體系辦走你的戶頭或信用卡或貸款之類,至於其他的麻煩,則可由戶政事務所的「身份證領/補/換發申請書」,來證明舊有(原)身分證已遺失作廢,申請一張證明也才十塊錢而已;較之前面所述之法大大省事了,因為要跑三個手續喔!不要這麼費事吧!況且戶政事務所也很樂意為大家服務呀!
【被冒名申請大哥大門號的自保方法】
某大哥大公司通知你電話費逾期未繳,而門號根本不是你的,電信業者還會語帶恐嚇告訴你,如果不繳錢,會將你所申請使用的門號,一併停機,怎麼辦?
錯誤示範:
撥打客服專線反應,首先客服人員會向你確認身分,然後要求你先向警察機關報案,取得報案証明後,再到其公司門市,填表格,辦理未申辦門號等等手續,以確認該門號不是你所申辦,一般來說,這個手續完成後,電信業者就不會再向你催繳電話費,可是.............這是錯的。
正確做法:
你完全無需理會他,頂多到附近郵局寄個存証信函給他,聲明該門號與你無關(網路可找到範例),不要笨到請一天假,去排隊辦裡這些無關緊要的手續。
應採取步驟:
一、該門號既然不是你所申請,為何你要請一天假,去排隊辦裡這些無關緊要的手續,應該是由電信業者,拿著當初申辦人所填寫之申請書,來到你面前,向你確認簽名筆跡真偽,而不是善良的你,跑去讓他們確認你的無辜。
二、報案應該由被害人實施,而大哥大門號遭冒辦,有損失的是電信業者,所以被害人也是電信業者,應該由電信業者向司法機關報詐欺案。所以你不是被害人,充其量,你頂多是證人、關係人身分,去報案,是要不到報案三聯單的。
三、電信業者如果逕行將你所申請、並有繳交電話費之門號擅自停機,你絕對可以向消保單位檢舉,你甚至可以要求被停機期間的損失賠償,因為你沒犯錯、沒違法。
四、若電信業者向法院申請支付命令,你只要向法院提起抗告(寄一封書函過去即可),或將存証信函影本提交法院即可,不必跑法院。若收到法院通知需要到庭,這個時候你一定要請假不可,但是,只要你確定沒申請該門號的立場,你一定會勝訴,還可以要求賠償,至少也有個車馬費,不無小補。不過,通常電信業者不會笨到自討沒趣,一般收到你的存証信函,公司就會自行吸收損失。
【信用卡被盜刷、或被冒名申辦信用卡的自保方法】
一般來講,處理方法與被冒名申請大哥大門號的自保方法雷同,請該銀行自行確認簽名非你所為,不要笨到請一天假,去替銀行、電信業者,做一些他們應該做的徵信工作。
錯誤示範:
趕快去向警察伯伯報案,這樣才會早日抓到壞人。----->大錯特錯,一定要在第一時間,向原發卡銀行申報遺失。在你掛失後的盜刷行為,銀行會自行吸收,掛失前的盜刷款項,有的銀行會要求你支付,或分攤部份金額,你要付這種冤枉錢嗎?這個時候,你一定要堅持繼續看下去因為替你省錢的方法在下面。
正確做法:
你可以向發卡銀行要求檢視簽帳單,若簽帳單上的簽名,與你在信用卡背面簽名不同或相差甚遠,這筆錢你就省了,原因不用多說,因為簽名與卡片背面明顯不同,責任是要歸屬於受刷卡商店的,另外,你可以要求檢視刷卡時的監視錄影帶,若信用卡背面署名為王淑芬、陳淑惠、mary、a-mei,而商家仍然讓男生刷卡成功,嘿嘿嘿,這筆錢又可以省了。所以囉!,身為現代人,不要再笨笨的跑去報案,還被警察伯伯笑你傻瓜囉!
請寄給所有的善良朋友們喔! 全文連結
演藝人員趙詠華其夫婿(醫生)被人冒用身分證申請大哥大及信用卡,然後大量使用,以致信用破產,無法向銀行借貸,所以招開記者會。剛巧昨晚友人寄來下列資訊,特此轉寄各親朋好友共享之!超級重要.---被冒用了不要笨笨的跑去找警察伯伯報警!!
請耐心看完以下
【身份証遺失的自保方法】、
【被冒名申請大哥大門號的自保方法】、
【信用卡被盜刷、或被冒名申辦信用卡的自保方法】
------------------------------------------------------------------------------
【身份証遺失的自保方法】
錯誤示範:
因為事關許多人的權益,也是為不讓不法之徒有機可趁,身份証遺失時,請千萬記得:
(1)向警察局備案遺失->錯誤示範:因為於法無據,我翻遍六法全書,也找不到「備案」二字。
(2)開立遺失三聯單->錯誤示範:只有刑案才開立報案三連單,沒有遺失三連單這種東西。
(3)向金融聯合徵信中心登錄遺失記錄->錯誤示範,沒必要。
一般民眾身份證遺失或被竊或被搶直覺上會向警察單位報失,但實際上益處不大吶,因為那是電視上說的,根本於法無據,難道你先向銀行借錢,再去報案遺失身分証就不用還錢ㄚ!萬一被冒用,還是得上法院,現在的警察單位不會理你啦!
正確做法:請馬上準備:
1、二月內大頭照黑白彩色均可,要二吋的。
2、規費200元。
3、帶印章及戶口名簿正本或駕照正本
(最後領到的畢業證書正本或役男可帶退伍令正本也可以)。
4、親自前往戶籍所在地戶政事務所辦理身份證領/補/換發手續,約5-10分鐘即可。
金資中心也馬上與戶政機關電腦記錄取得連線 http://www.ris.gov.tw/
日後身分文件以最後一次「身份證領/補/換發日」為主
(上網可查詢http://www.ris.gov.tw/docs/uping.html)
這樣一來,歹徒就無法籍著銀行體系辦走你的戶頭或信用卡或貸款之類,至於其他的麻煩,則可由戶政事務所的「身份證領/補/換發申請書」,來證明舊有(原)身分證已遺失作廢,申請一張證明也才十塊錢而已;較之前面所述之法大大省事了,因為要跑三個手續喔!不要這麼費事吧!況且戶政事務所也很樂意為大家服務呀!
【被冒名申請大哥大門號的自保方法】
某大哥大公司通知你電話費逾期未繳,而門號根本不是你的,電信業者還會語帶恐嚇告訴你,如果不繳錢,會將你所申請使用的門號,一併停機,怎麼辦?
錯誤示範:
撥打客服專線反應,首先客服人員會向你確認身分,然後要求你先向警察機關報案,取得報案証明後,再到其公司門市,填表格,辦理未申辦門號等等手續,以確認該門號不是你所申辦,一般來說,這個手續完成後,電信業者就不會再向你催繳電話費,可是.............這是錯的。
正確做法:
你完全無需理會他,頂多到附近郵局寄個存証信函給他,聲明該門號與你無關(網路可找到範例),不要笨到請一天假,去排隊辦裡這些無關緊要的手續。
應採取步驟:
一、該門號既然不是你所申請,為何你要請一天假,去排隊辦裡這些無關緊要的手續,應該是由電信業者,拿著當初申辦人所填寫之申請書,來到你面前,向你確認簽名筆跡真偽,而不是善良的你,跑去讓他們確認你的無辜。
二、報案應該由被害人實施,而大哥大門號遭冒辦,有損失的是電信業者,所以被害人也是電信業者,應該由電信業者向司法機關報詐欺案。所以你不是被害人,充其量,你頂多是證人、關係人身分,去報案,是要不到報案三聯單的。
三、電信業者如果逕行將你所申請、並有繳交電話費之門號擅自停機,你絕對可以向消保單位檢舉,你甚至可以要求被停機期間的損失賠償,因為你沒犯錯、沒違法。
四、若電信業者向法院申請支付命令,你只要向法院提起抗告(寄一封書函過去即可),或將存証信函影本提交法院即可,不必跑法院。若收到法院通知需要到庭,這個時候你一定要請假不可,但是,只要你確定沒申請該門號的立場,你一定會勝訴,還可以要求賠償,至少也有個車馬費,不無小補。不過,通常電信業者不會笨到自討沒趣,一般收到你的存証信函,公司就會自行吸收損失。
【信用卡被盜刷、或被冒名申辦信用卡的自保方法】
一般來講,處理方法與被冒名申請大哥大門號的自保方法雷同,請該銀行自行確認簽名非你所為,不要笨到請一天假,去替銀行、電信業者,做一些他們應該做的徵信工作。
錯誤示範:
趕快去向警察伯伯報案,這樣才會早日抓到壞人。----->大錯特錯,一定要在第一時間,向原發卡銀行申報遺失。在你掛失後的盜刷行為,銀行會自行吸收,掛失前的盜刷款項,有的銀行會要求你支付,或分攤部份金額,你要付這種冤枉錢嗎?這個時候,你一定要堅持繼續看下去因為替你省錢的方法在下面。
正確做法:
你可以向發卡銀行要求檢視簽帳單,若簽帳單上的簽名,與你在信用卡背面簽名不同或相差甚遠,這筆錢你就省了,原因不用多說,因為簽名與卡片背面明顯不同,責任是要歸屬於受刷卡商店的,另外,你可以要求檢視刷卡時的監視錄影帶,若信用卡背面署名為王淑芬、陳淑惠、mary、a-mei,而商家仍然讓男生刷卡成功,嘿嘿嘿,這筆錢又可以省了。所以囉!,身為現代人,不要再笨笨的跑去報案,還被警察伯伯笑你傻瓜囉!
請寄給所有的善良朋友們喔! 全文連結
再度開始寫程式
這不是我第一次寫PHP,不過這是我第一次看別人的code。
我有兩個任務,第一個是通訊錄作業電子化,第二個是將學校系學會資訊服務網頁美化。
目前的通訊錄服務作業方式是這樣的:每個班級都發一張白紙,然後大家把最新的住址電話電子信箱填上去,然後全部收回來,之後系學會再派人把這些資料用手打慢慢作成word檔,然後全部印出來。這種作業方式曠日費時,出錯的機會也比較高。我的工作是寫一個網頁,然後讓大家可以自己把資料打進去,然後由資料庫直接輸出HTML檔,大家就可以很方便的處理。期限是九月十八日。
系學會資訊服務網頁美化的工作又是另外一個大哉問。學校系學會網頁之所以看起來「很醜」,是因為寫的人當初把HTML和PHP的程式碼放在同一個檔案裡,變得很難用Dreamweaver等編輯器編輯,所以就很難看了。
兩個任務都要看懂學長的程式碼,電子通訊錄的部份是因為要實作身份檢查,總不能每個人都可以亂改別人的通訊錄吧。網頁美化的部份,為了往後的維護方便,利用樣板引擎把HTML和PHP程式碼分開是一定要做到的,而這就牽涉到把一份程式碼切成兩份,還是要先看懂程式碼比較保險。
看了學長的程式碼以後,感覺我們學生輩程式碼的安全性還是有差,看到很多潛藏性的問題,比如以客戶端的cookie進行session時間的計算,還有程式碼之中也出現了一些superglobal,書本上說是「非安全性作法」(bad security practice)。可能是受限於時間的關係,程式碼也沒有優化,duplicate code蠻多、無意義名稱且連續使用的區域變數、拼錯字的函數命名、全部公開的成員變數.......我應該也會進行適度的refactor吧。 全文連結
我有兩個任務,第一個是通訊錄作業電子化,第二個是將學校系學會資訊服務網頁美化。
目前的通訊錄服務作業方式是這樣的:每個班級都發一張白紙,然後大家把最新的住址電話電子信箱填上去,然後全部收回來,之後系學會再派人把這些資料用手打慢慢作成word檔,然後全部印出來。這種作業方式曠日費時,出錯的機會也比較高。我的工作是寫一個網頁,然後讓大家可以自己把資料打進去,然後由資料庫直接輸出HTML檔,大家就可以很方便的處理。期限是九月十八日。
系學會資訊服務網頁美化的工作又是另外一個大哉問。學校系學會網頁之所以看起來「很醜」,是因為寫的人當初把HTML和PHP的程式碼放在同一個檔案裡,變得很難用Dreamweaver等編輯器編輯,所以就很難看了。
兩個任務都要看懂學長的程式碼,電子通訊錄的部份是因為要實作身份檢查,總不能每個人都可以亂改別人的通訊錄吧。網頁美化的部份,為了往後的維護方便,利用樣板引擎把HTML和PHP程式碼分開是一定要做到的,而這就牽涉到把一份程式碼切成兩份,還是要先看懂程式碼比較保險。
看了學長的程式碼以後,感覺我們學生輩程式碼的安全性還是有差,看到很多潛藏性的問題,比如以客戶端的cookie進行session時間的計算,還有程式碼之中也出現了一些superglobal,書本上說是「非安全性作法」(bad security practice)。可能是受限於時間的關係,程式碼也沒有優化,duplicate code蠻多、無意義名稱且連續使用的區域變數、拼錯字的函數命名、全部公開的成員變數.......我應該也會進行適度的refactor吧。 全文連結
刑事豁免權絕非無限上綱
最近國務機要費案鬧的沸沸揚揚,有人認為陳瑞仁檢察官調查總統是違憲的行為。根據報載,反對陳瑞仁檢察官調查總統的理由是:「制憲者讓總統享有刑事豁免權的原意,是防止有心人士藉事生非,妨害總統行使職權,破壞政局之安定,而以此豁免權維持國家元首尊嚴;檢方一旦對總統發動偵查,已足使總統喪失威信,難以領導國家。」。但是這種見解恐怕有很大的問題。
假如總統的刑事豁免權範圍真的大到「刑事訴究上一切有關行為,如傳喚、拘提、搜索及扣押等,均不得對總統為之」,那吾人可以預期,有犯罪的總統可以依據這種解釋,在罷免、彈劾進行的期間進行湮滅證據或串供,導致罷免、彈劾成功後調查無法進行,或是乾脆直接干擾彈劾、罷免的證據蒐集步驟,讓司法調查、國會彈劾、罷免形同虛設。
這種解釋等於破壞司法權對行政權的調查權、破壞立法權對行政權的制衡,嚴重破壞權力分立以及人民的參政權。立憲者既然精心設計了權力分立等制度設計,顯見非常在意權力分立和人民參政權,這種允許破壞權力分立及人民參政權的解釋,吾人實在很難相信符合立憲者的本意。
倘若「總統的領導威信」真的如反對總統被調查者所言,真有受到憲法如此大的保障,吾人是否應該要求國會立法禁止政論節目和新聞媒體討論和總統有關的弊案?既然「總統的領導威信」在憲法上那麼重要,重要到可以犧牲司法權、立法權和人民參政權,那麼人民討論弊案的權利只是人民行使參政權的工具,當然更可以廢止了。 全文連結
假如總統的刑事豁免權範圍真的大到「刑事訴究上一切有關行為,如傳喚、拘提、搜索及扣押等,均不得對總統為之」,那吾人可以預期,有犯罪的總統可以依據這種解釋,在罷免、彈劾進行的期間進行湮滅證據或串供,導致罷免、彈劾成功後調查無法進行,或是乾脆直接干擾彈劾、罷免的證據蒐集步驟,讓司法調查、國會彈劾、罷免形同虛設。
這種解釋等於破壞司法權對行政權的調查權、破壞立法權對行政權的制衡,嚴重破壞權力分立以及人民的參政權。立憲者既然精心設計了權力分立等制度設計,顯見非常在意權力分立和人民參政權,這種允許破壞權力分立及人民參政權的解釋,吾人實在很難相信符合立憲者的本意。
倘若「總統的領導威信」真的如反對總統被調查者所言,真有受到憲法如此大的保障,吾人是否應該要求國會立法禁止政論節目和新聞媒體討論和總統有關的弊案?既然「總統的領導威信」在憲法上那麼重要,重要到可以犧牲司法權、立法權和人民參政權,那麼人民討論弊案的權利只是人民行使參政權的工具,當然更可以廢止了。 全文連結
星期一, 9月 11, 2006
星期日, 9月 10, 2006
星期六, 9月 09, 2006
法實證主義和自然法
有三篇文章值得參考:
文章一
文章二
文章三(Google Cached),文章三本體
最近社會一連串政治活動,正反雙方對「法」的概念產生了激烈論戰。兩派勢力提倡的理論,看起來似乎剛好符合「自然法」和「法實證主義」兩派的千古論戰。有一邊把他們的運動提升到自然法的高度,而另一邊則提倡「司法解決」,提倡國家法律,主張法安定性,至於「某某某道不道德?」這種道德性而非法律性的問題,並不很明確的提出解答,反正千篇一律的回答,就是「等司法裁決」。
對於法,我個人所學並未深入,畢竟我是學醫的。我之所以研究法律,只是基於幫助未來的自己應付醫療訴訟,還有為了更深入了解最近政治界的法律爭議而已,不過「自然法」和「法實證主義」在我頭腦中,關於人民和統治者關係的理解大概可以部份整理成:「自然法」主張,法律並非究極的正義,法律之外,別有一最高的正義原則。這個正義原則是法律的來源,而人民在法律失靈的時候,可以動用此正義原則審判國家以及法律。具體的實現是「公民不服從權」和前陣子很流行的「抵抗權」。而「法實證主義」的主張是「法律就是法律」「法律就是正義」「沒有所謂的惡法,因為法律就是正義」。
聽起來好像自然法主義比較符合人情,而一般沒特別學過法律的三姑六婆閒談間也似乎是自然法主義者,「唉呦那個某某那麼爛,法律根本就在偏袒他,怎麼還要遵守法律保護他?」「白米炸彈客真的很可憐,他又沒真的傷人,難道就不能法外開恩嗎?」,對啊,「最高的正義原則」這麼迷人,那怎麼還會有人反對呢?
答案就在於所謂的「道德相對論」,道德相對論絕對不只是性開放者反對性保守者的辯論工具而已,「道德相對論」來自於實際的觀察:每個人的道德標準都不一樣,而不可能每個人的道德都當作法律。而且歷史上「私設刑堂」的錯誤機率實在太高了,而非司法,由人民直接發動的力量不但常常受到情緒影響,也往往帶來社會的動盪不安,理由很多很多。總之「自然法」最大的罩門就是:「最高的正義原則」很好,但請問由誰來代表那個最高的正義?於是「法實證主義」的「法律就是法律」「如果人人都被賦予以自己的意志凌駕法律的機會,那社會將會動盪不安,國家將會崩解」的論點就得到了介入的機會。很多受過教育的法律人,好像都站在「法實證主義」這邊,「惡法亦法」口號震天價響。
兩種主義的適用時機似乎也有所不同,在國家安定,司法公正的時候,人人都應該信服法律的制裁,所謂的「自然法」只會帶來混亂。但在國家司法不公的情況下,「法實證主義」卻會對民主和人權造成毀滅,最極端的例子就是納粹希特勒了,納粹希特勒提倡「法律就是法律」,讓人民對納粹的反抗力,在「我們要相信國家」「程序正義」的聲音下逐漸消滅掉了。
所以結論是什麼呢?兩邊都各有優缺點,誰也消滅不了誰。 全文連結
文章一
文章二
文章三(Google Cached),文章三本體
最近社會一連串政治活動,正反雙方對「法」的概念產生了激烈論戰。兩派勢力提倡的理論,看起來似乎剛好符合「自然法」和「法實證主義」兩派的千古論戰。有一邊把他們的運動提升到自然法的高度,而另一邊則提倡「司法解決」,提倡國家法律,主張法安定性,至於「某某某道不道德?」這種道德性而非法律性的問題,並不很明確的提出解答,反正千篇一律的回答,就是「等司法裁決」。
對於法,我個人所學並未深入,畢竟我是學醫的。我之所以研究法律,只是基於幫助未來的自己應付醫療訴訟,還有為了更深入了解最近政治界的法律爭議而已,不過「自然法」和「法實證主義」在我頭腦中,關於人民和統治者關係的理解大概可以部份整理成:「自然法」主張,法律並非究極的正義,法律之外,別有一最高的正義原則。這個正義原則是法律的來源,而人民在法律失靈的時候,可以動用此正義原則審判國家以及法律。具體的實現是「公民不服從權」和前陣子很流行的「抵抗權」。而「法實證主義」的主張是「法律就是法律」「法律就是正義」「沒有所謂的惡法,因為法律就是正義」。
聽起來好像自然法主義比較符合人情,而一般沒特別學過法律的三姑六婆閒談間也似乎是自然法主義者,「唉呦那個某某那麼爛,法律根本就在偏袒他,怎麼還要遵守法律保護他?」「白米炸彈客真的很可憐,他又沒真的傷人,難道就不能法外開恩嗎?」,對啊,「最高的正義原則」這麼迷人,那怎麼還會有人反對呢?
答案就在於所謂的「道德相對論」,道德相對論絕對不只是性開放者反對性保守者的辯論工具而已,「道德相對論」來自於實際的觀察:每個人的道德標準都不一樣,而不可能每個人的道德都當作法律。而且歷史上「私設刑堂」的錯誤機率實在太高了,而非司法,由人民直接發動的力量不但常常受到情緒影響,也往往帶來社會的動盪不安,理由很多很多。總之「自然法」最大的罩門就是:「最高的正義原則」很好,但請問由誰來代表那個最高的正義?於是「法實證主義」的「法律就是法律」「如果人人都被賦予以自己的意志凌駕法律的機會,那社會將會動盪不安,國家將會崩解」的論點就得到了介入的機會。很多受過教育的法律人,好像都站在「法實證主義」這邊,「惡法亦法」口號震天價響。
兩種主義的適用時機似乎也有所不同,在國家安定,司法公正的時候,人人都應該信服法律的制裁,所謂的「自然法」只會帶來混亂。但在國家司法不公的情況下,「法實證主義」卻會對民主和人權造成毀滅,最極端的例子就是納粹希特勒了,納粹希特勒提倡「法律就是法律」,讓人民對納粹的反抗力,在「我們要相信國家」「程序正義」的聲音下逐漸消滅掉了。
所以結論是什麼呢?兩邊都各有優缺點,誰也消滅不了誰。 全文連結
星期五, 9月 08, 2006
這一切都是為了拯救台灣?
水果日報報導
從前從前,有一家地處偏僻的高中叫做山村高中,附近有一家賭博電玩,是學生翻牆翹課常去的不良場所,教官也常改穿便服偽裝民眾去巡邏抓人。
話說某天有個叫做小明的學生,在賭博電玩門口被逮到。小明說:「報告教官,我只是來賭博電玩隔壁的商店買吃的,我之所以在上課時間翻牆外出買食物,是因為我真的太餓了」。教官一聽就問:「學校裡面就有福利社,你何必翻牆出去買東西吃?」小明舌頭打結了一下,馬上又說:「報告教官,那是因為學校福利社的東西實在太不衛生了,我一向不大敢在福利社買東西吃」。結果教官回校訪查,發現小明天天都到福利社買東西吃,也沒人聽他抱怨過福利社東西不新鮮。最後教官把小明叫來教官室,當場給他記了過,小明回到教室還對同學說:「我只是便宜行事,為了填飽肚子去買東西吃而已,教官是大外行,食品衛生他什麼都不懂」
現在有一位總統,明明外交機密費用還有剩下很多,卻說他辛苦拿女兒買書的發票報帳是為了獲得更多外交機密費。明明自己六年來不曉得用掉多少機密預算執行秘密任務,還說報假帳是因為外交部不安全不可以信任。從來沒聽過他抱怨機密經費設計的不夠安全,報假帳被抓才說制度有問題不能用。口口聲聲說他只是挖東牆補西牆,都是為了國家,但過去也沒聽過他挪用總統府自己的錢來幫助治水或是學童營養午餐。報假帳救台灣?騙誰啊!
--
黑心錢真的不要拿
這個故事的主角
雖然污錢的總數可能不是台灣最多的
可是吃相難看十倍以上
吃了被抓到還說是很委屈,為了國家
外面怨氣衝天還說不看媒體不看報紙通通裝作沒看到
就別怪很多人會生氣
就別怪他很多屬下把資料拿給某電視台和衝車將軍
就別怪他每天都變成十點連續劇的主角 全文連結
消息人士透露,陳總統應訊用台語向陳瑞仁喊冤:「台灣外交真的很難做,我為台灣這麼拚命,沒想到卻被罵成這樣,實在很委屈!」
從前從前,有一家地處偏僻的高中叫做山村高中,附近有一家賭博電玩,是學生翻牆翹課常去的不良場所,教官也常改穿便服偽裝民眾去巡邏抓人。
話說某天有個叫做小明的學生,在賭博電玩門口被逮到。小明說:「報告教官,我只是來賭博電玩隔壁的商店買吃的,我之所以在上課時間翻牆外出買食物,是因為我真的太餓了」。教官一聽就問:「學校裡面就有福利社,你何必翻牆出去買東西吃?」小明舌頭打結了一下,馬上又說:「報告教官,那是因為學校福利社的東西實在太不衛生了,我一向不大敢在福利社買東西吃」。結果教官回校訪查,發現小明天天都到福利社買東西吃,也沒人聽他抱怨過福利社東西不新鮮。最後教官把小明叫來教官室,當場給他記了過,小明回到教室還對同學說:「我只是便宜行事,為了填飽肚子去買東西吃而已,教官是大外行,食品衛生他什麼都不懂」
現在有一位總統,明明外交機密費用還有剩下很多,卻說他辛苦拿女兒買書的發票報帳是為了獲得更多外交機密費。明明自己六年來不曉得用掉多少機密預算執行秘密任務,還說報假帳是因為外交部不安全不可以信任。從來沒聽過他抱怨機密經費設計的不夠安全,報假帳被抓才說制度有問題不能用。口口聲聲說他只是挖東牆補西牆,都是為了國家,但過去也沒聽過他挪用總統府自己的錢來幫助治水或是學童營養午餐。報假帳救台灣?騙誰啊!
--
黑心錢真的不要拿
這個故事的主角
雖然污錢的總數可能不是台灣最多的
可是吃相難看十倍以上
吃了被抓到還說是很委屈,為了國家
外面怨氣衝天還說不看媒體不看報紙通通裝作沒看到
就別怪很多人會生氣
就別怪他很多屬下把資料拿給某電視台和衝車將軍
就別怪他每天都變成十點連續劇的主角 全文連結
星期四, 9月 07, 2006
維吉尼亞州反垃圾郵件法案合憲
新聞來源
其實貼出這篇的目的並不是想要討論垃圾郵件應該要怎麼處理。而是想要探討違憲審查所應該具備的態度。
我個人的態度並不是反對違憲審查的存在。但是違憲審查在民主國家有可能變形卻是一項值得注意的事實。假設今天有人這樣問:你願不願意在民主國家設置一個「偉大機構」,那個機構可以根據自己的喜好決定什麼是對國家人民最好的,然後在覺得有必要的時候發佈「神聖指令」,而國家中其他機關,不管是立法機關所立的法律或是行政機關的行政行為,和「神聖指令」牴觸者全部無效。而且這個機關不受國家其他權力的制衡,不受民意監督,不經過選舉產生,擁有任期保障,不可以隨便撤換。
我想很多人聽到的時候可能會敲提問者的腦袋,說:你瘋了,設立一個偉大機構並且賦予他推翻所有民意機構決策的權利,這樣的國家怎麼能叫做民主國家?但是仔細想想,很多民主國家真的有這種「偉大機構」,我國也有,就是司法院的大法官。
一般的訴訟有「三級三審」,一個法院判錯了,有機會由下一個法院平反。但是司法院大法官做出來的解釋卻相當於「奉天承運,皇帝召曰」的聖旨,法律被宣告違憲,是一拳擊倒,直接再見。這種機構在民主國家的正當性,當然是要大受討論的。不然一個國家每幾年花一大堆錢選出一大票國會議員,他們聆聽選民意見,經過反覆討論,推敲思考再加上利益折衝做出來的決議,卻可以被一個不到二十人且不是人民選出的小團體直接推翻,這樣有必要弄什麼選舉嗎?
所謂的「憲法」,其實就是「人民權利保障書」,裡面規範了人民不可被任意侵害的權利,如自由權、財產權、信仰自由等,也規範了國家政府運作的根本機轉,如權力分立的架構等,以避免國家機器內部產生極權,危害人民的權利。對於憲法的解釋,用另一種角度講,其實就是對「人民最高旨意」的解釋。大法官不由人民選舉,國會卻是由人民選舉產生,對於「解釋人民最高意願的內涵」這種「揣摩上意」的工作,應該是有民主背景的國會更能勝任,所作解釋更為精確,應該是由國會解釋憲法才對,大法官憑什麼插一腳?大法官介入的正當性在哪裡?這可不是一句「因為憲法說法律是否違憲由司法院審查」就可以解決的。
現在解釋法律是否違憲的燙手山芋已經丟給違憲審查了,違憲審查者應該要如何作為,才能發揮憲法所期許的「防止國會濫權」的角色,而又不會落入「大法官治理國家」的反民主,抗多數困境中呢?答案應該是大法官設立「違憲標準」的方法。
如何訂定法律是否違憲的標準?個人認為,憲法是抽象的,比如憲法規定「人民財產權要受到保護」,要保護到什麼程度?又或是更常見的情況:兩種憲法所保障的價值互相衝突的時候該怎麼辦?比如美國羅斯福總統為了保障勞工,提出了基本薪資的法案,可是這種法案和美國憲法揭櫫的「契約自由,國家不得干涉契約訂立」的明文規定直接衝突。怎麼辦?這時候制定「法律怎麼樣才叫違憲」的標準,就大有學問了。以羅斯福新政基本薪資法案這個例子來說:
第一種作法,宣告法律牴觸美國憲法對契約自由的保障而違憲,這也是基本薪資法案剛出現的時候大法官所做的事情,結果被社會大眾罵到臭頭。很多人,我稱為「法官崇拜教派」,這樣說:「憲法就是憲法,憲法既然明白這樣說,就要明白這樣遵守,我知道社會有需求,但是這應該透過修憲。」但這種作法是不符合時代需求的。
「喂!難道時代需求就可以超越憲法嗎?」錯!是發問的人問錯了,應該說是:時代的需求,本身就是憲法!以基本薪資法案來說,基本薪資保障的是勞工的財產權,因為勞工一般來說屬於弱勢,很難和資方平等的簽訂契約,導致他們的財產權受到雇主不合理條約的任意限制,契約自由固然受到憲法保障,難道勞工的財產權就不受到憲法保障?為甚麼大法官在「契約自由」和「財產權」兩個同樣受到憲法保障的概念之中,選擇前者而直接放棄後者?是因為「契約自由」寫的比較明白,需要的推理步數比較少嗎?更廣泛的檢視,所謂的「社會需求」,通常不會超過憲法保障基本權的範疇,所以基於社會需求的相關立法,即使直接衝撞憲法條文,也可以視為兩種憲法價值的對決,還是有討論的空間。所以,「因為XXXX直接牴觸憲法條文,所以就是違憲」這種論述,是不成立的。這樣講好像有點諷刺我國最近某些有政治爭議的釋憲文的味道XD
那大法官應該怎麼做呢?用憲法條文硬梆梆的直接打死不行,不然由大法官來判定哪個價值比較重要好了,這樣總行吧?還是不行,因為這樣還是沒有擺脫「違憲審查者可能讓自己的喜好、思想凌駕人民經由間接民主所表達的民意」的困境。
那大法官照本宣科硬解條文也不行,自己推敲也不行,那應該怎麼辦嘛?既然大法官遇到的問題是「權利甲和權利乙,哪一種對人民比較重要?」,那就直接問人民不就好了嗎?「可是我們是在討論憲法耶,不是討論民意啊?難道現在的民意可以解釋過去制定的憲法?」當然可以!有兩大理由,第一個理由:憲法法律總是寫不清楚,有時必須由當時社會情況補充法律,比如法律規定打破別人電腦要賠錢,但是法律偏偏又沒有寫一台電腦值多少錢。這時候當然是藉由相關的發票,或是去賣場問問,來決定電腦在法律上的價值。回到憲法的問題,「最高民意」,憲法有說要保障財產權,可是沒有說怎麼保障、保障多少。這時候用「當代民意」來推敲「最高民意」的內涵不是最準確的方法嗎?
第二個理由是:價值總是會變動的。舉個例子,中華民國憲法寫出來的時候,世界上還不流行什麼「智慧財產權」的概念,難道要因此說憲法不承認智慧財產權屬於財產權的一種?難道要說為了保護智慧財產權而對人民自由的限制行為全部違憲?這種說法顯然不是憲法的本意。以文言文來說,憲法的解釋權,在憲法被制定的瞬間,就已經由制憲者的手中被釋放出來,不是他的專利了。所以基於「細節補充」和「價值變遷」兩大理由,用「民意」解釋「憲法」,是可行的。
那違憲審查要怎麼檢視國會通過的法律?應該是,只要國會能舉出足夠的理由,證明其決策是沒有私慾動機的理性決策,那麼就應該推定國會該法案是代表民意,應該合憲的,畢竟民意和社會需求可以解釋、代表憲法嘛。這種作法,比較符合違憲審查一開始的角色:檢查國會有沒有侵害人民的權利。違憲審查的角色並不是幫國會找尋更好的法律,也不是當人民的導師。個人感覺我這種說法應該有點類似John Ely大師的「代議補強理論」了,只是我自己還沒把相關的書讀熟,不敢論定啦orz
回到主題吧,以維吉尼亞州反垃圾郵件法案合憲作為實戰演練吧!難道垃圾信不是言論的一種嗎?大法官根據什麼理由宣告限制言論自由的法律合憲?是根據美國建國時期的憲法見解嗎?當然不是,那時候的根本沒出現所謂垃圾電子郵件,要怎麼引用?那麼是根據法官自己的意旨嗎?難道國會的法律是因為受到法官的「加持」才確定合憲?這樣違憲審查者和國王有什麼兩樣?這時法官做的應該是:根據國會立法時所顯示的證據,以及正反兩方提供的證據,確認民意著重「反垃圾郵件帶來的社會利益」大於「垃圾郵件製造者被犧牲的言論自由」,因此推定:「反垃圾郵件的社會利益」在憲法上的重要性應該大於「發垃圾郵件的自由」,所以推定保護社會利益的反垃圾郵件法合憲。總而言之,利用「當代民意」補充「最高民意」所產生的「最高民意完整版」,是違憲審查者所應該用的標準。
唉,寫了落落長,其實是想到最近大法官做的幾個宣告立法院法律違憲的解釋啊,憲政王者,人民導師,無敵大法官啊.... 全文連結
其實貼出這篇的目的並不是想要討論垃圾郵件應該要怎麼處理。而是想要探討違憲審查所應該具備的態度。
我個人的態度並不是反對違憲審查的存在。但是違憲審查在民主國家有可能變形卻是一項值得注意的事實。假設今天有人這樣問:你願不願意在民主國家設置一個「偉大機構」,那個機構可以根據自己的喜好決定什麼是對國家人民最好的,然後在覺得有必要的時候發佈「神聖指令」,而國家中其他機關,不管是立法機關所立的法律或是行政機關的行政行為,和「神聖指令」牴觸者全部無效。而且這個機關不受國家其他權力的制衡,不受民意監督,不經過選舉產生,擁有任期保障,不可以隨便撤換。
我想很多人聽到的時候可能會敲提問者的腦袋,說:你瘋了,設立一個偉大機構並且賦予他推翻所有民意機構決策的權利,這樣的國家怎麼能叫做民主國家?但是仔細想想,很多民主國家真的有這種「偉大機構」,我國也有,就是司法院的大法官。
一般的訴訟有「三級三審」,一個法院判錯了,有機會由下一個法院平反。但是司法院大法官做出來的解釋卻相當於「奉天承運,皇帝召曰」的聖旨,法律被宣告違憲,是一拳擊倒,直接再見。這種機構在民主國家的正當性,當然是要大受討論的。不然一個國家每幾年花一大堆錢選出一大票國會議員,他們聆聽選民意見,經過反覆討論,推敲思考再加上利益折衝做出來的決議,卻可以被一個不到二十人且不是人民選出的小團體直接推翻,這樣有必要弄什麼選舉嗎?
所謂的「憲法」,其實就是「人民權利保障書」,裡面規範了人民不可被任意侵害的權利,如自由權、財產權、信仰自由等,也規範了國家政府運作的根本機轉,如權力分立的架構等,以避免國家機器內部產生極權,危害人民的權利。對於憲法的解釋,用另一種角度講,其實就是對「人民最高旨意」的解釋。大法官不由人民選舉,國會卻是由人民選舉產生,對於「解釋人民最高意願的內涵」這種「揣摩上意」的工作,應該是有民主背景的國會更能勝任,所作解釋更為精確,應該是由國會解釋憲法才對,大法官憑什麼插一腳?大法官介入的正當性在哪裡?這可不是一句「因為憲法說法律是否違憲由司法院審查」就可以解決的。
現在解釋法律是否違憲的燙手山芋已經丟給違憲審查了,違憲審查者應該要如何作為,才能發揮憲法所期許的「防止國會濫權」的角色,而又不會落入「大法官治理國家」的反民主,抗多數困境中呢?答案應該是大法官設立「違憲標準」的方法。
如何訂定法律是否違憲的標準?個人認為,憲法是抽象的,比如憲法規定「人民財產權要受到保護」,要保護到什麼程度?又或是更常見的情況:兩種憲法所保障的價值互相衝突的時候該怎麼辦?比如美國羅斯福總統為了保障勞工,提出了基本薪資的法案,可是這種法案和美國憲法揭櫫的「契約自由,國家不得干涉契約訂立」的明文規定直接衝突。怎麼辦?這時候制定「法律怎麼樣才叫違憲」的標準,就大有學問了。以羅斯福新政基本薪資法案這個例子來說:
第一種作法,宣告法律牴觸美國憲法對契約自由的保障而違憲,這也是基本薪資法案剛出現的時候大法官所做的事情,結果被社會大眾罵到臭頭。很多人,我稱為「法官崇拜教派」,這樣說:「憲法就是憲法,憲法既然明白這樣說,就要明白這樣遵守,我知道社會有需求,但是這應該透過修憲。」但這種作法是不符合時代需求的。
「喂!難道時代需求就可以超越憲法嗎?」錯!是發問的人問錯了,應該說是:時代的需求,本身就是憲法!以基本薪資法案來說,基本薪資保障的是勞工的財產權,因為勞工一般來說屬於弱勢,很難和資方平等的簽訂契約,導致他們的財產權受到雇主不合理條約的任意限制,契約自由固然受到憲法保障,難道勞工的財產權就不受到憲法保障?為甚麼大法官在「契約自由」和「財產權」兩個同樣受到憲法保障的概念之中,選擇前者而直接放棄後者?是因為「契約自由」寫的比較明白,需要的推理步數比較少嗎?更廣泛的檢視,所謂的「社會需求」,通常不會超過憲法保障基本權的範疇,所以基於社會需求的相關立法,即使直接衝撞憲法條文,也可以視為兩種憲法價值的對決,還是有討論的空間。所以,「因為XXXX直接牴觸憲法條文,所以就是違憲」這種論述,是不成立的。這樣講好像有點諷刺我國最近某些有政治爭議的釋憲文的味道XD
那大法官應該怎麼做呢?用憲法條文硬梆梆的直接打死不行,不然由大法官來判定哪個價值比較重要好了,這樣總行吧?還是不行,因為這樣還是沒有擺脫「違憲審查者可能讓自己的喜好、思想凌駕人民經由間接民主所表達的民意」的困境。
那大法官照本宣科硬解條文也不行,自己推敲也不行,那應該怎麼辦嘛?既然大法官遇到的問題是「權利甲和權利乙,哪一種對人民比較重要?」,那就直接問人民不就好了嗎?「可是我們是在討論憲法耶,不是討論民意啊?難道現在的民意可以解釋過去制定的憲法?」當然可以!有兩大理由,第一個理由:憲法法律總是寫不清楚,有時必須由當時社會情況補充法律,比如法律規定打破別人電腦要賠錢,但是法律偏偏又沒有寫一台電腦值多少錢。這時候當然是藉由相關的發票,或是去賣場問問,來決定電腦在法律上的價值。回到憲法的問題,「最高民意」,憲法有說要保障財產權,可是沒有說怎麼保障、保障多少。這時候用「當代民意」來推敲「最高民意」的內涵不是最準確的方法嗎?
第二個理由是:價值總是會變動的。舉個例子,中華民國憲法寫出來的時候,世界上還不流行什麼「智慧財產權」的概念,難道要因此說憲法不承認智慧財產權屬於財產權的一種?難道要說為了保護智慧財產權而對人民自由的限制行為全部違憲?這種說法顯然不是憲法的本意。以文言文來說,憲法的解釋權,在憲法被制定的瞬間,就已經由制憲者的手中被釋放出來,不是他的專利了。所以基於「細節補充」和「價值變遷」兩大理由,用「民意」解釋「憲法」,是可行的。
那違憲審查要怎麼檢視國會通過的法律?應該是,只要國會能舉出足夠的理由,證明其決策是沒有私慾動機的理性決策,那麼就應該推定國會該法案是代表民意,應該合憲的,畢竟民意和社會需求可以解釋、代表憲法嘛。這種作法,比較符合違憲審查一開始的角色:檢查國會有沒有侵害人民的權利。違憲審查的角色並不是幫國會找尋更好的法律,也不是當人民的導師。個人感覺我這種說法應該有點類似John Ely大師的「代議補強理論」了,只是我自己還沒把相關的書讀熟,不敢論定啦orz
回到主題吧,以維吉尼亞州反垃圾郵件法案合憲作為實戰演練吧!難道垃圾信不是言論的一種嗎?大法官根據什麼理由宣告限制言論自由的法律合憲?是根據美國建國時期的憲法見解嗎?當然不是,那時候的根本沒出現所謂垃圾電子郵件,要怎麼引用?那麼是根據法官自己的意旨嗎?難道國會的法律是因為受到法官的「加持」才確定合憲?這樣違憲審查者和國王有什麼兩樣?這時法官做的應該是:根據國會立法時所顯示的證據,以及正反兩方提供的證據,確認民意著重「反垃圾郵件帶來的社會利益」大於「垃圾郵件製造者被犧牲的言論自由」,因此推定:「反垃圾郵件的社會利益」在憲法上的重要性應該大於「發垃圾郵件的自由」,所以推定保護社會利益的反垃圾郵件法合憲。總而言之,利用「當代民意」補充「最高民意」所產生的「最高民意完整版」,是違憲審查者所應該用的標準。
唉,寫了落落長,其實是想到最近大法官做的幾個宣告立法院法律違憲的解釋啊,憲政王者,人民導師,無敵大法官啊.... 全文連結
星期三, 9月 06, 2006
星期二, 9月 05, 2006
星期一, 9月 04, 2006
星期日, 9月 03, 2006
小反省...
自己看自己的部落格,發現最近電腦文好像有點氾濫呢。
或許可以解釋成這是個人的喜好吧,因為我就是喜歡電腦,小五當年我媽帶我逛街時經過一家電腦店,裡面有電腦課程,我媽就幫我報了名,結果我和電腦的緣份就這樣開始了。上沒幾堂課,就證明了電腦和我真的很投緣,只要和電腦有關,我什麼都想學。當時我聽到我就讀的永福國小有類似資訊社的東西,我也是毫不猶豫的立刻報名,學到了一點當時還很新的Paint Shop Pro。那時我就立志要成為和我電腦老師一樣厲害的程式設計師,目標是學會遊戲設計,寫出和我當時愛玩的Commander Keen類似的軟體,沒錯,那時我認為256色EGA 2D橫向捲軸遊戲就是程式設計最強的奧義。
程式設計就這樣陪我走了好幾年,還記得小六用Basic(不是Visual Basic,那時Windows 95應該是不存在或是剛出)寫了一隻電子雞,用locate移動作標印出Ascii圖案當作小雞,然後用for loop當作延遲避免程式跑太快,那時程式要拷貝到不同電腦還要調整for迴圈,不然程式速度會不對。然後伴隨著那位當初教我的電腦老師,我學會了組合語言,學會了C語言,然後漸漸學會物件導向,之後高中的時候接觸演算法,研究一點ACM,然後在資訊社每天玩小朋友,看DNA、dream、Twsam快樂的TK,然後玩到別班上課整個教室都是別班同學,老師賞白眼我們還不走。那時生涯規劃很單純:我要當程式設計師,然後和資訊社的人一起考上資訊相關科系。
但是後來媽媽介入了,因為我成績很好,考的上醫學院,所以媽媽希望我當醫生,基於經濟未來的需要和媽媽的意見,我選擇了醫學院作為聯考志願並且考上了我現在的學校,成為了醫學生。
但是醫學的學問並不是我喜歡的,從小或許是個性的關係,我非常討厭戶外活動和大自然,聞到青草的味道還會覺得不舒服,至於動物植物那些我一點興趣都沒有,從來都不會想去動物園,或是看動植物相關的書籍。森林對我來說就是樹木的集合,山水對我來說就是土堆和停止不動的水,對於大自然的事物:碳氫氧的排列組合,我一點興趣都沒有。但是我卻當上了醫學生,以人體為導向的世界在我面前展開。醫學生的思維習慣我無法適應,醫學生的學習科目我難以吸收,就是那麼討厭,醫學不是我的興趣!但是每當讀書讀到接近瘋掉的時候,我還是會回到電腦這裡來,看一下卡通,讀一點電子書,或是打開IDE繼續拼程式設計,嘿,學校不教程式設計,我自己學,PHP很流行是吧?於是,在醫學生的大學生涯裡,白天我是道地的醫學生,但下午拖著疲憊的身軀回家,讀完必要的功課後,我又會搖身一變變成程式設計師,以比讀醫學共比還快十倍的速度翻閱電腦原文書,彷彿還可以聞到台南我老師的店電腦紙盒那令人懷念的氣味似的。我潛伏在電腦知識的浩瀚巨海中探索那深奧的真理,貪婪的吸取著一切。
或許是我對電腦的執著和對自然事物(包括醫學)的極度厭惡太過強烈吧,我媽說,當我讀醫學書的時候,即使只是從我身後好幾公尺經過,都可以感覺到強烈的恨意從我身上發出。強烈的憎恨和壓力甚至讓我有時到達接近想不開的階段,媽媽不只一次的用憂心的語氣問我要不要重考,讓一切從頭來過,忘掉醫學吧,強迫我選擇我所不愛的醫學,好像真的是一個巨大的錯誤。但是每次被問到這個問題時,儘管醫學之路對一個程式設計師真的是極度的荊棘和充滿哀傷,但我已經走了這麼遠,我已經花了好多年,離執照只剩下四年、三年,如果我重考,那一切都得重來,媽媽、家人這幾年付出的心血和辛苦賺來投注在我身上的經濟資源一切都付諸東流。所以我媽問到這個問題時,我都選擇繼續讀下去,奮鬥下去,奮戰下去.....
既然做出了選擇,那我的態度似乎也必須有所改變才行,不能把自己關在我所喜愛的電腦避風港,然後對外面的狂風暴雨採取視而不見、厭惡逃避的態度,既然下定決心要撐過去,那就得積極面對。並不是說要放棄電腦、捨棄所學,而是說我必須更積極的扮演醫學生這個角色。我必須正視一件事情:我未來會成為醫生,不是程式設計師。所以我面對醫學學問的態度恐怕必須更積極,不能永遠把自己關在電腦裡。我必須更努力的鑽研醫學才行。
或許是開學近了,程式設計師的身份即將再度告一段落,才會有感而發吧。 全文連結
或許可以解釋成這是個人的喜好吧,因為我就是喜歡電腦,小五當年我媽帶我逛街時經過一家電腦店,裡面有電腦課程,我媽就幫我報了名,結果我和電腦的緣份就這樣開始了。上沒幾堂課,就證明了電腦和我真的很投緣,只要和電腦有關,我什麼都想學。當時我聽到我就讀的永福國小有類似資訊社的東西,我也是毫不猶豫的立刻報名,學到了一點當時還很新的Paint Shop Pro。那時我就立志要成為和我電腦老師一樣厲害的程式設計師,目標是學會遊戲設計,寫出和我當時愛玩的Commander Keen類似的軟體,沒錯,那時我認為256色EGA 2D橫向捲軸遊戲就是程式設計最強的奧義。
程式設計就這樣陪我走了好幾年,還記得小六用Basic(不是Visual Basic,那時Windows 95應該是不存在或是剛出)寫了一隻電子雞,用locate移動作標印出Ascii圖案當作小雞,然後用for loop當作延遲避免程式跑太快,那時程式要拷貝到不同電腦還要調整for迴圈,不然程式速度會不對。然後伴隨著那位當初教我的電腦老師,我學會了組合語言,學會了C語言,然後漸漸學會物件導向,之後高中的時候接觸演算法,研究一點ACM,然後在資訊社每天玩小朋友,看DNA、dream、Twsam快樂的TK,然後玩到別班上課整個教室都是別班同學,老師賞白眼我們還不走。那時生涯規劃很單純:我要當程式設計師,然後和資訊社的人一起考上資訊相關科系。
但是後來媽媽介入了,因為我成績很好,考的上醫學院,所以媽媽希望我當醫生,基於經濟未來的需要和媽媽的意見,我選擇了醫學院作為聯考志願並且考上了我現在的學校,成為了醫學生。
但是醫學的學問並不是我喜歡的,從小或許是個性的關係,我非常討厭戶外活動和大自然,聞到青草的味道還會覺得不舒服,至於動物植物那些我一點興趣都沒有,從來都不會想去動物園,或是看動植物相關的書籍。森林對我來說就是樹木的集合,山水對我來說就是土堆和停止不動的水,對於大自然的事物:碳氫氧的排列組合,我一點興趣都沒有。但是我卻當上了醫學生,以人體為導向的世界在我面前展開。醫學生的思維習慣我無法適應,醫學生的學習科目我難以吸收,就是那麼討厭,醫學不是我的興趣!但是每當讀書讀到接近瘋掉的時候,我還是會回到電腦這裡來,看一下卡通,讀一點電子書,或是打開IDE繼續拼程式設計,嘿,學校不教程式設計,我自己學,PHP很流行是吧?於是,在醫學生的大學生涯裡,白天我是道地的醫學生,但下午拖著疲憊的身軀回家,讀完必要的功課後,我又會搖身一變變成程式設計師,以比讀醫學共比還快十倍的速度翻閱電腦原文書,彷彿還可以聞到台南我老師的店電腦紙盒那令人懷念的氣味似的。我潛伏在電腦知識的浩瀚巨海中探索那深奧的真理,貪婪的吸取著一切。
或許是我對電腦的執著和對自然事物(包括醫學)的極度厭惡太過強烈吧,我媽說,當我讀醫學書的時候,即使只是從我身後好幾公尺經過,都可以感覺到強烈的恨意從我身上發出。強烈的憎恨和壓力甚至讓我有時到達接近想不開的階段,媽媽不只一次的用憂心的語氣問我要不要重考,讓一切從頭來過,忘掉醫學吧,強迫我選擇我所不愛的醫學,好像真的是一個巨大的錯誤。但是每次被問到這個問題時,儘管醫學之路對一個程式設計師真的是極度的荊棘和充滿哀傷,但我已經走了這麼遠,我已經花了好多年,離執照只剩下四年、三年,如果我重考,那一切都得重來,媽媽、家人這幾年付出的心血和辛苦賺來投注在我身上的經濟資源一切都付諸東流。所以我媽問到這個問題時,我都選擇繼續讀下去,奮鬥下去,奮戰下去.....
既然做出了選擇,那我的態度似乎也必須有所改變才行,不能把自己關在我所喜愛的電腦避風港,然後對外面的狂風暴雨採取視而不見、厭惡逃避的態度,既然下定決心要撐過去,那就得積極面對。並不是說要放棄電腦、捨棄所學,而是說我必須更積極的扮演醫學生這個角色。我必須正視一件事情:我未來會成為醫生,不是程式設計師。所以我面對醫學學問的態度恐怕必須更積極,不能永遠把自己關在電腦裡。我必須更努力的鑽研醫學才行。
或許是開學近了,程式設計師的身份即將再度告一段落,才會有感而發吧。 全文連結
Yeah!Comments功能完成
今天的戰役完全是和IE的奮鬥,在電腦前面不斷的和local copy以及IE超模糊的錯誤訊息奮戰(「引數無效」「未知執行期間錯誤」),但總算是讓IE Comment的顯示工作也成功了XD
今天和IE的奮鬥有幾個小感想:
第一,不要相信MSDN,很多事情MSDN沒有告訴你,特別是IE JS engine的臭蟲。
第二,不要改已存在div的innerHTML,不然有可能出事,基本上出不出事要看IE的心情,有時候一樣的語法在某檔好好的,複製貼上到另一份code就爆死,「未知執行期間錯誤」,你的code紅牌一張。
第三,IE的removeChild好像有問題,雖然MSDN上是說removeChild(obj)會把obj從DOM tree上吃掉,可是實際使用感覺上他吃掉的好像是該敘述前後五行的Javascript code....
想要看Code的就檢視原始碼吧XD,HTML body後面一大段script就是了XD
---
小後記
其實還有個有趣的現象,比如http://d8888.blogspot.com/comment.html#links這種連結,IE用位址欄直接開是沒有問題的,但是如果用XMLHttpRequest的話就要把後面的#links拿掉再呼叫open,不然blogger會404。
IE這種東西碰久會瘋掉,終於知道為甚麼很多Web developer都挺firefox,所謂IE的精神,就是該限制的不限制,不該限制的限制一大堆,官方文件永遠不準,只要有API就會有bug,更神的是呼叫IE的API還要看IE心情好不好.... 全文連結
今天和IE的奮鬥有幾個小感想:
第一,不要相信MSDN,很多事情MSDN沒有告訴你,特別是IE JS engine的臭蟲。
第二,不要改已存在div的innerHTML,不然有可能出事,基本上出不出事要看IE的心情,有時候一樣的語法在某檔好好的,複製貼上到另一份code就爆死,「未知執行期間錯誤」,你的code紅牌一張。
第三,IE的removeChild好像有問題,雖然MSDN上是說removeChild(obj)會把obj從DOM tree上吃掉,可是實際使用感覺上他吃掉的好像是該敘述前後五行的Javascript code....
想要看Code的就檢視原始碼吧XD,HTML body後面一大段script就是了XD
---
小後記
其實還有個有趣的現象,比如http://d8888.blogspot.com/comment.html#links這種連結,IE用位址欄直接開是沒有問題的,但是如果用XMLHttpRequest的話就要把後面的#links拿掉再呼叫open,不然blogger會404。
IE這種東西碰久會瘋掉,終於知道為甚麼很多Web developer都挺firefox,所謂IE的精神,就是該限制的不限制,不該限制的限制一大堆,官方文件永遠不準,只要有API就會有bug,更神的是呼叫IE的API還要看IE心情好不好.... 全文連結
星期六, 9月 02, 2006
嗚....蟲抓不出來....
其實應該說是解決不了...去google「Unknown Runtime Error」這個東西,好像是IE從4還是5就有的「優良傳統」之一。好像只要想填入的innerHTML滿足某些特定條件就會發作,所以網路上的解法是把要填進去的東西作控管,不過這我好像做不來orz
所以目前的解決辦法就是script前面加一段,只要偵測到瀏覽器支援document.all,Script就放棄執行。所以想看到我所加入動態效果的看官們,請愛用firefox這些更乾淨,更friendly的瀏覽器吧(不只是對User而言,對developer也是啊XD)
P.S如果有看官想要拿script來看的話,檢視原始碼就看得到了XD 全文連結
所以目前的解決辦法就是script前面加一段,只要偵測到瀏覽器支援document.all,Script就放棄執行。所以想看到我所加入動態效果的看官們,請愛用firefox這些更乾淨,更friendly的瀏覽器吧(不只是對User而言,對developer也是啊XD)
P.S如果有看官想要拿script來看的話,檢視原始碼就看得到了XD 全文連結
星期五, 9月 01, 2006
comment終於有作用了
拼了好幾天,終於讓這個功能在firefox實現出來。各位使用firefox的看官可以嘗試按按看回文數大於零的comment連結(1 comments,2 comments),應該會注意到他跑出下拉式的小東西,而不是直接開新分頁。至於使用M$IE的看官們不用試了orz,他不會理你orz,因為IE處理自己發明的innerHTML好像有bug orz。
今天真是披荊斬棘啊,script插入不能的問題解決了,只要遵守一下XML的規則,用CDATA把script包起來即可。script本身也出過一大堆包,最後怎麼修好的自己都忘記了orz,因為glitch實在太多,有時在自己blog的local copy上實做完全成功,一拿到真正的環境立刻爆死orz。
啊啊啊啊,明天再繼續抓蟲吧~~~~~~ 全文連結
今天真是披荊斬棘啊,script插入不能的問題解決了,只要遵守一下XML的規則,用CDATA把script包起來即可。script本身也出過一大堆包,最後怎麼修好的自己都忘記了orz,因為glitch實在太多,有時在自己blog的local copy上實做完全成功,一拿到真正的環境立刻爆死orz。
啊啊啊啊,明天再繼續抓蟲吧~~~~~~ 全文連結
嗚.........
雖然年紀已經比較大了,但是到了現在,仍然有很多事物令我感到神秘。
比如說寫一個Javascript,費盡千辛萬苦,在本地電腦的blogger網誌存檔可以跑,但是當想要真的拿來用,嘗試在template新增Javascript/HTML區段時,卻發現他會自動改code,比如單引號自動變雙引號,還有很多謎之斷句,把code千刀萬剮到面目全非,這是一種神秘。
在網頁中插入<script src="blahblahblah">讓網頁載入Javascript並且執行,這不是什麼驚人的事情,但是當網頁中插入script tag並且指定來源,網頁還是不會跑script,就算裡面只有一行alert("hi")也一樣,這才是神秘的事情,
blogger真是令人扼腕啊...經過長久的苦戰,好不容易發現,點本文permalink可以看到本文和comment,而且permalink和首頁同一個domain,用XMLHttpRequest開絕對沒問題,結果現在問題是blogger根本不理我插進去的Javascript =口=
發現HTML 直接編輯可以開耶....下次研究看看blogger有沒有提供直接加template tag好了..... 全文連結
比如說寫一個Javascript,費盡千辛萬苦,在本地電腦的blogger網誌存檔可以跑,但是當想要真的拿來用,嘗試在template新增Javascript/HTML區段時,卻發現他會自動改code,比如單引號自動變雙引號,還有很多謎之斷句,把code千刀萬剮到面目全非,這是一種神秘。
在網頁中插入<script src="blahblahblah">讓網頁載入Javascript並且執行,這不是什麼驚人的事情,但是當網頁中插入script tag並且指定來源,網頁還是不會跑script,就算裡面只有一行alert("hi")也一樣,這才是神秘的事情,
blogger真是令人扼腕啊...經過長久的苦戰,好不容易發現,點本文permalink可以看到本文和comment,而且permalink和首頁同一個domain,用XMLHttpRequest開絕對沒問題,結果現在問題是blogger根本不理我插進去的Javascript =口=
發現HTML 直接編輯可以開耶....下次研究看看blogger有沒有提供直接加template tag好了..... 全文連結
訂閱:
文章 (Atom)