[请益] 请问要怎么改老旧的程式码?

楼主: a88241050 (再回頭已是百殘身)   2018-03-03 16:00:38
最近在做一个银行的专案
要把上百个10几年前的C++程式改用java写
但看了很久还是不知道该怎么下手
程式码上百行甚至上千行都有
而且里面会用到很多struct或class变量
某些struct又包含了10几个struct
而这些变量都是定义在其他的标头档里
然后每个标头档除了struct和class之外
还包含一堆#ifdef,#else,#endif
简直看得眼花撩乱
真的不知道为什么可以写得那么复杂...
因为我对C++不是很熟
所以不知道里面的很多写法改成java应该怎么做
有人能建议我应该怎么下手吗?
3Q
https://i.imgur.com/3gwV0fm.jpg
https://i.imgur.com/Q5QxcBE.jpg
https://i.imgur.com/TRGPuf3.jpg
作者: diabloevagto (wi)   2018-03-03 16:02:00
写测试
作者: remmurds (Stronghold)   2018-03-03 16:14:00
如果原始需求是啥都没人知道是要怎么写测试
作者: dreamnook (亚龙)   2018-03-03 16:18:00
资料流 逻辑流 或是纯粹找前辈问商业逻辑整个重构
作者: s89162504 (阿本)   2018-03-03 16:19:00
八挂是真的有人在用dev c++
作者: dreamnook (亚龙)   2018-03-03 16:20:00
大概是学生(大误
作者: sojoasd (sojo)   2018-03-03 16:36:00
如果知道100%原来逻辑,再从这些逻辑先写单元测试,再依照页面上的操作取得需要的函式组成Controller........如果原来逻辑不清楚,需要用原程式去猜测的话,你还是块陶吧
作者: abccbaandy (敏)   2018-03-03 17:10:00
能知道原始逻辑原PO大概也不会上来问吧XD
作者: erspicu (.)   2018-03-03 17:13:00
不用重写了拉...看功能用途整个重新设计比较快....风格差异太大 语法改写很僵硬 干却重新规画好
作者: testPtt (测试)   2018-03-03 17:19:00
要用IDE看阿 macro没作用的比较好辨识
作者: blueminor (QQ)   2018-03-03 17:20:00
之前我们公司做过类似的,但是是把VB换java。工程非常浩大
作者: ab18282099 (poppopjack)   2018-03-03 17:30:00
干脆重头开发
作者: pttworld (批踢踢世界)   2018-03-03 17:35:00
先想办法生个source insight,目前这样太痛苦
作者: noenemy (要写程式找我^^)   2018-03-03 18:16:00
先问主管有多少时间,如果只有一个月,只能重新设计
作者: ChungLi5566 (中坜56哥)   2018-03-03 19:18:00
通常都谈提升案重写吧 旧程式一堆bug修修补补看不懂正常的
作者: kckckckc (KC)   2018-03-03 22:06:00
跟业主说我看这个架构根本太糟了 我帮你新写一个 不多收
作者: MBRSL (MBRSL)   2018-03-04 00:11:00
Working Effectively with Legacy Code
作者: alog (A肉哥)   2018-03-04 04:50:00
做这个仅能重新设计,但是最惨的是分析规则、流程你大概会疯掉而且公司可以给你做前置作业的时间应该不会太长,更可怕的是里面应该会是那种将错就错结果却对了,以及新系统上线旧系统的资料转移处理跟测试时间可能比预期的久或是有客户的客户反应有资料错,用户多这个部分的处理成本就会相当可怕看到这个,仅能祝你跟公司好运 (笑
作者: MNPGG (SMI)   2018-03-04 07:18:00
推用source insight
作者: oneheat (等待)   2018-03-04 09:58:00
学android 外面包一层jni 就不会改到原本的了
作者: becca945 (频果芽子)   2018-03-04 11:15:00
10年后没什么人用的dev c++ ˊ_ˋ
作者: vi000246 (Vi)   2018-03-04 11:44:00
外面再包一层把丑程式码藏起来 至于重构嘛....只好交给下一位同事了
作者: alex0914 (Life is short)   2018-03-04 17:22:00
虽然看起来只有引入部分,但公布程式码不太好吧
作者: cobrasgo (人鱼线变成鲔鱼线,超帅)   2018-03-04 19:36:00
你有问过要改成java的原因吗?说不定根本不用动原本的code,用java写个wrapper呼叫就可以了
作者: newversion (海纳百川)   2018-03-07 18:10:00
砍掉重练
作者: wesley234 (扫地)   2018-03-09 20:09:00
先C++ 后 JAVA, 人间惨剧

Links booklink

Contact Us: admin [ a t ] ucptt.com