第一次使用AngularJS是在2014年,当时在做一个回合制手游项目。在写后台的时候,我还写了GM工具和网页对战模拟工具,为了方便,整个工具都写在一个页面里。页面交互全部使用jQuery完成。写到中后期,一直在获取表单数据、绑定事件、修改DOM元素上折腾。于是尝试了AngularJS,整个人感觉不一样了,写前端代码跟写后端代码一模一样。尤其是双向数据绑定,真正解决了GM工具等管理平台的痛点——大量处理。AngularJS结合Bootstrap简直就是编写管理后台的大杀器。但是随着单页应用规模越来越大,AngularJS的劣势也越来越明显。虽然该服务可以实现JavaScript代码的重用,但这还不够。该指令虽然实现了JavaScript和HTML的复用,但使用起来过于繁琐。双向绑定虽然方便,但是随意修改值的结果就是值变了,不知道改到哪里去了。代码文件的组织只能按照JavaScript/HTML/CSS分别组织。文件打包主要是用Browserify+Gulp完成的。不管是自身的技术还是社区的环境,AngularJS确实是一种过时的技术。你好,Vue去年开始尝试React和Vue1.x。React的热更新,彻底的组件化,完备的ES6支持,着实令人激动。但我还是不习惯JSX,Vue1.x也没有那么革命性。但是,Vue2.0的出现彻底征服了我,集大家之长。在新生态工具的支持下,经过简单的尝试,我很快就投入了Vue2的怀抱,目前的管理后台基本上是Vue+Element-ui的组合。干净整洁,ES6迁移到Vue2以在整个项目中使用ES6。我最喜欢的是简练的箭头函数和可以放心使用的局部变量,再加上eslint的强制语法检查,让大家写出格式一致的代码。唯一令人恼火的是,我最喜欢的写法'sid'===name即将被废弃。快,快,ElasticsearchElasticsearch确实是所有后端开发者都应该尝试的技术。速度快得惊人,自带备份机制,开箱即用几乎完全零配置,DSL可能比SQL复杂一些,但入门还是可以的。有了Elasticsearch,数据存储和统计相关的事情几乎不再是问题。MySQL中有数百万条数据。想要顺利查询统计,就得开始规划字段和索引。在Elasticsearch中,你根本不用想,更何况它的统计功能已经超越了MySQL的无数条街。更不用说Elasticsearch最大的检索能力了。Elasticsearch是今年让我最开心的技术。怀旧一下,不久前一个Python/Go的项目需要获取图片hash。查了下Python这方面的库挺多的,于是看了下Python的语法就上手了。花了很长时间才弄明白。后来看到有Go版本,也试了一下。运行结果有点震撼。Go至少比Python快5倍。果然,编译型语言更擅长CPU密集型的事情。Go的延迟和强制代码格式gofmt给我留下了深刻的印象。感觉是时候开始一门新的后端语言了。半途而废,Docker本来打算放弃VirtualBox,但是Docker不能轻易执行各种linux命令,它更侧重于代码的运行环境,现在我基本不再管后端了,所以意义不大大部头书。Docker最终没有被用于工作。GithubDesktopSourceTree现在越来越慢了,经常需要打开关闭项目Tab才能找到文件修改,启动也很慢。最后,我开始选择一个新的GitGUI工具,最无望的GithubDesktop是我最终的选择。比想象的要快,界面简单,虽然不支持sshkey登录,功能也比较简单,但是只要速度快,小问题也能忍。Coding.NET已经使用Coding.NET两三年了。以前码币好赚的时候,换了一件T恤。一开始是个人用,后来提升为团队用。企业版发布后,公司也动员起来了。支付了费用。但现在免费用户取消了CodingPages自定义域名功能,后来又限制了五个私人项目,这让Coding.NET又是一个废弃的服务。2017年的第一天,我用Gogs搭建了自己的Git服务,花了6块钱认证了我n年前的花生壳账号,开始了自建之路。
