有如是解释 APEC 者——Air Pollution Eventually Controlled。
有说此次是继零八后的又一次万国来朝。丝路大略明确了,西域必通。站在历史的远处回眸,这是继零八年后又一次全球历史的转捩点。
昨天周六,学长拉着全司的人一起跑步,天天守着森林公园儿也不转两圈儿实在是说不过去。已是立冬,而园内踏秋采风者依旧络绎不绝。我们一路跑一路拍。一次家门口儿处的旅游。
前端开发做得很被动,数据、接口什么都没有准备好,团队项目根本就没有系统规划,技术没有挑头儿的人就是这样。从前端、后端服务、后端数据、后端运维这整条线上,基本上现在除了后端数据我还没有碰,其它的都是我来处理的。数据部分,对于我,早晚的事儿。不着手,不放心。
Web 前端还是太轻,使得能力受限。轻,也就做不到理想的 MV 剥离。比如貌似强大的 ng-repeat。Angular 算是很重的 Web 工具了,但面对一个从来就丝毫不考虑技术可行性的产品设想,我就自然希望手里的工具是重到像 .net framework 或者 java 这种,尤其像我这种早就被重型装备惯出来的工程思维。你无法向对工程成本性价比没有概念的人解释不定行垂直居中是件很困难的事儿,就只好调过头来苛求还有没有更重的
Web 工具可以用。
讨论这样的一个产品设计,不定项,模板,一左一右,两两并列,多行输出。用 ng-repeat,好,那么问题来了,如何控制位置,有 ng-class-odd/even,我用 table 布局呢?你要问为何要用 table 布局,那我要反问你为何用 float 布局了。
所以只好用 directive 打包处理,这就退回到 jQuery 思维了,典型的 MV 不分。你要说分,也是分了,但和 HTML 权责不明了。你会用 C# 写 XAML 吗?
如果非要用 ng-repeat + table 呢?有办法,加工数据,对行做 ng-repeat。这就引出来 WPF 中我熟悉的一个概念,ViewModel,视图模型,是建立在数据模型和视图之间的一层。WPF 很重的,重到 ViewModel 有强大的实体存在,强大到笨重……Web 里,一切都要自己来。当然,如果连 jQuery 思维都摆脱不了的话就免谈什么 MVC 了。
异步思维已经习惯了,是好事。异步思维和函数式思想,都是应有的。
公共域需要注意放在 scope 下的一个对像里面不是直接挂在 scope 下,这就是值的深复制和引用的浅复制的区别了。明显,公共域需要的是引用的浅复制。Angular 的 MV 里,V 弱,VM 没有,但 M 是真的强。这是 Angular 的 MVC 中最彻底的部分了。
这 element.on 不支持 selector,符合 MV 权责分离的理念。但你也可以退回到 javascript 的 addEventListener 去遍历 DOM 树。这是手段的倒退,更是思想的倒退,最终是文明的倒退,“大开历史倒车”……话说我还真用了。很无奈。行此无奈之举,或是手段不够精进,或是思想不够高深。
我写着,通着话,那头宝宝“扒拉扒拉”着 2048,就在我即将收笔时,那头也玩儿尽了这一局,六万多分,4096,我是不及了。