JS程序設計基礎

1、什麼是軟件?什麼是程序?什麼是計算機語言?算法

軟件:是完成某些特定功能,一到多個程序文件的組合。數據結構

程序:完成指定功能的指令。數據結構和算法

計算機語言:人與人之間溝通使用的是天然語言。人與計算機進行溝通就使用的是計算機語言。換句話說,計算機語言就是用來和計算機進行交流的。搜索引擎

沃斯:程序 = 數據結構 + 算法翻譯

程序和軟件之間的關係,就相似於生活中博客和書的關係。設計

 

 

2、計算機語言的發展史調試

計算機語言是從二十世紀40年代開始,大體分爲3個階段:對象

第一代計算機語言:機器語言:機器語言所有都是有0和1組成。能夠被計算機直接執行。可是,這樣的語言不便於理解和記憶。索引

第二代計算機語言:彙編語言:彙編語言並不比機器語言高級多少。由於彙編語言其實就是機器語言的一種助記符。雖然說彙編語言只是一種助記符,可是確實相比機器語言,它的易讀性更高事務

第三代計算機語言:高級語言:高級語言的話更加接近咱們平時所使用的天然語言。

高級語言以1980年代爲一個分界點:80年代以前的語言都是結構化語言,80年代以後都是面嚮對象語言。

 

 

3、解釋器和編譯器

使用高級語言寫出來的代碼,計算機是不能直接執行的,中間須要一個翻譯的過程。

翻譯器有兩種:

編譯器:一次性將咱們寫出來的程序轉換爲二進制。相似於生活中將整本外語書翻譯成中文。

常見的編譯性語言:C#  Java 

 

解釋器:逐行進行解釋。相似於同聲傳譯。

常見的解釋性語言:PHP  JavaScript  Ruby

相比解釋性語言,編譯性語言的速度更快。可是解釋性語言比編譯性語言更加靈活。

 

 

4、程序設計的步驟

編寫程序相似於咱們的蓋樓房,須要先有必定的步驟

(1)分析問題

咱們在進行程序開發以前,首先須要進行的就是分析問題。咱們必須明確問題是什麼?用戶需求是什麼?

(2)肯定數據結構和算法

數據結構:怎樣將數據存入到計算機裏面。

算法:解決問題的方法和步驟

(3) 編制程序

開始敲代碼實現具體的功能

(4)調試問題

咱們寫出來的代碼,99%都是會出現錯誤的。接下來咱們就須要對這些錯誤進行調試,直至達到預期結果。

必定程度來說,咱們的代碼不是寫出來的,而是調試出來的。

 

 

5、常見的錯誤類型

(1)語法錯誤

這種錯誤類型是沒法經過編譯的。這種錯誤是最容易發現和修改的。

(2)邏輯錯誤

這種錯誤是都符合語法規範,代碼可以經過編譯,可是邏輯思惟有問題,致使不能獲得預期的結果。這種錯誤每每比較難發現

(3)開發錯誤

每每是指開發的時候偏離了用戶需求

(4)運行錯誤

語法,邏輯,開發方向都是正確的,這種錯誤每每出現於整個程序的算法有問題。這種算法致使內存泄露,存儲空間不足等。因此這個時候須要換一個算法

 

 

6、算法:所謂算法,就是指解決問題的方法和步驟。

算法能夠分爲兩大類:數值型運算算法和非數字型運算算法

數值型運算算法:求解數值,獲得一個數值的答案

非數值型運算算法:每每應用事務的管理領域,好比搜索引擎,增刪改查

 

算法的特性:

通常來說,算法有5個特色:

(1)有窮性

一個算法應該包含有限的操做步驟而不能是無限的。

(2)肯定性

算法中的每個步驟都應該是有意義的,而不該該是含糊的,模棱兩可。

(3) 有零個或者多個輸入

根據算法的不一樣,有些算法在實現的過程彙總,須要輸入一些原始的數據

(4)有一個或者多個輸出

設計算法的最終目的就是爲了解決問題,因此每一個算法至少應該有一個或者多個輸出。

(5)有效性

每個步驟都是可以有效執行的。

 

 

7、算法的表示

算法的表示方法很是的多,例如:天然語言表示法,僞代碼表示法,流程圖表示法,N-S表示法。

(1) 天然語言表示法

就是利用咱們平時所使用的語言,例如中文,英文來表示算法。

例如:交換墨水瓶

第一步:須要一個空瓶

第二步:將黑墨水瓶裏面的黑墨水倒入空瓶

第三步:將藍墨水瓶裏面的藍墨水倒入空的黑墨水瓶

第四步:空瓶中的黑墨水倒入空的藍墨水瓶

第五步:交換完成

(2) 僞代碼表示法

介於天然語言和計算機語言之間的一種方式。使用一些文字和符號來對算法進行表示。

例如:交換墨水瓶

第1步:A:黑墨水瓶   B:藍墨水瓶   C:空瓶

第2步:A → C (黑墨水倒入空瓶)

第3步:B → A (藍墨水倒入黑墨水瓶)

第4步:C → B (空瓶中的黑墨水倒入藍墨水瓶)

第5步:交換結束

(3) 流程圖表示法

流程圖又稱之爲框圖,它用規定的一系列的圖形和流程線來表示算法。

相關文章
相關標籤/搜索