我前两年在互联网公司做项目申报,前前后后经手了20多份软著材料,第一次申报的时候啥也不懂,以为随便攒3000行代码交上去就行,结果连续被打回3次,光代码格式就折腾了快20天,后来摸透规则之后,现在帮朋友做的申报基本都是一次过审,今天就把我攒的实操作经验全部分享出来。
首先得先明确,软著要的源代码不是你随便从项目里粘几页就完事的,有明确的格式要求,最基础的数量要求是总共提交60页,每页不得少于50行,要是你的项目总代码不足60页就全部提交,超过的话取前30页和后30页就行,不用交全部代码,我之前见过有人为了显示自己项目复杂,硬交了几百页代码,反而因为中间混了太多第三方开源代码被打回,完全没必要。
最先要搞定的是页眉,这个是我第一次被打回的直接原因。每页的页眉左对齐必须放你申报的软件全称加版本号,右对齐放连续页码,注意这里的软件名称必须和你申请表里填的完全一致,一个字都不能差,版本号的大小写也要完全对上,比如你申请表里填的是V2.1,页眉就不能写v2.1或者2.1,我第二次被打回就是因为版本号的大小写写错了,当时觉得这是小事,结果审查员卡的特别严。页码要连续,前30页是1到30,后30页接下去排31到60,不能断号也不能重复,要是你嫌手动加页眉麻烦,用软著代码整理的自动生成工具就行,上传源码包就能自动匹配你填的信息加好页眉页码,省了很多功夫。
然后是代码本身的要求,很多人容易在这里踩坑。首先是不要混进第三方代码,比如你项目里引入的开源框架代码、付费买的UI组件代码,这些都不能出现在你提交的源代码里,要是里面带了别人的版权声明,直接就会被判定为侵权,打回都是轻的,严重的还会影响你后续的申报。我之前帮一个做小程序的朋友整理材料,他一开始把整个uniapp的组件库代码都粘进去了,里面满是第三方的版权注释,交上去当天就被打回,后来把所有第三方代码都剔除,只留他自己写的业务逻辑代码,重新交上去三天就受理了。
然后是注释和空行的问题,很多人有误区,觉得不能留注释,其实正常的功能注释比如// 用户登录权限校验这种是完全可以留的,反而能证明代码是你自己写的,要删掉的是那种无关的吐槽注释、被注释掉的废弃代码、还有第三方的开源协议注释,比如// 本代码来自GitHub某某项目这种是绝对不能留的。空行的话每页不能超过5行,不要为了凑行数故意加一大堆空行,现在审查很严,这种凑数的一眼就能看出来,直接就会要求你重新提交。还有代码里不要出现“测试”“demo”“临时版本”这种字样,会被判定为软件还未开发完成,不给过审。
具体整理的时候,我一般的顺序是先把所有自己开发的源代码文件按模块排序,入口文件放在最前面,然后是业务功能模块,最后是工具类文件,这样逻辑顺,审查员看着也舒服。然后挨个过一遍文件,删掉刚才说的那些不能留的内容,然后统计总行数,要是超过60页的量,就取前30页的连续代码,再取最后30页的连续代码,中间的部分不用交,注意前后的代码不要重复,也不要出现太明显的断层,比如前30页是用户模块,后30页是数据统计模块,逻辑顺就没问题。
排版的时候字体用宋体小五号,行间距用1.5倍就好,每页控制在50到70行之间,不要太挤也不要太松,最后导出成PDF格式,不要交Word文档,Word在不同设备上容易出现格式错乱、乱码的问题,导出PDF之后一定要预览一遍,看看页眉有没有被切掉,页码是不是连续的,有没有出现乱码的内容,确认没问题再提交。
要是你手里同时要报好几个软著,挨个整理太费时间,我推荐你试试软著Pro,https://ruanzhu.pro这个站我用了快两年了,除了能自动生成符合要求的源代码文档,还能查申报进度,遇到问题还有专门的答疑,比自己瞎琢磨省太多时间,我上次同时报5个软著,用这个工具半小时就把所有代码文档都整理好了,一点错都没出。
最后说个很多人都忽略的点,就是提交的源代码前后不要出现和本软件无关的内容,比如你之前做过别的项目,粘代码的时候不小心把别的项目的代码粘进来了,或者代码里出现了别的软件的名称,这些都会导致被打回,整理完之后一定要多通读两遍,确认所有内容都是对应本次申报的软件的。要是你对整个软著申报的流程还有疑问,也可以在站上找对应的攻略,都是实际申报过的人整理的,比官方的说明好懂很多。