人/狗/码的日常 2021-05-06

有时候就是觉得自己执行力不够,可能两天就能搞定的代码,拖拖拉拉弄了一个星期还没有搞定,发布日期推迟了一周又一周,一个月又一个月,这样,不知道什么时候才能完成。

在我们的人生中,是什么让我们保持健康且幸福呢? 标准答案竟然是:良好的人际关系。来听听这份长达75年的研究报告吧。

所以不要再为金钱,名誉努力,为了自己的美好人生,从良好的人际关系开始吧。

[What makes a good life? lessons from the longest study on happiness]
(https://www.ted.com/talks/robert_waldinger_what_makes_a_good_life_lessons_from_the_longest_study_on_happiness)

健身继续,休息一天确实很给力,今天竟然完成了70卡路里的消耗,而且觉得不是那么累。体重是121.7

酷奇很喜欢陪着我做饭,从小就不准他进厨房,久而久之就养成了良好的习惯。现在只要我进厨房做饭,他就会乖乖的趴在厨房门口。

等我忙完,端着饭菜到餐桌,他就会屁颠屁颠的跟着,在我身边乖乖的坐下,等着我赏给他吃的,如果我自己吃的欢,不理他,他就会时不时的用爪子挠我大腿,告诉我,别光顾着自己吃,也分给他一点啊。

关于登录界面:

image.png

这是一个非常简单直观的ViewController,不复杂,且元素固定,可以使用StoryBoard进行布局。所有的UI元素在ViewController中定义,布局,加载,同时UI元素的操作行为也在ViewController中实现。

当然,我更推荐将这个ViewController拆分为三个文件来实现。

  • LoginView

定义UI元素及布局

  • LoginViewModel

负责用户输入的逻辑检查,登录的网络操作等等,负责调用网络模块的API

  • LoginViewController

负责加载LoginView展示视图,处理用户的UI交互,调用LoginViewModel进行登录等操作。

网络模块的API全部采用同步操作,LoginViewModel层统一负责异步操作

LoginViewModel的调用可能需要多个异步执行后的结果,所以如果网络模块设计采用异步操作,那么在LoginViewModel中又需要涉及到同步问题,所以,所有的异步,同步问题均在LoginViewModel中进行设计。

你可能感兴趣的:(人/狗/码的日常 2021-05-06)