Contents
  1. 1. Swift
  2. 2. Optional
  3. 3. Storyborad or Code?
  4. 4. End

天气渐冷,我内心反而愈加炙热。
最近更是翘掉了很多不想上的课,虽然老师有善意地发过警告,但是我思考了相当长的一段时间,也纠结过,矛盾过,但是最终还是决定挂掉几门课。不管后不后悔,反正我就这样做下去了。

Swift

作为一个纯JS的新手,初始Swift时倍感亲切,然而这是一门正在发生剧烈革命的语言。截止到此时Swift已经更新到了2.0版本,其语法发生了很大的改动。网上的许多教程刚出来就过时了。

对于变量来说,Swift采用了动态类型
比如定义一个变量1

1
2
var a = 1
b = 1 + 0.2 //1.2

为什么说它是动态类型呢,因为它的动态类型一点都不好用,调用函数时还是要进行显式转换,它的隐性转换还有很大的发展空间,大概过几个版本希望它与JS一样好用。

Optional

Swift 有个类型叫做Optional,相当于赋予一个初始值nil,实质是一个元组(value, nil),在进行解绑(unwrapped)时如果没有值就返回nil

我最初被这些 叹号! 问号? 弄得头晕脑胀,方法随着版本的更替更是让这两兄弟跳来跳去;习惯了JS默认值写法

1
var a = value || defalutValue

的我,对于Optional的默认值写法

1
var a = valueOptional ?? defaultValue

感到非常的不适,首先valueOptional是一个Optional类型,进行unwrapped时如果没有value值,就赋予默认值,用于代替nil。

所以说这个Optional到底是干吗的嘛

方法也可以是Optional类型,这样创建一个类的时候就没用必要实现所有的方法了。
就这样?

Storyborad or Code?

在写iOS时,遇到了这个问题,显然在这里就遇到了一个分水岭。我最初选择的是Storyboard,现在还是在用它。Storyboard的一个好处是减少了大量的代码量,所见即所得,缺点也很明显,所得仅所见,Storyboard用拖拽控件的方式添加对应的代码,然而对控件修改时还必须去找控件所在的代码位置进行对应的修改,否则经常出现空指针、野指针。
Code大法好,就是费时间。在理解Code的基础上使用Storyboard应该是最快的开发方案了。

End

争取寒假前完成以下几件事(flag

  • 用Python爬几个网站
  • 改好自己的JS游戏
  • *学习Sketch和Pixelmator,学习切图
  • 学好没翘的课
Contents
  1. 1. Swift
  2. 2. Optional
  3. 3. Storyborad or Code?
  4. 4. End