自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

程序大作戰(zhàn),萌出一臉血!

開發(fā) 后端
非常開心生平所寫的第一篇博客就獲得了廣泛的贊譽(yù),還有幸登上了編輯推薦,看來不僅是程序人生寂靜歡喜,博客生涯也是歲月靜好?。≡诖诉€是把本人的杰作高掛:《程序人生的寂靜歡喜》,高調(diào)還是要有的,萬一紅了呢?你說是吧?

非常開心生平所寫的第一篇博客就獲得了廣泛的贊譽(yù),還有幸登上了編輯推薦,看來不僅是程序人生寂靜歡喜,博客生涯也是歲月靜好??!在此還是把本人的杰作高掛:《程序人生的寂靜歡喜》,高調(diào)還是要有的,萬一紅了呢?你說是吧?

一. 引子

      大家眼里的程序首先是這樣的:

  1. namespace OMCS.Passive{    // 摘要:    //    多媒體設(shè)備管理器基礎(chǔ)接口。用于管理本地的所有多媒體設(shè)備。 
  2.     public interface IMultimediaManager : IDisposable    {         // 
  3.         // 摘要:        //     是否根據(jù)音頻反饋以及視頻丟幀情況自動調(diào)整視頻編碼質(zhì)量。 
  4.         bool AutoAdjustCameraEncodeQuality { get; set; }        // 
  5.         // 摘要:        //     掉線后,是否自動重連。 
  6.         bool AutoReconnect { get; set; }         
  7.         // 
  8.         // 摘要:        //     語音視頻聊天組入口。 
  9.         IChatGroupEntrance ChatGroupEntrance { get; }                      // 
  10.         // 摘要:        //     是否將話筒采集到的音頻輸出給Guest。 
  11.         bool OutputAudio { get; set; }        // 
  12.         // 摘要:        //     是否將桌面圖像輸出給Guest。默認(rèn)值為true。 
  13.         bool OutputDesktop { get; set; }        // 
  14.         // 摘要:        //     是否將攝像頭集到的視頻輸出給Guest。 默認(rèn)值為true。 
  15.         bool OutputVideo { get; set; }        // 
  16.         // 摘要:        //     當(dāng)通道繁忙時,采取的視頻幀(來自攝像頭)丟棄模型。默認(rèn)值為DiscardWhenNeed。 
  17.         FrameDisardedMode VideoFrameDisardedMode { get; set; }        //             // 摘要:        //     剛剛從話筒采集的音頻幀。 
  18.         event CbGeneric<byte[]> AudioCaptured;        // 
  19.         // 摘要:        //     剛剛播放的音頻幀。 
  20.         event CbGeneric<byte[]> AudioPlayed; // 
  21.         // 摘要:        //     與多媒體服務(wù)器建立連接,并初始化本地多媒體管理器。 如果與服務(wù)器連接失敗,將拋出網(wǎng)絡(luò)異常。       
  22.         void Initialize(string userID, string password, string serverIP, int serverPort);              // 
  23.         // 摘要:        //     和目標(biāo)用戶之間是否打通了P2P通道?      
  24.         bool IsP2PChannelExist(string destUserID);    }} 

      可是你并不會知道他們在我眼里其實是這樣的——

二.程序大作戰(zhàn)

     1.所謂的:“  OMCS 多媒體管理器,用于管理本地的所有多媒體設(shè)備。” 其實就是這個意思:

     

      2.所謂的布爾類型的屬性,其實就是一個個開關(guān)嘛,像這樣:

     

  2.所謂方法,其實就是一個個按鈕,就像這樣:

       

  2.所謂事件,其實就是一個個插槽,就像這樣:

    

  2.所謂的布爾類型的只讀屬性,其實就是一個個指示燈,就像這樣:

   

 2.另外四個連接器可以就像這樣:

    

二.萌出一臉血

       最后,將這個零件全部組裝起來,就成為了一個 OMCS 客戶端了。是不是很萌呢?只要我們調(diào)整這些開關(guān),控制這些按鈕,外接這些插槽,并觀察指示燈的變化,就可以將“阿童木”胸前的多媒體連接器發(fā)射出去,連接到遠(yuǎn)程機(jī)器上的多媒體設(shè)備了!

  

       運(yùn)用形象化的思維,我們可以把原本很抽象枯燥,條分縷析的代碼,變得鮮活、生動而又富有趣味,大家在理解程序的時候也可以借鑒一下哦。

責(zé)任編輯:王雪燕 來源: 博客園
相關(guān)推薦

2015-08-27 15:54:38

程序員

2009-04-13 08:38:09

微軟Windows 7操作系統(tǒng)

2021-09-15 20:20:00

AI

2016-11-17 16:58:01

華為 手機(jī)

2011-12-28 09:31:59

游戲

2019-07-04 12:36:12

小程序百度支付寶

2012-07-25 10:11:17

虛擬化

2010-04-07 17:28:18

服務(wù)器

2015-12-18 18:01:25

2015-07-17 15:25:54

慕課網(wǎng)

2018-01-10 15:23:09

2019-06-11 09:48:45

戴爾

2020-11-09 08:51:24

6G衛(wèi)星

2021-11-12 06:39:51

Tomcat連接器面試

2020-12-11 09:20:01

數(shù)據(jù)庫架構(gòu)緩存

2022-09-30 19:32:36

ES面試查詢

2020-08-25 17:50:36

Redis數(shù)據(jù)庫內(nèi)存

2022-09-23 18:16:25

KafkaJVM

2020-09-14 12:46:25

過濾器攔截器Filter
點贊
收藏

51CTO技術(shù)棧公眾號