无知的 TonySeek

Yet Another Seeker

用装饰器注册 Python 函数

注册回调函数应该是开发中很常见的一种行为。这在 Python 中通常通过装饰器来实现,看起来比较漂亮:

flaskr.py
 @app.route("/")
 def home():
     return "It works."

但是这种用法常常带来一种隐藏的“惊讶”,比如说:

C 语言程序设计笔记

呵呵,看标题像是大一同学的学习笔记,事实上我是一个大四将毕业的人了。我在大一入学之后认认真真学习的第一个程序语言是 C 语言,当然,是在在课堂上。可是快四年来,我用的最多的却是各路动态语言(人生短暂我用 Python)。后来毕业设计需要选题,我跟了一个很有黑客精神的导师 [0] ,所以也就希望能挑战一下自己,选择了用我并不熟悉的 C 语言来做系统编程&网络编程。

那个项目 [1] 总算还花了我不少时间和精力,虽然答辩时遇到了奇葩的人并发生了不愉快的事情,但我终究是学到了不少东西。这篇博客用来记录我掉的那些坑,并让读者看到后可以对我说:“你还是回大一去重学吧”。

记录一些坑

用动态语言编写一些简单的应用时,好的 ORM 往往能带来开发效率的提升 —— 尽管 ORM 为不少大型项目所不齿。Python 社区的 ORM 框架最著名的莫属 SQLAlchemy,它的特点是利用 Python 的元编程支持构造了一套既能照顾到面向对象开发习惯,又能向下支持复杂数据库查询操作的 DSL。这类框架在分类上,应该属于抽象层。