程序大作战,萌出一脸血!

非常开心生平所写的第一篇博客就获得了广泛的赞誉,还有幸登上了编辑推荐,看来不仅是程序人生寂静欢喜,博客生涯也是岁月静好啊!在此还是把本人的杰作高挂:《程序人生的寂静欢喜》,高调还是要有的,万一红了呢?你说是吧?

一. 引子

    大家眼里的程序首先是这样的:


  1. namespace OMCS.Passive{    // 摘要:    //    多媒体设备管理器基础接口。用于管理本地的所有多媒体设备。 
  2.     public interface IMultimediaManager : IDisposable    {         // 
  3.         // 摘要:        //     是否根据音频反馈以及视频丢帧情况自动调整视频编码质量。 
  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。默认值为true。 
  13.         bool OutputDesktop { get; set; }        // 
  14.         // 摘要:        //     是否将摄像头集到的视频输出给Guest。 默认值为true。 
  15.         bool OutputVideo { get; set; }        // 
  16.         // 摘要:        //     当通道繁忙时,采取的视频帧(来自摄像头)丢弃模型。默认值为DiscardWhenNeed。 
  17.         FrameDisardedMode VideoFrameDisardedMode { get; set; }        //             // 摘要:        //     刚刚从话筒采集的音频帧。 
  18.         event CbGeneric<byte[]> AudioCaptured;        // 
  19.         // 摘要:        //     刚刚播放的音频帧。 
  20.         event CbGeneric<byte[]> AudioPlayed; // 
  21.         // 摘要:        //     与多媒体服务器建立连接,并初始化本地多媒体管理器。 如果与服务器连接失败,将抛出网络异常。       
  22.         void Initialize(string userID, string password, string serverIP, int serverPort);              // 
  23.         // 摘要:        //     和目标用户之间是否打通了P2P通道?      
  24.         bool IsP2PChannelExist(string destUserID);    }} 

    可是你并不会知道他们在我眼里其实是这样的——

二.程序大作战

     1.所谓的:“  OMCS 多媒体管理器,用于管理本地的所有多媒体设备。” 其实就是这个意思:

   

    2.所谓的布尔类型的属性,其实就是一个个开关嘛,像这样:

   

2.所谓方法,其实就是一个个按钮,就像这样:

     

2.所谓事件,其实就是一个个插槽,就像这样:

   

  2.所谓的布尔类型的只读属性,其实就是一个个指示灯,就像这样:

 

 2.另外四个连接器可以就像这样:

   

二.萌出一脸血

     最后,将这个零件全部组装起来,就成为了一个 OMCS 客户端了。是不是很萌呢?只要我们调整这些开关,控制这些按钮,外接这些插槽,并观察指示灯的变化,就可以将“阿童木”胸前的多媒体连接器发射出去,连接到远程机器上的多媒体设备了!

 

     运用形象化的思维,我们可以把原本很抽象枯燥,条分缕析的代码,变得鲜活、生动而又富有趣味,大家在理解程序的时候也可以借鉴一下哦。

作者:CJM恣肆

来源:51CTO

时间: 2024-09-02 18:11:15

程序大作战,萌出一脸血!的相关文章

应用-麻烦大神写出一个c++程序出来

问题描述 麻烦大神写出一个c++程序出来 几何图形的简单计算.内容是用C++设计一个业务处理系统,其业务就是进行简单的几何计算:l输入圆的半径,计算并输出圆的周长和面积:l输入圆柱的半径和高,计算并输出圆柱的表面积和体积:l输入圆锥的半径和高,计算并输出圆锥的表面积和体积:l输入圆球的半径,计算并输出圆球的表面积和体积:l输入长方形的长和宽,计算并输出长方形的周长和面积:l输入长方体的长.宽和高,计算并输出长方体的表面积和体积.要求:①必须设计圆.圆柱.圆锥.圆球.长方形.长方体等类:②必须应用

android-设计ANDROID程序,实现以下功能,请 大神给出一点思路

问题描述 设计ANDROID程序,实现以下功能,请 大神给出一点思路 (1)在界面上显示数字和模拟时钟,默认显示手机的当前系统时间,(2)通过日期.时间控件设置时间,并且在数字和模拟时钟中显示我的想法是建两个Activity一个用于显示数字和模拟时钟,另一个用于显示日期时间控件,主要是第二个问题,日期时间控件中设置好的时间是不是通过Calendar获取?然后传到数字和模拟时钟所在Activity但是这样就不知道数字和模拟时钟怎样读取Calendar数据 解决方案 Calendar可以的,使用比较

大基金支持下 晋江能否在存储器领域杀出一条“血路”?

随着中国力量的崛起,全球芯片产能正加快向中国大陆转移.7月16日,晋江集成电路存储器项目奠基,一期投资达370亿元,2018年投产后将具备每月6万片12英寸晶圆的产能规模. 晋江项目开工,只是全球芯片产业格局大调整的缩影之一.事实上,近年来尤其是今年,三星.英特尔等全球芯片巨头都积极在中国进行布局,扩大在这个全球最大芯片市场的产能投入. 芯片(集成电路)被喻为"工业粮食",中国一直是全球最大的芯片进口国. 以纺织服装业扬名的"海上丝绸之路"起点福建省泉州市晋江,想在

智能路由器大爆炸:谁能杀出一条血路

智能路由器行业当下格局24小时不断电.天然可上网.家庭设备的连接中心,路由器的价值似乎一夜之间被忽然发现,这个家庭中最重要的入口,迅速成为创业者.各大互联网公司乃至传统公司争夺的焦点.家庭云储存终端,智能家居控制中心,各大厂商赋予了路由器无限的期许和希望,他们谁能最终杀出一条血路?创业公司:抱大腿还是孤独前行极路由是最早启动智能路由器研发的公司,早在去年3月就发布了工程测试版.很快这家公司就获得了纪源资本和创新工场千万美元级别融资,是小米之后的最大硬件公司融资.为了快速卡位智能路由器市场,去年1

萌系冒险闯关游戏《奶牛超人:农场大作战》限免中

<奶牛超人:农场大作战>是一款类似于超级玛丽的横版闯关的冒险游戏.<奶牛超人:农场大作战>游戏截图邪恶的Duriarti教授从监狱中逃脱并控制了阳光谷农场,现在,他正在这里制造一个动物克隆军团,而且没有任何人知道他的阴谋,疯狂的教授就这样继续他曾经的邪恶实验,只有奶牛超人可以阻止他啦!<奶牛超人:农场大作战>游戏截图这是一个独特的虚拟世界中的战斗游戏,游戏中的人物都使用了精美的3D模型,玩家将控制奶牛超人进行战斗和冒险,游戏支持包括倾斜.虚拟按钮等多种控制方式,在游戏中

GL卖萌之作 社交战略游戏《恶魔大作战》

这是一款社交/战略混合的游戏,这是一款画面可爱.设计有趣的游戏,玩家需要在这里养一窝属于自己的可爱怪物,并与 它们并肩战斗.这款游戏来自于gameloft,<恶魔大作战>,相信不会令人失望.游戏截图游戏故事背景:一个世纪以前,鲁玛的岛屿遭受了神秘混沌势力的攻击.但是一名年轻的怪兽驯养师和他的怪兽们打退了 敌人,给这些岛屿带来了和平!作为一名怪兽驯养师新手,你必须学习如何抚养并训练自己的怪兽团队,并且建造你自己的自定义王国供它们居住.然后启程探索周围的每个岛屿,再次遏制混沌势力!游戏截图游戏截图

visual studio 2008-看了个vc6写的小程序用vc2008写就出错了,请帮我看看出错在哪里?

问题描述 看了个vc6写的小程序用vc2008写就出错了,请帮我看看出错在哪里? 我在vc2008里写了个简单的DLL,并希望调用它,结果出错了,不知道出错在哪里,希望知道的朋友指点,谢谢! dll代码: int myadd(int a, int b)//自定义的函数,返回俩数之和 { // AFX_MANAGE_STATE(AfxGetStaticModuleState()); return a+b; } ; myadd.def : 声明 DLL 的模块参数. LIBRARY "myadd&q

Python 实现 贪吃蛇大作战 代码分享_python

感觉游戏审核新政实施后,国内手游市场略冷清,是不是各家的新游戏都在排队等审核.媒体们除了之前竞相追捧<Pokemon Go>热闹了一把,似乎也听不到什么声音了.直到最近几天,突然听见好几人都提到同一个游戏,网上还有人表示朋友圈被它刷屏了.(不过现在微信已经悍然屏蔽了它的分享) 这个游戏就是现在iOS免费榜排名第一的<贪吃蛇大作战>.一个简单到不行的游戏,也不知道怎么就火了.反正一款游戏火了,各路媒体.专家总能说出种种套路来,所以我就不发表意见了.不过这实在是一个挺好实现的游戏,于是

rules-web程序启动时弹出jQuery.validationEngine错误,如何解决啊?

问题描述 web程序启动时弹出jQuery.validationEngine错误,如何解决啊? 启动web程序,有时会弹出jQuery.validationEngine rules are not loaded plz add localization files to the page提示错误.使用的是jquery.validationengine.js文件.请问各位大神应该如何解决啊?感激不尽! 解决方案 来个人帮忙解答一下子吧!!! 解决方案二: 没有加载规则文件.你加一个规则文件即可.比