最近黑客利用npm、pypi等开源组件分发平台,投放恶意程序的新闻报道在增多。主要还是针对javascript、python等开发者,针对Java开发者的投毒倒是比较少见,可能跟不同语言框架的生态环境有关,Java开发使用的组件集中度比较高JS、Py的主要用在前端开发、脚本开发,需要更高的灵活性,使用的组件会更广泛,如果做这类开发,大家在使用开发组件的时候,还是自己多检查。

其实,绝对安全的代码是不存在的。世界上没有人能百分百保证他的代码没有问题。就像我们在测试时追求的不是零bug一样。当然,通过一定的努力我们是可以写出相对安全的代码的。我们完全可以避免绝大多数常见的漏洞,使你的程序尽可能的安全。避免大的损失和信息的泄露。我认为要想写出高质量的安全的代码有以下几个要点:第一,跟自己的编程习惯有很大的关系。

第二,跟程序员的安全意识有关,如果程序员觉得代码安不安全跟他无关,没有安全意识,那他是无论如何也写不出安全的代码的第三,需要有严格的检查措施,来保证程序安全方面的要求。比如可以专门设置经验丰富的测试人员来检查源代码。但是这需要大量的人力事件成本。对项目的推进会有很大影响。据我所知,大多数企业都采用源代码应用安全扫描软件来完成这部分的工作。

《thinkinginjava》这本书一定要看,学JAVA语言不看这本书是不可以的,当然如果你只是想应付考试那算我没说。JAVA是一门理论性很强的语言,你在学习过程中不要只注意学习程序,最主要的是学习思想。因为JAVA是开源的东西,你可以看到源码,所以你要多看看别人的代码,同样看别人代码的同时也要注意看思想,不能只看程序实现。
一个人对自己的严格程度决定了他能走得有多远,在学习期间让自己养成一个良好的提升习惯,你将受益一生。至于学习方法呢,你要先自下而上,也就是开始的时候一定要多练习,老师讲的东西一定要亲自做,甚至书上的每个例子都要做,还不是做一遍就完。在自己做的过程中要善于总结,要经常想能不能更好的实现,当你做到一定程度的时候你会发现自己存在哪些知识上的不足,哪些技术上的欠缺。