跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 新人如何看懂公司项目代码
未分類
6 4 月 2020

新人如何看懂公司项目代码

新人如何看懂公司项目代码

資深大佬 : TowerLi 13

某国企工作,接手一个 2016 年的项目,当时是由一个外包公司人员和前一个同事开发(目前都已离职),现在要二次开发。

目前情况是,有源代码,但是没有项目文档,环境也不清楚怎么样,网络和数据库啥的,项目跑不起来,也不知道问谁。现在想啃这个源代码,实在是啃不动,很多封装的方法,自定义注解之类的,看不懂有点痛苦,有啥好的办法吗?

大佬有話說 (71)

  • 資深大佬 : liuxey

    2016 年的项目有可能是 2006 年的架构,这个情况不要死磕,向上级反应寻求外援,最好找到之前的开发人员

  • 資深大佬 : lhx2008

    先想办法跑起来

  • 資深大佬 : Zhangxiaopa

    先想办法跑起来

  • 資深大佬 : Nathanzheng

    先想办法跑路

  • 資深大佬 : shiguiyou

    先想跑路

  • 資深大佬 : zhengjian

    先想办法跑

  • 資深大佬 : ice2neet

    先想办法跑路起来

  • 資深大佬 : yalin

    能问则问,能搜则搜( Google or IDE 全局搜索),尽可能的了解这个技术架构,能本地调试最好

  • 資深大佬 : uxstone

    跑路

  • 資深大佬 : clayyj1210

    先跑

  • 資深大佬 : berumotto

    想办法跑起来,先看用了哪些框架,如果有框架好办,去找框架的文档,没框架或自写的就比较麻烦

  • 資深大佬 : huntcool001

    离职吧… 这种入职面试的时候就要问清楚

  • 資深大佬 : Leigg

    没文档没交接基本不用想了

  • 資深大佬 : xuanbg

    外包出去

  • 資深大佬 : miaoxinwei

    代码量不多的话 啃源码

  • 資深大佬 : mjy123456

    先跑

  • 資深大佬 : yukiloh

    哈哈哈哈跑起来…………

  • 資深大佬 : ClericPy

    跑的起来你还能单步调试走一波

    跑不起来是怎么交接的… 话说你这问题的难度, 就像一道面试题一样开放

  • 資深大佬 : paradoxs

    报错显示什么,截个图丢上来看看。

  • 資深大佬 : murmur

    资金到位不,如果生产还能跑的话可以把 tomcat 直接拷过来,如果生产挂了的话就呵呵了

  • 資深大佬 : nianyu

    给你时间一点一点看还行 慢慢整理逻辑
    不给时间或者给的时间不够基本无解, 你根本不知道以前的业务逻辑 代码逻辑是什么样的. 有许多临时 hack 一下的代码,你不知道业务根本理解不了为什么这么写

  • 資深大佬 : 312ybj

    我目前在改同事离职的 bug,写得跟狗屎一样,半点逻辑没有,他是写不下去才跑路的。 我在他跑路前问清楚了配置项的意义(半点注释没有,全是重复代码),现在还在改。
    你先把项目运行起来,然后走根据功能进行搜索, 前台访问的接口肯定在后台有对应 ,ctrl + 可以根据 URL 快速定位代码位置( idea 中),F11 可以在 idea 中加入 Bookmark,shift + F11 可以查看所有书签, 反正就是慢慢啃

  • 資深大佬 : Mrun

    跑不起来看懂个啥?

  • 資深大佬 : leahoop

    跑

  • 資深大佬 : violetlai

    一步一步跑 然后重构

  • 資深大佬 : iamnotarobot0

    先找文档
    再找人,讲解一下大概的架构
    实在不行,再看代码,上手调试,写单测,重构

  • 資深大佬 : nicebird

    两个人也没多大代码量,看个几天就差不多了吧

  • 資深大佬 : annielong

    目测可能是 java

  • 資深大佬 : wizardoz

    先把业务搞清楚,业务了然的情况下去看源码应该不难。
    如果想通过看源码来了解业务,本人不敢想,厉害一点的可能可以。

  • 資深大佬 : otakustay

    别看,去修几个 BUG

  • 資深大佬 : pushback

    跑(路)起来

  • 資深大佬 : pushback

    憋说了,今晚上就长跑十公里

  • 資深大佬 : hakono

    方向错了,看代码之前你首先得要把整个业务流程搞懂了再去看,一切代码都是为业务服务的,这样才能搞懂项目里那匪夷所思的代码是干嘛的。

  • 資深大佬 : nightwitch

    跑不起来还说什么。 至少要能确认手上的源代码和线上的是符合的吧,万一手上的代码落后线上的几十个版本你怎么搞

  • 資深大佬 : gaigechunfeng

    祖传代码确实比较痛苦

  • 資深大佬 : lithbitren

    碰到过没有文档的祖传代码,十几级的调用栈都可以接受,看懂了,勉强全部重构了。
    后来碰到了几十级甚至更多的调用栈,直接放弃阅读了,独立于黑箱打补丁造轮子拉倒了。

  • 資深大佬 : polo3584

    跑得起来修修补补还行,跑不起来就放弃了

  • 資深大佬 : ob

    上的要笑死人,哈哈,先找到 main

  • 資深大佬 : darksword21

    先花一周时间跑起来,然后需要写什么看看有没有类似的写过的 ctrl v 过来改。。 没别的招感觉。2016 年,那架构确实可能是 2006 或者 2001 的

  • 資深大佬 : oneisall8955

    打码贴一下图?给各位老哥看下目录,猜测是什么后端什么前端才有的说

  • 資深大佬 : Acoolda

    先跑起来,再慢慢改

  • 資深大佬 : linvon

    里的评论越来越….

  • 資深大佬 : IvanLi127

    找一个同事,一起吐槽

  • 資深大佬 : fixend

    我接过一个维护了十多年的项目,无数人接手过,而且都是毕业生接手的,代码极恶劣,无文档,无注释,无 svn 提交记录,各种不知为何注释起来的代码,重复类似功能的函数,大量永远不会调用的代码,变量一堆 a,b,c 这样命名。

    修了两个严重 bug 后,我看不都不看,直接整个重新写了,还好项目不大,二十几万行,重写后十万行不到。

  • 資深大佬 : marcomarco

    要先明确一点,你是来上班挣钱的,你懂吧?

  • 資深大佬 : zhw2590582

    这就非常累了,跑吧

  • 資深大佬 : iidestiny

    先删库后跑路

  • 資深大佬 : hankli

    跑路吧

  • 資深大佬 : AkiseAru

    先跑路,这样没人交接很累啊

  • 資深大佬 : hahaayaoyaoyao

    要外包吗? 我帮你重写一个

  • 資深大佬 : kiracyan

    先跑起来 ,再了解业务。不过让你接手的项目居然跑不起来,跑路的优先级比较高

  • 資深大佬 : Felldeadbird

    问人是肯定要的,除了问题,自己也要先在本地调试运行成功,根据 IDE 或者编译器 提示的错误信息 去修复好错误。项目跑起来了,就好做二开了。

  • 資深大佬 : weipt

    如果以前的资料不全,那就靠你的经验了。
    如果你的经验不足,那就跑路吧

  • 資深大佬 : VictorJing94

    先找入口,从 homepage 看或者 main 函数看起,一手梳理业务一手梳理 db

  • 資深大佬 : zhjie

    啃得动是本分,啃不动就炒你。
    最好用的办法就是逃避。

  • 資深大佬 : arvinsilm

    建议列一堆致命性问题(可以随便编,反正也没人懂这个项目了),然后要求做一个新项目,不做二次开发。问题可以往安全性上靠,国企现在很在意这个。当然能不能撑得住,会不会背锅要你自己评估

  • 資深大佬 : paoqi2048

    快逃!

  • 資深大佬 : keelng

    这种情况说服领导放弃就完了,自己重新组织团队写一个更省时省事,修改一个完全没有任何资料支撑的项目,改到你想 s

  • 資深大佬 : silencil

    我这 200 多兆的项目也没有文档,还好跑起来了

  • 資深大佬 : zhouwei520

    如果有源码你看不懂的话,大概率你是无法重写的。
    框架方面建议使用谷歌搜索,一般都是套的别人的框架重构的。
    从业务到代码,多找业务问清业务流程,然后对照代码看。

  • 資深大佬 : paulee

    找人跑起来,跑不起来的项目基本没法看;如果非要看,先找入口文件、配置文件(这都是建立在架构合理的情况下)…

  • 資深大佬 : purensong

    看评论都说跑路的,我想问你们自己遇到也跑路吗,为什么不能先努力一下,至少把数据库删了再跑,避免坑害后人

  • 資深大佬 : TesterCC

    看下能不能本地搭建开发环境跑起来,能本地跑起来的话还能再折腾下,不能的话参考前面朋友们的套路吧

  • 資深大佬 : laike9m

    @fixend 这个量级的项目你一个人重写工作量也相当大啊

  • 資深大佬 : xingyuc

    @huntcool001 这种你搞懂了就稳了,除非他换系统

  • 資深大佬 : ytmsdy

    0.先跑起来,
    1.用户登陆开始看,跟踪整个 URL 配置,函数逻辑,数据库连接方式
    2.看看系统里面有没有查询模块,如果有那就到具体的页面,然后熟悉一下整个数据结构。
    3.修改的话,千万不要在老方法上做修改。最好的办法是把原来的函数复制一份,然后在函数入口上做相应的区分。
    万一出问题,直接把函数名字改回去就恢复了。

  • 資深大佬 : spadger

    传说中的屎山?

  • 資深大佬 : sunriz

    重构·代码整洁之道

  • 資深大佬 : cpstar

    能看源代码就好办了。甚至还能反演出开发者的思路。
    我经常干这种事情而且乐此不疲,还能在某些混淆了源码的地方找出一些端倪。

    方法很简单,就某个场景,逆向运转系统,调用关系一个一个捋。

    总之一件事:耐心。

  • 資深大佬 : cpstar

    https://page.cpstar.cn/post/zuo-yi-hui-ma-nong-meng-xiang-de-hacker/

  • 資深大佬 : encro

    你用了一个合格的 IDE 吗?
    你了解业务了吗?
    你熟悉代码基础语法了吗?
    你会搜索吗?

    如果以上回答是,你可以自己慢慢看代码了,
    如果回答否,那么是不可能看懂的。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具