看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《Holocaust123 (Terry)》之銘言: : 講 programming style 好像怪怪的,不過我不知道要講甚麼 : ‧object oriented programming oo : ‧functional programming fun : ‧generic programming gen : ‧procedure programming pro : 1. : 想請問 functional programming 是不是有點類似oo, : 只是oo programming是以class為單位, : 而functional programming是以function為單位? : 如果我說的是對的(orz),那style是oo的話,就不會是 fun 嗎(反之亦然)? : 良葛葛的筆記看不太懂... 既然要區分,一定不是像來像去. 它們只是一種寫程式的風格或典範. 風格是指寫程式時心裏都在想哪方面的事情. 寫OO程式當然就是關心物件和物件. 寫函數程式,則是關心函數的事情:這個函數是另一些函數構成的,而另一些函數是 再另一些函數構成的. : 2. : generic programming 就是有類似 STL 的東西那樣嗎? : generic programming => http://flolac.iis.sinica.edu.tw/lambdawan/zh/node/31 : 上面網頁說:「這樣的泛型演算法便能輕易為各種資料結構具現化」 : 這啥意思...具現化不是new一個class的實體物見出來嗎? : 但泛型演算法不是應該是像 sort、append 這種function,那跟具限化的關係是...? 簡單說是一份演算法的 class, 要 instantiate 時,只要給它所需的資料結構, 它就產生一份演算法的 instance. : 3. 可否用 venn's diagram 簡單描述一下這四種 programming style 的差別? : 或是用「p=>q」的形式講一下這四者的關係 (ex: oo => pro) : ^^^^^^^^^ : 我亂舉例的 Programming styles/paradigms 不能這樣歸屬,因為它們不是指特定的語言. 你可以有一個擁有OO風格的語言,也可以擁有一個Fun風格的語言;然而,你還可能 有一個語言是既有OO風格,也有Fun風格,但它是procedural語言. 這要怎麼說包含關係? 不管畫出怎樣的 Venn's diagram, 其中一定有說得不對的地方. 看過一個很粗略的分類是: Procedural Language Imperative Language C Functional Language LISP Non-procedural Language Logic Language Prolog Declarative Language SQL 至於OO,定位稍微模糊. 也許裡頭的物件概念,是屬於物件理論基礎,而不是語言特色. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.112.225.17