刚刚在收集各个移动平台浏览器的User-Agent(参见这里: 收集几个移动平台浏览器的User-Agent)的时候,遇到了这3个网站,觉得以后还是会用得到的,这里收藏一下,检测浏览器User-Agent信息的网站,如果你手里有不同的上网设备,通过这3个网站(其中之一就可以)来检测下该设备浏览器的User Agent,欢迎留言给我,我更新到 收集几个移动平台浏览器的User-Agent这篇文章里,争取收集更多的设备User Agent。 这3个检测浏览器User-Agent信息的网站为: 1. http://whatsmyuseragent.com/ 2. http://whatsmyua.com/ 3. http://www.useragentstring.com/ 如果你想是用Chrome模拟不同的设备体验网站的话, 可以看下这个文章Chrome下简洁的方法修改User…
August 24, 2015
Swift与Objective-C的对比
系列(一)
WWDC 2014上苹果再次惊世骇俗的推出了新的编程语言Swift 雨燕, 这个消息会前没有半点风声的走漏。消息发布当时,会场一片惊呼,相信全球看直播的码农们当时也感觉脑袋被敲了一记闷棍吧。于是熬夜学习了Swift大法, 越看越想高呼 ” Swift大法好!“
程序员,最讲究的就是实事求是和客观,下面就开始对比两种语言。
首先要强调的是,Swift绝对不是解释性语言,更不是脚本语言,它和Objective-C,C++一样,编译器最终会把它翻译成C语言,也就是 说编译器最终面对的其实都是C语言代码( 这是千真万确,不容置疑的!!!所以不要看它长的想脚本语言,其实它是比Java, C#要高效的多的C语言!!!),但是Swift的强大之处在于它站在所有语言的肩膀上,吸取所有语言的精华。
这个系列我们先谈谈几个最基本的语法变化:
- Swift终于放弃了Objective-C那幺蛾子般的 [ obj method:x1 with:x2] 的语法,终于跟随了大流,变成了obj.method( )的顺眼模式。虽然对于Objective-C的程序员来说,这些[ ]看上去特显酷 , 你们知道就是这个中括弧吓跑了多少c++, java , c#的程序员嘛?所以说这个小小的变化,可以让苹果的开发更平易近人,对有其他开发语言基础的人来说更友好。
但苹果不会这么自甘平庸,我们知道Objective-C里方法的调用有种语法是其他主流语言没有的,那就是标签。我们在使用java, C++, C, C#等语言时,如果使用 rect.set( 10, 20, 100, 500 ), 虽然在写set方法的时候,IDE有提示四个形参的含义,但写完后,这句代码中10, 20, 100, 500是社么意思? 所以代码的可读性就变的很差, 而Objective-C很完美的解决了这个问题 :