
详解Java中的注解
在Java中,注解(Annotation)引入始于Java5,用来描述Java代码的元信息,通常情况下注解不会直接影响代码的执行,尽管有些注解可以用来做到影响代码执行。

如何教会非计算机专业的女友写代码
女友14年本科毕业,学的是商科,大学里一点编程都没接触过,毕业后也从事与编程无关的工作,工作了一年多觉得工作不合适自己,想换一份持续学习、有挑战的工作;与此同时在我的耳濡目染下渐渐对写程序产生了兴趣,于是我们就做了大胆的决定,转程序媛吧。

7款应用最广泛的Linux桌面环境盘点
多样性应该是 Linux 最好的特性之一,用户可以不断尝试各种喜欢和新鲜玩法与花样,并从中找出最适合自己的应用。无论你是 Linux 新人还是老鸟,层出不穷的应用和桌面环境可能都会让我们应接不暇,特别是尝试不同的 Linux 桌面环境,可以说是一项非常耗时和累人的任务。

使用Cookie前缀让Cookie更安全
就像 SameSite-cookies 我已经关注 Cookie 前缀很长时间了。通过测试我发现在最新版的 Chrome-dev 浏览器中 Cookie 前缀已经得到了支持。那么现在是时候写一短篇博客来介绍什么是 Cookie 前缀以及 Cookie 前缀是如何保护用户的。

关于WEB前端开发的思考与感悟
最近几年对于web前端的传闻很多,比如人才稀缺,简单易学,待遇丰厚,整体势头发展良好等等。遇到过一个不太熟搞后台开发的同事跑来问我学习前端需要掌握哪些内容,也听说过一个搞IOS开发准备自学前端半个月然后要去找前端工作,也曾看到过有人对前端市场人才的稀缺这样吹捧过:

Facebook与谷歌工作环境有哪些不同?看好了再选择
美国知名调查机构 PayScale 的披露的独家数据显示,Facebook 与谷歌在今年全美最佳工作公司 50 强榜单上,均进入了前五名。两家公司在招聘最优秀和最明智的员工方面也都展开了极其激烈的竞争。对于求职者而言,如果需要考虑是到 Facebook 还是到谷歌工作的话,该做出什么样的决定呢?为了让求职者更加容易地做出选择,在此我们将双方作为雇主的一些特点进行了比较,供求职者们参考。

程序员的10000个小时理论
比尔自己感觉,从不精通到“和编程融为一体”花了2个学期。再之后,他就走上了不断创造神作的道路,最终位列史上最牛逼的十位编程达人之首,他的许多敲代码经历也都成了“传说”。

Linux程序员福音:在 Visual Studio 上用 C++ 写 Linux
如今我们正在开发一个新的插件,一个能够让开发者在 Visual Studio (以下简称 VS ) 上建构能够在 Linux 上运行 C++ 程序的套件。开发者可以借由这个插件将 C++ 程序移转到 Linux 服务器、PC 以及移动设备上,也同时可以借由这个插件将这些机器连结至你的 VS 上。

最快最简单的排序算法:桶排序
在我们生活的这个世界中到处都是被排序过的。站队的时候会按照身高排序,考试的名次需要按照分数排序,网上购物的时候会按照价格排序,电子邮箱中的邮件按照时间排序……总之很多东西都需要排序,可以说排序是无处不在。现在我们举个具体的例子来介绍一下排序算法。

独立开发者:详解3天完成的手游研发过程
首先,这款游戏是 3 天做出来的,如果你不擅长的话,可能很难理解。需要先说明的是,这个博客不是教大家如何编程、如何使用 Unity,也不是教大家如何使用 Photoshop 或者 Illustrator 的。

我经历的IT公司面试及离职感受
我真的只是个不算太差的三四流程序员,交待完背景,开始正文,下文涉及的公司主要有:甲骨文数据公司,三星通信研究院、腾讯;阿里巴巴、网易公司、欢聚时代、唯品会、猎豹移动;卓望公司、4399 游戏、爱拍、PP 金融、酷狗音乐、TCL 多媒体。我一个个说,有在职的就有离职过程感受,看不下去可以乘搜索电梯直达。

21层代码嵌套
大约21个月之前,那时候我还不知道什么是回调(callback),我建立了我的第一个网页。为了纪念这21个嵌套的回调,我觉得现在是回顾这个网页的时候了。

给Python初学者的一些技巧
以下是我近些年收集的一些Python实用技巧和工具,希望能对你有所帮助。

iOS并发(concurrency)概念浅析
在进行iOS开发过程中,我们常会遇到网络请求、复杂计算、数据存取等比较耗时的操作,如果处理不合理,将对APP的流畅度产生较 大影响。除了优化APP架构,并发(concurrency)是一个常用且较好的解决方法,但并发涉及串行、并发、并行、同步、异步、多线程、GCD、 NSOperation和NSOperationQueue等诸多容易混淆的概念,为求概念清晰明了,还请茗茶静坐,听我徐徐道来。

JavaScript函数柯里化的一些思考
言归正传,什么是函数柯里化?函数柯里化(curry)就是只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数。听得很绕口,其实很简单,其实就是将函数的变量拆分开来调用:f(x,y,z) -> f(x)(y)(z)。

浅谈 Java 中 MongoDB NoSQL数据库使用指南
MongoDB是当今非常流行的一款NoSQL数据库,本文介绍如何使用MongoDB的Java驱动来操作MongoDB。

加快Android编译速度的一些技巧
之前加快Android编译的工具相对较少,其中最具有代表性的开源项目当属FaceBook的Buck和 mmin18的LayoutCast,除此之外还有JRebel 和 Jimulabs。不过前两天google宣布推出Instant Run加快Android 编译速度,相信对其他的工具来说都是一次冲击,这也是写这篇文章的动机。

安卓之父Andy Rubin:要把互联网现实化
们会将 2016年 视为阶段更迭的开端—— 这种变化无异于 2001年 谷歌搜索的异军突起,或是 20 世纪 80年 代中期电脑运算的出现。2016年 将会被人们铭记,因为在这一年里,互联网突破了黑色玻璃屏和荧光显示器的限制,将现实世界也包括了进来。它被称为驱动互联网( Actuated Internet) —— 现实世界对象的良性循环、大规模人工智能,以及能操控我们生活中一切有价值的事物的命令与控制。 Rubin 和他的合伙创始人 Bruce Leak、 Peter Barrett、Matt Hershenson 打赌他们名叫 Playground 的新公司将在实现这一目标的过程中发挥核心作用。

你确实应该学习并使用的 10 个 C# 特性
如果使用得当的话,yield 会变得非常强大。它使得你延迟生成序列中的对象,比如当系统不需要枚举整个集合的时候,可以按需停止

我是如何学习 Linux 的
为何要学习 Linux?这个问题可能困扰着很多 Linux 初学者和爱好者,其实我也说不上来为何要学习 Linux,可能最实在的理由就是—-Linux 相关工作岗位很多。在“见到” Linux 的第一面并不会感觉到此物有多么惊艳和神奇,但经历了漫长的学习和接触之后,你会发现它是如此的让人神往和愉悦。

Twitter是如何做到每秒处理3000张图片的?
如今,Twitter每秒可以创建并保存3000张(20GB)的图片。2015年,Twitter甚至从对媒体存储策略的优化中节省出了600万美元。

如何选择 HTML5 游戏引擎
原生手游市场已是红海,腾讯、网易等寡头独霸天下,H5游戏市场或将成为下一个风口。据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折。如何选择适合团队和项目的引擎,笔者通过学习和项目实践,总结微薄经验,供大家参考,非技术人员也可以将本篇内容作为引擎选择的重要关注点。

编写高质量的代码——从命名入手
不知道大家有没有这种感觉,查看一些开源项目,如Spring、Apache Common等源码是一件赏心悦目的事情?

安全专业人士最爱的19个GitHub开源项目
GitHub上有许多开源项目可供安全专业人士选择,而且每天都有新的项目出现。不妨将这些项目添加到你的工具库,让你工作起来更得心应手。下面介绍了一些最出色的开源安全项目,负责保护系统和网络的人都应该仔细看一看。我们按任务性质对它们进行了归类,以便查阅:

史上最牛的5次黑客攻击!比电影还刺激!
好莱坞认为,黑客就像是使用计算机的黑魔导士。在电影中,计算机可以炸毁房屋,关闭公路,释放瘟疫还有引发女权运动。也许有人认为,好莱坞的想象力很丰满,但现实是骨感的。他们错了,因为在现实中,确实也有如电影所描述的黑客行动,而且刺激程度绝对不亚于电影。