国外的同事来国内出差,趁着这个机会,邀请他跟我们一起进行 code review......
公司的代码没办法拿出来,只能临时写个伪代码让大家鉴赏一下:
/** * 代码鉴赏:执行 1 个任务 */public class JavaTasteSample { public static void main(String[] args) { // 国外同事:1 行代码就搞定,简洁明了 // ==(浪费了大量的时间在做过度设计,毫无意义的炫技)== new Thread(() -> System.out.println("task1 running...")).start(); // 国内同事:高内聚低耦合,把具体要执行的任务跟线程进行分离,方便扩展...... // ==(这老外太 low 了,连设计模式都不懂,估计不会写代码)== new Thread(new Task(new TaskInnerSupport())).start(); }}interface TaskInner { void execute();}abstract class AbstractTaskInner implements TaskInner { @Override public void execute() { runTask(); } abstract void runTask();}class TaskInnerSupport extends AbstractTaskInner { @Override public void runTask() { System.out.println("task2 running..."); } }class Task implements Runnable { private TaskInner inner; public Task(TaskInner taskInner) { inner = taskInner; } @Override public void run() { inner.execute(); }}
