相关疑难解决方法(0)

数据库和功能编程是否存在争议?

我已经做了一段时间的Web开发人员,并且最近开始学习一些函数式编程.像其他人一样,我在将这些概念应用于我的专业工作时遇到了一些重大问题.对我来说,主要原因是我看到FP之间保持无状态的目标之间的冲突似乎与我所做的大多数Web开发工作都与数据库密切相关的事实相矛盾,数据库是以数据为中心的.

有一件事,让我更富有成效开发商对事物的OOP侧像MyGeneration d00dads对于.NET,Class对象关系映射器的发现:: DBI对Perl,ActiveRecord的红宝石等,这让我走就走从整天编写插入和选择语句,并专注于作为对象轻松处理数据.当然,我仍然可以在需要它们的时候编写SQL查询,但是否则它在幕后很好地抽象出来.

现在,转向功能编程,好像有很多喜欢的链接FP Web框架的要求写了很多的样板SQL代码,在这个例子中.Weblocks似乎好一点,但它似乎用一种OOP的模型与数据的工作,并且仍然需要代码手动为每个表在数据库中写入这个例子.我想你使用一些代码生成来编写这些映射函数,但这似乎绝对不像lisp.

(注意我没有仔细查看Weblocks或Links,我可能只是误解了它们的使用方式).

所以问题是,对于Web应用程序的数据库访问部分(我认为相当大),或者需要与sql数据库接口的其他开发,我们似乎被迫关闭以下路径之一:

  1. 不要使用功能编程
  2. 以恼人的,非抽象的方式访问数据,涉及手动编写大量SQL或类似SQL的代码链接
  3. 强制我们的功能语言成为伪OOP范例,从而消除了真正的函数式编程的一些优雅和稳定性.

显然,这些选项似乎都不合理.是否找到了绕过这些问题的方法?这里真的有一个问题吗?

注意:我个人最熟悉FP前端的LISP,所以如果您想提供任何示例并了解多种FP语言,那么lisp可能是首选语言

PS:对于Web开发其他方面的特定问题,请参阅此问题.

lisp sql database functional-programming

116
推荐指数
9
解决办法
2万
查看次数

SQL中的代码重用和模块化

对于SQL存储过程编程,代码重用和模块化是一个好主意吗?

如果是这样,将这些功能添加到SQL存储过程代码库的最佳方法是什么?

我通常为常见和重复的任务创建标量值函数.我发现它既简化了与现有程序类似的新程序的开发,又在错误跟踪和故障排除方面提供了很多帮助.

由于性能问题,我试图远离表值函数.

我的经验法则是,如果它是一个计算,并且它在几个地方使用,那么我创建一个标量值函数.

sql sql-server

15
推荐指数
2
解决办法
2515
查看次数

标签 统计

sql ×2

database ×1

functional-programming ×1

lisp ×1

sql-server ×1