※ 引述《gsj.bbs@bbs.nchu.edu.tw (國王的新衣)》之銘言:
: ※ 引述《tester.bbs@bbs.csie.ncu.edu.tw (try or test)》之銘言:
: > 電腦在執行中斷與多工程式時, 就時間順序言, 就是非循序的.
: > 那麼你的循序與非循序跟硬體的對稱又是指甚麼 ?
: 我的循序是指 "行程內" 的循序
: 行程間也是有一個順序規則的
: Process 的執行順序會由Scheduler 來排定
: (這些東西已經算是OS的議題了,詳情去看看教科書吧)
: 至於Interrupt 有的是隨機發生(如網路卡、Keyboard),有的是定時發生(如Timer)
: 但是ISR內部的執行也是循序
: 如果它有Task要註冊到Task Queue內執行,它也是循序的
: 電腦開機時的Initiator也是循序的
: 行程間的通訊,同步機制也是來自循序的要求
: 非循序,吵了半天的OO不就是
看了老半天, 真的不清楚為什麼你覺得 OO 是非循序?
Assembly和OO的程式最後都是變成 machine code, 一樣被 CPU 執行,
有什麼道理 OO 的程式不是循序的, 而 Assembly 就是循序的?
OOP不是顛覆過去的概念, 而是基於過去 procedural programming,
structured programming 演化產生的模型, 以微觀來看, OOP中每個
object的function本身是sequential的, 以巨觀來看, 各object之間
的互動也是sequential的, 如果你覺得某件工作不適合切割到不同的
object來完成, 那你可以設計成在同一個object之內, 用你過去認為
循序的處理方式來完成這件工作.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.23.107