私有协议的实现和文档的整理

在工作中,我遇到了实现私有协议的诸多麻烦,其中更多的是文档的残缺和错漏,以及对于某些领域采用的专业的表示。很多的私有的协议,在刚开始的时候,没有过多的考虑到可扩展性,所以使用的都是结构体,并且结构体在字节的控制上,并没有采用严格的规定,导致在实现的过程中,需要不断的尝试。我自己在实现的过中,遇到的一个问题就是如何正确的分析报文中的有效字符。究竟这些斧子的确切含义,对于实现功能是至关重要的。我刚开始没有老大的意见:详细的分析每一个字节代表的含义,实在是惭愧。可能是100多个字节,完全是无法了解的。就像我第一次接触正则表达式,第一次接触perl脚本,一次接触php等等。所有的种种都是挑战,所有的种种都是磨练。

在帮助一个同事实现已经实现过的协议的过程中,还是失败了。我拷贝整一个结构体,填充的也是一样的,但是没有实现功能。

这个问题一直困恼。

总结如下:

1)尝试找到解析结构体的代码,详细的参考其中的定义,如果可以尝试添加代码进行测试,打印其中的所有相关的参数,对于所有的代码,我们应该进行分析,赋值的含义

2)退一万步讲,我们没有解析端的代码,与此同时,我们没有正确的协议,我们只有模糊的定义。我们必须非常清晰的分析其中的每一个字节代表的含义。

3)通过修改结构体的参数,查看最终变化的结构体参数是那些?这是至关重要的,

4)字节的对齐,永远需要测试两次就可以了,不要盲目的改变,注意测试的结果,而是注重成功与否。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

不管如何,我们始终要面对的,逃避是无法解决问题,既然身在江湖,就应该做好准备,搜有的抱怨,所有的不满,所有的无奈,只不过是软弱的借口,都是无能的表现。即使是字节,也没有什么大不了的,现在perl,已经不在话下了。

时间: 2024-08-07 08:48:08

私有协议的实现和文档的整理的相关文章

iOS OpenGLES 框架相关 24 篇文档排序整理

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. OpenGLES Use a compact, efficient subset of the OpenGL API for 2D and 3D

iOS Foundation 框架 224 篇相关文档分类整理

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 截至 2014-05-02 ,苹果官网 Foundation 框架相关文档共计 224 篇,分类如下: Foundation 框架概述文档:常量.

iOS UIKit 框架 346 篇文档分类整理 - 预告

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 当前正在进行的是 "iOS Foundation 框架 224 篇相关文档分类整理",量很大,但会根据实际开发中的使用频繁程序

浏览器模式和文档模式怎么玩?

一.前言 从IE8开始引入了文档兼容模式的概念,作为开发人员的我们可以在开发人员工具中通过“浏览器模式”和“文档模式”(IE11开始改为“浏览器模式”改成更贴切的“用户代理字符串”)品味一番,它的出现极大地方便了苦逼的前端攻城狮们适配各版本的IE,但jser们也不能完全信任它,因为它只是提供尽可能的文档模式模拟而已. 本篇大部分内容来源于官方解说:http://msdn.microsoft.com/library/cc288325(v=vs.85).aspx,并尽量融入个人平常工作中踩过的坑加以

《开源框架那点事儿18》:为什么要先从测试用例编写和文档编写开始?

有一个同学,问我一个问题:加入Tiny是否必须从写单元测试用例和文档作起? 此问题引发我诸多感触,故形成乱弹一篇. 作为一个新加入者,多看.少说,是正点.而这个时候,写写测试用例.文档,就是个不错的选择.这样入手比较容易,也比较容易体现水平. 可以说好的程序员,测试和文档都是写得好的.测试和文档一定写不好的,一定不是好的程序员. 同时,在看代码,写测试用例.写文档的过程中,还可以这样思考: 他为什么要这么设计?换成我,我会怎么设计?然后有相当一部分,会转化成:哦,原来是这个样子的!这个时候你进步

JEECG 开源平台全视频和文档

jeecg v3.0入门视频 链接: http://pan.baidu.com/s/1bnrMfiJ密码: 8q0k MiniDao持久层 入门视频 链接: http://pan.baidu.com/s/1eQGc4W6 密码: stst JEECG-OnlineCoding<企业招聘系统> 视频 链接:http://pan.baidu.com/s/1sjHHVM9 密码: os7b JEECG公开课视频 链接: http://pan.baidu.com/s/1pJFeiiJ 密码: cr75

CSS权威指南学习笔记系列(1)CSS和文档

题外话:HTML是一种结构化语言,而CSS是它的补充:这是一种样式语言.CSS是前端三板斧之一,因此学习CSS很重要.而我还是菜鸟,所以需要加强学习CSS.这个是我学习CSS权威指南的笔记,如有不对,请谅解和指出.谢谢大家.正文: 第一章 CSS和文档---------- 1.CSS,称为层叠样式表.使用CSS的理由有:a.易于使用,样式表能大大减少Web创作人员的工作量:b.在多个页面上使用样式,可以创建一个样式表,然后把这个样式表应用到多个页面:c.层叠,CSS还规定了冲突规则:这些规则统称

通过私有协议在Chrome浏览器网页中打开本地程序

最近甲方有这样一个需求:两套系统,一套基于Chrome开发,一套基于IE开发,想要在Chrome中增加一个链接,然后进入IE开发的系统.也就是说,想要在Chrome中创建链接跳转到IE浏览器指定页面,还要实现跳转动画效果.这个需求我们先来解决从Chrome跳转到IE的问题. 问题分析:从Chrome中跳转到IE,直接以http链接形式是不可能跳转到IE的,只能通过单独开发的本地程序打开IE,问题是如何让Chrome打开该程序.有一种方法可以实现:通过注册私有协议,用户点击链接的时候直接使用私有协

第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作

第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲-elasticsearch(搜索引擎)基本的索引和文档CRUD操作 elasticsearch(搜索引擎)基本的索引和文档CRUD操作 也就是基本的索引和文档.增.删.改.查.操作 注意:以下操作都是在kibana里操作的