2019.8.16
我眼中的一般程序员三个阶段:
初级:初级调包程序员/初级写包程序员
我属于这一块,纵观我写的三个程序,普遍都是放在一起。用什么拿什么,实现功能堆起来就行了。怎么做自己的事情功能实现就好了。查资料+写代码。往往做完才想到把代码整理整理规范一下。
高级:规划产品代码结构,选择什么框架。给初级程序员分配要做的事情。考虑产品的扩展,复用,安全,方方面面(架构师?)写规则。开局做好。
顶级:。。。
初级程序员的复盘:
1.分析自己要做什么,实现什么功能,怎么把代码堆出来
2.
功能1.显示预览
功能2.框选人脸
功能3:预览图与本地图像比对
3.很惭愧3个小小的功能我写了9天。
回忆自己这9天做了什么,
第一天下载opencv4android
第二天运行demofacedecetion,看源码如何实现。同时导师给出要求
第三天尝试在源码改动和实现功能(成功)导师不建议
第四天尝试新建开发环境(失败)。吐槽,同时请教导师思路。
第五天自己实现相机预览(成功)
第六天集成opencv开发环境
第七天得到人脸数组实现画框。
第八天使用opencv的比对函数。
第九天(明天)收尾:让界面变得好看一点。

总结:优化方面有很多,接入图片数据库,如果图片多了,如果多线程,如果....

打了两年半游戏,现在回顾一下实习这三周,这些用到了数据结构,算法吗?有而且方方面面都有。面向对象各种都有。。。后悔当时上课吊儿郎当,如果就靠这些项目经历也许我就只能去个公司做个开发了,那我也是可以接受毕竟游戏是自己选的嘛。
但是回顾大学课程(只说我通过实习有点感觉的课程):
1.
高数+概率论=算法的数学理论
编程语言+算法+数据结构+线性代数=算法的代码实现
离散数学+编译原理=高薪就业。
上面学好=高薪职业而且吃香,算法岗NB,很抱歉我无缘(高数渣,不刷acm,离散编译原理都听不懂)
2.
数据库+计算机网络+计算机图形学+数字图像处理+机器学习+计算机视觉
以上课程除了数据库好一点,其他的都是略懂。
上面1+2学好=抢着要
上面2学好=应用大佬抢着要
3.
英语,last but not least when you go to github or read the English docx you will find it out。

我:处于1中等+2中等的调包小子水平
如果秋招没啥好offer。就把2搞完。春招再战。
自勉2019.8.16