你好,你的xcode6.3.2 插件的插件可以用了吗?

Xcode 6.3 Beta发布,Swift 1.2带来哪些新变化?
发表于 16:42|
来源未来眼之老码团队|
作者王芳杰
摘要:苹果发布Xcode 6.3 Beta,更新Swift语言至1.2版本,修改OC语法,进一步提升Swift与OC代码交互性,其代码迁移工具可以帮助开发者实现代码升级。本文作者王芳杰在第一时间对Release Notes进行了完整翻译。
北京时间2月10日,苹果在面向开发者推送iOS 8.3 Beta的同时,还发布了版本号为6D520o的Xcode 6.3 Beta,其中便包含了iOS
8.3 Beta和OS X v10.10 SDK,并进一步提升了Swift与Objective-C代码的交互性,而Swift业已更新至1.2版本。
从看出,Xcode 6.3 Beta包含了很多颇为值得开发者期待的改变,共计50多处改动,同时修改了Objective-C的语法,足见苹果对Swift语言的重视。而其代码迁移工具可以帮助开发者将其代码从Swift 1.1(Xcode 6.1)升级至Swift 1.2(Xcode 6.3),具体执行编辑菜单(Edit)-&转换(Convert)-至(To)Swift1.2即可。
具体更新如下:
Swift语言的增强
Swift现在支持目标增量编译,例如当一个文件改变时不会重新编译Target中的每一个文件。这个基于固有依赖分析。所以你依然会看到有很多文件在必要情况下被重编。如果你发现需要重编但没有重编的情况,请报一个Bug出来。清理Target后再编,会按照往常的流程进行。
增加了一个新的Set数据类型,它提供了元素唯一化,且有完整语义的通用数据类型集合。它和NSSet类型桥接,提供和Array和Dictionary相类似的功能。
if let语句现在被扩展为可以支持多条条件判断:
if let a = foo(), b = bar() where a & b,
let c = baz() {
它允许你测试多种选择,并且包含一个bool判断。当然这种情况不包含嵌套判断。
let常量现在生成时不需要立即初始化,新的规则是let常量必须在被首次使用前初始化即可(和var一样)。或者说它只能被初始化,也就是说在初始化后它不能再被改变或者重新赋值,可用的模式如下:
let x: SomeThing
if condition {
这个正常的来说需要var变量用法,尽管这里没有任何修改的操作。
"Static"静态方法和属性现在允许在class中使用(作为“class final”的别名)。你现在可以在类中声明一个静态存储属性,它享有全局存储空间和首次使用再初始化的惰性构造功能。协议Protocal现在会声明一个static的类型要求而不是声明一个class的要求。
对于表达式闭包的类型引用有了几点改进:
含有单返回语句的闭包现在类型检查时以单表达式闭包处理。
匿名的且含有非空返回类型的单表达式现在可以用在Void上下文中。
多表达式的闭包类型的情况可能无法被类型推断出来,这归功于缺乏返回类型的情况能被正确的推断出来。
Swift中的枚举类型现在可以通过@objc关键字导出到Objective-C中。@objc的枚举类型必须定义一个整型的原始类型,并且该枚举不能泛型化或者不能使用关联值。由于Objective-C中的枚举类型没有命名空间,所以导出到Objective-C中的枚举类型以枚举名字和case项目名字的组合的方式使用。
比如在Swift中的声明:
enum Bear: Int {
case Black, Grizzly, Polar
导出到Objective-C:
typedef NS_ENUM(NSInteger, Bear) {
BearBlack, BearGrizzly, BearPolar
Objective-C语言的扩展语法现在可以判断出Objective-C API中指针或者block的是否为空,同时允许不带ImplicitlyUnwrappedOptional协议地导出Objective-C
Swift现在可以部分支持导入C的联合类型,包括unions、bitfileds、SIMD vector类型以及其他Swift的不支持的C特性。这些不被支持的元素不能在Swift中的直接访问,但是在Swift中,Objective-C或者C可以以参数或者返回类型的方式使用。这包括Foundation
NSDecimal类型、GLKit GLKVector和GLKMatrix类型,以及其他一些类型。
被导入的C结构体现在在Swift中有一个默认的构造器,它会将结构体中的所有的元素初始化为0,例如:
import Darwin
var devNullStat = stat()
stat("/dev/null", &devNullStat)
如果一个结构体的元素不能被正确的初始化为0(比如被标记为新的_nonnull标示符时),这个默认的构造器将会终止。
String的索引类型间新的转换API现在可以用了,如String、String.UnicodeScalarView、String.UTF16View以及String.UTF8View,
同时每个String View转换为String的函数也可使用。
类型值在println函数或者字符串内插算法中现在可以打印完整的类型名称了:
toString(Int.self) // 打印 “Swift.Int"
println([Float].self) // 打印 "Swift.Array&Swift.Float&”
println((Int, String).self) // 打印 "(Swift.Int, Swift.String)"
一个新的“@noescape”属性可以用在函数的闭包参数上,这意味着这个参数是唯一可被调用的(或者用在函数调用时以参数的方式出现),其意思是它的生命周期比函数调用的周期短,这有助于一些小小的性能优化,但最重要的是它屏蔽了闭包中对self.的需求。这使得函数的控制流比其他更加透明。在未来的beta版本中,标准库函数将普遍采用这种特性,比如autoreleasepool():
func autoreleasepool(@noescape code: () -& ()) {
pushAutoreleasePool()
popAutoreleasePool()
相比Swift 1.1,Swift 1.2在很多方面的性能上有本质的提高,比如多维数组算法更快,未优化的代码更加快速。
表达式类型的错误诊断有了很大的提高。
很多通用表达式的检查效率有很大提高,这个有助于降低编译时间和减少“expression too complex”的错误。
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章盘点开发者最喜爱的十大开源Xcode插件
发表于 17:50|
作者唐小引
摘要:Xcode IDE拥有着众多非常高大上的工具,而予以辅助的插件更是在Xcode的基础上对相关功能进行改进与扩展。本文总结介绍了备受开发者喜爱的10款开源Xcode插件,涉及代码编辑、注释、管理等各个方面。
6. Fuzzy Autocomplete是一款Xcode 5代码自动补全插件,支持Xcode 5.0、5.1,兼容KSImageNamed,其开发者为来自澳大利亚墨尔本的Jack Chen(创始人)和波兰华沙的Leszek ?la?yński(Fuzzy Autocomplete v2.0作者)。Fuzzy Autocomplete通过添加模糊匹配来提高Xcode代码自动补全功能,开发者无需遵循从头匹配原则,只要记得方法中的某个关键词即可进行匹配,极大地提高了工作效率。相关链接:Fuzzy Autocomplete的7. BBUDebuggerTuckAway是一款支持自动隐藏Debugger的Xcode插件,其开发者为来自德国柏林Contentful GmbH公司的。使用BBUDebuggerTuckAway,开发者能够实现在编辑代码时,自动隐藏底部的调试栏。相关链接:BBUDebuggerTuckAway的8. Dash Xcode plugin是Bogdan Popescu开发的一款集成了Dash文档查看器应用的Xcode插件,允许开发者在使用Option-Click或作用相同的快捷键操作查看当前文本的相关文档时,用Dash代替Xcode的文档查看器。相关链接:Dash-Plugin-for-Xcode的9. 兼容Xcode 5.1的HOStringSense可以说是大段文本利器,对于开发者而言,在输入大段文本时,如果文本中包含了各种换行和特殊字符,那是相当地头疼,但通过HOStringSense,一切的问题都将迎刃而解。HOStringSense由来自德国的Mac和iOS开发者Dirk Holtwick开发,完美支持编辑正则表达式、多行文本、内联HTML等,还提供了极为快速的字符串长度统计反馈。相关链接:HOStringSense-for-Xcode的10. 最后,再来介绍一款颇受大神喜爱的,出自国内iOS开发者之手的注释辅助插件——XToDo。这款由UniT微博客户端作者TraWor所开发的插件,可以将项目代码中的TODO、FIXME等注释进行收集并列举出来。相关链接:XToDo的亲爱的开发者们,在Xcode中,你最喜欢使用哪款插件?不妨在这里和我们一起分享吧。(文/唐小引 责编/刘璐璐)本文为CSDN原创文章,未经允许不得转载,如需转载请联系market#csdn.net(#换成@)
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章Xcode及模拟器SDK下载 - CSDN博客
吐槽下,百度打着无限分享的旗号,却又让分享资源过期,让分享者持续维护如果你嫌在App Store下载Xcode太慢的话,你也可以选择从网络上下载:Xcode下载(Beta版打的包是不能提交到App Store上的)Xcode 7 Beta:这个版本更新巨大,不仅带来了 Swift 2.0,OC 的集合类型还增加了对泛型的支持(详情看),如数组可以这样申明:@property NSMutableArray&NSDate *& *Xcode 6.3.2:只支持Yosemite,主要是修复 Bugs 和增加稳定性Xcode 6.3:这个版本只支持Yosemite,如果遇到插件不可用的情况,看。Xcode 6.3 beta4 with Swift 1.2:这个版本只支持Yosemite,主要改变有针对OC的Nullability特性。具体看。Xcode 6.2 正式版:兼容Mavericks 和Yosemite,如果遇到插件不可用的情况,看。Xcode 6.3 beta 2 with Swift 1.2:必须要Yosemite,对Swift的语法又有一些改变(比如在if let 中可以使用条件判断了,看),同时编译器的警告也会变多。Xcode 6.3 beta with Swift 1.2:必须要Yosemite,关于这个版本的详情信息,可以看。Xcode 6.2 Beta 4:最近这几个版本都是以修复Bugs为主,Beta 4也不例外。Xcode 6.2 Beta 2:Xcode 6.2 Beta:Xcode 6.1.1 GM SEED:支持Yosemite和Mavericks。Xcode 6.1 正式版:这个应该就是6.1的正式版了,支持Yosemite和Mavericks,包含iOS 8.1、OS X 10.10 、OS X 10.9的SDK,其中对Swift的语法和一些方法又有一些小改动。Xcode 6.1 GM seed for OS X Yosemite:Xcode 6.1 Beta3:Xcode 6.1 Beta2(Swift 1.1):Xcode 6.1&Yosemite版:Xcode6 GM版:Xcode6 Beta7:Xcode6 Beta6:这是修复崩溃Bug的版本,版本号是(6A280e)。国内小水管下载相当不易。。支持的顶一下。。。注:如果安装Xcode6 Beta6之后,编译之前的项目出现forceBridgeFromObjec以及getter、setter的问题,具体看。Xcode6 Beta5:可以说目前Xcode的每一个Beta版都修复了很多问题,如果你在用Beta版的话,保持最新总能解决很多疑难杂症。这一版中,对Swift的跳转定义终于变得好用了。模拟器下载注意:现在的Xcode 6.x 似乎只支持iOS 7.0及之后的版本,早期的模拟器运行时不支持新的CoreSimulator架构,只有Xcode 5.1才支持iOS 6.x的模拟器。并且iOS 7.0的模拟器只能在OS X Mavericks里运行。旧版安装方法(Xcode 6以前的版本):安装SDK就等于安装了模拟器,如果你嫌Xcode下载SDK太慢的话,可以选择手动安装,具体的手动安装方法:解压后放到以下目录即可。/Applications/{{Xcode App}}/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/新版安装方法(Xcode 6):新的 Xcode 并不会识别 SDKs 目录下的模拟器,我经过一些尝试以后,发现要放在这个目录下:/Library/Developer/CoreSimulator/Profiles/Runtimes/而且与旧版的模拟器不同,新版模拟器是以simruntime为后缀打包的(其实还是一个目录),以7.1的模拟器为例:如果这个目录不存在的话,可以尝试用 root 权限创建这个目录:进入终端获取root 权限:sudo -s再创建这个目录:mkdir -p &/Library/Developer/CoreSimulator/Profiles/Runtimes/执行复制:cp -R &{模拟器路径} &/Library/Developer/CoreSimulator/Profiles/Runtimes/{模拟器}如:cp -R /Volumes/IOS\ /Xcode\ Simulators/iOS\ 7.1.simruntime &/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS\ 7.1.simruntime创建后查看这个目录的信息,会看到权限拥有者是 【system】而不是【你的用户名】权限不正确的情况下也能直接修改(除了模拟器本身的权限,还有它父级目录的权限):sudo chown -R root:wheel iOS\ 7.1.simruntime以后的模拟器我都以加密的形式分享整个目录:提取码:x5tx以下这些下载地址过时(Xcode 6不适用):iPhone Simulator 8.0 SDK:iPhone Simulator 7.1 SDK:iPhone Simulator 6.1 SDK:持续更新...Alcatraz在Xcode6.3.2版本不启动的解决
时间: 23:50:24
很多人Xcode6.3.2版本后,Alcatraz了,解决:
在命令行执行以下命令:
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
E969541F-E6F9-4D25-45A6C6
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add E969541F-E6F9-4D25-45A6C6
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
找到uuid,E969541F-E6F9-4D25-45A6C6
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add&E969541F-E6F9-4D25-45A6C6
以上不能解决的,继续看,
在打开Xcode时是否注意到一个:
你点了什么??如果点了“Skip”的,看下面
在命令行执行:
defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-6.3.2
再重新打开Xcode,会弹出提示,点击“Load”
现在应该可以用Alcatraz了
:http://pablin.org//re-enable-alcatraz-on-xcode-6-dot-3-2-or-newer
$T.total > 0 && $T.page <= $T.pageNum}
{#foreach $T.data as r}
{$T.r.formt_tm}{#if $T.r.nickname}{#else}匿名{#/if}
{$T.r.content}
{#if $T.page > 1 && $T.pageNum > 1)
$T.s_num > 2}
{#for index = $T.s_num to $T.e_num}
$T.pageNum > $T.pageNavSize+ 2 && $T.s_num != $T.pageNum - $T.pageNavSize}
{#if $T.pageNum > 1}
{#if $T.pageNum != $T.page && $T.pageNum > 1}
<a href="javascript:void(0);" page="{$T.page 下一页
您的回应...
也许你感兴趣
(C)2012 本站提供的内容来源于广大网络用户,我们不保证内容的正确性。如果转载了您的内容,希望删除的请联系我们!

我要回帖

更多关于 xcode6.3.2下载 的文章

 

随机推荐