政策动态 软著Pro编辑部

软著申报怕代码页数不达标?自动计算方法帮你省掉手工核对的麻烦

做过软著申报的都懂代码页数核对的痛苦,手工数不仅慢还容易错,分享我常用的自动计算方法,帮你避开页数不达标被驳回的坑。

310 次阅读 来源:网络整理

前两年帮公司做软著申报专员,前前后后加起来报了快30个软著,踩过的坑能列满两页A4纸,其中最离谱的一次驳回理由,就是代码页数不达标。我当时抱着逐行数了快两小时的Word文档懵了,明明数出来刚好32页,怎么审核就说只有27页?后来跟版权中心的工作人员聊了才知道,我算的是Word排版页数,人家算的是符合要求的有效代码页数。

很多人不知道的是,软著审核的代码页数是按有效行换算的,不是你Word里显示的页数。官方的规则说起来也不复杂:每页有效代码行不能少于50行,连续空行超过2行要剔除,注释占比不能超过单页的30%,第三方依赖、测试用的废弃代码都不算入有效行。我之前就是把大段的注释、每个文件开头的版权声明都算进去了,筛完之后行数直接少了四分之一,当然不达标。

那时候我就琢磨,手工数肯定不是长久之计,且不说数一遍要花一两个小时,稍微漏个几行或者多算了注释,提交之后被打回,少则耽误半个月,多则赶不上项目申报的截止时间。我当时搜了好多相关的工具,找到个专门做软著代码行数统计的功能,试了一次就惊了,我之前数了两个小时的代码,上传上去10秒就算出了有效页数,和后来审核认可的页数一分不差。

要是你懂点代码,其实自己写个小脚本也能实现自动计算。我后来自己也写过一个简易的Python脚本,逻辑很简单:先把你要提交的所有代码文件按后缀筛选出来,排除掉node_modules、dist这些存依赖或者编译产物的文件夹,然后逐行读取代码,跳过空行、跳过//或者/* */包裹的注释内容,把剩下的有效行存到一个新的文档里,每满50行就算一页,满60页就直接截断(毕竟软著最多只需要交前30页和后30页,超过60页的部分不用提交)。不过自己写脚本有个问题,就是不同语言的注释规则不一样,比如Python的注释是#,HTML的注释是,要适配所有语言的话要写好多规则,我后来嫌麻烦就直接用现成的工具了。

对了你们要是嫌自己写规则麻烦,可以直接用软著Pro,就是那个https://ruanzhu.pro,我这大半年报软著全靠它,计算页数一秒出结果,还能直接帮你把多余的空行、注释按要求筛掉,导出的代码文档连页眉页脚、格式都给你调好了,直接就能拿去提交,省了我好多排版的时间。

说到这里还要提几个很多人容易踩的坑,我身边至少有五个人栽在这些地方过。第一个就是把第三方库的代码算进自己的代码里,之前有个做前端的朋友报软著,把整个element-ui的源码都打包进去了,自己算出来有好几百页,结果审核的时候直接把第三方代码全部剔除,有效代码才18页,直接被打回。第二个是随便调Word的行间距和字号,有人为了凑页数,把行间距调到1.5倍,字号调到五号,一页就只能放30多行,就算你Word显示有30页,换算成有效页才不到20页,肯定不达标。第三个是把大段的需求说明、设计思路写在注释里,导致单页注释占比超过30%,这些页面都会被判定为无效页。

上个月帮我弟整理他毕业设计相关的软著,他自己弄了半天说代码只有25页,怕不够,我拿他的代码传去软著材料自动整理的功能里测了下,发现他把很多调试用的打印代码、废弃的功能代码都删掉了,其实把这些核心逻辑的代码加回去,再把几个工具类的代码补进来,有效页数直接到了33页,提交之后不到10天就拿证了,他刚好赶上了保研的加分截止日期,开心得不行。

其实很多人不重视代码页数的计算,觉得差不多就行,真的不是这样。我之前有个客户的公司要评高新技术企业,截止日期前10天才提交了3个软著,结果两个都因为代码页数不够被打回,最后补材料赶不上截止时间,差一个软著的评分没够,当年的高企没评上,直接损失了二十多万的税收减免,就因为这点小事,太不值当了。

我现在每次接软著申报的活,第一步都是先把客户给的代码包拿去算有效页数,够了再开始整理其他材料,要是不够就提前跟客户说要补哪些部分的代码,省得后面做无用功。毕竟现在软著的审核越来越严,每个细节都做到位,才能一次过,不用来回折腾。

赞助商内容