资讯专栏INFORMATION COLUMN

在公司做的项目和自己在学校做的有什么区别?

Freelander / 3526人阅读

摘要:文本已收录至我的仓库,欢迎不知道大家还是学生的时候有没有这个问题公司做的项目和自己在学校练手的项目有多大的区别。总的来说,我实习的总时间也快半年了,谈谈我觉得公司项目和自己练手的项目有啥区别,欢迎补充。

前言
只有光头才能变强。

文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y

不知道大家还是学生的时候有没有这个问题:公司做的项目和自己在学校练手的项目有多大的区别。我以前在学校跟着视频做一些项目练手,总感觉公司做的东西会要难很多,不知道跟公司的真实项目区别在哪。

总的来说,我实习的总时间也快半年了,谈谈我觉得公司项目和自己练手的项目有啥区别,欢迎补充。

一、区别

在视频练的项目大多数都是由讲师在本地编码来讲解整一个项目的开发过程,而我们去到公司做的第一件事是啥?把项目clone(checkout)到本地来看。

这就有两个区别:

去到公司往往不是从零开发一个项目,项目的框架和代码都已经写好了。我们更多要做的就是迭代这个项目(或者说修复这个项目原本就有的Bug)

一个项目往往都会有几个人进行开发,这就肯定要用到版本管理工具(SVN/Git)。所以,去公司做项目之前最好是提前去学学Git/SVN这些工具的使用

比如说,我们使用Git的时候,要修改代码的时候会新建一个分支,改完了再合并到master分支上。

好了,现在项目已经在本地上了,那我们要将项目在本地上启动起来吗?这得问同事。在公司做项目,一般都分了好几个环境

线上(现在正在给用户用的)

测试(写完功能,先看一下在测试环境下有没有问题,没问题才发布到线上环境)

...等等(可能名字叫起来不一样,但不可能在本地上写完的代码直接就放到线上去跑了)

有的时候,可能环境过于复杂(各种系统相互依赖),clone(checkout)下来的项目就很难在本地上启动起来,或者说在本地上的数据跟线上的数据差距太大了(比较难看出效果)。所以,有的时候可能就不用在本地将项目启动起来。

那问题来了,我写完的代码怎么调试啊?我们可以这样干的:将本地写好的代码push到测试环境,然后本地远程连接测试环境,对其进行调试。

还有,我们自己做项目的时候,try-catch完了之后,习惯可能就e.printStackTrace();

但公司的项目不会有e.printStackTrace();这种代码的存在。因为这打印出来的错误信息没有日期、等级等等,分析起来不方便。

在公司一般将错误的信息(或者有用的信息)写到log(日志)中。

比如说:LOG.error("send java3y article failed, {}", e);

于是,一般出现了问题,我们先去登上机器,查一下日志的信息是怎么样的。而登上线上的机器上,也不是直连的,会经过一层堡垒机。堡垒机是做啥的?

每次登录线上的机器都要ssh xxxxip  到堡垒机上,然后再到堡垒机上输入线上机器IP连接,着实麻烦。于是大佬们就会写自动登录堡垒机,直接输入IP到线上的脚本

于是乎,我们就登录到堡垒机上,然后再连上线上机器就去查看日志了。查看日志怎么看?

直接cat console.log吗,那得找到什么时候啊?

vim console.log吗,我想根据某个关键字来查怎么在vim上操作啊?如果log文件太大了,vim打开太卡了怎么搞啊...

所以,常用inux命令还是得学学的呀

https://www.cnblogs.com/xiashan17/p/7059978.html

https://blog.csdn.net/qq_31617637/article/details/71426904

还有一点就是,在公司开发都要申请权限才能对数据库/机器/各种资源进行操作。而不像我们个人开发各种root权限,数据库各种DDL/DML随便玩。

DML/DDL数据库操作都要申请权限,发布代码到线上也要申请权限,想要去线上的机器上查看日志也要权限.....
最后

总结:

版本控制工具

远程连接Debug调试

不再使用e.printStackTrace();,而是log.error()来替代

各种权限都需要申请和审批

乐于输出干货的Java技术公众号:Java3y。公众号内有200多篇原创技术文章、海量视频资源、精美脑图,关注即可获取!

觉得我的文章写得不错,点

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/75337.html

相关文章

  • 结束了我短暂的秋招,说点自己的感受

    摘要:总体来说,玄武科技的真的很热情,为他们点个赞,虽然自己最后没能去玄武科技,然后就是技术面非常简单,面和高管面也都还好,不会有压抑的感觉,总体聊得很愉快。 该文已加入开源文档:JavaGuide(一份涵盖大部分Java程序员所需要掌握的核心知识)。地址:https://github.com/Snailclimb... 秋招历程流水账总结 笔主大四准毕业生,在秋招末流比较幸运地进入了一家...

    KoreyLee 评论0 收藏0
  • 大龄程序员~聊聊我毕业十年的生活

    摘要:第五家公司沉淀期恰好这时候机会又来了现在在职这家公司的部门经理在我前同事前公司同事离职后来了现在这个公司的推荐下和我沟通了一下。       目录 前言 一   大学阶段 二     实习阶段 三     工作阶段 1.第一家公司-学习期  2.第二家公司-转型期  2.第三家公司-质变期 ...

    yacheng 评论0 收藏0
  • 前端面试系列--前言篇

    摘要:这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里文章目录前言说明准备方向目标前言说明作为半个科班出身学数学的应届生,在学习计算机的时候还是比较吃力的,从今年月份开始接触前端,到现在也有个月左右了。 这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里 文章目录 前言说明 准备方向 目标 前言说明   作为半个科班出身...

    sshe 评论0 收藏0
  • 前端面试系列--前言篇

    摘要:这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里文章目录前言说明准备方向目标前言说明作为半个科班出身学数学的应届生,在学习计算机的时候还是比较吃力的,从今年月份开始接触前端,到现在也有个月左右了。 这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里 文章目录 前言说明 准备方向 目标 前言说明   作为半个科班出身...

    zsirfs 评论0 收藏0
  • 前端面试系列--前言篇

    摘要:这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里文章目录前言说明准备方向目标前言说明作为半个科班出身学数学的应届生,在学习计算机的时候还是比较吃力的,从今年月份开始接触前端,到现在也有个月左右了。 这个系列的文章将记录我准备春招的整个过程,我会将自己学习到的新知识记录在这个系列里 文章目录 前言说明 准备方向 目标 前言说明   作为半个科班出身...

    Freelander 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<