Swift 新语言开发「建议收藏」

Swift 新语言开发

大家好,又见面了,我是全栈君。

技术支持热线:http://www.lcpower.cn


全书文件夹:

一、Welcome to Swift

二、Language Guide

三、Language Reference

 

/*

译者的废话:

几个小时前熬夜看了WWDC,各种激动,今年非常有料啊!当看到Swift出来的时候,瞬间傻眼。又要学习新语言了。

这篇文章来自苹果官方的《The Swift Programming Language》一书,500页左右,在苹果官网有下载。Swift大家都没实际用过。本翻译一定是有各种错漏的,各位多多包涵。我会不断更新修正的。

——(博客园、新浪微博)葛布林大帝

*/

 

一、Welcome to Swift

1.关于Swift

  Swift是一种用于iOS和OS X应用的全新编程语言,它建立在最好的C和Objective-C语言中,而且没有C语言的兼容性限制。Swift採用安全的编程模式,添加了现代功能使编程更easy、更灵活、更有趣。

Swift背靠成熟且备受宠爱的Cocoa 和 Cocoa Touch框架的支持,这是一个又一次构想软件开发的机会。

  Swift经过了数年的酝酿,Apple通过改进现有的编译器、调试器和框架结构奠定了Swift的基础,并通过Automatic Reference Counting(ARC)简化了内存管理。Swift的框架建立在坚实的Foundation和Cocoa上。已实现现代化和彻底标准化。 Objective-C本身已经逐步发展到到支持blocks、 collection literals 和modules,使框架採用不中断的现代语言技术。感谢这个基础。我们能够为Apple软件发展的未来引入一种新语言。

  对Objective-C开发人员来说Swift看起来非常熟悉。它具有Objective-C命名參数的可读性和动态对象模型的力量,提供了无缝接入现有Cocoa框架和与Objective-C混编的能力。

建立在这个共同点上,Swift引入了很多新的特性、统一的程序和面向对象的语言部分。

   Swift对于新程序猿是友好的。作为一个具有表现力和娱乐性的脚本语言,它是第一个获得工业品质的系统编程语言。它支持playgrounds。一个同意程序猿调试Swift代码并马上看到结果,而无需重复编译执行程序的新功能。

   Swift结合了最好的现代语言思维和智慧 – 来自广大的苹果project师文化。

编译器针对性能进行了优化。语言也进行了发展优化,而无需不论什么牺牲。它的设计从“Hello World”扩展到整个操作系统,这一切使得Swift对于开发人员和Apple是一个有意义的投资。

   Swift以极好的方式来编写的iOS和OS X应用,并将继续发展与新特性和功能。Swift充满野心。我们已经迫不及待看你能用它创造什么。

 

2.Swift概览

  传统建议新语言的第一个程序应该打印“Hello, World”在屏幕上。在Swift里这仅仅须要一行来完毕。

  Swift 新语言开发「建议收藏」

  假设你在C或Objective-C语言编写过代码。这个语法看起来会非常熟悉 —— 在Swift里,这行代码是一个完整的程序,你不须要为input/output或字符串处理等功能导入一个单独的库。写在全球范围的代码都作为函数的入口点,所以你并不须要一个main函数。也不必在每一个语句的末尾写分号。

  这次概览通过展示怎样完毕各种程序任务来给你足够的信息開始编写Swift代码,假设你不明确的地方。不要操心。这个概览里的一切细节都会在本书后面详解。

   注:为获得最佳体验,在Xcode里把本章作为一个playground打开,playground同意你编辑代码清单。并马上看到结果。

 

2.1.简单值

  使用let创建一个常量,var创建一个变量。一个常量的值并不须要在编译时是已知的,但你必须给它分配一个值一次,这意味着您能够使用常量来命名一个你决定在很多地方使用的值。

  Swift 新语言开发「建议收藏」

  常量或变量必须有同样的类型,你要分配给它的值。然而。你并不总是必须明白写出类型。提供一个值,当您创建一个常量或变量能够让编译器判断出其类型。

在上面的演示样例中,编译器判断出myVariable是整数,由于它的初始值是一个整数。

 

  假设初始值没有提供足够的信息(或者假设没有初始值)。能够在改变后制定类型。用冒号隔开。

  Swift 新语言开发「建议收藏」

  试验:创建一个常数,明白为float类型,而且值为4

 

  值永远不会绝对转换为还有一种类型。假设你须要一个值转换为不同的类型,明白地创建一个所需类型的实例。

  Swift 新语言开发「建议收藏」

  试验:尝试从最后一行除去String的转换,你得到了什么错误?

 

  另一个更简单的方法包括字符串值:把值写在括号里 ,并在括号前写一个反斜线(\)。

比如:

  Swift 新语言开发「建议收藏」

  试验:使用(\),在一个string里包括一个浮点计算,并在一个greeting里包括某个人的名字。

 

  使用方括号([])创建数组和字典,并在括号里写出index和key来訪问它们的元素。

   Swift 新语言开发「建议收藏」

 

  要创建一个空数组或字典。使用初始化语法。

  Swift 新语言开发「建议收藏」 

 

  假设类型信息能够判断,你能够写一个空数组为[]和一个空字典为[;] ——比如。当你设置一个变量的新值或參数传递给函数。

  Swift 新语言开发「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115236.html原文链接:https://javaforall.net

(0)
上一篇 2022年2月7日 上午10:00
下一篇 2022年2月7日 上午10:00


相关推荐

  • idea2021.7.15版激活码【中文破解版】[通俗易懂]

    (idea2021.7.15版激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsaWNlbnNlSW…

    2022年3月21日
    56
  • 做3D游戏建模师有年龄限制吗?

    做3D游戏建模师有年龄限制吗?3D游戏建模师是一门非常火热的行业,现在很多游戏厂商都在高薪招聘3D游戏建模师。因此很多人在想要学习次世代建模技术的同时,又担心企做这个会不会有年龄的限制。其实大可不必担心,因为只要本身具有学习能力,愿意接受新知识,愿意与时俱进的提高自己,那么年龄就不是你的问题。其实年龄大的人从事3D游戏建模行业也是有一定优势的,他们生活阅历丰富,对于如何把握人物建模和场景建模方面的细节会有自己独到的理解。同时又具备一定缺陷,在学习方面会有一定的障碍,因为不管是记忆力还是对新知识的接受能力都会有所下降,所以一定要选择一

    2022年6月3日
    50
  • SQL修改语句

    SQL修改语句如果我们要修改数据库中表的数据,这个时候我们就要使用到UPDATE语句。UPDATE语句的基本语法是:UPDATE<表名>SET字段1=值1,字段2=值2,…WHERE…;例如,我们想更新employees表id=100的记录的last_name和salary这两个字段,先写出UPDATEemployeesSETname=”大哥”,salary…

    2022年6月15日
    267
  • 微信开放平台网站应用扫码登录

    微信开放平台网站应用扫码登录<?phpnamespaceapp\common\wechat;/***微信开放平台*Date:2020/9/080015*Time:上午10:03*/classWXOpenPlatform{privatestatic$appId=’xxxxxxxxxxxxxxxxxxxxxxxxx’;privatestatic$appSecret=’xxxxxxxxxxxxxxxxxxxxxxxxx’;privatestati.

    2022年5月26日
    41
  • GB28181的协议详解

    GB28181的协议详解国标 GB28181 简介 本标准规定了公共安全视频监控联网系统 以下简称联网系统 的互联结构 传输 交换 控制的基本要求和安全性要求 以及控制 传输流程和协议接口等技术要求 本标准适用于公共安全视频监控联网系统的方案设计 系统检测 验收以及与之相关的设备研发 生产 背景 GB28181 协议全称为 GB T28181 安全防范视频监控联网系统信息传输 交换 控制技术要求 是由公安部科技信息化局提出 由全国安全防范报警系统标准化技术委员会 SAC TC100 归口 公安部

    2026年3月20日
    2
  • c语言qq加密具体思路,悄悄告诉你:C语言如何实现QQ密码大盗

    c语言qq加密具体思路,悄悄告诉你:C语言如何实现QQ密码大盗该楼层疑似违规已被系统折叠隐藏此楼查看此楼一般的盗密码的软件的软件都是通过监视键盘来获得密码,这样操作比较方便,但是这样也存在一定问题,密码有的时候不是很准确,因为有的人输入密码并不是从前到后输入,当然这样的人也是少数,盗密码嘛,当然去得到那些比较粗心的人的密码!通过安装钩子来监视QQ登陆界面就是获得密码的方法,在安装前得先找到登陆窗口的句柄,当钩子安装后,记录键盘,当用户“回车”或是点了“登陆…

    2022年7月20日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号