偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

論編程語言的可讀性:老語言更通俗易懂

開發(fā) 開發(fā)工具
新的語言在這個互聯(lián)網(wǎng)時代層出不窮,比如從Go語言到Scala。似乎C++、COBOL這樣的老語言,就應(yīng)該扔進(jìn)歷史垃圾堆了。其實(shí)不然,老語言在可讀性方面更勝一籌,特別是大家都不愿意寫備注的時候。

  最近我在網(wǎng)上看到一些人把各種腳本語言放到一起進(jìn)行比較。腳本語言:PHP, Perl, Python, Ruby。我的第一反應(yīng),以及第二反應(yīng)是:討厭!我有我自己的偏好,從沒向任何人說過。我喜歡可讀性好的程序,程序里出現(xiàn)的任何的特殊字符(任何非數(shù)字、字母的字符)都會影響我的閱讀速度。這讓我思考起我們應(yīng)該如何設(shè)計(jì)編程語言?我們語言設(shè)計(jì)是在進(jìn)步還是在倒退還是在停步不前?

  回到我剛開始寫程序的時候,大概是40年前,那時的三大編程語言是FORTRAN、COBOL 以及后來的BASIC。FORTRAN(FORmula TRANSlation的簡寫)被數(shù)學(xué)家(我的數(shù)學(xué)專業(yè)的哥哥必須要學(xué)它)和科學(xué)家們使用。COBOL (其中的B 代表Business)被用于企業(yè)應(yīng)用。BASIC是一種教學(xué)語言,在企業(yè)里廣為使用。COBOL因?yàn)樗娜唛L的語法而受一些人痛恨,而同時卻也被另外一些人所喜愛。但它至少是很容易理解的??纯聪旅嫜h(huán)的寫法:

 

  1. PERFORM VARYING WS-BOTTLE-NUM FROM 98 BY -1 UNTIL WS-BOTTLE-NUM < 2END-PERFORM 

  很像一個英語句子。跟C語言風(fēng)格的語言(C#)比較:

 

  1. for (WSBOTTLENUM = 98; WSBOTTLENUM >= 2; WSBOTTLENUM--){} 

  哪一個更顯而易見?除非你謊稱自己沒經(jīng)驗(yàn)。

  BASIC (這里是Visual Basic)某些地方可讀性處于中等水平。

 

  1. For WSBOTTLENUM = 98 To 1 Step -1Next 

  步長——每次減少的數(shù)——很容易理解,至少我是這么認(rèn)為。讓我們看一些非常簡單的東西。

k = i / 10;

  這會讓初學(xué)者抓狂。這是做什么的?我們這些程序員當(dāng)然會知道,但對于初學(xué)者,這種指令操作方式會讓他們困惑。你可以把它與相同功能的COBOL語言比較:

 

  1. divide i by 10 giving k 

  有點(diǎn)長?不錯,但一個初學(xué)者能看懂。我現(xiàn)在并不是在主張重新回到COBOL語言,誠然,相比起當(dāng)時在紙片上打孔的時代,現(xiàn)代的集成開發(fā)工具和像Intellisence這樣的功能讓我們的編程變的容易的多了??墒?,我還是要說,一些入門語言應(yīng)該羅嗦一些——英語句子比“#號在這種編程語言里代表什么”要容易上手的多。

  只是好玩,如果你想看一看各式各樣的語言,可以訪問99 Bottles of Beer這個網(wǎng)站。

  這個網(wǎng)站收集了用各種不同語言編寫的99 Bottles of Beer的歌詞。目前已經(jīng)有1434種不同的編程語言和語言變種來表現(xiàn)這首歌。

【編輯推薦】

  1. Perl、PHP、Python、Java和Ruby的比較
  2. C++程序員必讀:讓你的代碼更強(qiáng)大
  3. 各大主流.Net的IOC框架性能測試比較
  4. Ruby之父出任Heroku首席架構(gòu)師 推進(jìn)Ruby云計(jì)算應(yīng)用
  5. 漢語編程:程序員你們等不到了
責(zé)任編輯:彭凡 來源: 外刊IT評論
相關(guān)推薦

2021-05-27 08:47:16

C語言C語言程序開發(fā)

2011-10-26 19:57:33

2023-01-30 08:16:39

Go語言Map

2019-06-19 08:30:47

網(wǎng)絡(luò)協(xié)議IPTCP

2023-01-06 09:40:20

項(xiàng)目性能

2020-06-08 10:50:58

前端TypeScript代碼

2021-05-26 16:12:20

區(qū)塊鏈加密貨幣比特幣

2022-06-28 07:31:11

哨兵模式redis

2022-09-23 08:32:53

微服務(wù)架構(gòu)服務(wù)

2023-10-10 18:12:02

函數(shù)編程語言

2021-11-04 08:16:50

MySQL SQL 語句數(shù)據(jù)庫

2022-07-06 08:17:50

C 語言函數(shù)選型

2021-10-09 10:24:53

Java 代碼可讀性

2019-05-20 07:37:00

TCPIP網(wǎng)絡(luò)協(xié)議

2018-01-17 22:36:46

區(qū)塊鏈數(shù)字貨幣比特幣

2017-10-30 15:22:29

代碼可讀性技巧

2021-04-01 16:43:05

代碼可讀性開發(fā)

2021-05-30 19:02:59

變量對象上下文

2021-05-25 09:50:01

GitLinux命令

2018-03-11 15:11:38

物聯(lián)網(wǎng)數(shù)據(jù)物聯(lián)網(wǎng)數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號