近期博客内容的规划(关于Swift语言)
因为最近事情比较多,有一段时间没有发表博客了。前一段时间,利用空余时间翻译了一本关于Swif的书籍,过一段时间就会出版吧。通过翻译此书,英语水平没提高多少,不过Swift算是系统的学习了一下。
在翻译此书的时候,被Swift语言的优雅所迷住。感觉Swift是iOS开发的未来,Swift保留了Objective-C的优点,除此之外还引入了好多好多Objective-C中没有的新特性,比如运算符重载,泛型,闭包等等,一些现代编程语言中比较好用的特性。同时Swift中不允许使用隐式类型转换,这样是类型更为安全。Swift也引入了抽象类,抽象函数,可选数据类型等等。
在今天的博客中就不涉及具体的技术内容了,大体的聊一下Swift语言的内容,和学习Swift语言的一些方法。在翻译Swift书籍的时候,书上的代码也是每行都敲一遍,并且观察运行结果。然后考虑,在原来的代码上做一些修改,在观察运行效果。关于运行效果,Xcode6.1中有一个好用的工具---Playground。当使用Playground的时候,被它人性化的涉及所吸引,在以后的博客中会详细介绍关于Playground的内容。
今天就先做个计划,声明一下。在接下来发表的博客中,大部分是关于Swift语言的内容。当然也是系统的,从简单到复杂的。还是那句话,写博客是为了分享和交流技术知识,同时在博客园上认识了不少好友。在之前发表过我的Objective-C系列文章和坚持写博客的感想 和 我的iOS开发系列博文, 在接下来的博客中将会继续发表有关Swift的博文(当然是原创博客了,不是从书生搬下来的东西,而是自己学习Swift所总结的内容)。
在学习一门新的语言的时候,Code是少不了的,一定要多敲代码,多思考,这样才能理解的更深,基础才会更为牢固。今天的博客就做个引子吧。在这非常感谢一直关注我的园友们,希望大家能多多交流,相互学习。
不扯了,来点干货,下面粗略的总结了Swift中的新特性:
1.泛型
Swift中提供了泛型,泛型提高了你代码的可重用性。如果你之前学过C++的话,和模板用法一致,泛型在OOP中经常使用。
2.抽象类以及抽象方法
在Swift中可以使用private修饰init关键字来创建抽象类,因为构造器为私有的,所以该类不可以被实例化。通过asser()来创建抽象方法,具体的asser()如何使用,将会在后期的博客中使用。
3.闭包
Swift中的闭包,其实就是OC中的Block,不过定义方式稍微不同。
4.可选类型--?
Swift是类型安全的,通过?符号来创建可选类型的变量,简单的说可选变量可能为空,使用!打开可选值,使用!打开的可选值确定其值不为空
5.Swift中的访问控制
private,internal,public, 默认为internal,具体用法会再以后的博客中介绍。
春节已经过去了,那么就祝大家天天快乐,喜气洋洋,三阳开泰,羊年大吉。
近期博客内容的规划(关于Swift语言)的更多相关文章
- 一个基于Vue.js+Mongodb+Node.js的博客内容管理系统
这个项目最初其实是fork别人的项目.当初想接触下mongodb数据库,找个例子学习下,后来改着改着就面目全非了.后台和数据库重构,前端增加了登录注册功能,仅保留了博客设置页面,但是也优化了. 一.功 ...
- Scrapy爬取自己的博客内容
python中常用的写爬虫的库有urllib2.requests,对于大多数比较简单的场景或者以学习为目的,可以用这两个库实现.这里有一篇我之前写过的用urllib2+BeautifulSoup做的一 ...
- CSDN博客导出工具 Mac By Swift
写这篇文章的主要目的是了解Swift语言本身,如何以及Objc和第三方交互框架 必须先用CSDN帐户登录.您可以导出所有的博客文章,加入YAML当首标信息,包括对应标签和分类在头制品信息,和底座式(原 ...
- 以前的博客内容迁至CSDN,博客名不变,以后博客将在两个平台同步更新
为了更好的利用博客园和csdn这两个博客家园,今天把博客园中的内容迁至csdn,博客名称还是使用cooldream2009,以后的文章将同步在博客园和csdn发表,特此声明.
- Django学习案例一(blog):六. 开发博客内容页面
目标:某条博客具体内容的展示,可返回博客主页面,可进行评论. 1. 编辑路由 一篇博客,要将其找出来,就需要有一个唯一的标识.Django 的模型中默认有一个唯一的且未自增长的主键,即 id 字段.我 ...
- WordPress教程之如何创建博客内容
上两篇教程的链接: Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Hostwinds共享主机vps限时五折优惠链接 现在,你的 WordPress ...
- 使用git ftp发布我个人的hexo博客内容
自己虚拟主机中的博客是由hexo3 + next主题,因为我想将 hexo 编译生成的文件可以通过ftp命令发布到ftp服务器上面. 发布使用的工具是git-ftp: 按照Use Jenkins an ...
- 如何将博客内容输出到pdf
可以按照三类网页插件:Clearly,Instapaper 和 Readability,实际安装发现,第一个装不上,只有最后一个好用.在firefox或者chrom浏览器装好后,右键switch to ...
- 尝试用md编辑器写博客, 内容为 jupyter笔记
Matplotlib tutorial http://www.labri.fr/perso/nrougier/teaching/matplotlib/#introduction %matplotlib ...
随机推荐
- ST
这次说一下测试的基础部分 软件测试 软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.换句话说,软件测试是一种实际输出与预期输出间的审核 ...
- C#程序员经常用到的10个实用代码片段
1 读取操作系统和CLR的版本 OperatingSystem os = System.Environment.OSVersion; Console.WriteLine(“Platform: {}”, ...
- PHP防止跨域提交表单
在提交的服务段的数据进行验证. $servername=$_SERVER['SERVER_NAME'];//当前运行脚本所在服务器主机的名字. $sub_from=$_SERVER[" ...
- HDU--最小路
最小路 Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- C代码实现栈
# include <stdio.h> # include <malloc.h> # include <stdlib.h> //C语言实现栈 //结点 typede ...
- java并发编程(十四)同步问题的内存可见性
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17288243 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另 ...
- SageCRM 快速获取连接中的SID的方法
经常需要使用ajax来修改页面的功能,包括联动.动态加载等. SageCRM的页面必须有SID的,所以要方便的获取它. var getKey = function(key,Url) { if(argu ...
- VB6.0 为批量字体改名
从网上下载了一个字符包,解压以后查看,发现文件名是这种形式:0120_XXXXXX_GBK.ttf,看上去很不雅观.我想改成 XXXXXX简体.ttf 这种形式,但字体有300多个,手动修改太浪费时间 ...
- java 遍历arrayList的四种方法
package com.test; import java.util.ArrayList;import java.util.Iterator;import java.util.List; public ...
- .NET各大平台数据列表控件绑定原理及比较(WebForm、Winform、WPF)
说说WebForm: 数据列表控件: WebForm 下的列表绑定控件基本就是GridView.DataList.Repeater:当然还有其它DropDownList.ListBox等. 它们的共同 ...