{"push_id":896009509,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"6fce54a1303b7274525d1f36a548b6d6b295d089","before":"bbf7dde22a9d5ce9c70d3f60f050a2e382d1bd83","commits":[{"sha":"6fce54a1303b7274525d1f36a548b6d6b295d089","author":{"email":"f51869db0be02260ec5c28f87b4e164721921364@gmail.com","name":"Aixtuz"},"message":"Assignment I : 新思路的重构\n\n# 自己的实现方式不理想, 参考了他人思路后的重构;\n\nFix:\n1. 按需要修改属性和方法名称以及 UI 关联;\n2. 重构 Model:\n- Model 中操作过程改为,先入栈后出栈,出栈再判断;\n- 出栈判断: 操作数 or 操作符?\n- 将出栈操作中操作符(NSString)的判断步骤抽取独立出来;\n3. 重构 Controller:\n- 优化数字键点击的判别逻辑;\n- 移除操作键点击时的 Label 显示相关判断,在 Model 中判断运算返回后,再根据需要刷新 Label 即可;\n- 利用上一步简化 Label 显示逻辑后, 重构 π 和 +/- 的display, step, 计算, 退格 的处理方式;\n- 将 Label 的刷新方法独立出来, 避免繁琐判断, 只在 operation 或Enter 结束才刷新显示, C 和 backspace\n以直接赋值实现,不用此刷新方法;\n- 将零元操作符(\"←\" \"C\")独立出来,避免过多的条件判断;","distinct":true,"url":"https://api.github.com/repos/Aixtuz/Calculator/commits/6fce54a1303b7274525d1f36a548b6d6b295d089"}]}