1. 程式人生 > >2017.2.8-9 “PL part C:OOP”

2017.2.8-9 “PL part C:OOP”

。。 eth 發現 就是 moment 成了 program blog log

雖然以前在python中也接觸過OOP,但是不系統,而且自己寫python肯定也是不會寫成OOP風格的。

現在相對系統的學習OOP的概念,感覺。。。很難受!

有點像一開始學ML時候的感覺,就是接觸了很多新概念,但是比那還困難,因為學functional programming是帶著問題學的,所以掌握起來其實算快的,但是我一直不算太理解OOP的用處是什麽,所以學OOP的相關概念就像填鴨一樣。。。

除了subclass這種以前就懂的,主要的新概念包括duck typing,以及blocks和procs,現在理解不算太深。感覺blocks和procs的存在讓ruby變成了一門非常神奇的語言。。。

但其實整個下來,對OOP的理解大有進境,感覺對python的理解也有加深。以前對python的method其實是沒怎麽註意過的,現在發現原來python裏很多東西都是被加了一層封裝塞進object裏面了。

有一個概念:first class expression。就是所謂的一等公民究竟是什麽。Dan給出他的解釋:能被定義,傳遞和生成,就可以叫一等公民。按這樣的定義,其實python中的函數也可以算一等公民。這又是一個典型的“Dan‘s moment”,他總是能抓住這些常見的易混淆的概念,身為小白聽到這些內容簡直不能更爽。

明天algo,老樣子,deadline快到了~

2017.2.8-9 “PL part C:OOP”