為什麼程序語言要設計成使用這麼多shift?

很多程序設計語言都將需要使用shift上檔鍵的字元作為語言關鍵字,包括但不限於!、」、{}、:、&<&>、()、、%等等等等,在寫程序的時候雖然習慣了也就好了,但是其他字元都只需要一根手指的時候插進來需要兩根手指敲出來的字元寫起來很不爽,那麼為什麼程序語言要設計成這樣,而不更多利用不需要使用shift的字元?


因為很顯然程序寫成下面這個樣子更費事兒:

namespace Test
begin

class Program
begin
function Main args none
begin
declare x as int = 0
for declare i as int = 0 while i lessthan 100 then i = i add 1
begin
invoke Console.WriteLine x = x add i
end
end
end
end

順便說一下上面的代碼是從C#代碼翻譯過來的,其實就是把所有除了=之外的符號全部都換成關鍵詞了,另外也根據一些可能歧義的地方做了一些小修飾看起來像是一個真正的編程語言。


大概是因為編程的瓶頸不在於字元輸入速度吧.


Super Coder 2000系列鍵盤,題主值得擁有。


你看我們寫 Lisp 的只需要兩個代表括弧的腳踏板就好了(逃


因為不用shift的字元太少,不夠用,使用需要shift的字元對於程序可讀性有幫助。

最後,打字這種基本技能還是練好為好,輸入字元哪裡還想著一根手指兩根手指,一般都是打出來之後還沒意識到自己手指到底是怎麼按的。


有些程序員為什麼必須要腳踏板才能寫代碼呢,我陷入了深深的思考.


因為不需要shift的字元幾乎也都用完了。不信你數數看shift下面的字元有幾個沒用的?


不使用shift的那幾個字元,程序也沒放過,比如C


別抱怨!你換個打 星號 引號 浪號 @號 號 冒號 嘆號 連接符 下劃線 小括弧 大括弧 方括弧 不需要shift的法語鍵盤試試!


話說學鋼琴是要看手指的。學編程雖然要求比較寬鬆但是並不是說就沒有要求。


你打了一大串中文發現輸入法沒有切換過來那才是真的日了狗了(很多輸入法用shift切換中英文啊)


你打英文的時候,從來不打大寫嗎?

來跟我試試:

AbCdEfG

HiJkLmN

OpQrSt

UvWxYz

幾秒鐘打完?


因為你有兩隻手


那你還沒用perl/php類的語言,一個變數就要一個shift,比如這樣:

$shift = shift();


因為不用shift的那些字元已經用完了


因為ABCDEFGHIJKLMNOPQRSTUVWXYZ這些,如果不先capslock的話,都需要shift,所以就破罐子破摔了(*^_^*)


看成了shit...


就個人感受而言,並不覺得有多耗費體力。

輸入一個特殊字元要比輸入一個英語單詞要省事。

可讀性也會更好。 因為特殊字元與眾不同,容易辨認。


你可以買個自己設置鍵值的鍵盤


嗯,好主意,把這些需要shift的符號都擴展成單個的鍵,哪位程序員過來給編個驅程。


推薦閱讀:

為什麼說 Smalltalk 超前了 20 年?
Mathematica 這門語言怎麼樣?
UE4 C++編程學習路線?
2025年的編程語言將會是怎樣的?
wolfram language說得那麼優秀,為什麼沒有被普及,難道只是因為它貴?

TAG:編程語言 | 編程 |