zetavg/zh-tw-wikipedia huggingface dataset:
程序验证

在電腦硬體（特別是積體電路）和軟體系統的設計過程中，**形式驗證**的含義是根據某個或某些形式規範或屬性，使用數學的方法證明其正確性或非正確性。

## 解釋

軟體測試無法證明系統不存在缺陷，也不能證明它符合一定的屬性。只有形式化驗證過程可以證明一個系統不存在某個缺陷或符合某個或某些屬性。系統無法被證明或測試為無缺陷，這是因為不可能形式地規定什麼是「沒有缺陷」。所有可以做的，就是證明一個系統沒有任何可以想到的缺陷，並且滿足所有的使系統符合功能要求的和有用的屬性。

在積體電路設計中，形式驗證是一種積體電路設計的驗證方法，它的主要思想是通過使用形式證明的方式來驗證一個設計的功能是否正確。形式驗證可以分為三大類：抽象解釋（Abstract Interpretation）、形式模型檢查（Formal Model Checking，也被稱作特性檢查）和定理證明（Theory Prover）。

等價性檢查的驗證用於驗證暫存器傳輸級設計與門級網表之間、門級網表與門級網表之間是否一致。在進行掃描鏈重排、時鐘樹綜合等過程中，都可以用等價性檢查保證網表的一致性。等價性檢查已經融入積體電路標準設計流程中。等價性檢查在檢查 ECO 時非常有用。例如，設計者在修改門級網表時，由於手誤，錯將一個或門寫成或非門，等價性檢查工具通過比較暫存器傳輸級設計與門級網表，可以很容易地發現這種錯誤。

模型檢查用時態邏輯來描述規範，通過有效的搜尋方法來檢查給定的系統是否滿足規範。模型檢查是目前研究的熱點，但其驗證的電路規模受限制這一問題還沒有得到很好的解決。

定理證明把系統與規範都表示成數學邏輯公式，從公理出發尋求描述。定理證明驗證的電路模型不受限制，但需要使用者的人工干預和較多的背景知識。

## 相關條目

* 形式等效性檢查
* 形式化方法
程应权

**程應權**（1788 年 10 月 8 日 —？年，乾隆五十三年九月初十日卯時－？年），字**子衡**，號**小莊**，江蘇省常州府武進縣（今屬常州市）人，清朝政治人物、詞人。

## 生平

由武進縣副貢生寄籍京師順天府。

道光五年（1825 年）中式乙酉科順天鄉試第二十名舉人。

道光六年（1826 年）中式丙戌科第二甲第四十八名進士出身。選翰林院庶吉士。

九年（1829 年）四月，散館，授編修。卒於編修任上。

## 著作

* 《萍聚詞》一卷。收錄自己與裘琨鳴、蔣學沂、王曦、董士錫、張成孫、唐秉鈞、費開綬、蔣振南共九位常州詞派詞人相聚唱和詞九十三首。

## 家庭及關連

* 祖父：程鍔。
* 祖母：余氏。
* 父：程鵬。
* 母：屠氏。
* 正室：費氏。
* 有六子：
  * 程經。
  * 程縉。
  * 程組。
  * 程富。
  * 程疇。
  * 程留。

## 參考文獻

* 光緒《武進陽湖縣志》卷十九・選舉・進士・葉二十
* 光緒《武進陽湖縣志》卷十九・選舉・舉人・葉三十八
* 《道光乙酉科各省鄉試同年齒錄》順天・葉十三
程应铨

**程應銓**（1919 年 —1968 年 12 月 13 日），江西人，中國建築師，畢業於國立中央大學。

## 生平

畢業於國立中央大學建築系，與吳良鏞同屆同班。第二次世界大戰時在緬甸為盟軍作翻譯。1948 年左右加入清華建築工程系教師隊伍。曾任清華大學建築系規劃教研組組長，是系主任梁思成在都市計畫最重要助理。甚得梁思成器重。

二戰結束後程應銓從緬甸經昆明回國去上海，其兄程應鏐當時在昆明中學教書，曾經的學生林洙一家也要去上海，程應鏐安排程應銓與林洙一家同行互相照應。林洙之父看中程應銓，一路上極力撮合程應銓與林洙交往。1948 年程應銓前往清華大學建築系（當時稱營建系）任教，林洙同行。解放後不久，林洙父親的來信催促，兩人完婚。

1951 年，程應銓帶領翻譯 1933 年國際現代建築協會第四次會議（CIAM4）的 Town-Planning Chart，即大會討論的一份有關功能城市的計劃方針的綱領（即後來誤稱的《雅典憲章》）；11 月《城市計劃大綱》單行本發行。

1956 年作為中國建築家代表團的成員出訪波蘭等東歐國家。

1957 年後因支持梁陳方案被劃為右派，妻子林洙與其離婚帶走孩子，並對其落井下石，持續造謠污衊他。1968 年 12 月 13 日在清華大學游泳池自殺身亡。

## 參見

陳愉慶 2010 《多少往事煙雨中 —— 我的父親陳占祥》第十七章

## 家庭

* 太高祖：程矞采
* 父親：程懋琨
* 母親：況葆琴
* 兄：程應鏐
* 前妻：林洙（1958 年離婚，1962 年改嫁梁思成）
* 子：林哲
* 女：林彤

## 參考
程应镠

**程應鏐**（1916 年 11 月 4 日 —1994 年 7 月 25 日），男，江西新建人，中華人民共和國宋史學家，上海師範大學教授，曾就讀於燕京大學、西南聯合大學。

## 生平

程應鏐出生於江西省新建縣大塘鄉的一個望族。早年入學位於廬樓的家族私塾。1928 年，他去南昌補習中學課程。次年考入江西省立二中。1932 年，他以成績優良，免試直升本校高中，就讀理科，當時南昌提倡新生活運動，他與幾個同學組織成立「風島社」並開始向刊物投稿。1933 年，他撰寫《我們的西北》投寄給在南昌出版的《汗血周刊》，次年正式發表，時僅十九歲。但因新任教務主任有意為難，指責他與其他幾位同學不服管教，1934 年，他被迫轉學到南昌私立心遠中學，因深受其歷史教師影響，決定棄理學文，主攻歷史。

1935 年夏，程應鏐考入燕京大學歷史系，深受北平民運影響，參加一二・九運動，並成為 12 月 16 日示威遊行的前鋒隊員。1936 年初，程應鏐參加了北方左翼作家聯盟。這年，燕京大學成立了「一二・九文藝社」，他擔任負責人之一，主持刊物《青年作家》，並得到沈從文的支持。同年他與同學王名衡、劉春發起組織「大學藝文社」，出版《大學藝文》雜誌。他還代表燕京大學「一二・九文藝社」和「大學藝文社」，參加由清華大學發起的北方文學社成立大會。同年加入了中華民族解放先鋒隊。年底，他與柯華、週遊、李植人、李植青等同學參加上海婦孺慰勞團，奔赴綏遠。

## 家族

太高祖是清朝重臣程矞采。父親程懋琨（覺吾）曾在河北、江西等地擔任縣長，母親況葆琴。弟程應銓。

## 參考
程应龙

**程應龍**（？—？），號**台任**，福建漳州府龍溪縣軍籍，海澄縣人，明朝政治人物、進士出身。

## 生平

萬曆三十一年（1604 年）癸卯科福建鄉試舉人，萬曆三十五年（1607 年）丁未科進士，禮部觀政，三十八年授戶部主事，本年蘇松監兌，四十年升員外，通州管倉，升郎中，四十一年升臨江知府，四十六年升江西副使，四十七年考察。

## 參考
程庭桂

**程庭桂**，字**楞香**，江蘇吳縣人，清朝政治人物、進士出身。

道光六年（1826 年），登進士，授刑部主事，後官至都察院左副都御史。咸豐八年，擔任順天府鄉試副考官，因子受賄，捲入戊午科場案，被發配軍臺。

## 參考
程庭芳

**程庭芳**（1911 年 —1968 年），男，山東高青（一作蒲台）人，中國天文學家、天文教育家，南京大學天文系創建人之一，曾任副教授、天體測量研究室主任。

## 參考資料
程康侯

**程朝京**（？—？），字**康侯**，直隸徽州府休寧縣人，浙江衢州府西安縣軍籍，明朝政治人物。

## 生平

順天府鄉試第二十九名，萬曆十一年（1583 年）癸未科會試第一百七十八名，登三甲第二百零五名進士。

## 家族

曾祖程永昌；祖父程希寧；父程璉。嫡母余氏；生母閔氏。

## 參考文獻
程廣

**程廣**（1425 年 —？），字**克勤**，直隸徽州府婺源縣人，明朝政治人物。進士出身。

## 生平

應天府鄉試第十一名。天順元年（1457 年），參加丁丑科會試，得貢士第一百九十一名。殿試登進士第三甲第一百五十九名。

## 家族

曾祖父程積慶。祖父程繼善。父親程望安。

## 參考
程延

**程延**可以是下列人物：

* 程延 (晉朝)，字孝長，程伯符第四十三世孫。
* 程延 (前秦)，前秦太醫令，後為苻生所殺。
程延_(前秦)

**程延**（?—356 年），十六國前秦醫家。前秦壽光年間任太醫。

程延擔任太醫令，356 年，苻生晚上吃棗過多，第二天早晨不舒服，就召程延號脈診斷。程延說：「陛下沒有別的病，就是棗吃多了。」苻生大怒，說：「你不是聖人，怎麼知道我吃棗了！」隨後就把程延殺了。

## 參考文獻

* 《資治通鑑・第一百卷・晉紀二十二》
程延_(晉朝)

**苟晞**（3 世紀 —311 年），字**道將**，河內山陽人。西晉中期至末年重要將領，曾多次與外族作戰。官至大將軍，後被石勒擊敗被俘，不久被殺。

## 生平

### 早年事跡

苟晞起初是司隸部從事，司隸校尉石鑒極為器重他。後又獲東海王司馬越引薦，任通事令史，後調任陽平太守。永寧元年（301 年），齊王司馬冏擊敗篡位的趙王司馬倫，以大司馬身份輔政，苟晞則參大司馬軍事、尚書右丞；後調任尚書左丞，並考察屬下諸曹辦公，下級官員都對他十分忌憚。太安元年十二月（303 年），長沙王司馬乂擊敗司馬冏，苟晞亦因司馬冏倒台而被免官，但不久即被隨後上台的司馬乂任命為從事中郎。永安元年（304 年），司馬越帶晉惠帝北征鄴城，討伐皇太弟司馬穎，苟晞任北軍中候。晉惠帝兵敗被司馬穎俘獲後不久，司馬穎即被王浚和東嬴公司馬騰打敗而被逼帶同惠帝回洛陽，苟晞此時則投奔范陽王司馬虓，司馬虓承制任用苟晞行兗州刺史。

### 比擬韓白

永興二年（305 年），司馬穎舊將公師藩因見司馬穎被廢，於是在河北地區起兵，牧帥汲桑亦加入，並且進攻多個郡縣，逼近鄴城，司馬虓派苟晞和廣平太守丁紹一同擊退公師藩。次年苟晞更在白馬縣攻擊準備渡過黃河的公師藩，並將他斬殺。

永嘉元年（307 年），汲桑作亂，自稱大將軍並稱要為上一年被殺的司馬穎報仇，並進攻鄴城。新蔡王司馬騰兵敗被殺，鄴城陷落，汲桑於是打算南攻兗州。太傅司馬越知道後大驚，先命苟晞為前鋒進討汲桑。後見苟晞與汲桑部將石勒在陽平、平原相持並互有勝負，又領兵出鎮官渡，聲援苟晞。汲桑素來畏懼苟晞，於是在苟晞攻來時在城外設欄柵加強防衛，苟晞先讓士兵休息，只派單騎向汲桑部眾陳述禍福，汲桑部眾大驚而退入城，後苟晞又領兵在東武陽擊敗汲桑，汲桑退走；及後苟晞追擊汲桑和石勒，連破九壘。冀州刺史丁紹隨後又擊敗剛重整的汲桑軍，令事件得以平息。苟晞亦因而獲升撫軍將軍，都督青、兗諸軍事，封**東平郡侯**。因苟晞屢破強敵，建立起威名，當時的人更將他與韓信和白起比擬。

### 內外爭鬥

司馬越最初與苟晞交好，更結拜為兄弟。但司馬越司馬潘滔此時則建議司馬越自領當時由苟晞所統的兗州，說兗州是軍事要衝；又稱苟晞有大志，不會甘願只作臣下，長期統領兗州這個重要地區，一旦生變後果就會很嚴重。司馬越亦同意，於是接納潘滔的建議，自任丞相並領兗州牧，改苟晞領青州刺史、假節都督青州諸軍事，並且升苟晞為征東大將軍、開府儀同三司、加侍中，進封**東平郡公**，增加他的名號去討好苟晞，但二人關係自此卻出現裂痕。

永嘉四年（310 年），潘滔及尚書劉望等誣陷苟晞，令苟晞極為憤怒，上表請求斬殺潘滔等人，亦請司馬越的從事中郎劉洽為他的軍司，但司馬越都一概拒絕。苟晞於是與司馬越正式決裂，自各州郡宣告自己的戰功而陳述司馬越的罪狀。當時晉懷帝亦厭惡專權的司馬越，於是下詔支持苟晞，又命苟晞進攻在境內叛亂的王彌和石勒。此時王彌將領曹嶷正攻打青州，負責留守的苟純閉門固守，而曹嶷則集結兵力，連營數十里，苟晞回來後與曹嶷作戰，成功擊破。

次年正月苟晞再選精銳與曹嶷作戰，但因大風揚起風沙令苟晞戰敗，只好棄城夜逃，並遭曹嶷追擊，部眾都向曹嶷投降。苟晞逃到高平，在當地募兵數千人。此時，晉懷帝密詔苟晞討伐司馬越，司馬越亦截獲詔命，於是宣布苟晞的罪狀，並命楊瑁和裴盾討伐苟晞。苟晞派兵收捕河南尹潘滔，但被潘滔成功逃脫，另苟晞亦斬殺尚書劉曾和侍中程延。

司馬越見此而憂憤成疾，當年三月就在項縣去世，裴盾等人亦被叛亂的王桑殺死，晉懷帝於是命苟晞為大將軍、大都督、督青、徐、兗、豫、荊、揚六州諸軍事。

### 驕縱自害

苟晞見當時洛陽正有饑荒，四周亦有亂事，於是上表請求遷都倉垣，並派從事中郎劉會率船數十艘，宿衛五百人和一千斛穀糧護送懷帝遷都，晉懷帝答應但朝中官員卻因害怕潘滔而不肯遷都，宮中人員亦貪戀宮中財寶而不願離開。晉懷帝最終還是決定到倉垣，但因沒有足夠士兵守衛，出宮不久就被盜賊掠奪，被逼折返。不久漢國將領劉曜就率軍攻破洛陽，俘擄晉懷帝，豫章王司馬端和和郁等逃出洛陽投奔苟晞，苟晞置行臺，立司馬端為皇太子；而司馬端又承制命苟晞為太子太傅、都督中外諸軍、錄尚書。

苟晞原本出身寒微，今天身居重臣，因而十分自滿，蓄養婢女千人、侍妾數十，縱情享樂而且刑罰和施政的很苛刻。閻纘之子閻亨上書諫止更遭苟晞殺害。苟晞從事中郎明預知道後，即使抱病仍去見苟晞，以堯舜和紂王的對比勸諫他，終令苟晞面有愧色。但當時人心已離，無人再為苟晞效命，部將溫畿和傅宣都已叛離，同時石勒亦攻滅苟晞的盟友王讚，並且襲擊苟晞所駐的蒙城，苟晞被石勒所捕並署為左司馬。一個多月後，苟晞和王讚圖謀反叛石勒，石勒於是將他們殺死。

## 性格特徵

* 苟晞作風果斷而且嚴厲苛刻。苟晞的姨母前來投靠，苟晞亦供養甚厚，但一次姨母之子請求苟晞讓他為將，苟晞拒絕，說：「我不會寬恕干犯王法的人，你日後不會後悔嗎？」但他堅持，苟晞於是將他任命為督護。後來他犯法，苟晞依例處斬他，姨母叩頭懇求但苟晞不聽。及後則更換素服哭悼死者說：「殺你的是兗州刺史（苟晞當時的官職），為你哭喪的是苟道將（苟晞字道將）。」可見其執法的嚴苛。
* 苟晞任青州刺史時施政十分嚴苛，每日都會殺人，以至當時血流成河，人們於是叫他做「屠伯」。

## 家庭

* 苟純，苟晞弟弟，在苟晞麾下，曾代兄長領青州刺史。後和苟晞一同被石勒所殺。

## 延伸閱讀

[編]

　
: 《晉書 / 卷 061》，出自房玄齡《晉書》

　
:

## 參考資料

* 《晉書》（苟晞傳、東海王越傳、惠帝紀、懷帝紀、石勒傳上）
* 《資治通鑑》（卷八十四至八十七）
程廷桂

**程庭桂**，字**楞香**，江蘇吳縣人，清朝政治人物、進士出身。

道光六年（1826 年），登進士，授刑部主事，後官至都察院左副都御史。咸豐八年，擔任順天府鄉試副考官，因子受賄，捲入戊午科場案，被發配軍臺。

## 參考
程廷珙

**程廷珙**（1443 年 —？），字**獻之**，江西饒州府浮梁縣人，民籍，明朝政治人物。進士出身。

早年出身縣學增廣生，後中舉江西鄉試第七十一名。成化十一年（1475 年），參加乙未科會試，得貢士第一百七十六名。殿試登進士第二甲第十六名。歷官福建布政司左參議，升廣西左參政。

曾祖父程子政。祖父程存禮。父親程仕傑。

## 參考
程廷祚

**程廷祚**（1691 年 —1767 年），初**名默**，字**啟生**，號**綿莊**。原籍安徽新安（今歙縣）。

祖父程紹伊自新安遷居金陵。程廷祚生於康熙三十年（1691 年），十四歲寫《古松賦》，受到洪嘉植的賞識，並說：「是子必為儒宗。」程晉芳稱其「志清而行醇，動止必蹈規矩」，康熙五十九年（1720 年）與李塨見面論學。程廷祚多批判八股科舉和程朱理學，「不依傍門戶，而能通漢宋之症」，姚鼐責難其「好議論程朱」，乃至「流於蔽陷之過而不自知」。乾隆三十二年（1767 年）卒。著有《大易擇言》、《易通》、《彖爻求是說》、《尚書通議》等。

## 評價

胡適很早就注意到程廷祚與顏李學派的關連，胡適還寫有《顏李學派的程廷祚》，推斷小說《儒林外史》中莊紹光的原型就是程廷祚。抗戰期間，北大印行《青溪全集》，1936 年 6 月胡適為之序。

## 注釋

## 參考書目

* 《金陵通傳》卷二十九《程延祚》
程廷策

**程廷策**（？—？），字**汝揚**，號石峯，直隸徽州府休寧縣人，民籍，明朝政治人物。

## 生平

應天府鄉試第七十八名舉人。嘉靖三十二年（1553 年）中式癸丑科二甲第九十一名進士。工部觀政，授戶部山西司主事，丁父母憂歸。服闋補陝西司主事，署廣東司員外郎，歷陝西司郎中，先後監諸馬房、牛房、象房，主都門告緡，監十庫、監兌江西、監運大通橋、監太倉庫。既入署，兼攝廣東司、廣西司、山東司。出為辰州府知府，卒官。平生多著書，有《讀易瑣言》、《中星圖》、《忠孝經訂註》等。

## 家族

曾祖程永禎；祖父程天然；父程蓋興，母孫氏。兄汝台（監生）、汝廉（監生）、汝誠（生員）、弟廷訓、廷龍、廷佐。

## 參考文獻

* 汪道昆《辰州守程廷策傳》
程廷臣

**程頊**（？—？），字**廷臣**，江西廣信府上饒縣人，民籍，明朝政治人物。

## 生平

江西鄉試第九十一名舉人。成化二十三年（1487 年）中式丁未科三甲第二百二十五名進士。

## 家族

曾祖程原哲；祖父程禮能；父程純，母鄭氏。

## 參考文獻
程廷華

**程廷華**（1848 年 —1900 年），字**應芳**，河北省深縣程家村人，董海川之徒，為程派八卦掌的創始者。

## 生平

程廷華自幼愛好武術，精通摔跤，因生計入京為學徒，後在北京崇文門外花市四條開設眼鏡舖，綽號「眼鏡程」。當時董海川在肅王府當差，以武藝聞名北京，在尹福的引薦下，程廷華上門挑戰，大敗，心悅誠服求其收為弟子。他在董海川門下學習八卦掌數年，得到董海川的認同，經常負責指導其他的師兄弟。在師兄弟中，他排行第三，又被稱為「程三」、「程三麻子」。

當時尹福在皇宮內傳授，稱為宮內派；而程廷華指導北京城中的弟子，被稱為宮外派或南城派。在董海川過世後，八卦掌因而分成尹派與程派二者，而又以程派較為盛行。

他與北京城內外的江湖人士來往密切，天津形意拳名家李存義與他交情甚好，甚至要門下弟子向他習藝，也因此讓八卦掌，與形意拳、太極拳門下有著良好的交流。張占魁向他學習八卦掌之後，以形意八卦掌之名開始授徒，因此有著「形意八卦不分家」的說法。

在八國聯軍攻進北京城時，因見到聯軍洋人欺壓平民，氣忿之下出手，最後在崇文門外磁器口河泊廣胡同東巷南口四十六號遭洋槍打中腹部而過世。遺體由其弟程殿華、其子程有龍運回北京東郊樓梓莊安葬。慈禧曾賜匾「技藝超群」，並讓程家後代入籍漢八旗，享受皇糧。

## 程派八卦掌

程派八卦掌又稱遊身八卦連環掌，掌勢較多，強調淌泥步、龍爪掌。

在程廷華死後，其弟程殿華回到故里，繼續傳授八卦掌。

## 弟子

程廷華的弟子極多，著名的弟子有程有龍、程有信、程有功、程有生、李文彪、馮俊義、高義盛等人。有許多人不曾掛名為弟子的武林人士，例如李存義、張占魁、尚雲祥、孫祿堂等人，皆曾得到他的指導。他無私的氣度，對於中國武術的發展有極大的貢獻。

## 參考資料
程廷锡

**程萬鍾**（1420 年 —1479 年），字**廷錫**，四川省敘州府富順縣人，竈籍，治《易經》。

## 生平

十二月十七日生，行一，由國子生中式四川鄉試第十七名舉人，會試中式第二百七十名。年三十五歲中式景泰五年甲戌科第三甲第一百九十八名進士。

## 家族

曾祖程興祖；祖程文龍；父程瑋；母夏氏。慈侍下，妻葉氏。

## 參考資料
程建人

**程建人**（1939 年 8 月 11 日 —），出生於上海，中華民國著名外交政治人物，天主教輔仁大學名譽法學博士，中國國民黨籍，現在已經退休。

## 經歷

程建人同胡志強和李大維等人一樣，是國民黨重點栽培的外交人才，並先後出任過立法委員、行政院新聞局長、外交部長、駐美代表、駐歐代表等職務。現在已經退休。

### 駐美代表

由於身為中國國民黨黨員，在 2000 年政黨輪替後，繼續為外交意識型態迥異的民進黨政府效力，並擔任駐美、駐歐代表等要職，又多涉及敏感的統獨、兩岸、對美關係等外交議題，其個人的政治態度立場一直是眾人的焦點。時任國民黨主席的連戰曾在一次公開場合對程建人說出「疾風知勁草」一語來評論他，由於此文下一句話是「板盪識忠臣」，因此外界揣測此語是在批評程建人在某些地方對民進黨政府的態度不夠強硬。但程建人本人表示身為外交人員，不能有藍綠的偏見，只有為國盡忠。

終其駐美代表任內，程建人處境相當尷尬，一方面他是國民黨黨員，自然難以取信於綠營人士，任內更曾發生吳淑珍在美國機場遭搜身事件，而且美國政府在統獨及兩岸問題上也不是全力支持台北，故經常遭綠營人士指責辦事不力。

而對於藍營，他由於希望取信於綠營，選擇與藍營減少接觸，例如他並無重新辦理黨員登記。在兩岸問題上，他因有公職在身而與藍營意見時有相左，而當連戰（連戰以往經常提拔他）在美國訪問時他不但未有陪同，而當時陳水扁正過境美國，他無可選擇之下只好以公職為重而陪伴在側。連戰更被代去的駐美副代表當眾羞辱，事後連戰夫人連方瑀因此當眾拒收程建人夫人所送的花。而被藍營人士指為賣友求榮。

當時總統陳水扁每當在統獨、對美關係及兩岸問題上出現新政策時，很少會在事前知會駐美代表處，此舉令美國政府對程建人感到不滿，認為他欠缺代表性。

不過在退休卸下職務後，適逢倒扁運動興起，程建人對媒體表示不排除參與支持百萬人民倒扁運動，顯露壓抑多年的國內政治立場傾向。

中國時報報導一年約四十歲女子報案供稱程建人性侵。全案由士林地檢署偵辦。程建人反駁對方是胡亂指控，全是惡意謊言。而在士林地檢署偵查之後，認為沒有具體事證，決定不起訴處分。

## 軼事

* 1999 年李登輝總統接受德國之聲採訪提出特殊兩國論時，即由程建人陪同。
* 2004 年民進黨政府連任成功而繼續執政，時任駐美代表的程建人表示不想續任，最後由時任駐歐代表的李大維接任該職，而程建人接任李的空缺，形成兩人職務互調的人事異動。
* 業餘時是古典音樂的愛好者，任職新聞局局長期間，曾以男中音獨唱的身分與台北世紀交響樂團公開演出（1998 年 6 月 3 日）

## 榮譽

### 中華民國勳章獎章

* 二等卿雲勳章（2004 年 8 月 5 日於台北總統府頒授）

## 參考文獻
程建军

**程建軍**（1956 年 8 月 —），男，漢族，河南襄城人，中國民間文藝家，現任中國民間文藝家協會副主席，河南省文學藝術界聯合會副主席，河南省民間文藝家協會主席。

## 參考資料
程建国

**程建國**（1964 年 1 月 —），陝西涇陽人，農業推廣碩士，教授，民盟盟員，1985 年 7 月參加工作。中華人民共和國政治人物。

## 生平

程建國早年在陝西師範大學生物系生物專業學習，獲理學學士學位。畢業後擔任教職，先後任教於陝西省林業學校、楊凌職業技術學院。2001 年步入政壇，先後出任楊陵區副區長、楊凌示範區科教發展局副局長、農業林業局局長。2013 年 2 月出任陝西省政協提案委員會副主任、咸陽市副市長。因在脫貧攻堅戰中作出貢獻，在 2021 年 2 月 25 日全國脫貧攻堅總結表彰大會上，程建國被授予「全國脫貧攻堅先進個人」榮譽稱號。

## 參考
程建宁

**程建寧**（1932 年 —），湖北廣水人，中國人民解放軍將領、中國人民解放軍中將。

1995 年，授予中國人民解放軍中將，曾任中央軍委辦公廳主任。

## 參考
程建平

**程建平**(1964 年 8 月 —)，男，安徽休寧人，中國核技術與防護專家。主要從事核技術應用、輻射防護與環境保護等領域的研究。

## 生平

1986 年 8 月參加工作，1984 年 12 月加入中國共產黨。2013 年 5 月，任清華大學常務副校長。2016 年 12 月，任北京師範大學黨委書記。2018 年 1 月，當選第十三屆全國政協委員。

## 參考文獻
程建評

**程建評**（1991 年 12 月 11 日 —），藝名 **JIM**，是出身臺灣臺南市的站立喜劇演員、喜劇寫手。表演型式以地獄哏、黑色幽默知名，自述曾經從事包含餐飲、服飾、有機農業。2018 年受曾博恩邀請加入薩泰爾娛樂，成為《博恩夜夜秀》節目寫手及街訪單元《JIM 派特報員》（至第二季）主持。即使退出該節目製作後，依然與薩泰爾娛樂合作演出喜劇表演。2020 年 1 月 17 日創立頻道，頻道影片內容為站立喜劇。原計劃於 2021 年舉辦個人脫口秀專場，因受疫情影響推遲該演出。2022 年與藝人陳大天、上班不要看成員曹小歐一同舉辦校園巡迴脫口秀。

目前擔任 23 喜劇俱樂部每周二的 Open Mic《吉姆來敲門》主持，以及 Comedy Plus 卡米地 + 每周日《Sunday Night with Jim》主持

## 喜劇作品

### 卡米地喜劇俱樂部

### 薩泰爾娛樂

#### 博恩夜夜秀

「博恩夜夜秀」是薩泰爾娛樂製作的脫口秀，製作人謝政豪、主持人曾博恩和所屬團隊製作的節目，並予以現場觀眾親臨棚內錄影及網路分段觀看。節目以美式脫口秀的形式呈現，亦為臺灣第一個開放網路募資的脫口秀節目。JIM 在 2018-2020 年間擔任該節目喜劇演員及寫手。

##### 瓏瓏吉姆大冒險

##### JIM 派特報員

##### 其他

#### 火烤大賽 Roast Battle

由薩泰爾娛樂在 23 喜劇俱樂部舉辦的現場喜劇表演，模仿美式喜劇中的 Roast（吐槽）形式，以單敗淘汰制進行比賽，JIM 經四場比賽後得到冠軍。

#### 炎上 BURN

同樣為薩泰爾娛樂舉辦的 Roast 表演，但並非比賽，而是由主持人（炎上大將軍）與來賓（火伴）共同吐糟主秀的表演，JIM 於此系列前三場表演中分別擔任炎上大將軍、火伴等角色，但並未參與加演場《炎上　澎恰恰》。

## 爭議

* 2019 年 4 月 1 日，在臉書上發文以愛滋病感染開玩笑。
* 2021 年 4 月 8 日 (隔日上傳演出錄影)，臺鐵 408 次太魯閣號事故六天後，在 23 喜劇俱樂部的站立喜劇表演中以霧社事件與翻車魚隱喻該交通事故。後於隔周的表演中回應網友對其表演的批評。
* 2022 年 4 月 26 日，在臉書上發文以 Youtuber 阿翰的網路梗九天玄女比喻航空器失事的錄音檔。

## 注釋

## 參考資料

## 相關條目

* 薩泰爾娛樂
* 站立喜劇
* 博恩夜夜秀
* 卡米地喜劇俱樂部
* 台灣 YouTube 頻道訂閱人數排行榜
* 在 YouTube 上訂閱人數最多的用戶列表

## 外部連結

* YouTube 上的 JIM 程建評頻道
* 程建評的 Instagram 帳戶
* 程建評的 Facebook 專頁
程开之

**程啓南**（1562 年 —1650 年），字**開之**，號**鳳庵**，山西汾州府武鄉縣人，明朝政治人物。同進士出身。

## 生平

萬曆二十八年庚子舉人，二十九年聯登辛丑科進士，授襄陽府推官，三十八年升兵部武選司主事，四十一年晉郎中，升遷山東濟南道副使，四十七年（1619 年）升布政司參政。天啟元年（1621 年）升山東按察使，歴山東右布政使，三年晉南京太常寺少卿，因事罷歸。崇禎二年（1629 年），起通政司通政使，三年升工部左侍郎。以明德陵竣工，加工部尚書。四年（1631 年）告老還鄉。順治七年（1650 年）十月卒，年八十九。

## 家族

祖父程㒜，贈戶部右侍郎。父程嗣功，戶部右侍郎。

子六人，長子程嘉績，刑部員外郎；程偉績，監生；程蘭績，增生；程皋績，康熙十八年進士。迺績，庠生。

## 參考
程开甲

**程開甲**（1918 年 8 月 3 日 —2018 年 11 月 17 日），男，江蘇吳江人，中華人民共和國核武器技術專家，中國科學院院士，「兩彈一星功勳獎章」獲得者。

## 生平

程開甲是江蘇省吳江市（今江蘇省蘇州市吳江區）人。1931 年，13 歲的程開甲離開家鄉江蘇吳江，考入距家 20 公里的嘉興秀州中學。1937 年，程開甲獲浙江省教會中學英文演講比賽第一名。

1941 年畢業於浙江大學物理系，後留校任教至 1946 年，留校期間完成了多項重要的相對論和基本粒子的研究。1946 年 8 月赴英國愛丁堡大學留學，為物理學家馬克斯・玻恩的研究生，期間主要從事超導電性雙帶理論的研究。1948 年獲博士學位。之後任英國皇家化學工業研究所研究員。之後程開甲受到紫石英號事件的鼓舞，於 1950 年回到浙江大學物理系任教。1952 年調到南京大學物理系。1956 年 2 月，加入中國共產黨。1960 年起參與中國第一顆原子彈研究，1962 年調任國防科委核試驗基地研究所副所長、所長。他是中國第一顆原子彈研製的開拓者之一、核武器試驗事業的創始人之一，核試驗總體技術的設計者。後任國防科工委科學技術委員會正軍職常任委員。1984 年，調任北京，任國防科工委（總裝備部）科技委常任委員、顧問，國家超導專家委員會顧問。1999 年 9 月 18 日，程開甲在北京人民大會堂被授予兩彈一星功勳獎章。

2017 年 7 月，中央軍委主席習近平簽署命令，授予程開甲等 10 位同志「八一勳章」。2017 年 7 月 28 日，中央軍委頒授「八一勳章」和授予榮譽稱號儀式在北京八一大樓舉行。中共中央總書記、國家主席、中央軍委主席習近平向程開甲等 10 位「八一勳章」獲得者頒授勳章和證書，這也是「八一勳章」的首次頒授。程開甲同時還獲稱「忠誠奉獻、科技報國的『兩彈一星』元勛」這一榮譽稱號。

2018 年 11 月 17 日，程開甲在北京逝世，享嵩壽 100 歲。

## 獎項與榮譽

* 1999 年 9 月，榮獲中共中央、國務院、中央軍委所授予的「兩彈一星功勳獎章」。
* 2014 年 1 月，和化學物理學家張存浩同獲中國國家最高科學技術獎。
* 2018 年 3 月，獲頒「影響世界華人大獎」終身成就獎。
* 2019 年 2 月，當選 2018 年感動中國年度人物。
* 2019 年 9 月，被授予「全國敬業奉獻模範」榮譽稱號。
* 2019 年 9 月，被授予「人民科學家」國家榮譽稱號。

## 著作

* 《固體物理學》
* 《超導機理：雙帶理論還是成對理論》

## 參見

* 596 工程、中國核試驗基地
* 兩彈一星、兩彈一星功勳獎章

## 外部連結

* 程開甲 - 中國科學院 （頁面存檔備份，存於網際網路檔案館）
* 超導機理：雙帶理論還是成對理論 - 程開甲 - Google Books

## 參考文獻
程异

**程异**（8 世紀？—819 年），字**師舉**，京兆府長安縣（在今陝西省西安市境）人。唐代政治人物，唐順宗時，參與王叔文領導的永貞改革，失敗後，成為被流放的八司馬之一。唐憲宗時，短暫的擔任同中書門下平章事（實質宰相）。子程巽。

## 簡介

出身世族，明經及第，補鄭縣縣尉。受王叔文的提拔，進入永貞改革的團隊，廢除宮市、五坊小兒等弊政，整肅宦官兵權，順宗被宦官俱文珍發動的政變逼退，號稱太上皇；唐憲宗李純即位，史稱永貞內禪，貶郴州司馬，為「八司馬」之一。

後因吏部尚書李巽推薦，授侍御史，任鹽鐵揚子院留後，又遷任淮南等道兩稅司。

元和十三年（818 年）九月，以工部侍郎同中書門下平章事，猶領鹽鐵。

次年四月去世，程異逝世於官邸，無遺產，世重其廉。追贈尚書左僕射，諡曰**恭**。

裴度說他：「程异雖人品庸下，然心事和平，可處煩劇，不宜為相。」

## 注釋

## 延伸閱讀

[編]

　
: 在維基文庫**閱讀此作者作品**

　
: 《舊唐書 / 卷 135》，出自劉昫《舊唐書》

　
: 《新唐書 / 卷 168》，出自《新唐書》

## 參考書目
程式

**程式**可以指：

* 程序
* 程式 (醫學家)，字心源，號建武居士、道承、若水，明朝醫學家
* 程式 (宣德進士)，明朝政治人物
* 程式 (天順進士)，明朝政治人物
* 程式 (1900 年)，軍人，黃埔軍校第一期畢業
* 程式 (1911 年)，中國電機工程學家
程式_(宣德進士)

**程式**（1400 年 —1449 年），直隸蘇州府常熟縣人，民籍。明朝政治人物。進士出身。

## 生平

應天府鄉試第二十九名。宣德八年（1433 年），參加癸丑科會試，得貢士第十三名。殿試登進士第二甲第二十七名。正統元年，授南京兵部職方司主事，後改刑部員外郎。正統十三年，跟從明英宗北征，土木之變中殉難。

## 家族

曾祖父程元卿。祖父程伯里。父親程士通。

## 參考文獻
程式_(電腦科學)

在電腦科學中，**次程式**（德語：unterprogramm，英語：subroutine, subprogram, callable unit），是一個大型程式中的某部份程式碼，由一個或多個語句塊組成。它負責完成某項特定工作，而且相較於其他程式碼，具備相對的獨立性。

一般會有輸入參數並有傳回值，提供對程序的封裝和細節的隱藏。這些代碼通常被整合為軟體庫。

函數在程序導向的語言中已經出現。是結構（struct）和類別（class）的前身。本身就是對具有相關性語句的歸類和對某程序的抽象。

## 分類

次程式是一個概括性的術語，次程式是所有高階程式所稱。它經常被使用在組合語言層級上。次程式的主體（body）是一個程式碼區塊，當它被呼叫時就會進入執行。

### 函數

**函數**（function）是一種次程式，利用函數名稱，可以接收回傳值。例如：

### 程序

**程序**（procedure）是一種次程式，它能夠接受不同的引數，來執行某些特別的動作。例如：

函數與程序在某些程式語言中是被分開的，但是在 C 語言中，所有程序都是函數，這兩者被認為是相同的。這有可能造成一些副作用，特別是在回傳值是 `void` 型別時。

### 方法

在物件導向程式設計語言中，類別或物件中的次程式，被稱為**方法**（method）。
程式交易

**算法交易**（英語：Algorithmic trading），或程序化交易，或自動交易，是指運用自動化的電腦程式，或運用人工智慧，根據預設的算法，進行自動化的投資和買賣行為。一般而言，算法交易是指人們開發程式，自動根據指定的市場的技術資料和財務比率（例如市盈率、市帳率、移動平均線）等，自動由電腦操作買賣行為。

## 應用

目前，算法交易可以應用在自動根據市場及財務資料參與自動化買賣股票、期權、金融衍生工具、外匯、黃金、加密電子貨幣等交易。目前，運用自動化的算法或程序交易軟體進行自動化買賣，已經佔了股票及證券市場交易中相當大的比重。

## 參見

* 自動交易系統
* 高頻交易
* 人工智慧
* OU 過程

## 參考
程式函式庫

**函式庫**（英語：**library**）是在電腦科學中用於開發軟體的子程式集合。函式庫和可執行檔的區別是：它不是獨立的電腦程式，而是向其他程式提供服務的代碼。

## 連結

函式庫連結（英語：**linking**）是指把一個或多個函式庫包括到程式中，有兩種連結形式：靜態連結和動態連結；相應的，前者連結的函式庫叫做靜態函式庫，後者的叫做動態函式庫。

### 靜態函式庫

靜態連結是由連結器在連結時將函式庫的內容加入到可執行程式中的做法。連結器是一個獨立程式，將一個或多個函式庫或目的檔（先前由編譯器或組譯器生成）連結到一塊，以生成可執行程式。

靜態連結的最大缺點是生成的可執行檔較大，需要更多的系統資源，在載入到記憶體時也會消耗更多的時間。優點是代碼執行效率高。

### 共享函式庫

### 動態函式庫

動態連結是在可執行檔裝載時或執行時，由作業系統的裝載程式載入函式庫。大多數作業系統將解析外部參照（比如函式庫）作為載入過程的一部分。在這些系統上，可執行檔包含一個叫做匯入目錄（import directory）的表，該表的每一項包含一個函式庫的名字。根據表中記錄的名字，裝載程式在硬碟上搜尋需要的函式庫，然後將其載入到記憶體中預先不確定的位置，之後根據載入函式庫後確定的函式庫的位址更新可執行程式。可執行程式根據更新後的函式庫資訊呼叫函式庫中的函式或參照函式庫中的資料。這種類型的動態載入稱為裝載（load-time）時載入，被包括 Windows 和 Linux 的大多數系統採用。裝載程式在載入應用軟體時要完成的最複雜的工作之一就是載入時連結。

其他作業系統可能在執行時解析參照。在這些系統上，可執行程式呼叫作業系統 API 將函式庫的名字、函式在函式庫中的編號和函式參數一同傳遞。作業系統負責立即解析然後代表應用呼叫合適的函式。這種動態連結叫做執行時連結。因為每個呼叫都會有系統開銷，執行時連結要慢得多，對應用的效能有負面影響。現代作業系統已經很少使用執行時連結。

可以動態連結的函式庫，在 Windows 上是 Dynamic Link Library（DLL），在 UNIX 或 Linux 上是 Shared Library。函式庫檔案是預先編譯連結好的可執行檔，儲存在電腦的硬碟上。大多數情況下，同一時間多個應用可以使用一個函式庫的同一份拷貝，作業系統不需要載入這個函式庫的多個實例。
程式可讀性

編程領域的**可讀性**指的是：人類讀者對於原始碼的功能意圖、流程控制和操作運行是否容易把握。

可讀性之所以重要，乃是由於：程式設計師會把大部分時間，花費在閱讀並試圖理解和修改現存原始碼上面，而不是編寫新的原始碼。沒法讀的代碼往往導致缺陷、低效與代碼重複。有研究發現，一點點簡單的可讀性改造，也能讓代碼變得簡短，並且大大縮短看懂所需的時間（就像一段沒有善加利用標點符號，部分帶有冗贅詞語的文句。稍微修改該文句，改以適當的方式使用標點符號，將冗贅詞語修正。就能提高讀者讀取文句訊息的流暢度）。

遵循固定的代碼風格往往會改善可讀性。然而，可讀性並不只是跟編程的風格有關。還有諸多因素會對可讀性有所改善，而幾乎甚至完全不會影響到計算機編譯並執行原始碼的效能。這些因素包括：

* 不同的縮進風格（空白字元）
* 注釋
* 任務分解
* 命名規則 —— 用於各種對象，諸如變量、類、子程序，等等。

## 參考資料
程式彩蛋

**彩蛋**（英語：Easter egg）是一個在電影、電視劇、書本、光碟、電腦程式或者電子遊戲的隱藏訊息或者功能。此名稱源於西方國家的尋找彩蛋遊戲。

## 電腦

在電腦領域，又稱作**程式彩蛋**，程式彩蛋通常是指製作者隱藏在產品中的、用於愉悅使用者的隱藏物。包括文字、圖片、聲音或者某些小變化。通常在使用者進行了某些特定的操作時出現。例如當使用者執行某些使用者手冊中沒有說明的隱藏命令、無意中的滑鼠或鍵盤操作。製作者的目的通常是向使用者展示製作人的某些資料或者完全為了取悅使用者。

### 例子

* 電子遊戲歷史上已知的第一款有彩蛋的遊戲，是 Starship 1。
* 電子遊戲歷史上第一個廣為人知的彩蛋，是 Atari 2600 的 Adventure 中的隱藏文字。
* 在 Google 的自 Android2.1 以後的手機作業系統中，點 3 至 4 下「OS 版本」，會出現特殊圖片，大部分是小遊戲。
* Google 公司的網站中有彩蛋（需要 Java 虛擬機器支援）。
* 在 Google 搜尋「ASCII 藝術」，搜尋結果頁面左上角的 Google logo 會以 ascii art 的樣式顯示。
* Debian 的 apt-get：輸入 apt-get moo 就會以 ASCII-Art 的方式顯示一頭牛。
* Unix 作業系統的一個比較著名的彩蛋就是隱藏的「make love」指令，輸入後將返回「not war?」的結果。兩句合起來是一句 1960 年代於美國流行的反戰文化口號：要做愛，不要作戰。
* 許多個人電腦的生產商通常在唯讀記憶體中隱藏了一些彩蛋，包括開發人員的名單、政治性訴求或者小組的相片。
* PHP：在 PHP 頁面位址的後面加上特殊的字串會出現 PHP 的標誌。PHP 版本的不同，標誌也會不一樣。這只是眾多 PHP 彩蛋的其中一個。
* 微軟公司的辦公產品 Microsoft Excel 2000 隱藏了一個賽車遊戲 Dev Hunter。
  * Windows 記事本：開啟記事本，輸入「聯通」二字後儲存、關閉，再重新開啟記事本。原來的「聯通」二字就會被兩個問號取代。原則上這只是一個編碼辨識錯誤 ，不完全是彩蛋。
  * 在 Microsoft Word 2003 中輸入「=rand ()」命令，再按 Enter 鍵，會出現 The quick brown fox jumps over the lazy dog；而 Office 2007 及更高版本則是「=rand.old ()」命令。另外，輸入「胡」字，選擇字型「隸書」或「幼圓」，使用空心格式會發現字型嵌入「胡萬進印」的小字。
* Palm 系統隱藏了一些動畫。
* Netscape Browser、Mozilla、Mozilla Firefox、Camino、Mozilla Thunderbird、Epiphany 瀏覽器的 Mozilla 之書。
* Mozilla Firefox 3.0 瀏覽器的 **about:robots**。
* 開啟 Adobe Dreamweaver，插入任意一張圖片。按住 Ctrl 鍵，在「屬性面板」中雙擊此圖的縮圖，縮略圖會變成一個個開發者的姓名和他們的自拍照或相片。
  * 開啟 Photoshop，按住 Ctrl 鍵，點擊「Help - About Photoshop」，可以發現關於介面不同。
  * 開啟 Flash CS6，打開「Help - About Flash」視窗，點擊上方 CS「6」中間圈圈的地方，會出現開發人員相片及射擊遊戲。
* 在土豆網的任意影片播放頁面中，打開 CapsLock 鍵入「上上下下左右左右 BA」會顯示「信土豆，死後原地復活，狀態全滿。MP+100%」的雷人網路流行語。
* Plurk 的中鍵入「上上下下左右左右 BA」時間軸主題會出現波浪狀的動畫。
* YouTube 影片或在快轉、回轉時，有時影片中間會出現一個轉圈圈的灰色小圓點表示處理影片資訊中，此時按下鍵盤的方向鍵「↑」或「↓」或「←」，小圓點即會另外被拉出來，直接在螢幕上玩貪食蛇。（現已失效）
* 檢視 Flickr 的網頁原始碼會出現相關的 Ascii 字元畫和招聘廣告。
* 美國的 Yahoo! 網頁中，點下 Yahoo! 的驚嘆號，會有 "Ya~~hoo~~" 的音效。
* 任天堂於 2017 年推出的遊戲機 Switch，以特定方式可以啟動隱藏在系統軟體內的紅白機遊戲《高爾夫》，遊戲可通過 Joy-Con 操控。不少媒體和玩家認為該彩蛋是為了向策劃任天堂 Switch 的已故前社長岩田聰致敬，他也是《高爾夫》唯一的程式設計師。但這個彩蛋已於系統軟體版本 4.1 版起被移除。
* 在 2018 年 12 月 25 日，前端框架 Ant Design 出現了一個基於聖誕節的彩蛋。按鈕上方會有積雪效果而且網站標題會加上「Ho Ho Ho!」的字樣。由於該段代碼深埋在原始碼內，故造成不少網站出現了不合場合的歡愉訊息並且導致不少前端工程師無法排除而失去工作。相關開發小組隨即在 GitHub 上致歉並緊急移除彩蛋。
* 檢視知乎的網頁原始碼會出現相關的 Ascii 字元畫和招聘廣告。
* 檢視百度的網頁原始碼會出現招聘廣告。
* 檢視支付寶的網頁原始碼會出現相關的 Ascii 字元畫和招聘廣告。
* 檢視 bilibili 的網頁原始碼會出現相關的 Ascii 字元畫，同時在鬼畜區網頁版長按返回頂部 10s 後可開啟通過輸入首字母自動播放鬼畜素材音訊的彩蛋。
* 檢視 Alphabet (abc.xyz/investor （頁面存檔備份，存於網際網路檔案館）) 的網頁原始碼，向下捲動，將有一個帶有三個字母塊的 Ascii 藝術。

## 註釋

## 參考

## 外部連結

* （英文）The Easter Egg Archive （頁面存檔備份，存於網際網路檔案館） - 彩蛋大全
程式理解

**程式理解**（Program comprehension）是計算機科學的領域之一，著重軟體工程師維護已有程式碼的方式。程式理解中有包括認知，也有其他流程，已識別出這些流程，這些也是研究的主題。其研究結果會用來開發工具以及進行訓練。

軟體維護工作包括以下五種：適應性維護、修正性維護、完善性維護、代碼復用及代碼槓桿（code leverage）。

程式理解領域的計算機科學家有 Ruven Brooks、Ted J. Biggerstaff 及 Anneliese von Mayrhauser。

## 相關條目

* 程序分析
* 程序切片

## 參考資料

## 外部連結

* Using a behavioral theory of program comprehension in software engineering （頁面存檔備份，存於網際網路檔案館）
* The concept assignment problem in program understanding （頁面存檔備份，存於網際網路檔案館）
* Program Comprehension During Software Maintenance and Evolution （頁面存檔備份，存於網際網路檔案館）
程式碼

**電腦代碼**或**程式碼**是一組構建電腦程式的指令，即電腦所執行的命令。它是電腦裝置上執行的軟體部分之一，另一部分為資料。

電腦僅可直接執行機器語言（指令集的一部分）。由於人類閱讀指令集過於困難且以機器碼或其他低階語言編程耗時較長，多數程式設計師使用高階語言編寫原始碼。編譯器或直譯器隨後翻譯原始碼至機器語言以直接完成任務。編譯器所寫出的目的碼通常為機器語言，也可能為相比源語言的低階語言。直譯器使用原始碼的低階位元組碼來進行快速翻譯。
程式碼審查

**代碼審查**是指對電腦原始碼系統化地審查，常用軟體同行評審的方式進行，其目的是在找出及修正在軟體開發初期未發現的錯誤，提升軟體品質及開發者的技術。代碼審查常以不同的形式進行，例如結對程式設計、非正式的看過整個程式碼，或是正式的軟體檢查。

## 簡介

藉由代碼審查可以找到及移除像是格式化字串攻擊、競爭危害、記憶體流失及緩衝區溢位等電腦安全隱患，因此提昇代碼的安全性。基於 Subversion（可能是 Trac 或是 Redmine）、Mercurial、Git 或其他軟體的線上軟體庫可以允許協同審查代碼，而且有些協同代碼審查工具可以簡化代碼審查的過程。

自動化代碼審查軟體可以系統化的檢查原始碼中是否有已知的電腦安全隱患，可以減少大量代碼審查的工作。

卡珀斯・瓊斯（Capers Jones）分析了超過 12,000 個軟體開發項目，其中使用正式代碼審查的項目，潛在缺陷發現率約在 60-65% 之間，若是非正式的代碼審查，潛在缺陷發現率不到 50%。大部份的測試，潛在缺陷發現率會在 30% 左右。。

一般的代碼審查速度約是一小時 150 行程式碼，對於一些關鍵的軟體（例如安全關鍵系統的嵌入式軟體），一小時審查數百行程式碼的審查速度太快，可能無法找到程式中的問題。代碼審查一般可以找到及移除約 65% 的錯誤，最高可以到 85%。

也有研究針對代碼審尋找到的缺陷類型進行分析。代碼審尋找到的缺陷中，有 75% 是和電腦安全隱患有關。對於產品生命週期很長的軟體公司而言，代碼審查是很有效的工具 。

## 分類

代碼審查一般會分為三類：正式的代碼審查、結對程式設計、以及輕量型的非正式代碼審查。

正式的代碼審查（例如范根檢查法）有審慎及仔細的流程，由多位參與者分階段進行。正式的代碼審查是傳統審查代碼的方式，由軟體開發者參加一連串的會議，一行一行的審查程式碼，一般會使用列印好的原始碼。正式的代碼審查可以徹底的找到程式中的缺陷，但需要投入許多的資源。

結對程式設計是兩個程式設計師在一個電腦上共同工作，一個輸入程式，另一個工程師審查他或她所輸入的程式，結對程式設計是在極限編程中常見的開發方式。

輕量型的非正式代碼審查需要投入的資源比正式的代碼審查要少，一般會是在正常軟體開發流程中同時進行，有時也會將結對程式設計視為輕量型代碼審查的一種。

* Email 往返：在代碼登入後，原始碼管理系統自動將代碼郵寄給審查者。
* 配合輔助工具的代碼審查：作者及審查者利用配合代碼審查的軟體進行審查。

書籍 _Best Kept Secrets of Peer Code Review_ 中曾提到有關代碼審查的案例研究，這個研究發現輕量型代碼審查所找到的缺陷會比正式的代碼審查要少，但其速度較快，其成本也較低。

## 評論

以往正式的代碼審查在審查的準備及進行時都需要投入許多的資源。

代碼分析工具的使用可以協助代碼審查。尤其是一些整合在整合開發環境（IDE）下的工具，可以直接提供程式開發者有關編程標準相容的回饋。

## 相關條目

* 軟體審查
* 軟體檢查
* 偵錯
* 軟體測試
* 靜態程式分析
* 效能分析
* 自動代碼審查
* 代碼審查工具列表

## 參考資料
程式碼段

在採用段式記憶體管理的架構中，**代碼段**（code segment /text segment）通常是指用來存放程式執行代碼的一塊記憶體區域。這部分割區域的大小在程式執行前就已經確定，並且記憶體區域通常屬於唯讀，某些架構也允許代碼段為可寫，即允許程式自修改（self-modifying code）。
在**代碼段**中，也有可能包含一些唯讀的常數變數，例如字串常數等。

作業系統在裝載一個程式時會進行行程位址空間的分段，而代碼段通常處於最底部，即最低位址部分，而堆和棧在高處，所以在允許代碼段可寫的架構上，當堆或棧記憶體溢位時，代碼段中的資料就會開始被覆蓋。

## 參見

* BSS 段
* 資料段
* 記憶體管理
* 動態記憶體分配
* 段式管理
程式碼混淆

**代碼混淆**（Obfuscation）是將電腦程式的原始碼或機器碼，轉換成功能上等價，但是難於閱讀和理解的形式的行為。

代碼混淆可以用於程式原始碼，也可以用於程式編譯而成的中間代碼。執行代碼混淆的程式被稱作**代碼混淆器**。目前已經存在許多種功能各異的代碼混淆器。

其主要工作有：

* 將代碼中的各種元素，如變數、函式、類的名字覆寫成無意義的名字。比如覆寫成單個字母，或是簡短的無意義字母組合，甚至覆寫成「\_\_」這樣的符號，使得閱讀的人無法根據名字猜測其用途。
* 重寫代碼中的部分邏輯，將其變成功能上等價、但是更難理解的形式。比如將 for 迴圈覆寫成 while 迴圈、將迴圈覆寫成遞迴、精簡中間變數，等等。
* 打亂代碼的格式。比如刪除空格、將多行代碼擠到一行中、或者將一行代碼斷成多行等等。
* 添加花指令，通過特殊構造的指令來使得反組譯器出錯，進而干擾反編譯工作的進行。

代碼混淆器也會帶來一些問題。主要的問題包括：

* 被混淆的代碼難於理解，因此除錯也變得困難起來。開發人員通常需要保留原始的未混淆的代碼用於除錯。
* 對於支援反射的語言，代碼混淆有可能與反射發生衝突。
* 代碼混淆並不能真正阻止反向工程，只能增大其難度。因此，對於對安全性要求很高的場合，僅僅使用代碼混淆並不能保證原始碼的安全。

## 白盒密碼

白盒密碼（ White-box cryptography）是指夠抵抗白盒攻擊的密碼演算法，以及對應實現。常見的實現方式是藉助高強度的代碼及演算法混淆。

## 參考文獻

## 外部連結

* Javascript 代碼混淆器 on GitHub （頁面存檔備份，存於網際網路檔案館）
* JavaScript Obfuscator Tool
程式碼異味

程式開發領域，代碼中的任何可能導致深層次問題的症狀都可以叫做**代碼異味**（Code smell）。

通常，在對代碼做簡短的回饋迭代時，代碼異味會暴露出一些深層次的問題，這裡的回饋迭代，是指以一種小範圍的、可控的方式重構代碼。基於這些暴露的問題，人們會進一步的檢查設計和代碼中是否還存在別的**代碼異味**，然後再做進一步的重構。從負責重構的開發者的角度來看，代碼異味可以啟發何時重構，如何重構。因此，可以說代碼異味推動著重構的進行。

該術語似乎由肯特・貝克於 90 年代後期，在 WardsWiki 上首次使用。且自從在 _Refactoring. Improving the Design of Existing Code_. 被提到過，使用率就大大的提高。代碼異味同時也是敏捷開發者常用的術語。

什麼是，或者不是代碼異味，是一個主觀的判斷，通常因語言、開發者、開發方法的不同而不同。對於 Java 開發語言，有些工具，比如 Checkstyle、PMD 和 FindBugs 可以自動檢測一些代碼異味。

## 常見的代碼異味

* 代碼重複：相同或者相似的代碼存在於一個以上的地方。
* 長方法：一個非常長的方法、函式或者過程。
* 巨類：一個非常龐大的類。
* 太多的參數：函式或者過程的冗長的參數列使得代碼可讀性和品質非常差。
* 特性依戀：一個類過度的使用另一個類的方法。
* 親密關係：一個類依賴另一個類的實現細節。
* 拒絕繼承：子類以一種『拒絕』的態度，覆蓋基礎類別中的方法，換句話說，子類不想繼承父類別中的方法，參考里氏替換原則。
* 冗餘類 / 寄生蟲：一個功能太少的類。
* 人為的複雜：在簡單設計已經滿足需求的時候，強迫使用極度複雜的設計模式。
* 超長識別碼：尤其，在軟體工程中，應該毫無保留的使用命名規則來消除歧義。
* 超短識別碼：除非很明顯，一個變數名應該反映它的功用。
* 過度使用字面值：為提高可讀性和避免編碼錯誤，應該使用命名常數。此外，字面值可以且應該在可能的情況下，獨立存放於資原始檔或者指令碼中，在軟體部署到不同區域時，可以很方便地在地化。

## 參見

* 反模式
* 編程原則
* 靜態程式分析工具列表
* 軟體腐敗
* 設計異味
* 軟體缺陷指標

## 參照

## 外部連結

* CodeSmell at c2.com（頁面存檔備份，存於網際網路檔案館）
* Taxonomy of code smells
程式碼稽核

**代碼稽核**（Code audit）是一種以發現程式錯誤，安全漏洞和違反程式規範為目標的原始碼分析。它是防禦性編程範式的一部分。該範式的目標是在程式發布前減少錯誤。C 和 C++ 原始碼是最常見的分析物件，因為其他更高層的語言如 Python 擁有更少可能存在漏洞的函式（比如不檢查邊界條件）。

## 參考文獻
程式碼膨脹

**代碼膨脹**（英語：**Code bloat**）是指程式碼（可以是原始碼，也可以是機器碼）生成的程式檔案過大、執行緩慢或者有其他浪費資源的情況。代碼膨脹可能由編寫代碼的語言、編譯時所用的編譯器，或者編寫的程式設計師導致。代碼膨脹通常指原始碼過於冗長，由程式設計師的編碼習慣和程式語言的設計導致，代碼膨脹也可以指編譯後的代碼或者二進位檔案占用空間過大（膨脹）。

## 常見原因

通常來說，膨脹的代碼是由於程式設計師使用了較多的代碼行，而非使用了解決問題的最佳方案。

程式設計師寫出膨脹代碼的部分原因有：

* 過度設計：
  * 過度使用物件導向（OOP）結構，如類和繼承。這可能導致麻煩且混亂的設計，使代碼量多於必要。
  * 不正確的使用設計模式 —— 物件導向的開發人員可能在不需要使用設計模式的地方強行使用，從而導致問題。
* 沒有用適當的封裝方案使代碼可重複利用，導致代碼重複
* 宣告式編程 —— 在命令式或物件導向語言中實現宣告式編程風格通常會導致代碼膨脹。
* 過度的迴圈展開 —— 不理智的過度最佳化效能。
* 過度使用多重 `If` 條件語句 —— 而沒有使用如尋找表。

一些原生編譯器推導膨脹的例子包括：

* 死代碼 —— 代碼被編譯，但從未被使用。
* 冗餘計算 —— 重新計算已經計算過的表達式。這種冗餘計算經常在實現防止緩衝區溢位的「邊界檢查」代碼時產生。 尖端的編譯器只將其計算一次，使用常用子表達式消除和迴圈不變代碼外提技術消除冗餘計算。
* C++ 中採用的模板系統的一些原生實現是編譯該語言的編譯器之不足之處的例子。實現此特性的原生編譯器可以為使用的每個資料類型引入一個模板類版本的方法。但是，這也導致被編譯的方法可能永遠不會被用到，導致代碼膨脹。更尖端的編譯器和連結器能檢測多餘的副本並將其丟棄，或者避免產生，從而減少膨脹。因而，使用能放棄死代碼的編譯器可以使模板代碼產生更小的二進位檔案。

## 例子

下列 JavaScript 程式碼演算法有著大量的冗餘變數、不必要的邏輯，以及低效的字串連接。

而相同的邏輯可以用下列方式更有效地表達：

## 不同語言的代碼密度

各種電腦語言的代碼密度有著很大差別，以「緊湊」語言（例如領域特定語言、微軟 P 代碼 、執行緒代碼）編寫的程式以及緊湊語言（以機器碼編寫）的直譯器通常比直接用機器語言編寫程式消耗更少的代碼量。

## 減少膨脹

減少代碼膨脹的一些技術包括：

* 重構經常使用的代碼序列為子程式，並從多個位置呼叫該子程式，而不是在各個位置上複製並貼上這段代碼。
* 重新使用已經被編寫的子程式（可能利用附加參數），而不是從頭編寫它們的新代碼。

## 參見

* 軟體膨脹
* 極簡主義

## 參考資料
程式碼複用

**代碼複用**，也被稱作**軟體複用**。就是再利用已有的代碼，或者相關的知識去編寫新的代碼來構造軟體。

## 概要

可複用的代碼以及相關的知識與需求文件，設計，測試用例一樣都是軟體開發的組織內部所不可或缺的資產。事實上，最早為人所知的複用正是從代碼複用開始的。所謂的代碼複用，本質上就是對曾經編寫過的代碼的一部分甚至全部重新加以利用，從而構建新的程式。使用這種方法就可以將程式設計師從費時費力的重複勞動中解放出來。

程式庫是一種代碼複用的很好的形式。程式設計師可以建立內部抽象以便程式的部分代碼可被複用，或者直接建立一個自訂庫給自己使用。用于衡量代碼可複用程度的特性通常包括：模組化，低耦合，高內聚，資料封裝以及 SOC。

如果編寫代碼時要利用已有的代碼，則必須定義某種介面或者通信的方法。這通常包含了對子程式，物件，類或原型的參照或呼叫。

對於以某個已有程式的舊版本作為出發點來進行新版本的開發的做法也可被視為一種代碼複用。

還有一種做法也可被視為代碼複用。即直接從已有程式中將一段代碼拷貝出來並貼上到另一個地方作為新程式的一部分。但是這種做法往往會使得程式設計師最終陷入重複代碼過多的問題。

為了使代碼複用更加方便，更加迅速並且更加體系化，相關的研究者也進行了大量的研究。物件導向程式設計就是以此為目的而衍生出來的方法。更加新一點的方法就是代碼自動生成，它會基於使用者設定的一系列參數來自動生成程式的代碼。與此類似的概念被稱之為元程式設計。

## 軟體複用

**軟體複用**是一種電腦軟體工程方法和理論。60 年代的「軟體危機」使程式設計人員明白難於維護的軟體成本是極其高昂的，當軟體的規模不斷擴大時，這種軟體的綜合成本可以說是沒有人能負擔的，並且即使投入了高昂的資金也難以得到可靠的產品，而軟體重用的思想是解決這一問題的根本方法。

軟體複用的主要思想是，將軟體看成是由不同功能部分的「組件」所組成的有機體，每一個組件在設計編寫時可以被設計成完成同類工作的通用工具，這樣，如果完成各種工作的組件被建立起來以後，編寫一特定軟體的工作就變成了將各種不同組件組織連接體來的簡單問題，這對於軟體產品的最終品質和維護工作都有本質性的改變。

## 複用的類型

* 機會性的代碼複用

　
: 開發團隊在專案開始時便已知可複用的代碼或組件的存在，因而決定進行代碼複用。

* 有計劃的代碼複用

　
: 開發團隊從戰略角度為了日後的開發能夠複用代碼而進行設計。

## 複用的形式

### 程式庫

編寫程式庫是進行代碼複用最常見的方法。很多共通的操作，比如檔案的讀 / 寫，作業系統資訊的取得的動作都會被封裝在程式庫中，然後由軟體開發人員來呼叫。使用程式庫的一大優點就是它所提供的操作都是經過充分測試的，但是缺點則是無法對程式庫提供的操作的具體實現進行調整，同時程式庫也要求軟體開發人員花大量時間去學習它的用法。

### 設計模式

設計模式對於同類的相似問題提供了通用的解決方法。它所提供的是概念上的解決方法，對於具體問題往往還需要具體實現一份代碼。利用抽象類或介面往往可以在特定的設計模式中達到代碼的複用。

### 應用框架

軟體開發人員往往可以通過第三方的應用程式或者框架來實現對一個程式的大範圍複用，這可以有效地提高生產效率。但缺點在於第三方的應用程式或者框架往往只在某個特定的應用範圍內才可以適用。

## 參見

* 一次且僅一次
* 繼承
* 設計模式
* 程式設計方法學

## 外部連結

* Software Reuse NASA
* RiSE - Reuse in Software Engineering
* ReNews - SoftwareReuse and Domain Engineering
* Koders Open Source Search Engine
* merobase - a Search Engine for Software Components（頁面存檔備份，存於網際網路檔案館）
程式碼複製

**代碼重複**（英文：**duplicate code**，也叫**代碼複製**）在程式設計中表示一段原始碼在一個程式，或者一個團體所維護的不同程式中重複出現，是不希望出現的現象。為避免巧合，只有一定數量的代碼完全相同才能判定為代碼重複。重複代碼的段落有時被稱為代碼複製，自動檢測代碼重複的過程叫做**複製檢測**。

## 產生

產生代碼重複可能有以下幾個原因：

* 因為某段代碼能用就複製貼上過來。多數情況下代碼會有少許不同，如變數名稱改變或代碼增刪。
* 因為要實現與已有功能類似的功能，開發者獨立寫出與別處相似的代碼。研究表明獨立撰寫的代碼在語法上不一定相似。
* 抄襲，即不經允許複製代碼，且未列出著作權歸屬。
* 代碼系自動生成。這時可能需要重複代碼以提高效能或方便開發。註：這裡代碼重複是指碼產生器自動生成的代碼，而非生成器本身的代碼。

## 成本與效益

不恰當的代碼重複表明程式設計不良，例如缺少抽象。這會導致程式過長，錯誤更多，進而難以維護，因為需要人工尋找並修改重複的部分。然而由於種種原因，適當的代碼重複難以避免，例如給與已有裝置相似的新裝置寫驅動程式時，複製代碼能使開發更便捷。

當複製具有軟體漏洞的代碼時，如果開發人員不知道這樣的副本，則複製的代碼中可能會繼續存在漏洞。代碼重構可以改善許多軟體的度量衡標準，例如原始碼行數，循環複雜度和耦合度。這可能會縮短編譯時間，降低認知負載，減少人為錯誤，減少被遺忘或被忽視的代碼。

但並不是所有的代碼重複都可以被重構。如果程式語言提供不充分或過於複雜的抽象，複製或許是具有速度效益上的解決方式，特別是修改代碼使用的編輯器如有支援區塊 (行) 編輯的功能。而且，重構時破壞代碼的風險可能會超過維護的效益。重複的代碼似乎不會比不重複的代碼更容易出錯。使用開源方式共享代碼組件，而不是在軟體組態管理的倉儲庫之間複製它們，也可以減少複製。

## 檢測

檢測代碼重複的手段有：

* Baker 演算法
* Rabin–Karp 字串搜尋演算法
* 利用抽象語法樹
* 視覺化檢測器
* 矩陣計數檢測

## 例子

以計算整數陣列的平均值的代碼片段為例

這兩個迴圈可以覆寫為一個函式：

利用以上函式可以寫出無重複的原始碼

## 參見

* 代碼異味
* 一次且僅一次
* 抽象化 (電腦科學)

## 參考資料
程式碼風格

**代碼風格**（英語：Programming style）即程式開發人員所編寫原始碼的書寫風格。良好的代碼風格會幫助程式設計師閱讀和理解符合該風格的原始碼，並且避免錯誤。

關於該主題的經典著作是 1970 年代編寫的《編程風格的要素》，並以當時流行的 Fortran 和 PL/I 語言的範例進行了說明。

特定程式中使用的編程風格可能源自公司或其他計算組織的代碼約定，以及代碼作者的偏好。編程風格通常是為特定的程式語言（或語言家族）設計的：在 C 原始碼中被認為是良好的風格可能不適合 BASIC 原始碼等等。但是，一些規則通常適用於許多語言。

## 良好風格的要素

總結程式設計實踐中的經驗，代碼風格的要素包括（但不限於）以下幾點：

* 名字的使用（參見：駝峰式大小寫、識別碼命名約定、匈牙利命名法）
* 表達式與語句
* 常數的使用
* 注釋的使用
* 縮排（參見：縮排風格）
* 代碼的布局

## 代碼外觀

代碼風格通常處理原始碼的可視外觀，帶有可讀性的目標。軟體很長時間都可以格式化原始碼，讓寫代碼的人將注意力集中在命名，邏輯和更進階的技術。作為一個實際的點，用電腦來格式化原始碼節省了時間，且使不帶網路論戰地實施全公司的標準成為可能。

### 縮排

縮排風格協助確認控制流和代碼塊。在一些程式語言中，縮排被用來限定代碼的邏輯塊；在這些情況下正確的縮排不僅僅是風格的事。在其他語言中，縮排和空白字元不影響功能，雖然有邏輯和一貫的縮排是代碼更易於閱讀。比較：

或

和像是這樣

前兩個範例很可能更容易閱讀，因為它們以既定的方式縮排（"hanging paragraph" 樣式）。這種縮排風格在處理多個巢狀結構時特別有用。

#### ModuLiq

ModuLiq Zero 縮排風格用 Enter 分組而不是縮排。和所有以上的比較：

#### Lua

Lua 不用傳統的花括號和括號。if/else 語句只需要表達式後面有 `then`，以 `end` 結束 if/else 語句。

縮排是可選的。`and`,`or`,`not` 在 true/false 語句間被使用。

它們是真 / 假陳述，如

會代表假。

#### Python

Python 用縮排來表明控制結構，所以_正確的縮排_是需要的。通過這麼做，用花括號（亦即 `{` 和 `}`）包括的需要就被清除。另一方面，複製和貼上 Python 代碼可能導致問題，因為被貼上的代碼的縮排級別可能和當前行的縮排級別不同。這樣的重格式化用手做可能十分乏味，但一些文字編輯器和整合式開發環境有自動做的功能。也有當 Python 代碼被發表在去除空白字元的論壇或網頁上，使它變得無法使用的問題，雖然這個問題可以在能用保留空白字元的標籤，像 "<pre> ... </pre>"（HTML 中），"[code]"..."[/code]"（bbcode 中）等等時避免。

注意 Python 不適用花括號，而是一個普通的英文冒號（例子 `else:`）。

許多 Python 程式設計師傾向於遵循一種公認的風格指南，稱為 PEP8。有一些工具旨在自動化 PEP8 合規性。

#### Haskell

Haskell 類似地有越位規則，也就是它有一種二維語法，在其中縮排對定義塊有意義（雖然另一種語法用花括號和分號）。Haskell 是一種聲明式語言，在 Haskell 指令碼中有語句，但是有聲明。範例:

可以被寫成一行，如：

Haskell 鼓勵 文學編程 的使用，擴充的文字解釋代碼的緣由。在文學式 Haskell 指令碼（帶有副檔名 `lhs`）中，所有東西都是注釋，除了標記為代碼的塊。程式可以用 LaTeX 編寫，這種情況下 `code` 環境標記哪裡是代碼。並且每個活動的代碼段落可以被在前面和後面帶上空行的方式標記，以一個大於號和一個空格開始每一行代碼。這裡有一個使用 LaTeX 標記的：

一個使用純文字的例子：

#### 垂直對齊

將相似的元素垂直對齊經常是有幫助的，使錯字導致的錯誤更加明顯。比較：

和

#### 空格

在一些需要空白字元的情況下，絕大部分自由形式語言的語法不關心出現了多少空白字元。與空白字元相關的風格被普遍用來加強可讀性。目前沒有已知的確鑿事實（研究得出的結論）關於哪種空白字元風格有最好的可讀性。

例如，比較下列語法上等價的 C 語言代碼例子：

v.s.

#### 制表符

使用製表鍵來建立空白字元，在不施加足夠關注時會造成特定的問題，因為依據使用的工具，甚至是使用者的偏好，制表點的位置可能不同。
如一個例子，一個程式設計師偏好 4 個制表位，將工具集設定成如此，然後用這些去格式化代碼。

另一個程式設計師偏好 8 個制表位，並將工具集設定成如此。當其他人檢查原來那個人的代碼時，他們可能會發現很難讀。

一種對這個問題廣泛使用的解決方法可能包含不為對齊使用製表鍵，或制定必須設定成幾個制表位的規則。注意制表符在一貫的情況下工作良好，限制在局部縮排上，並且不用來對齊：

## 參見

* C and C++ Style Guides（頁面存檔備份，存於網際網路檔案館）
* Programming in C++, Rules and Recommendations（頁面存檔備份，存於網際網路檔案館）
* Aladdin's C coding guidelines（頁面存檔備份，存於網際網路檔案館）
* USER NOTES ON FORTRAN PROGRAMMING (UNFP)（頁面存檔備份，存於網際網路檔案館）
* PROGRAM LAYOUT - THE ART OF MAKING PROGRAMS READABLE（頁面存檔備份，存於網際網路檔案館）
程式穀

**程式穀**（?—?），江西省南昌府新建縣人，清朝政治人物、進士出身。
光緒二十四年（1898 年），參加光緒戊戌科殿試，登進士二甲 120 名。同年五月，以主事分部學習。康有為門生。曾因參加維新變法被捕，後幸獲釋放。民初被選為國會議員，並任北京孔教大學教授。
。

## 參考文獻

梁啓超《戊戌政變記・康廣仁傳》
程式編寫員

**軟體設計師**的工作，受到系統架構師的影響。當系統架構師決定了整個系統架構後，軟體設計師會試著實作一個系統原型。

系統原型的目的，在驗證系統架構師提出的架構。當架構過於複雜，或開發成本過高時，軟體設計師必須要求系統架構師，修改提出的架構，因為在實務上，因為成本、技術等關係，是無法在經濟的狀況下達成。

軟體設計師，必須對軟體技術十分專長，也必須對客戶的需求有一定程度的了解。在系統原型中，軟體設計師會實作多個程式範型 (Program Pattern)，每個程式範型，對應到一種客戶需求的程式類型。

系統原型開發成功後，後續的團隊，就可以使用完成的程式範型，快速地將客戶的需求，轉化為系統程式。

## 參見

* 軟體開發
* 軟體工程
* 軟體開發流程
程式計數器

**程式計數器**（英語：Program Counter，縮寫：**PC**）是一個中央處理器 CPU 中的暫存器，其功能是儲存下一條要執行的指令（在機器語言中）的記憶體位址。在 Intel x86 和 Itanium 微處理器中，它叫做指令指標（instruction pointer，IP），有時又稱為指令位址暫存器（instruction address register，IAR）、指令計數器或只是指令序列器的一部分。

在大部分的處理器中，指令指標都是在提取程式指令後就被立即增加；也就是說跳躍指令的目的位址，是由跳躍指令的運算元加上跳躍指令之後下一個指令的位址（單位爲位元或位元組，視電腦形態而定）來獲得目的地。

處理器通常從記憶體中順序取得指令，但控制傳輸指令通過在 PC 中添加一個新值來改變順序。這些包括「分支」（有時稱為「跳轉」），「次常式呼叫」和「返回」。以某些斷言結果為真為條件的傳輸可讓電腦在不同條件下遵循不同的順序。

「分支」規定下一條指令從記憶體中的其他地方取得。「子程式」不僅呼叫分支，而且還儲存 PC 的先前內容。「返回」檢索 PC 的儲存內容並將其放回去，然後按照子程式呼叫的指令繼續順序執行。

## 參考文獻
程式設計

**電腦程式設計**（英語：Computer programming），或稱**程式設計**（programming），是給程式解決出特定問題的過程，軟體開發過程中的重要步驟。程式設計方法往往以某種程式設計語言為工具，給出這種語言下的程式。程式設計過程一般包括分析、設計、編碼、測試、除錯等不同階段。

## 發展歷程

在電腦技術發展的早期，軟體開發主要就是程式設計。但隨著技術的發展，軟體系統越來越複雜，逐漸分化出許多專用的軟體系統，如作業系統、資料庫系統、應用伺服器，而且這些專用的軟體系統愈來愈成為普遍的系統環境的一部分。這種情況下軟體開發的內容越來越豐富，不再只是純粹的程式設計，還包括資料庫設計、使用者介面設計、通信協定設計和複雜的系統組態過程。

空間方面，在早期，由於機器資源比較昂貴，如何縮小儲存空間往往是設計關心的首要重點；而隨著硬體技術的飛速發展，電腦上資料儲存媒體的價格降低，空間不再是考慮的第一要點，一些較耗時的運算也漸漸發展出以空間換取時間的模式。

時間方面，在早期，如何加強程式效率、縮短程式執行時間是程式設計師的共同目標；而在硬體效能進步、效率差距縮小，軟體規模與複雜度卻日益增加的現在，程式的結構、可維護性、重複使用性、彈性等因素更顯得重要。在多人合作的程式設計專案裡，程式設計師們會加上各種註解以協助其他參與者理解程式碼，此行為雖然對執行時間的縮短沒有幫助，還會加重儲存空間的負擔，但卻因能達到較好的溝通並提高程式碼的可維護性，而成為目前的主流。

然而，隨著智慧型手機等攜帶裝置的興起，執行時間的縮短與儲存空間的有效運用再次成為焦點，形成與主機伺服器類型應用程式不同的重點考慮方向。

## 設計工具

* 開發環境
  * 編輯器、編譯器、直譯器、除錯工具
  * 整合式開發環境
  * 視覺化開發環境
  * 電腦輔助軟體工程

## 圖像展覽

* * *

## 外部連結

* 開放式目錄計劃中和程式設計相關的內容

## 相關條目

* 中文編程
* 程式
* 軟體
* 程式設計語言
* 程式設計實踐
* 程式設計方法學
* 軟體開發
* 軟體設計模式
程式設計師節

**程式設計師節**是一個國際上被眾多科技公司和軟體企業認同的業內人士節日。日期是在每年的第 256（十六進位為 0x100，或 28）天，也就是平年的 9 月 13 日或閏年的 9 月 12 日。它是俄羅斯的一個官方節日，其他國家的程式設計師社群也慶祝這個節日。之所以選擇 256（28），是因為它是一個被程式設計師們所熟知的 8 位元基數。用 1 個位元組（等於 8 位元）最多能表示 256 個數值，而且在平年中，256 是 2 的最大冪中小於 365 的值。

與此同時，在中國人們主要認同 10 月 24 日（2 的 10 次方，210=1024）才是程式設計師日。因為 1024=1k，是二進位的程式世界和十進位的現實世界之間的一個介面，在統計資料流量和儲存空間時，1024 和 1000 經常不作區分。此外，對 1024 這個數字的認同也有來自著名的宅文化社群草榴的影響。

也有人提出將 10 月 10 日作為程式設計師日，因為在電腦世界中，檔案都是由 1 和 0 這兩個二進位數字組成的。

## 習俗與慶祝

白色被選為程式設計師節的主題色。在紅綠藍 24 位元深（RGB）顏色空間裡，每種原色可以有 256 種級別（從 0 到 255 一共 256 個數值）的深淺變化，當三種原色都達到最大深淺值，即為十六進位的 0xFFFFFF 時，表示白色。所以全世界的程式設計師們會穿著白色來慶祝這一天。

## 歷史

設立這個節日要歸功於瓦倫丁・巴爾特（Valentin Balt），並列技術網頁設計公司（Parallel Technologies web design company）的一名職員，2002 年，他收集簽章向俄羅斯聯邦政府請願，請求將這一天定為程式設計師節。

2009 年 7 月 24 日，俄羅斯聯邦通信與大眾傳媒部提出了新的節日安排方案，設立程式設計師節。。9 月 11 日，俄羅斯總統梅德韋傑夫簽署了這個法案。

## 參見

* 世界資訊社會日
* 感謝系統管理員日
* 俄羅斯公眾假日
* 秘書節

## 注釋

## 外部連結

* 在程式設計師節那天
程式設計馬拉松

**程式設計馬拉松**（英語：hackathon，又譯為**駭客松**），又稱**駭客日**（hack day）、**駭客節**（hackfest）或**程式設計節**（codefest），是一個流傳於駭客（hacker）當中的新詞彙。程式設計馬拉松是一種活動。在該活動當中，電腦程式設計師以及其他與軟體發展相關的人員，如圖形設計師、介面設計師與專案經理，相聚在一起，以緊密合作的形式去進行某項軟體專案。程式設計馬拉松的靈魂是合作地編寫程式和應用。程式設計馬拉松的時長一般在幾天到一周不等。程式設計馬拉松不是編寫些一次性作品那麼簡單。程式設計馬拉松的精髓在於：很多人，在一段特定的時間內，相聚在一起，以他們想要的方式，去做他們想做的事情 —— 整個程式設計的過程幾乎沒有任何限制或者方向。

還有一個術語叫做「短跑（sprint）」。「短跑」用於描述一種性質與程式設計馬拉松類似的活動。「短跑」的特點是：它只持續幾天時間。另一個描述此類活動的詞彙是「代碼節」。這個詞彙主要流傳於 Linux 使用者當中。「代碼節」這個詞是一個合成詞，它由代碼和節日兩部分組合而成。「代碼節」這個詞是從「安裝節」一詞引申而來的。「安裝節」是一種 Linux 使用者群的活動。

## 字源

駭客松（hackathon），又稱「程式設計馬拉松」。

這個術語本身是一個合成詞，它是由「程式設計（hack）」和「馬拉松（marathon）」兩部分組成。

這個術語誕生於 1999 年。兩組人在同一年想到並使用了該術語。一組人是 OpenBSD 的開發者們。另一組人是 Sun 的市場行銷團隊。

## 起源

OpenBSD 於 1999 年 6 月 4 日在卡爾加里舉辦的一次密碼學開發活動上第一次使用了該術語。在那次活動中，10 名程式設計師相聚到一起商討如何避免由美國密碼學軟體出口規定引起的合法性問題。

對於 Sun 而言，他們第一次使用「程式設計馬拉松」這個術語則要追溯到 1999 年 6 月 19 日 JavaOne 大會中的一次活動。在那次活動中 John Gage 向出席者發出一個挑戰。他要求出席者用 Java 為新款的 Palm V 編寫一個程式。這個程式可以讓 Palm V 使用者通過紅外線埠和其他 Palm V 的使用者進行通訊，此外 Palm V 使用者還能夠通過該程式在網上註冊他們的手機。這個活動號稱是程式設計馬拉松的始祖。

自 1986 年起，Sun 還召開了一系列「連接馬拉松」。這些馬拉松大多是圍繞 NFS 的互用性展開的。在這些活動當中，供應商和受邀請人相聚到一起去測試他們的硬體和軟體的互用性，找出網際網路標準協定規範中的缺點，並定義一套可重複使用的協定測試程式。「連接馬拉松」有點像已經停止的「蘋果程式設計大會」。「連接馬拉松」更像是一種讓參與者與他人展開技術交流的開發者大會。只是在技術交流之餘，參與者有時也寫寫程式。

於 2008 年，第一個區塊鏈由一名或一組被稱爲 Satoshi Nakamto 的人或團體概念化。 相隔多年後， 「**區塊鏈駭客松 」** (Blockchain Hackathon) 的名稱開始被崛起。

## 區塊鏈駭客松

區塊鏈駭客松（Blockchain Hackathon) 與程式設計馬拉松相近，但性質有所區別。區塊鏈駭客松讓開發人員獲得資源來構建分散式應用程式（dApps/ Decentralized Applications)，它是區塊鏈開發人員之間的競爭。另外，組織此類駭客松的都是與區塊鏈有相關的公司，這也同時讓公司們發掘有才的程式員並雇傭他們。

自 2017 年起，區塊鏈駭客松客松曝光率續漸增長，並向參加者承諾了大量的招聘機會。駭客松的景觀已經從僅限於傳統的大型科技公司，如 Facebook，Google，以及像 Major League Hacking 組織主辦的大型季節性駭客松，到現在幾乎任何機構都能舉辦自家版本的小規模駭客松。這些公司大多花費數千美元來舉辦這類駭客松，這筆金額通常包括免費物品像背包，筆記本，食物，住宿，現金獎品，禮品獎品，熱門場所和未來的就業機會。

### 例子

Malta Blockchain Summit（頁面存檔備份，存於網際網路檔案館）

EOS Hackathon 

* EOS.IO 是一個區塊鏈操作平台，基於 EOS.IO 軟體上所發行的加密貨幣名為 EOS。根據 2017 年所發佈的白皮書，EOS.IO 平台由一家私人公司 block.one 開發，並以開源軟體的形式於 2018 年 6 月 1 日推出。在 2018 年期間，Block.one 在 6 個國家舉辦駭客松，當中包括香港，雪梨，倫敦，非洲，舊金山以及南非。參與人數衆多，送出的禮品及獎金總額龐大。

## 參考資料

## 延伸閱讀

## 外部連結

* Media-Making Strategies to Support Community and Learning at Hackathons. MIT Center for Civic Media. June 30, 2014 [2021-06-18]. （原始內容存檔於 2015-10-11）.
* "Demystifying the hackathon" （頁面存檔備份，存於網際網路檔案館）. Article from Mckinsey, October, 2015
程式語言世代

程式語言（**Programming Language**）大致可以分為五個世代。

* 第一代語言：機器語言
* 第二代語言：組合語言
* 第三代語言：高階語言，例如 C
* 第四代語言：極高階語言，例如 SQL
* 第五代語言：邏輯導向語言，又稱自然語言

## 世代

### 第一代

第一代語言是機器語言，由０和１組成，可以由處理器直接執行。執行速度最快，編輯難度高，可讀性低。

### 第二代

第二代語言是組合語言，屬於低階語言，但可讀性較高。要使用組譯器（Assembler）譯成機械碼，才可由處理器執行。

### 第三代

第三代語言是高階語言，較易被人類理解，包括常用的 C／C++、C#、Objective- C、Java、Pascal 和 Visual Basic 等等……

高階語言要使用預處理器、編譯器和連結器翻譯，才可產生執行檔。

### 第四代

第四代語言又稱為查詢語言、非程式導向語言或極高階語言，語法較接近人類語言，例如 SQL。

SQL 可以使用 select, from, order by 等等的指令查詢和排序資料庫內容。如果使用高階語言排序資料，我們須使用兩個 for 迴圈。

### 第五代

第五代語言又稱為自然語言或邏輯導向語言，目前主要用於人工智慧（AI）研究領域。它沒有特別語法，能夠讓電腦直接處理人類語言所寫的問題。
程式語言理論

**程式語言理論**（英語：Programming language theory）是電腦科學的一個分支，研究程式語言的設計、實現、分析、描述和分類及其各自的特點。它屬於電腦科學，既依賴又影響著數學、軟體工程、語言學，甚至認知科學。

## 歷史

從某種角度來看，程式語言理論的歷史，甚至比程式語言本身的發展更久遠。儘管阿隆佐・邱奇與史蒂芬・科爾・克萊尼在 1930 年代發明的 Lambda 演算被一些人認為是世界上第一門程式語言，但其初衷是用於對計算進行建模，而不是作為一種程式設計師向電腦系統描述演算法的手段。許多現代的函式語言程式設計語言都聲稱自己是為 Lambda 演算提供了「一點包裝」，並能輕鬆地以其解釋。

世界上第一門程式語言是由康拉德・楚澤於 1940 年代設計的 Plankalkül，但其直到 1972 年才廣為人知，更是到 1998 年才被實現。Fortran 則是第一門大獲成功的高階程式語言，由約翰・巴科斯領導的 IBM 研究者們在 1954-1957 年間實現。Fortran 的成功使一些科學家聯合起來研究一種「通用的」電腦語言，並最終帶來了 ALGOL 58；麻省理工學院的約翰・麥卡錫則開發了 Lisp，其為第一門源自學術界而取得成功的程式語言。隨著 1960 年代這些起初的嘗試獲得成功，程式語言逐漸成為熱門的研究物件，並延續至今。

## 子學科及相關領域

程式語言理論中存在著幾個研究領域，或者對程式語言理論產生了深遠的影響，其中許多有相當大的重疊。此外，PLT 還利用了數學的許多其他分支，包括可計算性理論、類型論和集合論。

### 形式語意學

在計算理論中，**形式語意學**是關注計算的模式和程式設計語言的含義的嚴格的數學研究的領域。

語言的形式語意是用數學模型去表達該語言描述的可能的計算來給出的。

形式語意學（formal semantics），是程式設計理論的組成部分，以數學為工具，利用符號和公式，精確地定義和解釋電腦程式設計語言的語意，使語意形式化的學科。

提供程式設計語言的形式語意的方法很多，其中主要類別有：

* 指稱語意學，著重於語言的執行結果而非過程，包括域理論；
* 操作語意學，例如抽象機（象 SECD 抽象機），著重於描述語言的過程；
* 公理語意學，如 謂詞變換語意學和代數語意學。

### 類型論

**類型論**提供了設計分析和研究型別系統的形式基礎。實際上，很多電腦科學家使用術語「類型論」來稱呼對程式語言的類型語言的形式研究，儘管有些人把它限制於對更加抽象的形式化如有類型 lambda 演算的研究。

### 程式分析

**程式分析**是指自動分析一個程式的包括正確性、健壯性、安全性和活躍性等特徵的過程。 程式分析主要研究兩大領域：程式的最佳化和程式的正確性。前者研究如何提升程式效能並且降低程式的資源占用，後者研究如何確保程式完成預期的任務。

### 比較程式語言分析

比較程式語言分析旨在根據程式語言的特點將其分類為不同類型，程式語言的大類通常被稱為程式設計範式。

### 泛型和元程式設計

是指某類電腦程式的編寫，這類電腦程式編寫或者操縱其它程式（或者自身）作為它們的資料，或者在執行時完成部分本應在編譯時完成的工作。

### 領域特定語言

指專注於某個應用程式領域的電腦語言。

### 編譯原理

編譯原理是編寫編譯器的理論。編譯器的操作傳統上分為語法分析 (掃描和解析)、語意分析 (確定程式應該做什麼)、最佳化 (根據某些指標改行程序的效能，通常是執行速度) 和代碼生成 (用某種目標語言生成和輸出等價的程式 (通常是 CPU 的指令集)。

### 執行時系統

指一種把半編譯的執行碼在目標機器上執行的環境，介乎編譯器及直譯器的執行方式。包括虛擬機器、垃圾回收和外部函式介面。
程式錯誤

**程式錯誤**（英語：**Bug**），是程式設計術語，是指軟體執行時因程式本身有錯誤而造成功能不正常、當機、資料遺失、非正常中斷等現象。有些程式錯誤會造成電腦安全隱患，此時叫**漏洞**。

一些有趣的錯誤有時也會成為一種樂趣。在電腦遊戲中，假如一些錯誤不令遊戲出現大錯誤的話，經常會變成一種玩遊戲時的秘技（秘技有時是遊戲設計者故意加入，用於檢查程式設計，繞過不需要的步驟直接檢驗需要的地方時所使用的代碼）。

有嚴重後果的錯誤會受到廣泛關注。修補、改正軟體程式錯誤的過程稱為除錯。

## 「Bug」的詞源

### 來自工程學

用 bug 來指工程錯誤這種用法大約出現在 1870 年代，早在電腦出現前就存在。目前最早找到的證據是愛迪生在 1878 年的信

> It has been just so in all of my inventions. The first step is an intuition, and comes with a burst, then difficulties arise—this thing gives out and [it is] then that "Bugs"—as such little faults and difficulties are called—show themselves and months of intense watching, study and labor are requisite before commercial success or failure is certainly reached.
> 
> 

中譯如下：

> 在我所有發明都如此。第一步是直覺，然後靈光一閃，然後出現困難 —— 這事發生了，然後「Bug」—— 這樣稱呼那些微小錯誤和困難 —— 展現出來。在明確到達商業成功或失敗前必需數個月的密切關注、研究和勞動。
> 
> 

### 資訊工程與一般大眾所知的起源

1947 年 9 月 9 日，葛麗絲・霍普（Grace Hopper）發現了第一個電腦 bug。有一次 Mark II 突然宕機，整隊團隊都搞不清電腦為何不能正常運作。經過大家深度挖掘，發現原來有飛蛾意外飛入一臺電腦引起故障（如圖所示）。團隊很快排除錯誤，並在日誌本記錄這事。也因此，人們逐漸開始用「Bug」（原意「蟲子」）來稱呼電腦錯誤。現在在華盛頓美國國家歷史博物館還可以看到這份遺稿。

## 管理錯誤的常見用語

* 處理進度
  * New：代表新回報錯誤
  * Resolved：代表錯誤已處理完（見下方「處理方式」）
  * Closed：處理完並已驗證
* 處理方式
  * Fixed：錯誤已修復
  * Later：必須到未來的版本才能解決。
  * Workaround：不能解決，但可用替代方法避開。
  * Duplicate：重複回報的錯誤
  * Severity：錯誤造成的嚴重度
  * Debugging（簡稱 Debug）：指解決錯誤的動作和過程（除錯）。

## 參見

* 除錯
* 2000 年問題
* Therac-25 案例
* 漏洞獎勵計劃
* Gotcha（編程）
* 軟體缺陷指標

## 參考資料
程弘

**程毅中**（1930 年 3 月 —），筆名**程弘**，男，江蘇蘇州人，中國古代文學學者，中央文史研究館館員，全國古籍保護專家委員會成員。

## 生平

1950 年考入燕京大學國文系，1955 年畢業於北京大學中文系，1956 年考入北京大學中文係為副博士研究生。

1958 年 12 月分配到中華書局文學組，1981 年被任命為中華書局副總編輯，1983 年評定編審職稱，1993 年獲政府特殊津貼。

1995 年 12 月被聘任為中央文史研究館館員。2007 年受聘為全國古籍保護專家委員會成員。

## 主要著作

* 《古小說簡目》
* 《唐代小說史話》
* 《宋元小說研究》
* 《古代小說史料漫話》
* 《古體小說論要》
* 《近體小說論要》
* 《中國詩體流變》
* 《古籍整理淺談》
* 《月無忘齋文選》
* 《王船山詩文集》（點校）
* 《海瑞集》（點校）
* 《徐渭集》（點校）
* 《隋唐嘉話》（點校）
* 《玄怪錄・續玄怪錄》（點校）
* 《燕丹子》（點校）
* 《花影集 》（點校）
* 《雲齋廣錄》（點校）
* 《輪迴醒世》（點校）
* 《古體小說鈔》（編纂）
* 逯欽立《先秦漢魏晉南北朝詩》（編審）
* 高亨《文史述林》（編審）
* 葉德均《戲曲小說論叢》（編審）
* 孫楷第《滄州集》（編審）
* 夏承燾《月輪山詞論集》（編審）

## 參考資料

## 外部連結
程弘亮

**程懷亮**（也作**程知亮**、**程處亮**、**程弘亮**）（?—?），唐朝凌煙閣二十四功臣之一程知節次子，濟州東阿（今山東東阿）人。貞觀七年（633 年），尚唐太宗第十一女清河公主李德賢，當時清河公主時年十歲。授程懷亮駙馬都尉、左衛中郎將、終寧遠將軍，封**東阿縣公**（**盧國公**由大哥程處默襲爵），食邑一千戶，死後陪葬昭陵。

## 傳記資料

* 《舊唐書》列傳第十八・程知節傳
程張迎

**程張迎**，MH（英語：Ching Cheung-ying，1958 年 5 月 31 日 —），香港民主派人士，前香港沙田區議會主席兼新田圍選區議員。

## 背景

程張迎祖籍安徽省黃山市歙縣，同宗的程氏祖先計有清代詩人程夢星。他在 1970 年至 1977 年就讀喇沙書院。及後於 1977 年至 1981 年間修畢香港中文大學文學士課程，主修中國語言及文學（新亞書院），1986 年完成香港中文大學教育學院中國語言及文學學位，2006 年取得香港中文大學研究院教育碩士資格。他曾於拔萃男書院任教中國語文及中國歷史科。任職教師時，於 2002 年反對拔萃男書院轉為直資中學，2018 年退休。同時，程亦是西九文化區管理局、香港教育專業人員協會（教協）及香港民主黨成員。

程張迎於 1980 年代開始從政，在 1985 年香港區議會選舉中當選為車公廟區議員。1988 年香港區議會選舉中連任。1991 年香港區議會選舉時自動當選。1994 年選區劃界後，改在新田圍當選，以後連任新田圍區議員至今。在 1995 年香港市政局及區域市政局選舉中，他當選為區域市政局（沙田西）議員，1997 年，過渡為臨時區域市政局議員。及至 2020 年 1 月 3 日起擔任沙田區議會主席，但於 2021 年 7 月 8 日基於身體健康出現問題而辭去所有區議會職務。

## 個人生活

程張迎已婚，婚後與妻子陳氏育有一名女兒。

## 榮譽

2007 年獲香港特區政府頒發榮譽勳章。

## 注釋

## 參考文獻

## 外部連結

* 程張迎的 Facebook 專頁
程强

**程強**可以指：

* 程強 (政治人物)，福建省民政廳廳長
* 程強 (扶貧工作者)，全國脫貧攻堅先進個人
程强_(扶贫工作者)

**程強**，中華人民共和國政治人物、全國脫貧攻堅先進個人。

## 生平

程強任涇川縣旭康食品有限責任公司董事長。因在脫貧攻堅戰中作出突出貢獻，2021 年 2 月 25 日全國脫貧攻堅總結表彰大會上，程強被授予「全國脫貧攻堅先進個人」。

## 參考
程彥實

**程信**（1417 年 —1472 年），字**彥實**，直隸河間人，祖籍直隸徽州府休寧縣（今安徽省）。明朝政治人物，正統壬戌進士，官至南京兵部尚書兼大理寺卿。

## 生平

正統七年（1442 年），登壬戌科進士，授吏科給事中。代宗繼位，因舉薦啟用。京師保衛戰時，負責督軍守西城。都督孫鏜在與也先交戰中失利，欲入城，程信不允，而在城上督軍發箭炮相助。孫鏜遂戰益力，並擊退也先。景泰元年（1450 年），請求賑災京畿飢民，晉升爲左給事中。次年出任為山東右參政，督餉遼東，因與巡撫寇深矛盾，後以憂去，服闋，起用四川參政，後與侍郎羅綺攻破黑虎諸寨

天順元年（1457 年），程信升任太僕寺卿，重新徵收兵馬。當時三營大將石亨、孫鏜、曹欽均是奪門之變功臣，庇護部下，認為程信為人苛急，請改隸兵部。程信曉之以理，明英宗仍命其負責太僕寺。次年，改為左僉都御史，巡撫遼東，當時僉事胡鼎彈劾都指揮夏霖不法事，程信聽聞後，逮捕胡鼎下詔獄。錦衣衛都指揮門達稱程信不當代奏。當時恰逢寇深掌管都察院，於是彈劾程信，下詔獄，降南京太僕少卿。天順五年，召為刑部右侍郎，母憂歸。

成化元年（1465 年），啟為兵部左侍郎。四川發生民變，朝廷以襄城伯李瑾充總兵官，太監劉恆為監督，進程信為兵部尚書，隨後調度有功獲勝。隨即兼任大理寺卿，與白圭共同掌管兵部。因言官相繼彈劾，其四次上疏請求辭職，不予批准。成化六年，改南京兵部尚書，參贊機務。次年致仕，又過一年去世，贈太子少保，謚**襄毅**。

## 著作

有《中興固本十策》、《修德疏》、《容軒藁》、《晴川釣者集》、《晴洲集》。

## 參考文獻
程徐

**程徐**（？—1370 年），字**仲能**，鄞（今浙江寧波）人。元朝大臣，入明後成明朝官員。

## 生平

程徐是元朝碩儒程端學之子。至正年間，以通曉《春秋》而聞名。在元朝時，官至兵部尚書。明兵攻入元大都（今北京），程徐的妻子抱著二歲的兒子和女兒投井而死。洪武二年，從北京到南京，被授予刑部侍郎，進刑部尚書。程為學勤奮，為政精幹刻苦，工於詩文，有結集傳於世。

## 參考文獻
程復

**程復**（1330 年 —？）是活躍於琉球察度王朝和第一尚氏王朝期間的一位華僑。

程復是江西饒州府人，祖籍河南洛陽，是河南伯程顥的後裔。程復何時來到琉球，至今仍是個謎；他可能是一位商人，精通琉球語；他可能於 1372 年（洪武五年）隨詔諭使楊載來到琉球，並被中山王察度委以重任。

在察度王朝時期，程復、葉希尹二人以寨官（按司）兼任通事，負責對中國的朝貢事務。1392 年，與葉希尹一起，獲明廷賜予官職冠服。1394 年，與葉希尹一起被明廷封為千戶。

第一尚氏王朝建立之後，程復被尚思紹王封為國相兼左長史。1411 年（永樂九年），八十一歲的程復向明廷請求退隱，獲得明成祖的准許。於是程復辭職回到中國的故鄉，其國相之位由右長史王茂接替。

程復的子孫都在琉球擔任外交官員，例如程安、程均、程鵬、程璉、程璋、程禧、程祿、程儀等人，擔任通事或夥長之職。後來程復的子孫凋零，虞秉憲（外間筑登之實房）奉命改姓程，入嗣為程復之後。琉球儒學學者程順則便是程秉憲之孫。

## 參考文獻
程德全

**程德全**（1860 年 —1930 年 5 月 29 日），字**純如**，號**雪樓**、**本良**，法名**寂照**。四川省夔州府雲陽縣人，清末民國政治人物。清朝末年曾任黑龍江將軍，中華民國初期任江蘇都督、南京臨時政府內務總長。後出家為佛教僧人。

## 生平

程德全是廩貢生出身。光緒十六年（1890 年），入國子監學習。1891 年，他到黑龍江璦琿入黑龍江副都統文全幕。後又入黑龍江將軍依克唐阿幕。1894 年，被保奏以知縣發派安徽。光緒二十四年（1898 年），經黑龍江將軍壽山奏調重回黑龍江省，後任黑龍江將軍衙門營務處總辦。庚子事變，俄軍入侵齊齊哈爾，壽山自殺，程德全曾單騎入俄營同額林干夫議和，被俄軍扣押，後獲釋。光緒二十九年（1903 年），署齊齊哈爾副都統，光緒三十一年（1905 年）署理黑龍江將軍，開東三省漢人任將軍之首例。1907 年，署理黑龍江巡撫。在黑龍江期間，他與達桂奏准將黑龍江省土地全部開禁。光緒三十四年（1908 年），因病開缺。

宣統元年（1909 年）復被起用，任奉天巡撫。1910 年，改任江蘇巡撫。

1911 年 10 月，武昌起義爆發後，程德全在江蘇省城蘇州，經過張一麐勸說。張通典率部於 11 月 5 日江蘇巡撫衙門。當日，程德全宣布江蘇獨立，自任江蘇都督，成為第一名參加革命的清朝疆吏。民國元年（1912 年）1 月 3 日，南京臨時政府成立，他被任命為南京臨時政府內務總長。同日，他和脫離了中國同盟會的章炳麟（章太炎）、張謇共同組織了中華民國聯合會（後來改為統一黨）。1912 年 4 月，袁世凱任中華民國臨時大總統後，他被任命為江蘇都督。同年 5 月，統一黨和民社等合組共和黨，程德全因與章太炎不和而離黨。

1913 年 3 月，他曾親赴上海處理「宋教仁被刺案」，主張按法律程序解決。1913 年 7 月 15 日，黃興脅迫程宣布江蘇獨立，強推為南軍司令，翌日，他逃往上海，25 日，在上海發電：「南京獨立，由於黃興及第八師師長陳之驥之要求，現已另刻關防，召集蘇屬水陸軍警，議圖恢復。」9 月 1 日，張勳兵入南京後，他辭去江蘇都督。此後他住在上海，以禮佛為事。1917 年退出政界。1926 年，受戒於常州天寧寺，法名**寂照**。1930 年 5 月 29 日於上海圓寂。享壽 70 歲。

## 家庭

兒子程世撫。

## 遺蹟

今蘇州城外寒山寺，有「古寒山寺」四個大字為其墨跡。齊齊哈爾市龍沙公園內建有《清雲陽程公以身御難碑》。

## 著作

著有《程中丞奏稿》、《撫江文牘》等。

## 軼聞

1945 年 1 月，銀幣收藏家吳詩錦發表文章認為袁世凱像開國紀念幣上面的頭像實為程德全，引起半個多世紀爭論。

## 參考文獻

* 徐友春主編。民国人物大辞典 増訂版。河北人民出版社. 2007. ISBN 978-7-202-03014-1.
* 劉壽林 編。民国職官年表。中華書局. 1995. ISBN 7-101-01320-1.
程德和

**程琯**（？—？），字**德和**，直隸徽州府歙縣人，明朝政治人物。

## 生平

弘治九年（1496 年）丙辰科會試第五，殿試中式二甲第四十六名進士，初授南京戶部郎中。正德四年，出任泉州府知府。升兩浙鹽運使。

## 家族

曾祖程仲信，贈按察使僉事；祖父程學初；父程宏，嫡母詹氏；生母洪氏。

## 參考文獻
程德孺

**程之元**（？—？），字**德孺**，宋朝政治人物。

程濬之次子。程之才之弟，蘇軾的表弟。元豐元年（1078），升為梓州路轉運判官、承議郎。元豐五年十一月，以「坐與前知瀘州任伋交訟，報上不實」的罪名降為徐州太守。元豐六年（1085）任楚州（今江蘇淮安境內）太守。遇災年，救活數萬災民。元佑五年（1090 年）為廣南東路提點刑獄。遷右朝奉郎。元祐七年六月，擔任主客郎中。程之元有石癖，元佑七年（1092），蘇東坡任揚州知州，送給他兩塊英石。

## 注釋
程德宏

**程德宏**（1961 年 —），湖北麻城人，漢族，中華人民共和國政治人物、第十二屆全國人民代表大會重慶地區代表。

畢業於重慶市委黨校憲法學與行政法學專業。加入中國共產黨。2013 年，擔任全國人大代表。

## 參考文獻
程德易

**程乾**（？—？），字**德易**，江西饒州府樂平縣人，民籍，明朝政治人物。

## 生平

江西鄉試第六十六名舉人。弘治九年（1496 年）中式丙辰科三甲第一百七十九名進士。

## 家族

曾祖程紹進；祖父程茂勳；父程濟柔，母葉氏。

## 參考文獻
程德玄

**程德玄**（?—?），字**禹錫**，鄭州滎澤（今滎陽市東）人。

精通醫術。趙光義還是晉王時，為其押衙，程德玄是趙光義的心腹。太祖去世當晚，宋皇后立即命宦官王繼恩去召皇子趙德芳入宮。王繼恩徑行跑去召晉王，見程德玄正坐在開封府內。程德玄後與趙光義、王繼恩三人冒著風雪趕往宮中，不久王繼恩稱遺詔迎太宗即位。宋太宗即位，拜翰林使，不久擔任刺史，深得寵信。淳化三年（992）改懷州團練使，知邯州。

景德初卒。有子程繼宗。

## 延伸閱讀

[編]

　
: 《宋史・卷 309》，出自脫脫《宋史》

## 參考書目

* 《宋史・程德玄傳》
程德良

**程德良**（？—？），字**凝之**，湖廣德安府雲夢縣人，官籍，明朝政治人物。

## 生平

湖廣鄉試第六十九名，萬曆十一年（1583 年）癸未科會試第一百七十名，登三甲第二十六名進士。

## 家族

曾祖程升，曾任歲貢生 贈監察御史；祖父程春霖；父程造，曾任壽官。母張氏。

## 參考文獻
程德陨石坑

**景德隕石坑**（Ching-Te 譯音）是位於澄海東部山地區的一座小型月球撞擊坑。它是一座圓形、碗狀，無鮮明特點的隕坑。景德隕石坑的南面坐落著法布隆尼隕石坑、東北為利特羅隕石坑、北面則是利特羅月溪及克勒克隕石坑。它東面一條 20 公里長的陶拉斯 - 利特羅谷是 1972 年 12 月 11 日阿波羅 17 號的著陸點。

在景德隕石坑和西南的阿爾加山之間坐落著一座帶有明亮射紋系統，被国际天文学联合会命名為史黛拉的小隕石坑，一個拉丁女性名的稱謂，與景德隕坑不同，並不特指某個人，它的月面座標為北緯 19.9°、東經 29.8°，直徑 1 公里。

## 隕石坑命名

景德隕石坑是 1976 年，由美國國家航空暨太空總署太空科學家和地質學家法魯克・埃爾 - 巴茲（Farouk El-Baz）提名四位 1975 年至 1976 年期間，在紐約聯合國工作的美籍華裔人士其中一位男士的名字，另外三人是女性，她們分別是：嫦娥（Chang-Ngo 譯音）、宋美（Sung-Mei 譯音）和尹茹（Wan-Yu 譯音）。這些都是名字，不包括姓氏，是她們工作時其他人對她們的稱呼。

国际天文学联合会行星系統命名工作組前任秘書羅莎琳・海沃德（Rosalyn Hayward）女士確認景德隕石坑的名字與中國景德鎭（地方名）無關。嫦娥隕石坑也與中國神話嫦娥無關 。

這四人的提名資料保存在美國史密森學會檔案館，已經封存了法魯克・埃爾 - 巴茲 87 箱文件中的第 19 箱內。這些資料需要等待他逝世後，按照美國法律程序解封，才可以給公眾查閱。

## 參考文獻
程心泉

**程大賔**（1515 年 —？），字**汝見**，號**心泉**，直隸徽州府歙縣人，民籍，明朝政治人物。

## 生平

丙午科（1546 年）應天府鄉試第四十一名舉人。嘉靖三十五年（1556 年）中式丙辰科二甲第八十二名進士。吏部觀政，授南京吏部考功司主事，四十一年升稽勛司郎中，嘉靖四十四年升浙江左參議，隆慶元年（1567 年）二月升廣西按察司副使，二年九月改雲南提學副使，五年正月升貴州左參政，萬曆元年典試貴州，七月升本省按察使。講明理學，尤多實踐，言笑不苟，僚屬憚之。

## 家族

曾祖程泰亨；祖父程倫，散官；父程寵，累贈中憲大夫廣西副使。母汪氏，累封太恭人。兄大經。

## 參考文獻
程心程意

《**程心程意**》（泰語：**My Engineer มีช็อปมีเกียร์มีเมียรึยังวะ**，英語：_My Engineer_），為泰國 WeTV 於 2020 年 3 月 14 日起播出的愛情電視劇，改編 Mommae 的原作小說，由 Cooper 及 Poy 主演。

## 劇情簡介

Bohn 是學校的校之月，他和 Frong 是競爭者，在共同拍攝行程時，他因不想和 Frong 同在咖啡店休息，獨自走到公園而撞到了熟睡的 Duen 的腳，Bohn 看到旁邊有蜥蜴而想叫醒 Duen，誰知卻被 Duen 打了一拳，Bohn 想作弄 Duen 而叫他負責，卻因此而喜歡上 Duen。Ram 是個沉默寡言的人，引起了 King 的注意，King 怕狗也讓 Ram 覺得有趣。Mek 和 Boss 在新生時就被湊對，雙方當時就互相喜歡，但因誤會和害怕失去對方而隱藏心意。Thara 在醫院實習，病人是 Frong 的母親，因想起了父親當初生病離世，讓他對 Frong 產生一些關心的感覺。

## 演員陣容

註：括號內的演員姓名為小名。

### 主要人物

* 帕塔拉帕辛・諾林・頌卡（Cooper）飾演 Bohn

　
: 大二工程系，校之月。

* 克里查納鵬・宋同查查維（Poy）飾演 Duen

　
: 大一醫學系，性格憨厚。

* 納坤・斯克瑞艾（Perth）飾演 Ram

　
: 大一工程系，Duen 好友。

* 塔雷・薩古安迪坤飾演 King

　
: 大二工程系，學霸。

* 彭佳博 飾演 Mek

　
: 大二工程系，啞巴老公。

* Napat Chalermpornphakdi（Intouch）飾演 Boss

　
: 大二工程系，話嘮老婆。

* Natthaphong Phibunthanakiat（MD）飾演 Thara

　
: 大五醫學系，Duen 的表哥。

* Natchaphon Cheewapanyarot（Chen）飾演 Frong/Yim

　
: 大二企管學系，院之月。

### 其他人物

* 甘葵恩娜・盼帕吉緹南（Nam）飾演 TingTing

　
: 大一醫學系。

* Anna Glücks 飾演 Nang

　
: 要求 Bohn 幫她慶生，在酒吧找 Duen 搭訕。

* Atchari Siribunpipat 飾演 Tee

　
: 大二工程系。

* Suphathat Phongchaiyaphum 飾演 Phu

　
: 大一工程系。

* Nathit Kaweekornwong 飾演 Tang

　
: 大一醫學系。

* Eden Serrello 飾演 Ben

　
: Bohn 的表弟，Daonua 的同學。

* Machida Suthikulpanichong 飾演 Daonua

　
: Duen 的妹妹。

* Chonwaree Chutiwatkajonchai 飾演 Duen 的媽媽
* Jiraphat Phanngern 飾演 Duen 的爸爸
* Kanchanok Suktuangwong 飾演 Fon

　
: Boss 的小學同學，喜歡 Boss。

* Sakda Juthathep 飾演 Ta

　
: 餐廳老闆。

* Niramon Boonsachai 飾演 Kumfah

　
: King 的姐姐。

* Soontree Chotiphan 飾演 King 的媽媽
* Kylan Alexander Bryant 飾演 Rund

　
: Ram 的弟弟。

* Maneeyanan Limsawad 飾演 Ram 的媽媽
* Supitcha Phak Akarawatin 飾演 Ging

　
: Nang 的朋友。

* Thanawat Hatchalilaha（Tiger） 飾演 Mike

　
: 喜歡 Bohn。

* Rapeewit Sangamwong 飾演 Win

　
: 剛從新加坡回來的學長。

* Thanadit Thanetanat 飾演 First

　
: 花店老闆，Frong 的哥哥。

* Ratchamet Chaipichayarat 飾演 Ram 的爸爸
* Kate Bass 飾演 Ram 的媽媽
* Anawin Nuntiyakul 飾演 Kew

　
: Kumfah 的兒子，Ram 的外甥。

* Archawin Nuntiyakul 飾演 Kram

　
: Kumfah 的兒子，Ram 的外甥。

* Phakphiraporn Raktin Thai 飾演 腐女三人組之一
* Ilda Hoyos 飾演 腐女三人組之一
* Natcha Anuwan 飾演 腐女三人組之一
* 吉拉皮西特・加納維奇（Boom） 客串 Boom

　
: 醫學系學生，與 Thara 一同為實習生。

## 劇集原聲帶

## 參考資料

## 外部連結

* 劇集介紹及劇評 （頁面存檔備份，存於網際網路檔案館）（英文）
程志

**程志**（**Cheng Zhi**）是美國電視連續劇《24》的一個角色。在劇中，他是中華人民共和國駐洛杉磯總領事館保安主管以及一名特工。

程志於第四季擔任中華人民共和國駐洛杉磯領事館保安主管。當時館內有一名名為李忠的中國核武專家躲避。由於李中涉嫌協助恐怖份子進行襲擊，美國政府要求中國外交部交出該人協助調查。由於美方不滿中方未能盡快交出疑犯，所以美國政府秘密批准反恐局（CTU）闖入領事館作出拘捕。於行動中，中國駐洛衫磯總領事被館內保安的流彈擊斃。程志其後對事件展開調查，並在聖地牙哥拘捕其中一名參與行動的探員，並知悉帶領闖入中國領事館的探員是傑克・鮑爾。

第五季，上午 6 時 49 分，程志的手下秘密地拘捕了傑克・鮑爾，並送上中國貨船光彩號。程志向鮑志傑說「我們不會殺你，因為你太過有價值。」

第六季，程志代表中國政府將獲釋放的傑克・鮑爾押回美國。其後，程志以傑克・鮑爾的女友奧黛麗・瑞恩斯，來要脅傑克・鮑爾交出俄羅斯手提箱式核武器內的電路板。之後程志組織了對洛杉磯反恐中心 CTU 的襲擊，以獲得傑克的侄子約瑟華，和傑克的父親菲利普・鮑爾交換，來讓後者幫助他們修理電路板。但這個交易因為 CTU 的干涉而沒有成功。最後，程志被 CTU 逮捕，不過還大聲喊道「我們的人民不會像你們拋棄傑克・鮑爾一樣不管我。」

第九季，程志從中國監獄逃走後，認為中國已把他拋棄於是與俄羅斯合作並給予資金倫敦黑客組織首腦阿德里安開發能入侵任何國家國防系統的超馳裝置 程志發現阿德里安企圖將裝置分享全世界 於是把阿德里安槍殺 並脅持克洛依・歐布萊恩 程志利用超馳裝置向美國核潛艇發出偽造開火指令，導致中國航母沈陽號被擊沉 從而挑起中國和美國的戰爭 在程志準備逃離英國過程中，指示狙擊手脅持奧黛麗・瑞恩斯 雖然 CIA 成功解決狙擊手 但程志早已埋伏另一個槍手，奧黛麗・瑞恩斯被槍殺，傑克・鮑爾得知奧黛麗・瑞恩斯身亡消息後，像第八季中喪失理智，傑克・鮑爾用武士刀逼程志說出自己身分向中國表明程志仍在生 阻止美國和中國的戰爭 最後傑克・鮑爾因奧黛麗・瑞恩斯的死向程志報復 以武士刀把程志的頭斬下
程志明

**程志明**（1964 年 2 月 —），男，漢族，河南虞城人，中華人民共和國政治人物。鄭州糧食學院糧食加工工程專業畢業，大學本科學歷，工學學士學位。

## 生平

1980 年 9 月，在鄭州糧食學院糧油工業系加工工程專業學習。1984 年 7 月參加工作，任職於河南省經委、河南省計經委，歷任食品辦科員（1984 年 7 月）、投資處科員（1988 年 10 月）、投資處副主任科員（1989 年 1 月）、投資處主任科員（1991 年 8 月）。1987 年 3 月加入中國共產黨。1995 年 1 月，在河南省經濟貿易委員會工作，歷任技改處主任科員（1995 年 1 月）、技改處副處長（1996 年 5 月）、技改處處長（1997 年 12 月）、投資與規劃處處長（2000 年 8 月）、副主任（2001 年 4 月）。2002 年 7 月，任中共新鄉市委常委、新鄉市副市長。2004 年 2 月，任中共開封市委常委、副市長（2008 年 3 月至 2009 年 1 月，在中央黨校第八期中青年幹部培訓二班學習）。2009 年 2 月，任河南省水利廳副廳長。2011 年 9 月，任河南省人民政府副秘書長。2013 年 4 月，任中共南陽市委副書記、副市長、代市長（2013 年 5 月當選市長）。2016 年 5 月，任中共鄭州市委副書記，鄭州市副市長、代理市長。2018 年 1 月，調任黑龍江省人民政府副省長。2021 年 8 月，免去黑龍江副省長職位。

## 參考資料
程志遠

**程志遠**（1878 年 —20 世紀？），字**銘閣**，山東省登州府萊陽縣人，中華民國、滿洲國軍事將領、政治人物。

## 生平

1921 年（民國 10 年），他入東三省陸軍講武堂。畢業後，他成為奉軍的一員，不斷升職。1926 年（民國 15 年），他任騎兵第 8 團團長。翌年，他任東北第 17 師第 5 旅旅長。1928 年（民國 17 年），他改任騎兵第 2 旅旅長。1930 年（民國 19 年），他任中東鐵路護路軍哈滿副司令。九一八事件前夕，程志遠的職務為獨立騎兵第 8 旅少將旅長。

九一八事件後，程志遠所屬騎兵第 8 旅並未對日軍進行抵抗。在 1931 年 10 月，程志遠擔任公主嶺臨時保安會委員長，投降日軍。

滿洲國建國後，關東軍利用程志遠的人脈與職級，策反東北軍，有效削弱東北軍的抗日意識。

1932 年 4 月 5 日，在馬占山脫離滿洲國後，程志遠繼任黑龍江省省長，授階中將。他在此時成功策反了接受馬占山號召的暫編第 1 旅旅長樸炳珊、第 6 旅旅長王克鎮、第 7 旅旅長石蘭斌、第 8 旅旅長劉鴻宣，導致馬占山反日作戰的戰力大減。1932 年 9 月程志遠，辭去省長職務，改任參議府參議。但同年 12 月 9 日，程志遠突然辭去參議職務。

日本決定撤職其原因與程志遠的精神狀況有關，1932 年 12 月 7 日，對訪問程志遠邸宅的滿洲國協和會理事趙仲仁，程突然開槍。對想逃走的趙仲仁，程志遠向恰好回來的部下（這部下沒了解到詳細事情）命令開槍，趙仲仁當場死亡。程志遠以殺人罪被起訴，但當局通過精神檢查判斷程患著精神失常，結局是不起訴。1933 年 5 月，滿洲國政府解除限制關於事件的詳細內容的報導。據際此司法大臣馮涵清發表的聲明，為了從社會隔離，程志遠已經在瘋人院被監視。

此後，程志遠的生平便無明文記載，隔離之設施亦無資料。

## 注釋

## 參考文獻

* 徐友春主編。民国人物大辞典 増訂版。河北人民出版社. 2007. ISBN 978-7-202-03014-1.
* 劉壽林等編。民国職官年表。中華書局. 1995. ISBN 7-101-01320-1.
程忠显

**程忠顯**（？—？），字**良輔**，直隸徽州府歙縣人，民籍，明朝政治人物。

## 生平

應天府鄉試第五十八名舉人。弘治六年（1493 年）中式癸丑科三甲第四十六名進士。

## 家族

曾祖程子銘；祖父程文斌，義官；父程仕寬，義官。母方氏。

## 參考文獻