背景
刚刚入职 4 个月的菜鸟 python 程序猿。算法方向的,公司较小,一般来讲是一个人单独负责一个小项目,所以我这边和开发走的流程不一样。不需要产品,因为他不懂我能做什么,我只要能完成需求就好了。我开发完直接自己测试,没有问题就可以上线了。没有 code review 之类的。
去到大厂的同学告诉我,去到先学安全,规范等等。比如数据库密码不能写在代码里,会直接走人的(我这边导师就这么干的)。再者像变量名字怎么取,怎么缩进,或者只要调用了一个别人的函数,就要知道其内部的实现,是否有潜在的安全或者性能问题。等等
我现在全是按照自己学校里那套野路子来的,导师也不管我,唯一来问的事就是什么时候上线。大约 2 个月的时候开始重构了自己的代码,异常痛苦,开始注意到规范,注释的重要性。
目前的困惑
1.现在没有很多的项目经验,对于一些高级的实现方式,例如各个模块的组织,怎么设计耦合性比较低,扩展性比较好,传参的标准是越多越好呢,还是越少越好,哪些应该写成一个单独的函数,结构看起来最清晰。同样的逻辑,有没有更优雅的实现。完全没有思路,全凭自己摸索。因为没有人看我的代码,直接就上线了。
2.领导都不是做算法的,只是稍微看过一点,算法水平比不上我们应届的,代码能力比我们好,但是也不会带我们写代码,也不会看我们的代码,说哪里有问题,天天就是安排任务,催进度。让我们找开源的代码能跑通,效果可以就上线。感觉越来越像一个调包工程师,算法方面周围也没有看到能带我提升的人。
目前的困惑
怎么学习到一些好的设计思想,写出的代码质量高一些?内行人看了觉得还可以,不至于野路子的感觉。