小编max*_*ori的帖子

将对象序列化为JSON

如何在JavaScript中将对象序列化为JSON?

javascript json

211
推荐指数
2
解决办法
26万
查看次数

在作业中提供回退价值的最Pythonic方法是什么?

在Perl中,能够分配对象通常很好,但如果从中分配的变量是'undef',则指定一些回退值.例如:

my $x = undef;
my $y = 2;
my $a = $x || $y;
Run Code Online (Sandbox Code Playgroud)

在这之后,

$a == 2
Run Code Online (Sandbox Code Playgroud)

有没有一种简洁的方法可以在Python中实现这一点,如果值x是None,或者是全开...

if x is not None
    a = x
else
    a = y
Run Code Online (Sandbox Code Playgroud)

...成为实现这一目标的最恐怖的方式?

编辑:道歉,正如几位评论者所指出的那样,我并没有真正谈论价值未定义,而是Perl中的'undef',这实际上并不是一回事.但最初措辞的问题并没有说清楚.

python

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

你如何防止课程成为"依赖磁铁"和上帝课程?

在我曾经工作的几乎每个项目中,都会有一个或两个具有以下属性的类:

  • 非常大,有许多成员和方法.
  • 许多其他继承自此类的类.
  • 许多其他课程,否则取决于这个类.

你可能会说糟糕的设计.但在所有情况下,在设计时并非如此.这些课程随着时间的推移有机地成长,成为众所周知的"上帝阶级".这对我在大型软件项目中的经验是如此不变,我不得不问:

  • 是否有可能以这样的方式预见可能的依赖磁铁和设计软件,以至于这种类别表现出来的可能性较小?如果是这样,具体怎么样?
  • 或者,随着时间的推移,它是否只需要无情的重构?
  • 或者,是否有一些技术解决方案或设计模式可以缓解这些类引起的问题?
  • 或者,这三者的组合?

提示,经验和想法欢迎!

refactoring design-patterns

11
推荐指数
2
解决办法
1361
查看次数

生锈枚举中的原始类型

在Rust中,似乎可以使用基本类型定义Enum作为表示:

enum A {
    f64,
    i32
}
Run Code Online (Sandbox Code Playgroud)

我该如何使用这样的枚举?例如,如何创建实例以及如何使用match语句处理不同的基元类型?

rust

6
推荐指数
1
解决办法
4577
查看次数

标签 统计

design-patterns ×1

javascript ×1

json ×1

python ×1

refactoring ×1

rust ×1