【发布时间】:2016-01-10 17:59:18
【问题描述】:
任务是创建动态链接库,它封装了数据库的辛勤工作。由于一些设计限制,我有一个定义的接口,其中包含许多功能。每个函数都接受一个参数并在数据库查询中使用它们。数据库连接应该在 dll 中,应用程序不想打扰是否有任何连接。
初始化数据库连接然后将其提供给每个函数而不显式传递它的最佳方法是什么。
当然,总的来说,我想使用 State monad。但 dll 并非设计为只有一个入口点。
【问题讨论】:
-
我不确定您所说的“没有提供 dll 以拥有一个入口点”是什么意思。请问可以展开吗?使用 monad 来处理这些事情通常更健壮、更好。
-
应该提供几个独立的功能。其中两个
init和close,其他是数据获取者和数据库更新者。并且所有函数都不应该直接处理数据库处理程序。