概述
這是一篇關(guān)于文字的歷史以及文字在程序員開(kāi)發(fā)工作中應(yīng)用的非正經(jīng)介紹
好了裝逼開(kāi)始, 文章有點(diǎn)長(zhǎng)(啰嗦), 第一次裝, 有點(diǎn)緊張,大家理解下(愛(ài)看不看)
文字的歷史
在人類(lèi)文明早期文字就已經(jīng)出現(xiàn), 早期的文字不像現(xiàn)在人類(lèi)使用的文字這么標(biāo)準(zhǔn)規(guī)范;最早的文字大都是一些象形圖案,這些圖案描述某些事物或者某種生產(chǎn)活動(dòng), 隨著時(shí)間的推移之前圖案慢慢簡(jiǎn)化成了一些原始的象形符號(hào),這種符號(hào)就是早期的象形文字, 比如埃及象形文字, 中國(guó)的甲骨文;
上圖是中外文字的演變歷史, 中國(guó)文字歷經(jīng)商朝甲骨文,周朝和春秋的金文,戰(zhàn)國(guó)大篆,秦朝小篆,漢朝隸書(shū)等演變?yōu)楝F(xiàn)在的方塊漢字. 歐洲的希臘文, 拉丁文, 英文等都可向上溯源到腓尼基文字, 而其他印歐文字的演變也都受楔形文字和腓尼基文字影響.
文字的結(jié)構(gòu)演變
一般說(shuō)到文字,就不得不提及語(yǔ)言,文字是語(yǔ)言書(shū)面記載形式的表現(xiàn), 而且語(yǔ)言先于文字發(fā)的發(fā)生, 語(yǔ)言的主要功能是人類(lèi)之間可以用嘴發(fā)出聲音進(jìn)行交流, 然而語(yǔ)言出現(xiàn)的時(shí)候人類(lèi)無(wú)法記錄聲音, 只能口口相傳, 如果想長(zhǎng)久的記錄某個(gè)事件或者活動(dòng), 人類(lèi)沒(méi)有辦法靠語(yǔ)言來(lái)保證記錄的長(zhǎng)久性, 口口相傳能起到傳播作用和記錄作用, 但是在傳播的過(guò)程中信息肯定越來(lái)越失真, 而且沒(méi)有辦法保證長(zhǎng)久, 人類(lèi)的記憶持續(xù)時(shí)間太短, 而且人類(lèi)肉身持續(xù)的時(shí)間的也不長(zhǎng),所以基于人類(lèi)希望記錄的沖動(dòng)(來(lái)都來(lái)了, 總得留下來(lái)一點(diǎn)不一樣的東西給后來(lái)的人看看我屌不屌).
人類(lèi)迫切需要一種能長(zhǎng)久記錄生產(chǎn)和生活活動(dòng)的東西, 于是全球人類(lèi)開(kāi)始頭腦風(fēng)暴, 3w年前他們就開(kāi)始在自己居住的洞窟大別野畫(huà)畫(huà)了,記錄他們生活情況(我和我的家人到此一游) , 隨著慢慢的實(shí)踐,人類(lèi)發(fā)現(xiàn)使用畫(huà)畫(huà)進(jìn)行記錄這個(gè)技能難度太高了, 而大家都有想去記錄的欲望, 可能有人想寫(xiě)首詩(shī), 可能有人想寫(xiě)篇日記等等, 但是畫(huà)畫(huà)這個(gè)技能無(wú)法滿足大多數(shù)人的需求, 于是乎有人鼓搗出來(lái)一批簡(jiǎn)化符:象形文字, 于是大家發(fā)現(xiàn)這個(gè)東西好,比畫(huà)畫(huà)好學(xué)易用, 紛紛開(kāi)始進(jìn)行文藝創(chuàng)作, 他們?cè)谑^上刻寫(xiě):這個(gè)人死了, 在龜殼上記錄:老夫昨夜觀星象,今天有大風(fēng).人們因?yàn)橄笮挝淖值某霈F(xiàn)高興了好大一陣子, 但是他們沒(méi)有解決一個(gè)重要的問(wèn)題, 那就是象形文字的發(fā)音, 但是這并不影響大家的使用象形文字熱情, 紛紛夸贊象形文字: 猴賽雷, 好厲害, 死闊以......
但是總有人會(huì)看到問(wèn)題而且閑不住, 腓尼基人說(shuō)我們要改變這個(gè)世界, 出于他們要與地中海周邊國(guó)家經(jīng)商的交流(講價(jià)還價(jià))的需要, 他們發(fā)明了一種文字, 史稱腓尼基文字, 這種文字由22個(gè)基礎(chǔ)符號(hào)(現(xiàn)在的26個(gè)英文字母就是由這個(gè)演變過(guò)來(lái)的)組成. 腓尼基文字除了有字形外而且每個(gè)字母都對(duì)應(yīng)人類(lèi)嘴巴能發(fā)出聲音(額,哦,啊啊啊啊啊啊啊,就是這個(gè)感覺(jué),好棒), 然后他們就能根據(jù)自己語(yǔ)言的發(fā)音進(jìn)行組詞了, 非常方便有么有, 畫(huà)畫(huà)是不可能畫(huà)畫(huà)的, 我要去田野歌唱, 去菜市場(chǎng)和賣(mài)菜大媽進(jìn)行辯論賽, 晚上我還要把歌詞記下來(lái), 還有今天買(mǎi)菜省下了5毛錢(qián), 再省出來(lái)100w, 我就能買(mǎi)套房了,真是幸福的一天.
漢字的歷史
中國(guó)的漢字最早可以追溯到商代的甲骨文, 屬于象形文字的一種, 當(dāng)然我們的老祖先在甲骨文象形文字之前也有用圖案進(jìn)行記錄的習(xí)慣, 現(xiàn)址甘肅沿黃河流域到河南的仰韶文化和現(xiàn)址浙江余姚河姆渡文化中的陶器上的魚(yú)紋,人面,豬等圖案.
漢字的演變:商朝在占卜用的龜甲和獸骨上紋刻的甲骨文,西周到東周的春秋時(shí)代在青銅器具鐫刻的金文,東周的戰(zhàn)國(guó)時(shí)代鑿刻在石頭上的石鼓文,西周的春秋戰(zhàn)國(guó),秦朝,西東漢,三國(guó),魏晉普遍使用篆體和隸書(shū)在竹簡(jiǎn)和縑帛,紙上用筆和墨進(jìn)行書(shū)寫(xiě)記錄,蔡倫的造紙術(shù)開(kāi)始于東漢, 后來(lái)的隋,唐,宋,元,明,清以及現(xiàn)在都普遍使用紙和筆進(jìn)行書(shū)寫(xiě).
隨著時(shí)間和實(shí)踐應(yīng)用漢字也變的越來(lái)越規(guī)范和標(biāo)準(zhǔn), 上個(gè)世紀(jì)60年代周有光老前輩給漢字添加了簡(jiǎn)單易學(xué)的拼音系統(tǒng)輔助漢字的發(fā)音,有助于大家口語(yǔ)交流中統(tǒng)一發(fā)音講出piao準(zhǔn)的普通話方便溝通.現(xiàn)在普遍使用的簡(jiǎn)體字, 也是發(fā)展了很長(zhǎng)一段時(shí)間, 從太平天國(guó)時(shí)期一直持續(xù)到現(xiàn)在. 漢字的簡(jiǎn)化以及拼音系統(tǒng)的添加方便了人們的學(xué)習(xí)和交流, 擴(kuò)大了認(rèn)字讀書(shū)人群的數(shù)量, 提高了國(guó)民的文化水平, 中國(guó)人走出國(guó)門(mén)也能更好傳播和宣揚(yáng)自己的祖國(guó)文化.
對(duì)了原來(lái)的漢字書(shū)寫(xiě)的文章是很少有統(tǒng)一的標(biāo)點(diǎn)符號(hào)的,標(biāo)點(diǎn)符號(hào)也是清末以后從西方引進(jìn)來(lái)的, 標(biāo)點(diǎn)符號(hào)也方便了讀者的閱讀和作者的創(chuàng)作,不然一篇沒(méi)有標(biāo)點(diǎn)符號(hào)的文章, 我估計(jì)作者寫(xiě)完后, 他自己都看不下去.還有漢字是現(xiàn)在全球使用人數(shù)最多的簡(jiǎn)化象形文字, 不過(guò)在甲金文時(shí)期漢字一個(gè)字描述就詳細(xì)描述了一件事物或者活動(dòng), 但是現(xiàn)在的漢字已經(jīng)失去了這種效果, 受西方的語(yǔ)言系統(tǒng)和現(xiàn)代教育以用為先的影響, 漢字這部分以形載義的功能越來(lái)越弱化, 反而以用為先的以音語(yǔ)義白話功能增強(qiáng). 不過(guò)這也無(wú)可厚非, 語(yǔ)言本來(lái)就是用來(lái)交流的, 用的人越多, 碰撞出思想的火花的機(jī)會(huì)才會(huì)越多.
題外話,現(xiàn)在文字和語(yǔ)言的創(chuàng)新速度和應(yīng)用的速度因?yàn)樾畔⒓夹g(shù)的變革, 出現(xiàn)了各種讓人意向不到的文字創(chuàng)新, 初期的╰啡主瑬魡火曐文灬, 段子手的梗話, 以及現(xiàn)在老少皆宜的斗圖包
計(jì)算機(jī)語(yǔ)言
世界上有很多中不同類(lèi)型語(yǔ)言, 手語(yǔ), 口語(yǔ), 邏輯系統(tǒng)的數(shù)學(xué)符號(hào)語(yǔ)言, 計(jì)算機(jī)語(yǔ)言. 當(dāng)然計(jì)算機(jī)語(yǔ)言也分很多種, 朋友曾經(jīng)吹牛要用10鍵盤(pán)寫(xiě)一個(gè)操作系統(tǒng)的機(jī)器語(yǔ)言, 匯編語(yǔ)言(寄存器,寄存器......), 七天可以學(xué)會(huì)的高級(jí)編程語(yǔ)言,
開(kāi)發(fā)中的文本
好了,終于到了標(biāo)題, 本文完.
...
...
...
騙你們的, 沒(méi)有完, 上面鋪(啰)墊(嗦)一大堆, 終于到了今天的主角登場(chǎng)了
文本無(wú)時(shí)不刻出現(xiàn)在我們的程序員的工作中,需求里,代碼里,注釋里,日志里,bug里,測(cè)試報(bào)告里,哩哩哩......
是不是感覺(jué)很煩,全是字,真夠了,心里此時(shí)是不是在想我要看jpg,我要看gif,我要看avi......
冷靜,冷靜, 都說(shuō)書(shū)中自有黃金屋,書(shū)中自有顏如玉, 文字用的好, 老婆娶的早, 為了正義還是委屈一下吧
實(shí)際的開(kāi)發(fā)中文本的用處很多例如:
1. coding代碼
給類(lèi)們,方法們,變量們,表們,起個(gè)好名字, 這個(gè)大家肯定都懂, 就不多說(shuō)sh*t
2. 代碼注釋
這個(gè)得看自覺(jué)和需要了, 我們?cè)谛枰獣r(shí)總是抱怨前人,我們不做卻沒(méi)有考慮過(guò)后人, 也許這就是命了吧
3. 日志打印
這個(gè)用處多多, bug排查打印關(guān)鍵的信息定位bug原因; 閱讀別人代碼看不懂時(shí)打印下輸入輸出也許就很容易理解了;線上未知錯(cuò)誤捕捉后打印可以有效記錄現(xiàn)場(chǎng)信息, 為后續(xù)修正錯(cuò)誤提供了很多方便;
4. 和文本相關(guān)的工具
- 搜索引擎
baidu,google 這個(gè)太有用了, 一定要培養(yǎng)自己解決不了的非緊急問(wèn)題時(shí)可以先問(wèn)下搜索引擎,然后是身邊的人, 一定要有這個(gè)意識(shí); - 文本編輯和查看工具
notepad++,vscode,vim,tail,less,grep,sed,這些工具很常用, 在日常開(kāi)發(fā)時(shí)做一些簡(jiǎn)單的相似代碼生成和文本簡(jiǎn)單的預(yù)處理, 這個(gè)時(shí)候文本編輯器就能很輕松的勝任,當(dāng)然還有一些令人匪夷所思的不可見(jiàn)字符總是會(huì)干擾我們的代碼邏輯, 這個(gè)時(shí)候把文本放到編輯器里面,然后就真相了;還有文本查看工具在我們對(duì)日志進(jìn)行查看和提取時(shí)能很效的幫助我們. - 正則表達(dá)式
這個(gè)太實(shí)用了,建議必學(xué),無(wú)論是代碼中的文本格式校驗(yàn),還是日志中的固定格式文本的查找,還是做文本匹配替換, 我在工作中經(jīng)常用正則生成一些簡(jiǎn)單的代碼, 還有提取文本中固定格式的信息;這個(gè)工具在我做體力活時(shí)幫我節(jié)約了不少時(shí)間.以后會(huì)寫(xiě)一篇關(guān)于正則表達(dá)式的文章. - 關(guān)于文本的其他基礎(chǔ)知識(shí)
字符集:acsii,gb2312,unicode, 字符集描述的是包含文字符號(hào)范圍, 但是早期的字符處理系統(tǒng)直接把字符集和編碼工作耦合到一塊了,例如ascii和gb2312, 后期出現(xiàn)的unicode解決了這個(gè)耦合問(wèn)題,把字符范圍和編碼工作分開(kāi)處理.
字符編碼:就是把字符映射為可存儲(chǔ)字節(jié)的規(guī)則,怎么合理怎么來(lái), 要看場(chǎng)景了, 例如utf-8,utf16就是unicode字符集下的不同的編碼格式.
字體:字體顯示的樣子, 例如黑體,加粗,方正體等等如此.
總結(jié)
總結(jié)就是沒(méi)有總結(jié),看完就忘了吧
一些外部資源:
http://vividict.com/Default.aspx
象形文字搜索,介紹漢字的演變歷史, 對(duì)于喜歡文字歷史的童鞋, 你們福音
http://www.sohu.com/a/295980579_670627
關(guān)于周有光先生的拼音介紹
https://baike.baidu.com/item/%E7%AE%80%E5%8C%96%E5%AD%97/585127?fromtitle=%E7%AE%80%E4%BD%93%E5%AD%97&fromid=1051578&fr=aladdin
關(guān)于簡(jiǎn)體字的介紹,百度就是不一樣,地址長(zhǎng)的很