ETH官方钱包

創(chuàng)作內(nèi)容

2 GP

高階程式語言理論-導(dǎo)論

作者:藍(lán)貓│2013-10-10 09:51:43│巴幣:4│人氣:575
前言
前面先跟大家講一下,無志深入資訊產(chǎn)業(yè)或?qū)W習(xí)寫程式的人,可以跳過這部份的理論,因?yàn)樗菍?shí)作哲學(xué),跟我們?cè)趯W(xué)校寫作業(yè)的取向完全不同,基本上學(xué)習(xí)的目標(biāo)是:美好曼妙的設(shè)計(jì)原則。

筆者認(rèn)知的高階程式語言理論,並不像大家想的那樣是一種實(shí)作技術(shù),在這裡我不會(huì)談指標(biāo)的概念,不會(huì)談?lì)悇e的使用方法跟宣告方法,更不會(huì)提例外處理如何宣告跟實(shí)作,這些技術(shù)性的東西我們會(huì)在程式設(shè)計(jì)相關(guān)理論補(bǔ)足,並且會(huì)依學(xué)習(xí)難易度給予各位讀者適合的建議。

對(duì)於高階程式語言理論,我更傾向把它稱作一種程式的藝術(shù)手法,什麼是程式的藝術(shù)手法呢?就是,通常要有一點(diǎn)慧根跟實(shí)作經(jīng)驗(yàn)做結(jié)合,才能有所感覺的東西,而且這個(gè)東西沒有完全正確的概念跟作法,有些作法拿給一群人看覺得OK,另一群人可能就會(huì)有不同的見解。

內(nèi)容概要
簡(jiǎn)單來說很大部份是程式哲學(xué),它不是一個(gè)固定不變的法則,而是一個(gè)可遵守也可不被遵守的原則,比方說我喜歡把結(jié)構(gòu)化程式設(shè)計(jì)說成是一種法則,而這個(gè)法則通常是大方向,且很少會(huì)有人去質(zhì)疑的。

舉例來說,每個(gè)人都有不同的原則,有的人喜歡早睡早起,這是個(gè)好原則好習(xí)慣,但是不是所有人都肯定或遵守,那我就會(huì)稱它叫原則。

在這裡筆者基本上會(huì)把程式藝術(shù)分成兩大部份討論:
、資料質(zhì)感跟品質(zhì)
、結(jié)構(gòu)藝術(shù)

例如:

1.我們會(huì)深入討論到,物件導(dǎo)向的用意,以往我們都以為會(huì)寫類別就是等於學(xué)會(huì)了物件導(dǎo)向,但這兩件事是完全無關(guān)的,物件導(dǎo)向是實(shí)作,但它同時(shí)也是一種思維,思維不轉(zhuǎn)變就不會(huì)認(rèn)知到物件導(dǎo)向的好,反而認(rèn)為物件導(dǎo)向除了實(shí)作麻煩沒有任何好處,在這部份筆者將告訴你物件導(dǎo)向是多麼人性.多麼優(yōu)雅,它將以花枝招展的舞步呈現(xiàn)在各位面前。

2.學(xué)校寫作業(yè)變數(shù)跟函數(shù)怎麼命名無所謂,但是高階程式設(shè)計(jì)講究的是最好的命名,而且命名是一切的基礎(chǔ),跳過命名,基本上就等於摒棄.背離了美好曼妙的設(shè)計(jì)原則。

3.在學(xué)校寫程式作業(yè),邏輯只要正確,誰還管你程式邏輯是好是壞?但是這裡探討的東西都是在實(shí)作軟體程式的階段,如何把邏輯寫的更乾淨(jìng)更易理解,是你必需去考慮的原則。

3.函數(shù)要怎麼寫,完全是個(gè)人意願(yuàn),但是美好曼妙的設(shè)計(jì)原則上不希望太冗長的函數(shù),理想的設(shè)計(jì)是參數(shù)傳遞越少越好,且函數(shù)要容易讓人理解,意思就是說使用函數(shù)的人能知道越少實(shí)作細(xì)節(jié)越好,它最好是黑箱設(shè)計(jì)。

4.類別或物件之間傳遞訊息的方式,甚至也包含類別的大小,也會(huì)在該部份討論到,什麼方式是不建議做的,什麼方式是建議採用的,高階程式語言理論會(huì)提到。

5.在這裡我們會(huì)討論註解,也會(huì)批判註解,請(qǐng)注意,這部份每個(gè)人認(rèn)知不同,但是我們還是著眼在批判,因?yàn)殛P(guān)於註解的好處,就算我們不去探討,也早有一堆人提及了。

6.我們會(huì)討論程式結(jié)構(gòu)重組,爛的程式結(jié)構(gòu),我們?nèi)绾螌⑺亟M變成好的結(jié)構(gòu)?重組的方式基本上是一種藝術(shù)思維,它沒有固定的標(biāo)準(zhǔn)或方式,但是有個(gè)好的大方向可以稍稍依循,筆者認(rèn)為重組是最難學(xué)習(xí)的部份,畢竟有些程式的複雜性跟怪異性會(huì)讓你不得不飆髒話。

總結(jié)
對(duì)於有志投入資訊產(chǎn)業(yè)的朋友們,高階程式語言理論絕對(duì)有其重要性,尤其軟體產(chǎn)業(yè)最近真是搞的水深火熱,要知道,美好曼妙的程式碼是一種良性循環(huán),你重組了別人的爛程式,你重新改了一個(gè)函式命名,對(duì)你自己本身的工作環(huán)境,都是一種改善,而且你的改善會(huì)讓下一個(gè)人清楚看到並且學(xué)習(xí),造就更多美好曼妙的程式碼,也會(huì)讓整個(gè)軟體產(chǎn)業(yè)的生產(chǎn)力提高一個(gè)層次。

所以這些東西你說重不重要?它的重要性不亞於你的程式碼功力,更不亞於你寫測(cè)試的能力,也不亞於你優(yōu)秀的理解力,畢竟你寫出來的程式不是只給你自己看的,下一個(gè)承接你程式的團(tuán)隊(duì),或者你的團(tuán)隊(duì)成員,他們都需要你對(duì)程式碼的細(xì)心照料。
引用網(wǎng)址:http://www.jamesdambrosio.com/TrackBack.php?sn=2202036
All rights reserved. 版權(quán)所有,保留一切權(quán)利

相關(guān)創(chuàng)作

留言共 0 篇留言

我要留言提醒:您尚未登入,請(qǐng)先登入再留言

2喜歡★ertyk122 可決定是否刪除您的留言,請(qǐng)勿發(fā)表違反站規(guī)文字。

前一篇:程式註解... 後一篇:維持程式碼的整齊-1...

追蹤私訊切換新版閱覽

作品資料夾

小說連載 (0)
英雄聯(lián)盟小說(英雄聯(lián)盟系列) (19)
[外傳]昏黃歲月(英雄聯(lián)盟系列) (1)
阿宅與美女代打(英雄聯(lián)盟系列) (0)
[寫實(shí)小說]_糾心恥笑園 (0)
[寫實(shí)小說]_倒數(shù)末日 (0)
[寫實(shí)小說]_憂鬱天堂 (2)
[寫實(shí)小說]_網(wǎng)路殺人魔 (0)
[寫實(shí)小說]_錢魔 (0)
[神幻小說]_犬族的命運(yùn) (61)
[神幻小說]_捨不得你。妄想 (0)
國中生小說 (3)

漫畫連載 (0)
[搞笑四格]_場(chǎng)外舉人 (0)
[少年漫畫]_臺(tái)北大地震 (0)
[少年漫畫]_就是愛運(yùn)動(dòng) (0)
[少年漫畫]_餵愛一口香 (0)
[寫實(shí)漫畫]_白狼 (0)
[寫實(shí)漫畫]_天刑三二三 (0)
[寫實(shí)漫畫]_橫血英雄 (0)
[寫實(shí)漫畫]_恐龍妹 (0)
[神幻漫畫]_剩水童子 (0)
[神幻漫畫]_永遠(yuǎn)的父女 (0)
[神幻漫畫]_勇者我家人 (0)
[其它]_音魂 (1)

劇本創(chuàng)作 (0)
[寫實(shí)劇本]_白狼 (1)
[寫實(shí)劇本]_天刑三二三 (0)
[神幻劇本]_繪魔 (0)
[神幻劇本]_魔曲 (0)

電腦理論 (6)
程式設(shè)計(jì)相關(guān)理論 (14)
高階程式語言理論 (6)
實(shí)作程式 (15)
程序之相關(guān)問題 (0)
硬體管理與計(jì)算機(jī)結(jié)構(gòu) (3)

創(chuàng)作理論 (3)
文學(xué)理論 (3)
文學(xué)實(shí)作要領(lǐng) (0)
繪畫理論 (1)

生活日記 (241)
自我提醒 (5)

文創(chuàng)作品 (2)
散文與詩 (25)
故事大綱 (1)
繪圖 (57)
processing文創(chuàng)應(yīng)用 (0)
勇造創(chuàng)作 (3)

數(shù)學(xué)領(lǐng)域相關(guān)證明 (0)

英雄聯(lián)盟豪洨文 (3)

辯論大會(huì) (0)

未分類 (22)

optasia大家
《神劍少女》第十二話於小屋更新,歡迎大家蒞臨觀賞看更多昨天12:22


face基於日前微軟官方表示 Internet Explorer 不再支援新的網(wǎng)路標(biāo)準(zhǔn),可能無法使用新的應(yīng)用程式來呈現(xiàn)網(wǎng)站內(nèi)容,在瀏覽器支援度及網(wǎng)站安全性的雙重考量下,為了讓巴友們有更好的使用體驗(yàn),巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現(xiàn)和功能。
屆時(shí)建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業(yè)系統(tǒng)版本才可使用)

face我們了解您不想看到廣告的心情? 若您願(yuàn)意支持巴哈姆特永續(xù)經(jīng)營,請(qǐng)將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學(xué)】