201603-08 TIOBE 2016年3月编程语言排行榜:编程语言呈内部发展趋势 尽管软件行业发展迅速,热门编程语言的发展似乎却成了例外,始终未有太大改变。如果我们将当前TIOBE编程语言排行榜的前十拿出来,与十年前的前十做以比对,就会发现这两份名单完全相同!唯一的不同在于:其中VisualBasic、PHP和Perl与同为十大热门却更现代的C#、Python和JavaScript交换了位置。没错,在这十年间Objective-C确曾进入过十大热门语言,甚至还攀升到了前三的位置,不过在苹果宣布用Swift代替Objective-C之后,它... 继续阅读 >
201603-04 Jetty 8长连接上的又一个坑 Jetty8长连接的超时断开连接的机制:超时连接机制针对IO传输过程中的数据阻塞时间超过一定阈值时,断开该连接。阻塞指当前处于数据传输阶段,但是连续指定时间内都没有发出或者接收到任何数据时,Jetty系统断开该连接。强调一下,只有在数据传输过程中才会有超时机制。在服务端处理已经收到的数据时是不会检测该超时时间的。下面看一下具体的代码实现。在jetty8.1.17版本中,由以下代码控制一个连接的空闲、非空闲和断开检查... 继续阅读 >
201603-04 浅谈iOS的文件操作 一、沙盒路径沙盒主路径:是程序运行期间系统会生成一个专属的沙盒路径,应用程序在使用期间非代码的文件都存储在当前的文件夹路径里面我们通过以下代码可以打印出沙盒主路径NSString*homePath=NSHomeDirectory();NSLog(@"%@",homePath);我们根据打印出的路径前往文件夹可以进入包含DocumentsLibrary和tmp文件夹的文件夹这个就是沙盒主路径Documents:用来存储永久性的数据的文件程序运行时所需... 继续阅读 >
201603-03 IO多路复用深入浅出 Java程序员进阶三条必经之路:数据库、虚拟机、异步通信。前言从零单排高性能问题,这次轮到异步通信了。这个领域入门有点难,需要了解UNIX五种IO模型和TCP协议,熟练使用三大异步通信框架:Netty、NodeJS、Tornado。目前所有标榜异步的通信框架用的都不是异步IO模型,而是IO多路复用中的epoll。因为Python提供了对Linux内核API的友好封装,所以我选择Python来学习IO多路复用。IO多路复用select举一个E... 继续阅读 >
201603-02 假设编程语言是女人 PHP 是你的豆蔻年华的心上人,她是情窦初开的你今年夏天傻乎乎的追求的目标。玩一玩可以,但千万不要投入过深,因为这个女孩有严重的问题。Perl 是PHP的姐姐。她对你来说年龄稍微大了一点,但在90年代,她是相当受欢迎的。她和LarryWall(译注:Perl语言创始人)长期保持着亲密关系,因此她的审美一落千丈,如今她看起来是丑陋不堪。“无论你们怎么评论,我仍然爱她!”,LarryWall说。没有第二个人... 继续阅读 >
201602-25 如何编写函数? 程序中曾经包含子程序和函数(可能我没有经历这种年代),如今,程序中仅有函数这种方式保留下来。编程语言中的函数,分为内置函数和自定义函数或类方法。内置函数可以直接调用,而自定义函数是程序员编写的。函数是程序的极其重要的组成部分,要写好,需要遵守一些原则。函数要短小。函数中不应该容得下嵌套结构,如if...else等。在if..else、while、for或foreach等嵌套结构中,代码不应该超过一行,这唯一一行代码,是对函数... 继续阅读 >
201602-24 Block的整理 1.在B控制器的.h文件中定义声明Block属性typedefvoid(^MyBlock)(NSString*);@interfaceBViewControl:UIViewController@property(nonatomic,copy)MyBlockreturnBlock;@end第一行代码是为要声明的Block重新定义了一个名字MyBlock这样,下面在使用的时候就会很方便。第三行是定义的一个Block属性2. B控制器.m文件中-(void)viewWillDisappear:(BOOL)animated{if(self.MyBlock){self.MyBlock(... 继续阅读 >
201601-09 2015调查报告:程序猿最爱和最怕哪种编程语言? 开发者调查是 StackOverflow 每年都要进行的一次开发者用户调查问卷活动,调查对象为在StackOverflow注册的开发者用户。和以往相比,2015年的调查涵盖面更广,参与人数最多,调查结果包括 157个国家的 26086名开发者。在这些人中,有 6800人是经过认证的全栈工程师,另外还有移动开发者1900人,前端开发者1200人。做这项调查,StackOverflow旨在帮助开发者更好地理解StackOverflow这个社区,同时... 继续阅读 >
201601-07 不要和一种编程语言厮守终生:为工作正确选择 我们程序员在着手一个项目时,需要做的关键决定之一就是选择一种语言,或一组语言,用于实施该系统。这一决定不仅会影响系统的实现,也会影响设计。例如,我们应该使用面向对象的语言还是过程语言?选择什么语言对项目以及作为项目一部分的程序的生命周期有着深远的影响,很多次,我们基于一些非常善变的因素,没有思考太多就去选语言:这语言是我惯常用来实现这类系统的;这语言我了解得最透彻;这是我最喜欢的语言,我很享受于... 继续阅读 >
201512-08 2015年编程语言“钱途”盘点 科学技术工程数学(STEM)人才供不应求、薪水丰厚,这早已不是什么新闻。2007年至2012年,美国网上发布的软件工作岗位增加了31%,增长速度是总体工作岗位的近3倍。美国劳工统计局估计,从2012年至2022年,软件开发员岗位会继续以22%的速度增加,截至2014年5月,应用软件开发员的中位数年薪就达到95510美元。如果你打算学习如何编写代码,会发现编程语言的绝对数量多得惊人,到底该学习哪门语言呢?本文比较了与不同编程... 继续阅读 >
201508-17 2015年最热门编程语言岗位需求及薪资分析 上一回我们讨论了2015年需要学习的最好的编程语言——当我们分析一些流行网站,如GitHub和StackOverflow时,发现JavaScript、Java、PHP和Python都是一些很不错的选择。或者,也许我们还可以从与工作相关的指标来决定要学习的“最佳”技术,例如需求和薪资?职业规划公司Gooroo通过仔细查看了美国、英国和澳大利亚的超过50万份的IT职位空缺,得到了下面这份《2015年的工资和供需报告》。需求量最大的前十项技术以下这些就是在... 继续阅读 >
201505-15 2015年5月TIOBE编程语言排行榜单 五月头条:VisualStudio的语言正在增长对比去年同期在TIOBE榜单占用较大涨幅的是C++(+1.89),C#(+1.52)和VisualBasic.NET(+1.70)。有趣的是这三者都是Microsoft'sVisualStudio的关键性语言。这难道是一个巧合吗?VisualStudio是经得住时间考验的少数商业编程IDE之一。它和Eclipse是工业化化编程中最常见的2个集成化开发环境。所以也难怪C++,C#.VB.NET在不断的增长。TOP20: 21-50... 继续阅读 >
201504-07 编程语言:变革创业思维的工具 腾讯科技讯4月3日,《麻省理工科技评论》本周刊文称,编程语言塑造了用户的思维方式。这也可以反映科技行业创业公司的策略,以及他们为何有能力实现自我变革。以下为文章全文:作为Twitter、Hulu和许多当代互联网服务的开发语言,Ruby备受关注。而当日本计算机科学家松本行宏决定设计这一语言时,他借鉴了萨莫埃尔·德拉尼(SamuelR.Delany)1966年科幻小说《Babel-17》中的概念。这部小说的核心是一种名为“Ba... 继续阅读 >
201503-07 没有代码的编程语言:Folders 之前我们介绍过“Whitespace”编程语言,这是一种很奇葩的编程语言,在“Whitespace”编程语言中,任何非空白的字符都是被忽略的,只有空格符,tab和换行符被认为是有效的语义字符。也就是说,你可以把用“Whitespace”编程语言编写的代码藏在其他的文本、代码中,具有隐形代码的效果。而今天要说的这种语言更是奇葩,它叫做 Folders ,顾名思义,这种语言没有代码,也没有代码文件,这种语言的代码就是... 继续阅读 >
201501-17 你还不够了解的5个脚本语言 从操作系统到基本应用,从游戏到Web页面,脚本语言无处不在。脚本语言让忙碌的开发人员不再循环在"编译-测试-校订"周期里。有了脚本语言,开发者只需要"编辑-运行"。你可能熟知Perl,Python,VBA,JavaScript...今天,我们要来谈谈另外5个脚本语言,虽然你可能还不够熟悉,不过他值得一看。WrenWren是一个基于类的并发开源脚本语言,有5000行左右c写成,前游戏开发者BobNystrom(《theGamesProgrammingPa... 继续阅读 >
201501-12 你需要掌握的三种编程语言 每个编程人员都需要至少掌握三种编程语言。当然,这只是我的一家之言。这是我经过多年养成的观点,也许是偏见,但我能够根据一个人所喜欢的编程语言来快速的了解一个程序员。当我读简历时,我会尝试使用我的这套观念按照“这个程序员为什么要使用这种编程语言”进行分类,我通过我的这些偏见从一堆简历中选出我想要的。一.快乐的语言这是一种你用来思考的语言。这是一种你希望无时无刻不在使用的语言。这是一... 继续阅读 >