小编Bil*_*ill的帖子

是否可以在Swift属性上设置观察点?

在Objective-C中,我有时会在LLDB中设置观察点,以便在实例变量发生变化时通知我.我也可以使用Swift属性吗?

现在,我能做到这一点的唯一方法是:

  • 将didSet处理程序添加到属性并在其中设置断点(但这需要停止程序并重新编译,这样会破坏目的)
  • 添加一个符号断点[setPropertyName:]但这仅在该类恰好支持Objective-C桥接时才有效

我还有其他选择吗?

xcode watchpoint ios lldb swift

17
推荐指数
2
解决办法
1830
查看次数

如何合并单个提交?

有时我会同时与几个分支机构合作.假设我有分支称为master,release-1.1和experimental.我创建一个新文件或在实验中进行更改,我希望将一个单一更改应用于其他分支.

我可以用git做这个吗?如果我只是将提交合并到另一个分支中,git会自动"快进"并包含其间的任何提交.但必须有一些方法来处理这个用例.

git merge commit

16
推荐指数
1
解决办法
1917
查看次数

如何委托Scala中的成员?

在Scala中是否可以编写如下内容:

trait Road {
  ...
}

class BridgeCauseway extends Road {
  // implements method in Road
}

class Bridge extends Road {
  val roadway = new BridgeCauseway()

  // delegate all Bridge methods to the `roadway` member
}
Run Code Online (Sandbox Code Playgroud)

或者我是否需要逐个实现每个Road方法,并调用相应的方法roadway

proxy scala

16
推荐指数
1
解决办法
6154
查看次数

在所有评论包含在平均值之前,iOS应用程序需要多少评论?

当您发布iPhone应用程序的新更新时,iTunes会等待用户提交足够的最新更新评论时暂时停止包含旧版本的评论.最终,在计算平均值并显示总审核次数时,它会开始包含所有评论.

这种转变是什么时候发生的?您需要达到一定数量的评论吗?如果是的话,这个数字是多少?

itunes app-store

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

如何在Swift中进行弱链接?

在Objective-C中,如果我想使用仅出现在新版iOS中的特定类,我会这样做:

if( [UIBlurEffect class] ) {
  // do something with UIBlurEffect
}
else {
  // gracefully fallback to old behavior
}
Run Code Online (Sandbox Code Playgroud)

但是,等效的Swift:

if UIBlurEffect.self != nil {
  let blur: UIBlurEffect = UIBlurEffect(...)
  // ...
else {
  // ...
}

// also occurs with NSClassFromString("UIBlurEffect")
Run Code Online (Sandbox Code Playgroud)

没有相同的功能.

如果在NSNewFeature可用的环境中运行,一切都很好.但是如果未定义类,则在启动应用程序时会出现链接错误:

dyld: Symbol not found: _OBJC_CLASS_$_UIBlurEffect
Run Code Online (Sandbox Code Playgroud)

那么如何在Swift中进行弱链接?

编辑添加UIBlurEffect为特定示例.

linker objective-c dynamic-linking ios swift

16
推荐指数
1
解决办法
2856
查看次数

Haskell中的模式匹配Seq

模式匹配是最优雅的Haskell功能之一.

我最近在一个项目上工作,我需要一个队列数据结构,所以我正在使用Data.Sequence.然而,看起来我必须放弃模式匹配的优雅并诉诸守卫:

floodFillWorker :: Image -> RGBAColor -> Double -> PixelQueue -> Image
floodFillWorker image base tolerance queue 
    | Seq.null queue = image
    | otherwise      = doSomeWork image
Run Code Online (Sandbox Code Playgroud)

我可以使用模式匹配序列,还是需要使用警卫?

haskell pattern-matching

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

使用Haskell的类型系统来强制实现模块化

我正在考虑如何使用Haskell的类型系统来强制执行程序中的模块化.举例来说,如果我有一个Web应用程序,我很好奇,如果有从纯代码分开CGI代码从文件系统代码的所有数据库代码的方式.

例如,我正在设想一个DB monad,所以我可以编写如下函数:

countOfUsers :: DB Int
countOfUsers = select "count(*) from users"
Run Code Online (Sandbox Code Playgroud)

我希望不可能使用DB monad支持的副作用.我描绘出了一个更高级别的单子,将被限制在直接URL处理器,将能够撰写的DB单子和IO单子电话.

这可能吗?这是明智的吗?

更新:我最终用Scala而不是Haskell实现了这个目标:http://moreindirection.blogspot.com/2011/08/implicit-environment-pattern.html

haskell types type-systems

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

跟踪Haskell中的错误

如何获得有关Haskell错误发生位置的更多信息?例如,昨天我正在研究一个Haskell程序,它解析输入文件,转换数据然后打印出报告信息.

有一次,我跑了"主"并回来了

*** Prelude.read: parse error
Run Code Online (Sandbox Code Playgroud)

没有其他信息.幸运的是,我知道我只是在一个地方打电话阅读并且能够修复它,但对于未来:

  • 是否有可能获得这些错误的回溯或行号?
  • 是否有可能获得触发错误的实际数据,即导致解析错误的字符串?

谢谢!

使用GHC 编辑.

haskell

14
推荐指数
2
解决办法
3421
查看次数

如何操作Swift中的嵌套字典,例如JSON数据?

我正在使用NSJSONSerialization来解析Swift应用程序中的JSON.但是,返回的字典由一个复杂的,深层嵌套的结构组成,因此使用非常长的类型声明(例如Dictionary<String, Array<Dictionary<String, ....>>)是不切实际的.

有没有一种在Swift中使用这种结构的好方法,其中集合的结构非常复杂,其类型直到运行时才知道?

json swift

14
推荐指数
2
解决办法
1万
查看次数

是否有可能支持iPhone 6屏幕,而不支持iPhone 6 Plus?

是否有可能支持iPhone 6屏幕,而不支持iPhone 6 Plus?我希望该应用程序能够在iPhone 6上使用全屏分辨率,但没有时间为iPhone 6 Plus重新设计界面的某些部分.

我是否可以支持iPhone 6屏幕,但有6位用户只看到iPhone 6界面的放大版本?

iphone ios iphone-6 iphone-6-plus

14
推荐指数
1
解决办法
824
查看次数