最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

[oeasy]python00134_[趣味拓展]python起源_歷史_Guido人生_ABC編程語言_Tanenbaum

2023-04-15 16:56 作者:oeasy  | 我要投稿

python 歷史

回憶上次內(nèi)容

  • 顏文字是kaomoji

    • 把字符變成一種圖畫的方法

    • 一層疊一層

    • 很多好玩兒的kaomoji是一層層堆疊起來的meme

  • 虛擬的表情也在真實(shí)世界有巨大影響

    • 一步步地影響

  • 字符編碼就是這樣一步步發(fā)展過來的

  • python也是 一步步 發(fā)展到今天的

    • python究竟是 怎么發(fā)展的呢???

緣起

  • python 這門語言怎么來的呢?

  • 還要從從荷蘭說起

  • 在荷蘭首都 阿姆斯特丹

    • 荷蘭城市中的丹(dam)特別多

  • 阿姆斯特丹就是 阿姆斯特河上 大壩的意思

    • 因?yàn)檎麄€(gè)荷蘭都是圍海造田出來的

    • 而且城市以各方面開放的態(tài)度著稱

  • 畢竟世界馬車夫

    • 飛翔的荷蘭人

童年

  • Guido van Rossum

    • Guido 很像 聽起來 Guide

    • 把 e 變成了 o

    • 常見的名字

    • 意大利、德國、荷蘭都有應(yīng)該翻譯成圭多

    • 土生土長荷蘭人

    • 這也是他github中id的來源

  • van 的意思是 from

    • 從羅森來的圭多

    • 有點(diǎn) 燕人張飛 這個(gè)意思

    • 羅森在哪里呢?

羅森

  • 從日德蘭半島南邊Gelderland and Overijssel地區(qū)來的

  • 1920年有本科幻小說叫做

    • R.U.R.

    • Rossum's Universal Robots

    • 羅素姆萬能機(jī)器人

  • 劇名中「robota」一詞

    • 源于捷克語

    • 意思是「苦力」

  • 也是robots一詞的來源

家庭

  • 母親是教師、父親是職員

    • 也喜歡荷蘭文學(xué)

    • 不喜歡歷史

    • 理科里面不喜歡化學(xué)

    • 因?yàn)橛幸淮蠖驯砀褚?/p>

    • 朋友很少

    • 一個(gè)弟弟

    • 一個(gè)妹妹

    • 下面有

    • 認(rèn)為自己是一個(gè) nerd

    • 喜歡數(shù)學(xué)物理課程

    • 喜歡那種從基本原則推導(dǎo)的東西

      • 電子

      • 觀鳥

      • 周末喜歡和同好在一起

    大學(xué)

    • 大學(xué)去的是阿姆斯特丹大學(xué)

      • 荷蘭最好的大學(xué)

      • 學(xué)習(xí)數(shù)學(xué)

      • 可以用 Algol68 操作 mainframe

      • 當(dāng)時(shí) Algol68 和 fortran 也有語言之爭

      • 不過數(shù)學(xué)系只是研究算算數(shù)

      • 沒有啥意思

    • 阿姆斯特丹還有個(gè)自由大學(xué)

      • 那里的計(jì)算機(jī)更發(fā)達(dá)

      • 那里研究操作系統(tǒng)、數(shù)據(jù)庫、編程語言

    • 當(dāng)時(shí)阿姆斯特丹有三個(gè)地方可以用計(jì)算機(jī)

      • 兩個(gè)大學(xué)和一個(gè)數(shù)學(xué)中心

      • 當(dāng)時(shí)湊錢買了一個(gè)計(jì)算機(jī)

      • 放在自由大學(xué)

      • 因?yàn)槟抢镉?Tanenbaum

    Tanenbaum

    • Tanenbaum 是那邊的大玩家

      • 研發(fā)了一個(gè) minix

      • 啟發(fā)了后來的 linus 開發(fā)出 linux

    • 兩個(gè)學(xué)校可以互信學(xué)分

      • Guido 迷上了 Tanenbaum 的課程

    研究中心

    • 畢業(yè)之后,Guido 就加入了本地的計(jì)算中心

      • 阿姆斯特丹的 cwi

      • CWI 是 荷蘭語簡稱

      • Centrum Wiskunde & Informatica

    • 英語叫

      • National Research Institute for Mathematics and Computer Science

      • 國家數(shù)學(xué)和計(jì)算機(jī)研究中心

    • 那里研究些什么呢?

    前輩

    • 算法!

      • Edsger Dijkstra

      • Dijkstra算法的作者

    • 在 CWI 的研究員期間

      • 開發(fā)了同名的最短路徑算法

      • 發(fā)展了堆棧概念

      • 互斥、死鎖、信號(hào)量

    • Dijkstra和 Hoare、Dahl 合著的《結(jié)構(gòu)化程序設(shè)計(jì)》很厲害

      • 他主張不用 goto

      • 能和這些先進(jìn)的人學(xué)習(xí)實(shí)在是很棒

    • Guido 負(fù)責(zé)一些應(yīng)用程序的開發(fā)

      • 寫了 BSD 支持通配符的一個(gè)算法

    ABC 編程

    • 首先是開發(fā)一種 ABC 編程語言

    • 這個(gè)語言的名字可真好記啊

      • 小朋友都能記住

      • 沒錯(cuò)就是讓小朋友能記住

      • 能讓小白能輕松學(xué)習(xí)的一種語言

    • ABC 也是交互性的

      • 可以一邊打一邊互動(dòng)的

      • 就像 python 游樂場那種 REPL 環(huán)境

      • 當(dāng)然那個(gè)時(shí)代是 1980 年左右

      • 根本沒有 python

    • 當(dāng)時(shí)主要的問題是

      • 科學(xué)家不會(huì)編程

      • 搞不懂溢出、數(shù)字存儲(chǔ)模式

      • 總之就是無法用計(jì)算機(jī)真正解決問題

    • 結(jié)構(gòu)化的高級的交互式的語言

      • 不用自己分配內(nèi)存

      • 替代 basic、pascal、awk 的 一種語言

      • 不是一種難以入手的系統(tǒng)編程語言

      • 就是給初學(xué)者玩著學(xué)習(xí)用的、

    • Guido加入了 ABC 的開發(fā)

      • 肩負(fù)了主要的開發(fā)任務(wù)

      • 和組里面人對于 ABC 進(jìn)行各種爭論

    • ABC語言具體啥樣呢?

    語言細(xì)節(jié)

    • ABC 語言

      • 使用冒號(hào)和縮進(jìn)來表示程序塊

      • 行尾沒有分號(hào)

      • for 和 if 結(jié)構(gòu)中也沒有括號(hào)()

      • 賦值采用的是 PUT

      • 而不是更常見的等號(hào)

    • 這些改動(dòng)讓 ABC 程序讀起來像一段文字

    • 盡管已經(jīng)具備了良好的可讀性和易用性

      • 關(guān)鍵字都用大寫字母

      • ABC 語言最終沒有流行起來

    • 那這個(gè)語言這么好記 、這么方便

      • 為什么就不流行呢???

    起名的學(xué)問

    • 太過注重初學(xué)者了

      • 但是沒有上升的階梯

      • 只能搞一些小玩鬧

      • 不能做真正的工作

      • 上手快但是沒有后續(xù)的成就感

    • 而且這個(gè)名字起的就是傻瓜化

      • 純傻瓜化

    • 你學(xué)什么編程語言呢?

      • 我學(xué)的是 ABC

      • 聽起來就很幼稚 兒童玩具嗎

      • 人家那邊的名字叫 pascal 帕斯卡

      • 數(shù)學(xué)家、哲學(xué)家,多有文化

      • 這邊叫 ABC

    • 你會(huì) ABC 么?

      • 會(huì)啊

      • 我還會(huì)唱字母歌呢!

    • 不能做復(fù)雜工作還有個(gè)原因

      • 就連簡單的讀文件都沒辦法做 ??

    可擴(kuò)展性

    • 缺乏可擴(kuò)展性

      • 需要結(jié)構(gòu)性的改變

      • 新加一個(gè)功能

      • 整個(gè)新東西就得傷筋動(dòng)骨

    • 拓展性非常重要

      • 說白了就是人人都可以自己編寫插件

      • 編寫模版

    • 人人都能玩

      • 打一場人民戰(zhàn)爭

      • 就可以把這個(gè)軟件的功能和豐富性極大提高

      • 這樣用眾包的方式

      • 都能添磚加瓦

      • 除此之外,還有個(gè)最重要的原因

      失敗原因

      • 沒有錢了

      • 后來這個(gè)項(xiàng)目部就黃了么

      主角

      • Guido仍然在這個(gè) cwi 里面工作

        • 1989 年閑的沒事

        • 想寫一個(gè)腳本解釋器

        • 就像一個(gè) shell

        • csh bash zsh 那種腳本解釋器

        • 不為了錢就為了好玩

        • 他對于雞尾酒會(huì)和 acm 論文不感興趣

        • 想做一些實(shí)際的東西

        • 他已經(jīng)從 abc 語言吸取了很多經(jīng)驗(yàn)

        • 詞法分析對他來說已經(jīng)沒有什么難度了

      • 難的是起名字

        • 這回的新語言叫什么名字呢?

      python

      • guido 當(dāng)時(shí)是在看短劇腳本

        • 短劇是英國劇團(tuán) monty python‘s flying circus 的

        • 成天看 入迷了

      • 起名就叫 python

        • 還有點(diǎn)神秘感

      短劇

      • 這個(gè)劇今天還能搜到

        • 1970 年代開始

      • 逆向思維發(fā)散思維的短視頻

        • 當(dāng)時(shí)還是傳統(tǒng)電視劇的天下

        • 這個(gè)英國劇團(tuán)影響力很大

        • 就像是戲劇屆的 Beatles

      回憶過程

      • guido 本人回憶

        • 當(dāng)時(shí)需要一個(gè)簡短、獨(dú)特、還有點(diǎn)神秘的名字

      • 正在讀劇本

        • 然后就這么定了

      logo 演化

      • 最早的 logo 是他的弟弟 Just von Rossum 做的

      • 后來出現(xiàn)了兩只大蟒蛇的樣子

      語言細(xì)節(jié)

      • 1991 年 2 月 發(fā)布了 0.9.0

        • 最早是一種解釋型的語言

        • 程序是在解釋器里面運(yùn)行的

      • 當(dāng)時(shí)的 slogan

        python 是 c 與系統(tǒng)腳本語言之間的橋梁

        python bridges the cap between c and shell programming
      • 發(fā)布在 operating system amoeba 系統(tǒng)上

      組織風(fēng)格

      • 兼職的開始

        • Guido 業(yè)余做的這個(gè) python

        • 當(dāng)時(shí)還沒有網(wǎng)頁服務(wù)器

        • 有一個(gè)郵件列表

      • Guido 并不是孤軍奮戰(zhàn)

        • Guido 是仁慈的獨(dú)裁者

        • 社區(qū)里面的人提各種各樣的建議

        • 社區(qū)氛圍是有趣的

        • Tim Peter 等很厲害的人逐漸加入

        • 解決了很多實(shí)際問題

      • Python 社區(qū)是自組織的

        • 第一次的線下聚會(huì)不是由 Guido 發(fā)起的

        • 第二、三次也不是

        • 慢慢形成了 PyCon 的氛圍

      總結(jié)

      • 這次回顧了一下歷史

        • python 是如何從無到有的

        • 看到 Guido 長期的堅(jiān)持和努力

      • 再復(fù)雜的編程也是從定義變量開始的

        • python 如何定義變量呢?

      • python 是

        • 如何定義變量的呢?

      • 我們下次再說!??

      • 藍(lán)橋->https://www.lanqiao.cn/courses/3584

      • github->https://github.com/overmind1980/oeasy-python-tutorial

      • gitee->https://gitee.com/overmind1980/oeasypython


      [oeasy]python00134_[趣味拓展]python起源_歷史_Guido人生_ABC編程語言_Tanenbaum的評論 (共 條)

      分享到微博請遵守國家法律
      同心县| 西安市| 桦南县| 吉木萨尔县| 东安县| 松桃| 文成县| 兴义市| 南汇区| 东丽区| 泽普县| 郯城县| 绩溪县| 郎溪县| 平果县| 陇南市| 庄河市| 邹城市| 万州区| 靖宇县| 淮滨县| 安乡县| 峡江县| 正蓝旗| 太谷县| 黔西| 全椒县| 四平市| 内乡县| 莱阳市| 马山县| 睢宁县| 文山县| 卓资县| 三穗县| 镇原县| 大荔县| 新营市| 祁阳县| 靖西县| 南陵县|