真实工作中的编程和在学校有何不同
真实工作中的编程和在学校有何不同
文档:
学校:口口相传
工作:别人都用Markdown写文档,快把你的Word收起来……
delay:
学校:deadline之前搞定了就好,先休息半个月再说
工作:每天都要发项目日报,你的老板和你老板的老板都盯着呢……
联调:
学校:自己和自己联调,左右互搏……
工作:我:##¥¥%!……&*!! 对方:没听懂……
需求:
学校:定期和老师汇报进度就行,需求一般不会发生变化
工作:时常会碰到来求助的运营MM
故障:
学校:就算真的遇到了,顶多挨顿骂
工作:这个季度的kpi又悬了……
上级:
学校:才不管你怎么实现的,也不会看你代码,能用就好
工作:不但会问你怎么实现的,也会review你代码,还会强行让你用一些新技术……
代码复用:
学校:复用全靠写函数
工作:就算跨项目也要强行复用……
造轮子:
学校:轮子是什么
工作:这个季度造个什么轮子吹比呢……
bugs:
学校:以空指针居多
工作:只有想不到,没有遇不到……
吐槽:
学校:好烦啊,做了这么多事情一点好处也没有
工作:运营又说改版了,之前的代码可是PHP的啊,确定这样也能改版?
项目:
学校:基于XXX的XXX系统的设计
工作:商家处罚中心
工作来源:
学校:老师或者是自己
工作:产品或者运营
工作内容:
学校:实现完整的项目
工作:实现完整项目是少数情况,大部分是新增功能需求
开发之前:
学校:打游戏看电影刷知乎拖延一下
工作:开会评审需求,分配工作
开发人数:
学校:前端后台产品设计全是自己
工作:前端2两人,后台3人,产品一人
代码:
学校:所有代码自己搞定
工作:只负责规则模块
规范:
学校:实现功能就好,代码写成什么样不重要,从来不写任何注释,代码之后自己刚写完的几天才能看得懂
工作:每一个模块都需要完成相应的单测,并且增加测试通过。代码需要简洁美观,变量、类等命名严格遵守驼峰命名法,需要附加完备的注释
框架:
学校:框架是什么,实现功能就行
工作:公司对各个功能(例如链接数据库等)进行了封装,*要使用相应的框架
封装:
学校:为什么一定要面向对象,怎么简单粗暴怎么来
工作:进行一定的封装是*的,要考虑代码的复用性,尽可能避免代码冗余。差的封装是会被吐槽的
debug:
学校:肉眼,偶尔使用工具,一碰到蛋疼一下午
工作:使用工具,流程化排查问题
疑难杂症:
学校:自己蛋疼摸索,直到放弃向研究生师兄请教
工作:蛋疼摸索一会,请教大牛
发布:
学校:随意发
工作:每次发布需要请示老板,你多发几次试试……
review:
学校:review是啥……
工作:发布之前*review,被挑到刺打回去再正常*
maven:
学校:maven是啥……
工作:每个模块的打包发布都有严格的流程,maven依赖*要仔细,否则很容易遇到问题,有专门的工具对maven依赖进行检查
git:
学校:coder只有一个,用git干嘛……
工作:git的命令牢记于心,stash,merge,checkout花式命令,键盘敲起来
氛围:
学校:开发累了,打会游戏休息一下
工作:老板就在旁边,你打个游戏试试……
设计模式:
学校:闻所未闻
工作:原来这种方法这么机制,赶快学一下,以后说不定能用上
其实,实际工作中的编程和学校不同,体现在下边几个方面:
工作之后的代码量远没有学校时大作业那么多,但是要更严谨;
但是你要面对很多遗留代码,你要把它们弄懂,不像在学校里你基本都是从头造轮子;
同事们都是八仙过海,各有所长,无论你在学校里是当大腿还是抱大腿,在公司大家都对公司有着这样那样的贡献;
你不可能什么都会,工作才是学习的开始,大学生活只是让你准备好;
除了代码和技术,你还要考虑业务知识、测试、质量、生产效率和可持续性;
机会总是有的,你要做的只是准备好;
学校所学的非常有用,但是理论和实践有着巨大的鸿沟,这全靠你的经验和工程感
更多培训课程,学习资讯,课程优惠等学校信息,请进入 福州IT培训福州鼓楼区php培训福州台江区java培训 网站详细了解,免费咨询电话:400-998-6158