使用Janus作为对讲服务器的后台框架和业务流程

对讲后台业务架构图如下图:图1、对讲后台业务架构图 通过NGINX负载Janus http服务器的API接口,通过该API接口可以获取可用Janus服务器的IP和端口;客户端拿到可用对讲服务器的IP和端口后,通过WebSocket连接到该服务器,并保持长连接,客户端进入会议室时,则复用这条长连接;如果进入其他会议室,则需要重新获取可用的Janus服务器IP和端口,并重复上述过程;多个对讲
阅读全文

如何做好一个团队的技术主管

这是一篇旧文,从当前的角度看,其实层次并不是特别高,前段时间阅读曾国藩的书,讲到曾国藩用人的哲学,确实是中国人的智慧,受益匪浅;
阅读全文

读书笔记《简单的逻辑学》

干程序员这行,给计算机读的编程语言,如果缺少哪怕一个分支的逻辑,计算机的执行结果绝对是超预期的,轻则跑飞,重则崩溃,所以逻辑思维严谨是程序员这个职业基本的素养;那作为一个资深的码农,为什么会去看《简单的逻辑学》,缘由是逻辑思维的推荐,逻辑学作为底层临界知识的一部分,如何清晰高效地思考,如何不犯低层次的归因错误,在面对充斥大量繁杂信息的互联网世界,如何有独到性的思考,就需要对逻辑思考的能力进行系统性
阅读全文

做一个合格的程序员

管理学的经典中常说,基层主管要经常培训和指导新人,告诉他们,应该如何工作,坚持什么,鼓励什么,认可什么,怎样才能获得好的绩效,所以,经过几天的思考和总结,给大家分享“做一个合格的程序员”的主题,欢迎大家拍砖讨论。 知乎上给合格程序员的定义,是指能够根据客户的需求或者上级的要求,选择恰当的技术方案(或者按照上级的指示)完成工作,在合理的时间内完成开发任务并达到质量要求的人,就是真正合格的程
阅读全文

你必须知道的编程语言分类

  • 瓜牛
  • 5967
我们习惯把编程语言分类为机器语言(汇编语言)和高级语言(Fortran/Lisp/Cobol/Basic/C/Pascal /C++/Java/Perl/Python),选择使用高级语言编程而不是机器语言相信大家都能说出一两个理由(比汇编语言更容易和更清晰的表达性、多平台的可移植性,但需要一个专用的编译器或者是解释器)。但网络上却没有一个指导你选择哪种高级语言作为你首要学习的语言,“你使用什么语言
阅读全文

我理解的MVP框架

  • 瓜牛
  • 5924
1、MVP框架说明MVP的通用解释如下:View 对应于Activity,负责View的绘制以及与用户交互;Model 负责处理数据的加载或者存储,比如从网络或本地数据库获取数据等;Presenter 负责完成View于Model间的交互,主要起到桥梁作用,是一个中间协调人的角色。从代码实现的角度,简单的来说MVP的关系,V调用P的方法来实现某个用户具体行为的操作(比方点击某个按钮代表的点赞),并
阅读全文

一个电话本中联系人名字搜索高亮的实现

  • 瓜牛
  • 6182
一个电话本中联系人名字搜索高亮的实现需求:实现电话本名字搜索功能的高亮实现,其中搜索支持中文、简拼、全拼搜索,对搜索匹配到的名字部分高亮显示。例如:名字:张向东全拼:zhangxiangdong简拼:zxd搜索匹配优先规则:中文(直接匹配)、简拼匹配、全拼匹配关键在全拼匹配上面,比方用户输入gd,则匹配向东两个字,同xiangdong的匹配项搜索功能通过数据库的搜索匹配实现,也就是输入是搜索的输入
阅读全文

一个小程序从零到上线记录全过程

PS:以前写过简单的 js,所以入门不算太难;有同学说微信小程序的开发过程让开发者很爽。依赖完全原生的体验,小程序的开发效率提高了不少,从开始到上线,确实有这种体验:开发快,加载快,体验好。0、先是将微信小程序的“简易教程”来回看了好几遍,算是明白了一个小程序的目录结构,json 配置文件,wxml 模板文件,wxss 样式文件和 js 文件的作用,以及交互逻辑,从小程序的启动到生命周期方法,程序
阅读全文

混合应用开发框架Cordova源码学习总结

有说法是,采用混合模式的WEBVIEW来开发界面,通常适用于需要经常变更的页面,比方活动页,或者其他展示页面;相对行业应用来说,哪些使用原生界面开发,哪些使用WEBVIEW来开发,需要从我们当前的痛点出发来考虑,当前行业应用主要是开发周期相对长,采用WEBVIEW的方式来开发,在通用基础则框架的基础上,则能缩短在UI上的开发时间,提升交付效率;但对WEBVIEW开发应用的体验的提升,是我们当前需要
阅读全文

我期望的Android APP开发方式

其实写了这么多的Android APP后,越发觉得好多代码都是技术含量很低的重复的复制、粘贴,项目上的实现已经越来越没有挑战性和并能激起开发兴趣,那么这些重复的工作是否能在未来的开发中简化并且提升开发质量呢,这可能是我最近在想的问题。1、代码基础库的构建,GITHUB上有很多这种类似的基础库,关于网络请求、DB操作、公共方法等等,关于可以提取出一套作为公共资产;2、基础框架的搭建,起到粘合剂的作用
阅读全文