标签: principles

170
推荐指数
8
解决办法
7万
查看次数

Python中的EAFP原理是什么?

Python中"使用EAFP原理"是什么意思?你能提供任何例子吗?

python principles

123
推荐指数
3
解决办法
3万
查看次数

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"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

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

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


site {
    domain: "www.blog.com"
    owner: "me"
    pages {
        page {
            title: "Blog"
            posts {
                post {
                    id: 123412804910820 …
Run Code Online (Sandbox Code Playgroud)

modeling couchdb principles

116
推荐指数
4
解决办法
1万
查看次数

C的设计原则,最佳实践和设计模式(或一般的程序编程)?

在设计C项目时,是否有任何已知的设计原则,最佳实践和设计模式?一般来说,程序(命令式)编程的有用设计原则是什么?

(我是'面向对象的一代'的孩子,并且必须首次设计一个大型的C项目)

c design-patterns principles

90
推荐指数
4
解决办法
6万
查看次数

GUI设计的最佳实践和原则

什么是您最好的实用用户友好的用户界面设计或原则?

请提交您认为真正有用的实践 - 无论如何 - 如果它适用于您的用户,请分享!


总结/整理

原则

  1. 吻.
  2. 明确并明确选项将实现的内容:例如,使用动词来指示选择后面的操作(参见:Impl.1).
  3. 使用适合用户需要/想要实现的明显默认操作.
  4. 使UI的外观和行为适合环境/流程/受众:独立应用程序,网页,便携式,科学分析,Flash游戏,专业人士/儿童,......
  5. 减少新用户的学习曲线.
  6. 不要禁用或隐藏选项,而应考虑提供有用的消息,其中用户可以有替代方案,但仅限于存在这些替代方案的位置.如果没有可用的替代方案,最好禁用该选项 - 在视觉上然后声明该选项不可用 - 不要隐藏不可用的选项,而是在鼠标悬停弹出中解释为什么它被禁用.
  7. 保持一致并符合实践和控件的放置,这在广泛使用的成功应用程序中实现.
  8. 引导用户的期望,让您的程序按照这些期望行事.
  9. 坚持用户的词汇和知识,不要使用程序员/实现术语.
  10. 遵循基本设计原则:对比度(显而易见性),重复性(一致性),对齐(外观)和接近度(分组).

履行

  1. (参见paiNie的回答)"尝试在对话框中使用动词."
  2. 允许/实现撤消和重做.

参考

  1. Windows Vista用户体验指南[ http://msdn.microsoft.com/en-us/library/aa511258.aspx]
  2. 荷兰网站 - "Drempelvrij"指南[ http://www.drempelvrij.nl/richtlijnen]
  3. 网页内容无障碍指南(WCAG 1.0)[ http://www.w3.org/TR/WCAG10/]
  4. 一致性[ http://www.amazon.com/Design-Everyday-Things-Donald-Norman/dp/0385267746]
  5. 不要让我想想[ http://www.amazon.com/Dont-Make-Me-Think-Usability/dp/0321344758/ref=pdbbssr_1?ie=UTF8&s=books&qid=1221726383&sr=8-1]
  6. 功能强大且简单[ http://msdn.microsoft.com/en-us/library/aa511332.aspx]
  7. 格式塔设计法[ http://www.squidoo.com/gestaltlaws]

user-interface principles

63
推荐指数
9
解决办法
5万
查看次数

std :: ignore用于忽略未使用的变量

用它std::ignore来忽略未使用的变量是一种好方法吗?

假设我有这样的函数:

void func(int i)
{
   //for some reason, I don't need i anymore but I cannot change signature of function    
   std::ignore = i; 
}
Run Code Online (Sandbox Code Playgroud)

附加信息

这是一个例子,一些答案建议使用匿名变量.但是我如何为其他情况做这件事,比如:

int Thread_UnSafe_func_returnSomething():
void func()
{
   // To make it thread safe
   // Also it is required to call only once
   static int i = Thread_UnSafe_func_returnSomething();

   std::ignore = i;
}
Run Code Online (Sandbox Code Playgroud)

c++ function principles c++11 c++14

35
推荐指数
4
解决办法
8129
查看次数

hadoop namenode格式究竟是什么?

namenode格式化涉及到什么.如果我在hadoop安装文件夹中输入以下命令到我的终端:

  bin/hadoop namenode -format
Run Code Online (Sandbox Code Playgroud)

它到底完成了什么?我希望了解namenode格式的原理及其意义.谢谢...

formatting hadoop principles

33
推荐指数
2
解决办法
3万
查看次数

函数式编程的原理,最佳实践和设计模式

在使用函数式编程语言编写代码时,是否有任何已知的原则,最佳实践和设计模式?

design-patterns functional-programming principles

23
推荐指数
4
解决办法
8627
查看次数

有没有Clojure原则?

  1. Clojure有什么原则吗?

    一个.像Java这样的OO语言的SOLID面向对象设计原则

    湾 或者其他更具启发性的,比如"告诉不要问","赞成组合与继承","与接口交谈"?

  2. 是否有任何设计模式(灵活的代码)?

  3. 功能编程基础的对应部分是什么,比如面向对象的封装?

知道这些资源吗?

functional-programming principles clojure

19
推荐指数
3
解决办法
1359
查看次数

是否有理由避免使用位域结构成员?

我早就知道C中有位字段,偶尔我会用它们来定义密集的结构:

typedef struct Message_s {
     unsigned int flag : 1;
     unsigned int channel : 4;
     unsigned int signal : 11;
} Message;
Run Code Online (Sandbox Code Playgroud)

当我阅读开源代码时,我经常会发现位掩码和位移操作,以便在手工滚动的位域中存储和检索这些信息.这是如此常见,我不认为作者不知道位字段语法,所以我想知道是否有理由通过位掩码滚动位字段并转移自己的操作而不是依赖编译器生成用于获取和设置此类位字段的代码.

c struct principles c99 bit-fields

19
推荐指数
2
解决办法
1987
查看次数