考虑下面列出的标准,您将使用Python,Groovy或Ruby中的哪一个?
我试图替换我通常实现的循环缓冲区+.队列的功能是缓冲传入的字节(例如,来自串行端口或一些其他数据流),而解析器检查队列中的字节并检测和提取消息包.
标准:
= 1个字节可以一次排队
= 1个字节可以一次出列
我很想去使用它
System.Collections.Generic.Queue<byte>
Run Code Online (Sandbox Code Playgroud)
...但我不确定这是否是最有效的类型.有什么建议?
有没有更明智的方法来做我想做的事情?(例如,这里有趣的建议)
感谢您的建议和意见.
Prembo.
我目前正在开发一个正在发展的Python项目,我将来可能会在GAE中将其实现为webapp.
随着项目的不断发展,我正在将可能重复使用的代码修剪成单独的包和模块,目前这些包和模块都在我的PYTHONPATH上.
您对如何构建我的项目以及可重用的包有任何建议,以便将来很好地适应GAE项目吗?
在其他帖子(例如这个和这个和这个)看看关于GAE项目结构的建议似乎相当平坦 - 这是最好的方法吗?
第三方软件包/模块怎么样?是否最好咬紧牙关并从一开始就使用VirtualEnv?
非常感谢.Prembo.
最近更新的Ruby on OSX Lion从1.8.7到1.9.3.在这个过程中,我丢失了1.8.7上安装的Ruby Gems,因此尝试重新安装它们.
穿过rb-fsevent宝石.文档说:
带有信号捕获的FSEvents API(没有RubyCocoa)
它到底是做什么用的?
其他宝石都不依赖它.所以我想知道是否需要在1.9.3上安装它?
是否有一个Twitter Bootstrap相当于HTML5Boilerplate的.visuallyhidden非语义助手类?我在CSS文件中看不到类似的东西..visuallyhidden类的目的是在视觉上隐藏它,但使文本可用于屏幕阅读器.是否有不同的Bootstrappy方法来实现相同的目标?
// HTML5Boilerplate's non-semantic helper class
.visuallyhidden {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
Run Code Online (Sandbox Code Playgroud)
相关的Bootstrap非语义助手类没有达到同样的效果:
// Some of Twitter Bootstrap's non-semantic helper classes
.hide {
display: none;
}
.invisible {
visibility: hidden;
}
Run Code Online (Sandbox Code Playgroud) 我正在重新审视字节流的通信协议解析器设计(串行数据,一次接收1个字节).
数据包结构(不能更改)是:
|| Start Delimiter (1 byte) | Message ID (1 byte) | Length (1 byte) | Payload (n bytes) | Checksum (1 byte) ||
Run Code Online (Sandbox Code Playgroud)
过去,我已经采用程序状态机方法实现了这样的系统.当每个数据字节到达时,状态机被驱动以查看输入数据一次/一个字节是否适合有效数据包,并且一旦整个数据包被组装,基于消息ID的switch语句执行适当的消息处理程序.在一些实现中,解析器/状态机/消息处理程序循环位于其自己的线程中,以便不对串行数据接收的事件处理程序造成负担,并且由指示字节已被读取的信号量触发.
我想知道是否有更优雅的解决方案来解决这个常见问题,利用C#和OO设计的一些更现代的语言功能.任何可以解决这个问题的设计模式?事件驱动vs polled vs组合?
我很想听听你的想法.谢谢.
Prembo.
面对您可以自由设计的新应用程序的挑战,组建团队进行开发和管理:
背景:桌面应用程序将控制硬件设备并执行计算,分析和显示它返回的数据.
要求 :(重要性:10 =最重要)
假设:
候选名单(可以添加到):
期待听到您的想法!
在Mac上安装Android SDK的最佳(最合适)位置是什么?
我在一些帖子中看到主目录中的某个地方是有利的.有些人似乎已将SDK放在Applications目录中.
我刚注意到CPPUnit2存在.
有人在这里使用吗?或者是CPPUnit更常用的2?
谢谢.
c# ×3
macos ×2
python ×2
ruby ×2
.net ×1
android ×1
buffer ×1
c++ ×1
cppunit ×1
css ×1
groovy ×1
installation ×1
java ×1
protocols ×1
queue ×1
rubygems ×1
scripting ×1
serial-port ×1
temperature ×1
unit-testing ×1
virtualenv ×1