javascript

java

python

c#

android

c++

node.js

php

html

jquery

ios

reactjs

css

.net

git

ruby-on-rails

sql

c

ruby

string

haskell-功能编程范例是否有可视化建模语言或样式?

UML是旨在以OO语言编写的软件建模的标准,并且与Java紧密相连。 仍然可以将其用于建模要以功能编程范例编写的软件吗? 给定嵌入式视觉元素,哪些图将变得有用?

是否有针对函数式编程的建模语言,更具体地说是Haskell? 您会建议使用哪些工具来绘制图表?

由OP编辑,2009年9月2日:

我正在寻找的是代码中最直观,最轻巧的表示。 易于理解的图表,可视化模型不一定针对其他程序员。 我将很快在Haskell中开发游戏,但是由于该项目是为我的毕业总结工作而设计的,因此我需要介绍所提议解决方案的某种形式化形式。 我想知道是否有等效于UML + Java的标准,但Haskell除外。我应该只坚持情节提要,书面说明,非形式化的图表(一些类似于流程图的浅图像),非形式化的用例描述吗?

由jcolebrand编辑,2012年6月21日:

请注意,提问者最初想要一个视觉隐喻,现在已经有三年了,我们正在寻找更多/更好的工具。 最初的答案都没有真正解决“视觉隐喻设计工具”的概念,因此……这就是新的赏金所希望提供的。

trans by 2020-08-05T04:28:24Z

开源-有哪些出色的在线数据库建模工具?

您最喜欢的开源数据库设计/建模工具是什么?

我正在寻找一种支持多个数据库的数据库,尤其是Firebird SQL,但在Google上找不到一个。

trans by 2020-02-22T20:39:56Z

CouchDB文档建模原理

我有一个问题,我一直试图回答一段时间,但无法弄清楚:

你如何设计或分割CouchDB文件?

以博客文章为例。

半"关系" 这样做的方法是创建一些对象:

  • 岗位
  • 用户
  • 评论
  • 标签
  • 片段

这很有道理。 但我正在尝试使用couchdb(因为它很好的所有原因)对同样的事情进行建模并且它非常困难。

大多数博客文章都为您提供了一个如何执行此操作的简单示例。 他们基本上以同样的方式划分它,但是说你可以添加任意的' 每个文档的属性,这绝对是好的。 所以你在CouchDB中有这样的东西:

  • 发布(带有标签和片段"伪"文档中的模型)
  • 评论
  • 用户

有些人甚至会说你可以把评论和用户放在那里,所以你有这个:


post {
    id: 123412804910820
    title: "My Post"
    body: "Lots of Content"
    html: "<p>Lots of Content</p>"
    author: {
        name: "Lance"
        age: "23"
    }
    tags: ["sample", "post"]
    comments {
        comment {
            id: 93930414809
            body: "Interesting Post"
        } 
        comment {
            id: 19018301989
            body: "I agree"
        }
    }
}

这看起来非常好,很容易理解。 我也理解你如何编写只从所有Post文档中提取注释的视图,以便将它们转换为Comment模型,与用户和标签相同。

但后来我想,&#34;为什么不把我的整个网站放到一个文档中?&#34;:


site {
    domain: "www.blog.com"
    owner: "me"
    pages {
        page {
            title: "Blog"
            posts {
                post {
                    id: 123412804910820
                    title: "My Post"
                    body: "Lots of Content"
                    html: "<p>Lots of Content</p>"
                    author: {
                        name: "Lance"
                        age: "23"
                    }
                    tags: ["sample", "post"]
                    comments {
                        comment {
                            id: 93930414809
                            body: "Interesting Post"
                        } 
                        comment {
                            id: 19018301989
                            body: "I agree"
                        }
                    }
                }
                post {
                    id: 18091890192984
                    title: "Second Post"
                    ...
                }
            }
        }
    }
}

您可以轻松地创建视图以找到您想要的内容。

那么我的问题是,你如何确定何时将文件分成较小的文件,或何时制作&#34; RELATIONS&#34; 文件之间?

我认为它会更多&#34;面向对象&#34;并且更容易映射到Value Objects,如果它被分割如下:


posts {
    post {
        id: 123412804910820
        title: "My Post"
        body: "Lots of Content"
        html: "<p>Lots of Content</p>"
        author_id: "Lance1231"
        tags: ["sample", "post"]
    }
}
authors {
    author {
        id: "Lance1231"
        name: "Lance"
        age: "23"
    }
}
comments {
    comment {
        id: "comment1"
        body: "Interesting Post"
        post_id: 123412804910820
    } 
    comment {
        id: "comment2"
        body: "I agree"
        post_id: 123412804910820
    }
}

...但是它开始看起来更像是一个关系数据库。 而且我经常会继承一些类似于&#34;整个网站的文档&#34;,因此用关系建模它会更加困难。

我已经阅读了很多关于如何/何时使用关系数据库与文档数据库的内容,因此这不是主要问题。 我更想知道,在CouchDB中建模数据时应用什么好的规则/原则。

另一个例子是XML文件/数据。 一些XML数据已经嵌套了10个以上的层次,我想使用相同的客户端(例如Rails上的Ajax或Flex)可视化我将从ActiveRecord,CouchRest或任何其他对象关系映射器渲染JSON。 有时候我会获得整个网站结构的巨大XML文件,如下所示,我需要将其映射到Value Objects以在我的Rails应用程序中使用,因此我不必另外编写 序列化/反序列化数据:


<pages>
    <page>
        <subPages>
            <subPage>
                <images>
                    <image>
                        <url/>
                    </image>
                </images>
            </subPage>
        </subPages>
    </page>
</pages>

所以一般的CouchDB问题是:

  1. 您使用什么规则/原则来划分文件(关系等)?
  2. 是否可以将整个网站放入一个文档?
  3. 如果是这样,您如何处理具有任意深度级别的文档的序列化/反序列化(如上面的大型json示例或xml示例)?
  4. 或者你不把它们变成VO,你只是决定它们是否过于嵌套到Object-Relational Map,所以我只是使用原始的XML / JSON方法访问它们&#34;?

非常感谢您的帮助,我很难说出如何将数据与CouchDB分开的问题&#34;这就是我应该从现在开始做的事情&#34;。 我希望很快能到达那里。

我研究了以下网站/项目。

  1. CouchDB中的分层数据
  2. CouchDB Wiki
  3. 沙发 - CouchDB应用程序
  4. CouchDB权威指南
  5. PeepCode CouchDB截屏视频
  6. CouchRest
  7. CouchDB自述文件

......但是他们仍然没有回答这个问题。

trans by 2019-06-25T06:14:43Z

schema - XML Attributes vs Elements

这个问题在这里已有答案:

  • XML属性与XML元素                                     20个答案

什么时候应该使用XML属性?何时应该使用XML元素?

例如

<customData>
  <records>
    <record name="foo" description="bar" />
  </records>
</customData>

要么

<customData>
  <records>
    <record>
      <name>foo</name>
      <description>bar</description>
    </record>
  </records>
</customData>
trans by 2019-06-13T19:28:04Z

属性 - 属性和属性有什么区别?

这些似乎意味着同样的事情。 但什么术语在哪种情况下更合适?

trans by 2019-05-31T02:19:24Z

安全性 - 建模权限系统

您如何建模处理在应用程序内执行某些操作的权限的系统?

trans by 2019-05-24T12:26:13Z

1 共1页