Posts of blog

该Blog源码获取

写在前面

Open-Falcon推到社区之后,受到众多业界同仁关注,深感荣幸。Open-Falcon的大部分模块都是用Go写的,要想做二次开发,就要掌握Go语言的基本用法。而学习一个语言最快的方法是什么呢?手把手学写一个入门小项目。于是,这个Blog应运而生,它麻雀虽小五脏俱全,正是学习Go语言的必备佳品。

技术点

  • web项目嘛,需要有好的路由,使用gorilla的mux
  • AOP编码支持,使用codegangsta的negroni
  • 如何在一个http request生命周期中保持住数据,在后面的handler中获取到
  • 如何做全局错误处理,代码逻辑即使有问题,进程也不会挂,不会影响其他请求
  • 如何设计更完善的error类型
  • 加密Cookie,使用gorilla的securecookie,如何正确写Cookie
  • 如何处理配置文件,Blog使用JSON做配置,无需引入第三方库
  • 如何处理参数,如何写一个通用的param处理模块
  • log模块的简单应用,access log、error log、标准输出分文件存放
  • 如何做html、json、text等的渲染
  • 如何使用模块函数,如何在模板中调用对象的方法
  • 四种http方法GET/POST/PUT/DELETE的应用
  • 如何处理静态资源文件
  • 上传文件到本地,也可以上传到七牛
  • 如何使用memory cache,使用redis做cache
  • 如何存取数据到MySQL,应用ORM
  • 如何设计DAO层,防止命名冲突
  • 如何对markdown原始内容做转换变成html代码片段
  • 展示博文的时候如何做代码高亮处理
  • 如何合理设计Tag机制
  • 如何设计分页
  • 如何做文章摘要,才不至于把样式搞乱
Read more...