rayjuneWu

To be a better man.

嗨,我是吴蕾君 (@rayjuneWu),一名来自中国杭州的 iOS Developer / PM。


  1. 项目经理技能-沟通

    项目团队生命周期会经历的阶段: 形成阶段。团队成员相互认识,了解项目情况并明确自己在项目中的定位与职责。团队成员倾向于相互独立,不怎么开诚布公。 震荡阶段。在本阶段,团队成员开始项目工作,讨论项目方案。 规范阶段。团队成员开始协同工作,并按团队所规定的方式,调整自己的工作方法,各成员开始互相信任 成熟阶段。团队根据流程,平稳有序地开展工作,成员之间配合无间。 解散阶段。团队完成工作,解散团队 在不同的阶段,冲突的强度是不同的。成功的团队应该在团队初期充分沟通冲突,解决冲突,随着时间推进,冲突逐 …

    于  PM 继续阅读

  2. Xcode8兼容Swift2.3项目

    如果你最近升级了Xcode8,一跑Swift2.3的项目,毫无意外地,都是错误。希望看完这篇文章,可以帮你顺利跑起来。 Xcode8同时支持Swift2.3与Swift3.0,你可以自由选择使用其一来开发。Swift3.0刚刚出来不久(当前2016-09-19),公司项目使用的部分第三方库还没有Swift3.0的版本,保险起见,还是决定先使用Swift2.3。Let’s begin! Step1:选择项目->Build Settings->搜索‘Swift_version’,这个选项 …

    于  Swift 继续阅读

  3. Swift:Map,FlatMap,Filter,Reduce指南

    此文初始发布在我的简书。 Swift是支持一门函数式编程的语言,拥有Map,FlatMap,Filter,Reduce针对集合类型的操作。在使用Objective-C开发时,如果你没接触过函数式编程,那你可能没听说过这些名词,希望此篇文章可以帮助你了解Swift中的Map,FlatMap,Filter,Reduce。 Map首先我们来看一下map在Swift中的的定义,我们看到它可以用在 Optionals 和 SequenceType 上(如:数组、词典等)。 1234567891011121 …

    于  Swift 继续阅读

  4. Swift2-同时解包多个可选值(Optionals)

    话不多说,直接上代码 方式1:123456var optional1: String?var optianal2: String?if let optional1 = optional1, optianal2 = optianal2 {    } 看起来很美~问题来了:如果我希望处理optional1有值,optional2没值的情况怎么办?聪明的你立马想到了:123456if let optional1 = optional1 {    guard let _ = …

    于  Swift 继续阅读

  5. 在Swift中使用Storyboard和Segue时的依赖注入

    Demo下载我们都知道在使用Storyboard时,实现依赖注入总是有点不优雅,让我们先来看看在Objective-C时如何使用: Objective-C123456789101112131415161718//In RJDemoViewController.m- (void)setDependenciesViewModel:(RJDemoViewModel *)viewModel delegate:(id <RJDemoViewControllerDelegate>)delegat …

    于  Swift 继续阅读