今天一同事提出编程风格统一问题,刚好提到花括号(大括号)是否应该另起换行的问题引起了异义,一起以来我都采取的是直接另起一行的风格,可能跟接触的语言和工具有关吧。接触的比较多的都是Linux类开源方案,入门从C开始,然后一直是用的PHP做为主要开发语言,再就是JavaScript了,其他的用的比较少的就是Object-C和Python了.
目前流行的应该主要是以下两种风格:
风格一:起首的大括号另起一行
block
{
…….
}
风格二:起首的大括号跟在关键字后面
block{
… …
}
我一直采用的是风格一,起因是最早接触语言风格的是Linux相关的资料,提的比较多的就是GNU语言风格,信奉的理由也很简单,做为开源方向的童鞋来讲,Linux内核开发遵守的规范“你值得拥有” 🙂 ,应该C和C++的童鞋一般都采用这种风格的比较多,当然PHP也有很多:)
风格二传说是Java语言开发规范用的比较多的,K&R style?who care? 阅读全文…
Java项目开发完后一般都需要打包成Jar文件布署到生产环境,通常我们使用Eclipse自带的 Export 功能就够用了,今天聊聊 Export 几个选项有比较疑惑的地方。
鼠标右键选择项目,点击 Export 项选择Java类别展开,这个时候很多同学会犯难,老师我是选择 JAR file 还是选择 Runnable JAR file 呢? 两个选项都可以生成JAR文件,但稍有不同,这里简单解释一下
JAR file 项简单地将编译好的 .class 文件打包,运行的时候我们使用 java -cp 要执行的类名 命令, -cp 参数指定包名和要执行的类名(需要包含完整的命令空间),如果有依赖第3方包,还需要在 -cp 参数里指定依赖包名
Runnable JAR file 则在生成的时候指定执行的时候先执行哪个类,运行的时候使用命令格式 java -jar 包名 ,具体是由于MANIFEST.MF文件指定了相关参数,所以执行的时候不必关心首先要执行哪个类,另外在导出的时候可以指定要包含的第3方包文件,可以将第3方包打包在一起。
阅读全文…
最近一个小项目搜索功能采用了Sphinx作为搜索引擎,结合mmseg中文分词效果不错,有兴趣的朋友可以试一下.另外国内已经有专门针对中文分词进行优化整合的项目coreseek,基于Sphinx和mmseg,就是版本稍微低了点,免费版基于Sphinx 0.9.9 release,对于新特性要求不高的同学可以试试
Sphinx搜索结果匹配效果与分词有比较大的关系,理论上词库越大匹配精度越高,可惜网上能找到的mmseg格式词库真心不多,自己一个个收集整理也不大现实.coreseek自带的中文词库大概有10万条的样子,试了一下只能说差强人意,很多专业词汇还有一些网络新名词基本上没有收录,也难怪估计很久没有更新了.
还好让我终找到了搜狗输入法的搜狗细胞词库,词库是按专业分门另类进行整理的,而且还支持用户上传自定义词库.可惜都是scel格式的,而mmseg提供的词库生成工具只支持txt格式的,不能直接使用.
万能的github竟然让我找到了scel转换为txt格式的工具,果断fork下来,稍做修改一个完整的思路出来了:搜狗细胞词库>>txt>>mmseg词库
fork下来的脚本修改后支持批量转换为单个词库,Python写的简单脚本
脚本地址:https://github.com/aboutstudy/scel2mmseg
附赠个本人整理的词库,收录近100万词汇:收录100中文词条的mmseg格式词库