程序設(shè)計(jì)是給出解決特定問(wèn)題程序的過(guò)程,是軟件構(gòu)造活動(dòng)中的重要組成部分。
程序設(shè)計(jì)往往以某種程序設(shè)計(jì)語(yǔ)言為工具,給出這種語(yǔ)言下的程序。程序設(shè)計(jì)過(guò)程應(yīng)當(dāng)包括分析、設(shè)計(jì)、編碼、測(cè)試、排錯(cuò)等不同階段。專業(yè)的程序設(shè)計(jì)人員常被稱為程序員。任何設(shè)計(jì)活動(dòng)都是在各種約束條件和相互矛盾的需求之間尋求一種平衡,程序設(shè)計(jì)也不例外。在計(jì)算機(jī)技術(shù)發(fā)展的早期,由于機(jī)器資源比較昂貴,程序的時(shí)間和空間代價(jià)往往是設(shè)計(jì)關(guān)心的主要因素;隨著硬件技術(shù)的飛速發(fā)展和軟件規(guī)模的日益龐大,程序的結(jié)構(gòu)、可維護(hù)性、復(fù)用性、可擴(kuò)展性等因素日益重要。某種意義上,程序設(shè)計(jì)的出現(xiàn)甚至早于電子計(jì)算機(jī)的出現(xiàn)。