Swift教程_零基础学习Swift完整实例(九)_总结

五、总结

加上写博文的时间,用了前前后后一周左右的时间,每晚2小时左右,完成了这个改造,由于我是第一次碰swift,有些东西还用不顺手,用时比较长。期间还简单学习了一下swift基本语法和部分用法。下面主要说一下我对swift语言的看法以及这次改造中对swift的理解。

1.个人对swift语言的看法

Swift作为苹果公司重推的开发语言,从苹果角度已经声称要取缔objC,估计未来可能会做更大的调整。该语言在我来看有以下特点(是不是优点不同的人不同的看法)。
1.弱化了接口这个概念,大家不用再去考虑objC中.h的处理,所有公有、私有的物料和方法均在类中声明和实现,和Java非常相似。
当然,protocol仍是保留的,可以声明属性和方法,类可以实现协议,和java的interface接口非常相似。

2.方法的调用比objC看起来更加和谐,不用一层套一层到最后读起来不是很方便,这种调用模式和C++、java等主流高级语言类似,符合大多出开发者的习惯。

3.属性的声明和初始化简化了不少,出现了自动推理类型的功能,使得不用再写出类型,更加便捷的是提供多值属性,将判空这种操作简化了太多,这种类似js的语言显然要比objC方便。

4.内置的GC垃圾处理,这点比较好,不用太多去关心内存的管理,更适合大众和新人入手。

5.不需要写;来断句,这一点不是很认同,感觉借鉴了js,但是也会出现不是很严格的编码规则这种问题。

6.C和objC均能用swift重写,所以不用再objC中嵌C代码也可以实现各种功能,大提升,尤其是在CG图形这块,完全用一种语言写的感觉真的很好。

7.增加了playground功能,能够进行代码即写即现,开发时在边上开一个playground,随时实验,非常好~

还有很多特性,我这里就逐一列举了,以后发现有趣的东西会及时更新该文。

2.对本次改造的总结

1.本次改造完全是用swift实现,包括CG部分,而且能够使用swift中的类型就不会用objC中的,所以大家会看到Int,String这种类型,当然用法和NSNumber,NSString也有很大差异,在代码中均能看到。

2.改造过程中通过看方法或常量的帮助文档,了解objC与swift使用UIKit方面的差异,差异非常明显。

3.改造中大量使用了dictionary,类似于java中的Map,键值对一直是我们开发中必不可少的类型,对于该类型的操作和objC中基本类似,至于有什么功能上的差异没有细看,等用的时候再去体会了。

4.改造中使用了分层的思想,基本分为展示层-控制层-数据层,各司其职,各层间通过数据包的传输来通信,当然不像J2EE那种严密的结构,但神似。

5.xcode对swift有着良好的支持,但仍由地方需要改进,最大的问题在于还是没有提供自带的格式化代码功能,导致很多地方由于不注意代码会比较凌乱,有时“ = ”有时“=”。

6.对于改造中有些细节的地方我会另开博文记录,这篇文章收工。

原文地址:http://blog.csdn.net/ooppookid/article/details/40373743

时间: 2024-12-02 16:44:20

Swift教程_零基础学习Swift完整实例(九)_总结的相关文章

Swift教程_零基础学习Swift完整实例(一)_swift实例简介

一.文章简介 本人最近开始学习有关Swift这个新东东,由于没有项目支撑,只能通过官方文档进行自学,精简的看了Swift官方文档,感觉理解起来还是比较简单,于是突发奇想,想把官方object-c的sample进行改造,使用Swift完成重点sample的改造,并对在改造过程中出现的问题进行分析,由于是初学,希望各类大牛能够指出其中错误,我会及时修改.预计每天更一篇,争取本周末搞定. 首先想改造的就是笔者最关心的tableView和CG,最好的例子莫过于Element.下面章节将介绍一下这个例子(

Swift教程_零基础学习Swift完整实例(八)_swift完整实例(添加View的动画效果、添加View的阴影)

6.添加View的动画效果 本章节主要来做明细页面点击后翻转的动画效果,该效果可以进行多种改变,以达到想要的效果. 1.首先我们需要进行翻转的正反两个view,前面我们已经做好了,分别是PKOElementDetailImageView和PKOElementDetailImageFlippedView,具体翻转动画在明细页面的控制其中进行,触发当然是PKOElementDetailImageView中的点击事件,前文已经提到.2.PKOElementDetailImageView中的点击事件调用

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)

四.swift重写Sample 本章开始进入正题,笔者将分搭建程序结构.构建storyboard.构建数据层.构建展示层.构建控制层.添加View的阴影.添加View的动画效果七个部分来对官方Sample的Element工程进行重写,其中涉及到的问题会给出分析和说明.不太了解storyboard的请参考官方教程<Start Developing iOS Apps Today> 1.搭建程序结构 对于程序的目录结构,完全是按照我个人的习惯所创建,由于结构对编译运行没有任何影响,是完全面向开发者的

Swift教程_零基础学习Swift完整实例(五)_swift完整实例(构建数据层)

3.构建数据层 按照官方sample,我们使用简单的plist来保存数据(当然使用内置数据库也ok).该plist既是我们列表中需要显示的内容. 1.将化学元素的数据整理为Elements.plist,该plist的结构为Array<Dictionary>(Java表示为ArrayList<Map<String,Object>>). dictionary中包含若干键值对,但一定要保证每个dictionary键值对的键和值的类型一致,这样我们才能够进行数据的解析.如图.

Swift教程_零基础学习Swift完整实例(三)_swift基础(对象和类、枚举和结构、协议和扩展、泛型)

4.对象和类(Objects and Classes) 1.同Java一致,使用class和类名来创建一个类. 2.使用init创建一个构造方法,使用deinit创建一个析构方法,通过构造方法来初始化类实例.创建类实例同java一致,在类名后面加上()(实际是调用无参数的构造方法init(),构造方法也可以带参数).使用.来访问实例的属性和方法. [objc] view plain copy class NamedShape {       var numberOfSides: Int = 0/

Swift教程_零基础学习Swift完整实例(六)_swift完整实例(构建控制层)

4.构建控制层 本章节主要来构建个功能的控制层,为之前已经创建好的storyboard中页面的自定义controller添加对应功能. 1.TabBarViewController 该控制器按照需求通过数据层服务类PKOElementDataService所构建的实现了PKOTableDataSourceProtocol与UITableViewDataSource协议的4类数据集dataSource,并将他们赋值给tab种所展示view的控制器,即PKOElementTableViewContr

【J2ME 2D 游戏开发系列】◣HIMI游戏开发启蒙教程◢JAVA零基础学习J2ME游戏开发全过程!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/j2me-2/774.html Himi从写博客的最早开始就是Android游戏开发相关的,其实那么很多童鞋也知道Himi是做Java-J2me/Kjava出身,所以不少童鞋还在问我是否可以写一些J2me的相关游戏开发博文.虽然j2me趋势随着Nokia的没落和Android的崛起已经慢慢被弱化掉,但是J2me也是早些年非常火的平台不是么!

怎样从零基础学习EXCEL?

  怎样从零基础学习EXCEL?          后来工作会对你的数据处理能力提出要求(除非你懒,错过了那么好的学习机会).可能开始的时候,你会发现一个函数能自动计算求和(sum),能算平均数(average),你就很开心了.接下来你会发现经常要从一个表里面寻找另一个表里面的内容(vlookup就很有用),有时候很多要做条件(if函数就很有用). 其实到这里就能解决大概80%的工作问题了.就几个函数不会很难吧,特别是当你发现以前要好久的时间,现在很快就完成了.至于以后的深入学习就看你的工作是否

零基础学习AJAX之AJAX框架_AJAX相关

上文(零基础学习AJAX之AJAX的简介和基础)对ajax异步请求服务器做了详细的介绍和基础应用,可以看出,ajax的一些过程是相对不变的.不必要每次发送请求都写一遍发送代码,一些ajax开发人员已经把他们的过程封装成ajax框架. 本节主要介绍ajaxLib和ajaxGold两款框架. 1.ajaxLib ajaxLib是一个非常小巧的ajax框架. 使用它首先将文件使用引入到页面中.改框架是一个直接获取XML的框架,调运函数如下: loadXMLDoc(url,callback,boolea