因为最近事情比较多,有一段时间没有发表博客了。前一段时间,利用空余时间翻译了一本关于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语言)的更多相关文章

  1. 一个基于Vue.js+Mongodb+Node.js的博客内容管理系统

    这个项目最初其实是fork别人的项目.当初想接触下mongodb数据库,找个例子学习下,后来改着改着就面目全非了.后台和数据库重构,前端增加了登录注册功能,仅保留了博客设置页面,但是也优化了. 一.功 ...

  2. Scrapy爬取自己的博客内容

    python中常用的写爬虫的库有urllib2.requests,对于大多数比较简单的场景或者以学习为目的,可以用这两个库实现.这里有一篇我之前写过的用urllib2+BeautifulSoup做的一 ...

  3. CSDN博客导出工具 Mac By Swift

    写这篇文章的主要目的是了解Swift语言本身,如何以及Objc和第三方交互框架 必须先用CSDN帐户登录.您可以导出所有的博客文章,加入YAML当首标信息,包括对应标签和分类在头制品信息,和底座式(原 ...

  4. 以前的博客内容迁至CSDN,博客名不变,以后博客将在两个平台同步更新

    为了更好的利用博客园和csdn这两个博客家园,今天把博客园中的内容迁至csdn,博客名称还是使用cooldream2009,以后的文章将同步在博客园和csdn发表,特此声明.

  5. Django学习案例一(blog):六. 开发博客内容页面

    目标:某条博客具体内容的展示,可返回博客主页面,可进行评论. 1. 编辑路由 一篇博客,要将其找出来,就需要有一个唯一的标识.Django 的模型中默认有一个唯一的且未自增长的主键,即 id 字段.我 ...

  6. WordPress教程之如何创建博客内容

    上两篇教程的链接: Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Hostwinds共享主机vps限时五折优惠链接 现在,你的 WordPress ...

  7. 使用git ftp发布我个人的hexo博客内容

    自己虚拟主机中的博客是由hexo3 + next主题,因为我想将 hexo 编译生成的文件可以通过ftp命令发布到ftp服务器上面. 发布使用的工具是git-ftp: 按照Use Jenkins an ...

  8. 如何将博客内容输出到pdf

    可以按照三类网页插件:Clearly,Instapaper 和 Readability,实际安装发现,第一个装不上,只有最后一个好用.在firefox或者chrom浏览器装好后,右键switch to ...

  9. 尝试用md编辑器写博客, 内容为 jupyter笔记

    Matplotlib tutorial http://www.labri.fr/perso/nrougier/teaching/matplotlib/#introduction %matplotlib ...

随机推荐

  1. React-Native -课后练习

    import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, } fro ...

  2. ACCEPTANCE CRITERIA FOR USER STORIES

    One of the teams I have recently coached quickly got a grasp of how to phrase user stories but found ...

  3. Convert PLY to VTK Using PCL 1.6.0 使用PCL库将PLY格式转为VTK格式

    PLY格式是比较流行的保存点云Point Cloud的格式,可以用MeshLab等软件打开,而VTK是医学图像处理中比较常用的格式,可以使用VTK库和ITK库进行更加复杂的运算处理.我们可以使用Par ...

  4. Smart3D系列教程5之 《案例实战演练2——大区域的地形三维重建》

    一.前言 Wish3D出品的Smart3D系列教程中,前面一讲说明了小物件的照片三维重建,相信大家对建模的流程有了一定的了解.这次讲解中,我们将演示说明以一组无人机倾斜摄影照片为原始数据,通过Smar ...

  5. pythonchallenge 解谜 Level 5

    第五关的确很坑爹... 不过,根据之前的思路,我想着是把信息放在了 “源码” 中. 翻了下源码.有用的东西在以下部分. <html><head> <title>pe ...

  6. Kafka设计解析(一)- Kafka背景及架构介绍

    本文转发自Jason’s Blog,原文链接 http://www.jasongj.com/2015/01/02/Kafka深度解析 背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅 ...

  7. ELK+Kafka集群日志分析系统

    ELK+Kafka集群分析系统部署 因为是自己本地写好的word文档复制进来的.格式有些出入还望体谅.如有错误请回复.谢谢! 一. 系统介绍 2 二. 版本说明 3 三. 服务部署 3 1) JDK部 ...

  8. Oracle EBS - Doc

    Oracle EBS spec.: http://vianet/IT/IT%20Dept/IT%20Project%20Update2/Active%20Projects%20%20Manufactu ...

  9. C#程序代码分析(第三周)

    刚开始看到这段程序,都不知道是什么东西,问过室友才知道是C#程序:但对C#一点都不了解,最基本的项目建设都不会,在室友的帮助下,以及在网上搜了一些资料,勉强算是完成了此次作业吧. using Syst ...

  10. gdb调试工具vi编译器命令参考网址

    vi编译器命令:参考http://www.cnblogs.com/junw_china/articles/1708967.html gbd调试命令:参考http://blog.chinaunix.ne ...