V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  dorentus  ›  全部回复第 40 页 / 共 144 页
回复总数  2867
1 ... 36  37  38  39  40  41  42  43  44  45 ... 144  
2015-09-13 22:37:05 +08:00
回复了 simba0204 创建的主题 服务器 想招一名合伙人兼服务器方面的人,做一款 iOS 程序
你可以用比如 leancloud 之类的服务啊
ssh root@host service nginx restart 再加个循环不就好了
2015-09-13 09:33:06 +08:00
回复了 erDaren 创建的主题 问与答 关于 bsearch 的一些疑问
@dorentus 啊不对 我看错了……
2015-09-13 09:32:23 +08:00
回复了 erDaren 创建的主题 问与答 关于 bsearch 的一些疑问
str1 是 char * 的数组,你在那行用的都是 char 自然不对了
@xiaobetty

https://developer.github.com/v3/repos/ 拿当前用户的 repo 列表不需要 public_repo 权限,这个应该可以满足“验证项目属于作者本人”的要求了吧。我很好奇你们在开发的时候,用了哪个需要 public_repo scope 的接口来实现这个需求……

对于这个活动,背后的逻辑应该是把“ GitHub 用户”和“真实世界的人”一一对应才是, email 只是“真实世界的人”的一项属性或者说是必填属性,拿不到的情况下,完全可以让用户自己填。

总体上,我觉得还是你们的需求里面没有关注隐私,然后开发在实现的时候比较随意……
2015-09-11 13:19:34 +08:00
回复了 heronlyj 创建的主题 iOS 问 iOS 工程师们一个问题,大家会用最新的 Xcode7.0 来开发嘛?
会。

并且我要把我们目前 Swift 1.2 的项目迁移到 Swift 2.0 ,同时 drop 对 iOS 7 的支持。
大家可以试着把跳转到的 GitHub 授权页面 URL 里的 &scope=xxxx 那段删掉再加载页面,然后再确认授权,应该还是正常可用的。
https://developer.github.com/v3/oauth/#scopes

GitHub 的授权 scope 列表, 100offer 这个活动用了 user:email 和 repo ,但是,
1 ) 就是要用,也应该用 public_repo 而不是 repo ,你们应该不需要用户的 private repo
2 ) 如果只是需要读取 public repo 列表和内容,根本就不需要 repo/public repo 的权限,默认的就够了。我试了下把 URL 里面 scope 部分的 +repo 删掉,授权返回活动页面后,一样可以读到项目列表
3 ) user:email 这个权限也是不必要的,你们根本就不需要我的所有 email 列表。只是为了自动填充页面表单的话,直接用默认 scope 读取 public email 就好了,如果不对用户自己会改
2015-09-07 23:11:01 +08:00
回复了 bdbai 创建的主题 程序员 iOS 中的 delegate 和 C# 中的有什么区别?
@bdbai C# 我十多年没碰,已经完全不记得它的 delegate 是什么了。

iOS 最常见的 delegate 是实现一个指定接口的类型。在这种情况下, delegate 作为对象的属性由外部实现并赋值给对象;对象约定在自己的进入某些状态时,调用 delegate 的指定方法,来通知到外部、或者从外部获取数据。
2015-09-07 23:04:24 +08:00
回复了 ccccccc 创建的主题 分享发现 现在手机耗电很大原因是这些 app 的做法
@qcsqw iOS 版本大概是 8 的新功能,后台下载(默认授权,用户可以按应用禁止)。
2015-09-07 22:58:19 +08:00
回复了 loryyang 创建的主题 职场话题 年近 30,感觉各方面能力渐渐变弱了
我以前从来不心算的不过最近心算起来也挺顺的
以前每天睡 8 小时现在还是睡到自然醒
学习能力自测没有退化(不管是学 Ruby 、 Swift 还是学日语、德语)
但是我已经三十多了啊……
2015-09-07 22:51:21 +08:00
回复了 bdbai 创建的主题 程序员 iOS 中的 delegate 和 C# 中的有什么区别?
iOS 里面的 delegate 只是个常用的 design pattern 而已
2015-09-07 12:59:15 +08:00
回复了 machinemxy 创建的主题 iDev 被 Swift 的!和?搞死了😡😡😡
@dorentus
我弄错了

直接 let b = a! 解包的话,这个 b 确实是 A 类型了(如果 a 是 nil 的话,出错是在 b 被赋值之前发生的)
2015-09-07 12:52:33 +08:00
回复了 machinemxy 创建的主题 iDev 被 Swift 的!和?搞死了😡😡😡
@machinemxy
假如 a 是 A?; let b = a! 的话,其实 b 是 A! 类型。

let a: A! 来定义的话,这个 a 直接就是 A! 类型。

A! 类型的变量,在用的时候可以不解包直接当成和 A 类型的一样用(但是如果值是 nil 的话就直接闪退了)。然后它也可以当作 A? 类型那样,去手动使用 Optional Binding 或者 Chaining 来解包去判断它是 nil 还是有值。
2015-09-07 12:12:47 +08:00
回复了 machinemxy 创建的主题 iDev 被 Swift 的!和?搞死了😡😡😡
在 Swift 里面,关于 Optional 的 ? 和 ! 有以下几种用法:
1 ) 用于类型定义, Type? 其实是 Optional<Type> 的简写,而 Type! 是一种特殊的 Optional 类型( Implicitly Unwrapped Optional )的写法
2 ) ! 用于 Optional 类型变量名的后缀,用于强行解包(失败则触发 runtime error )
3 ) ? 用于 Optional Chaining ,也是解包,不过失败的话不会触发 runtime error

--------

假设 A 是一个类型,那么 A? 类型(其实是 Optional<A>),其实是一个新的类型,它封装了两种可能性: nil 或者 A 的一个实例。

使用 A? 类型的变量的时候(例如 var a: A?),需要进行判断来解出其中封装的 A 的一个实例值,或者 nil 。解包有好几种方式:
1 ) 直接解,用叹号: let b = a!。如果 a 是 nil 的话,会触发 runtime error
2 ) Optional Binding : if let b = a { /* 这里是有值的情况, b 的类型是 A */ } else { /* 这里是 nil 的情况 */ }
3 ) Optional Chaining : a?.foo () /* 假设 A 定义了 func foo () -> B */,这时假如 a 是 nil ,那么方法调用不会发生;否则的话,方法 foo 被调用,返回一个 Optional<B> 即 B? 的类型的值。

有一些情况,我们明确知道某个变量在我们使用的时候一定非 nil ,但是由于某些限制,无法在声明的时候就初始化(例如 ViewController 里面的 IBOutlet ),那么可以把它声明为 Implicitly Unwrapped Optional 类型,即: var a: A!。对于这种,我们可以像对待 A? 类型的变量一样,去做 Optional Binding 或者 Optional Chaining ,也可以把它当作非 Optional 的 A 类型变量一样直接用(但是如果在用的时候 a 是 nil ,那么会触发 runtime error )

另外,不要在自己不确定在做什么的前提下去理会修改建议
2015-09-06 12:54:25 +08:00
回复了 ccccccc 创建的主题 分享发现 现在手机耗电很大原因是这些 app 的做法
iOS 的你切到后台, web server 的监听就断了
2015-09-05 21:58:54 +08:00
回复了 rvw 创建的主题 iOS 面对批斗还是挡不住我的热情(新手每日一练)
建议类名首字母大写
《 STL 源码剖析》
2015-09-03 22:40:17 +08:00
回复了 jamesarch 创建的主题 问与答 有哪些和编程有关,但是和编程语言无关比较有趣的书
The art of UNIX programming
1 ... 36  37  38  39  40  41  42  43  44  45 ... 144  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5167 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 48ms · UTC 08:31 · PVG 16:31 · LAX 01:31 · JFK 04:31
Developed with CodeLauncher
♥ Do have faith in what you're doing.