作者leicheong (睡魔)
看板Soft_Job
标题Re: [讨论] 主管不认同书本的知识,说我没学好程设
时间Sun May 8 14:43:53 2016
※ 引述《ADYex (宠物狼音树)》之铭言:
: 例如,假设在一个租书店的程式中有以下程式码:
: BookPreservation bookPreservation = new BookPreservation(
: "Jack", "1433717", "2016/5/8", "2016/8/8");
: 其中4个参数分别为 userName, userId, startTime, endTime,
: 比较好的作法是将各自相关联的参数各自包装,变成:
: BookPreservation bookPreservation = new BookPreservation(
: new User("Jack", "1433717"), new TimePeriod("2016/5/8", "2016/8/8"));
: 这个重构手法能带来的好处如下:
: 1. 提升可读性
: 2. 未来维护简单
: 3. 容易因此将相关功能移入新造的class中,改善程式码分工
: 试着像这样将原作法的坏处与新作法的好处跟主管说看看吧。或是块陶。
这个的话还需要看在用甚麽程式语言吧.
像在VB和C# v4+上也可以这样写:
BookPreservation bookPreservation = new BookPreservation(
userName: "Jack",
userId: "1433717",
startTime: "2016/05/08",
endTime: "2016/08/08");
这样写比分拆成用property设定更好. 也是你之前说的「在初始化时设定」
和「先全部初始化成null, 在建构完成後再设定」的差别.
--
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.238.59.15
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1462689836.A.F5A.html
※ 编辑: leicheong (61.238.59.15), 05/08/2016 14:44:55
1F:推 wens: 是啊,不过能这样指定的是少数 05/08 23:11
2F:→ ykjiang: 所以跟语言有关... 05/08 23:44
3F:→ ykjiang: 不能这样用的语言,其实也可以把一个物件拆成多个小物件 05/08 23:44
4F:→ ykjiang: 藉此减少参数量 05/08 23:45
5F:推 lainhot0114: 写程式跟作文一样,文字的呈现也是种艺术 05/10 23:28