2015 年 4 月总结

又过去了一个月, 到了一个月一次的总结时间.

对于这个月所做的事情, 我只想说计划真的赶不上变化. 本来预计的各种任务到最后都做了别的事情, 但是这个月完成的事情也确实是挺多的.

算法导论

算法导论这本书我在看到第 15 章的时候实在是看不下去了. 书中巨多的数学公式, 简直让我头疼不已, 说实话, 不翻开之前的博客看一下, 我实在很难想到我在这个月竟然看了 4 章的算法导论.

我现在感觉这些知识好像是我一年以前看到的, 现在都忘光了, 算法这个东西或者说其它的技术, 不去实践练习来巩固的话. 它们就像写在沙滩上的字, 风一吹就没了. 可能过了很久, 你会说:"我曾经看过这个, 但是现在没什么印象了".

这也就是我现在学习算法导论和 2,3 个月前学习的离散数学给我带来的感受.

看到算法导论中那些干巴巴的数学公式和巨长的证明过程, 唯一的感觉就是 ---- boring.

这也就是我放弃阅读算法导论的原因, 不过我还是会复习一下算法, 不过估计会在一个月之后? 教材大约是普林斯顿的那本算法, 再看一下 Coursera 上配套的公开课.

操作系统

不说了...我已经被现代操作系统中冗长的文字说明所打败, 虽然我知道很重要, 但是这并不会在当前的阶段给我带来多少的提高和进步. 之后, 或许会看完前 4 章, 了解一下操作系统的相关知识.

然而突然想到 CSAPP 的知识基本都忘光了, 还是需要复习的.

SportJoin

由于实在没有项目可做, 本来想等到设计师把 SportJoin 的原稿使用 Sketch 搞定之后再重新使用 Swift 来重写这个我人生中的第一个项目.

但是, 我实在忍不住了, 用 SportJoin 原来的图片资源开始了 Swift 版本的开发工作. 坑当然是很多的, 不过整体的感觉还是很愉快的, 我从始至终都在尝试保持代码的可读性并维持设计的优雅, 尽可能地使用更少的代码来解决问题.

以前的 SportJoin Objective-C 的版本的 iOS 客户端的代码大约有 2 万行, 这个数字是不包含第三方库的, 但是使用 Swift 重写了大部分的业务逻辑(不包括数据持久和网络层)只用了 3000 行不到的代码.

下一个项目目测还是会用 Swift 来完成, 但是不排除使用 Objective-C 的可能性.

Node.js

在这个月我也开始接触和学习 Node.js 这个具有战略意义(使用 Javascript 来占领世界使 Javascript 可以在多个领域进行开发)的平台.

初次接触的感觉还是很好的, 设计良好的包管理器 npm, 活跃的社区, 多到数不清的插件, 事件驱动的编程范式都让我感到 Node.js 强大的潜力.

但是网上很多的代码或者教程是无法运行的. 这一点对于我来说是致命的 ---- 让我这个 Node.js 的初学者来查找到底是我的错误还是教程的错误简直是难以想象的, 在前期的学习中带来了很大的挫败感.

我更倾向于从头到尾带你做一个项目的方式来学习一个语言或者平台. 比如 Rails Tutorial 这本书对于初学者来说是很友好的, 我也期待能在 Node.js 的社区中看到这样的书籍.

DKNightVersion

DKNightVersion 这个用于为 iOS 应用添加夜间模式的框架是我这一个月, 甚至说今年中, 给我带来的成就感最大的项目.

而到 5月1日 这一天, 我也成功收集了 260 stars, 每天上 github 看一下自己的仓库有没有被更多的人收藏也为我带来了成吨的乐趣.

每一个 star 都成为我维护这个框架并为它添加更多功能的动力. 我也曾经半夜 4 点钟还在为这个项目提交代码, 早上 8 点起来继续完善它.

我对这个项目还是有很深的感情的, 毕竟是我的第一个正式的开源项目, 同时也希望能够被更多的人关注和认同, 对于一些具体的技术细节, 我会在之后的博客中写出来.

进度

  1. SportJoin Swift 业务逻辑
  2. DKNightVersion 框架
  3. 算法导论 4 章
  4. Node.js 入门

目标

  1. 阅读 RESTful Web APIs
  2. 阅读 The Pragmatic Programmer
  3. 完成 SportJoin Node.js API 的编写工作
  4. 数据库系统概论

Draveness

继续阅读此作者的更多文章

comments powered by Disqus