为什么早期的 Windows 需要整理碎片
为什么这么设计(Why’sTHEDesign)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对具体实现造成的影响。如果你有想要了解的问题,可以在文章下面留言。记得十几年前还在用早期Windows系统的时候,每用一段时
跳来跳去,到底去大公司还是小公司?
职场生涯总会面临着选择,尤其对我们这些IT人来说,跳槽的频率应该是所有行业中相当大的了。那么我们跳来跳去,究竟该选择什么样的公司?大or小。工作三年多了,经历一大一小,最近也面
Reddit用户长文「哭诉」:我不是算法工程师,我是「调参侠」
首先,问你一个问题,你觉得自己是「调包侠」或者「调参侠」吗?我想不是每个人都有勇气回答,但这种焦虑确实存在每个从业人员心中。各大公司都在研发机器学习平台,想要把搭模块当做积木一样。前两年火爆的神经网络架构搜索
真是抓狂?!糟糕程序员的编程风格
有一种说法是,“一个伟大的程序员相当于10个平庸的程序员”。没有人愿意被贴上了糟糕程序员的标签,但一个可悲的事实是,很多开发人员没有意识到他们自己就属于这一群体。没有人愿意问自己:我是一个糟糕的开发人员吗?糟糕的开发人员如果你还是编程新手
为何程序员总喜欢写技术博客,看完恍然大悟...
程序员是孤独的侠客,一番缠斗后,勇猛战胜了一个惊天动地的Bug!没有掌声,没有迷妹,这些都没什么,因为我们还可以写博客!本文纯属娱乐,如有雷同,呵呵呵呵,祝大家周末愉快!漫画原创公众号:不会笑青年,授权转载请联系微信(laughyouth369),授权后,请在原创发表48小时后转载。
安居客小程序持续交付之路
导读随着小程序的日益发展,对于小程序付过程中的各种问题也越来越值得我们关注,本文介绍了安居客小程序持续交付从无到有的整个过程,以及过程中各阶段遇到的问题、思考及解决方案。背景安居客小程序业务覆盖新房、二手房、租房、商业地产四大核心领域,负责这四块业务的也是不同的团队;与此同时,目前活跃的小程序达到了
万字长文爆肝线程池
我们知道,线程需要的时候要进行创建,不需要的时候需要进行销毁,但是线程的创建和销毁都是一个开销比较大的操作。为
再见 RPM/DEB/TAR,是时候拥抱下一代全平台安装程序 AppImage 了!
AppImage:简单、兼容、无需安装、无需权限、便携并保持基础操作系统不变!AppImage是一种在Linux系统中用于分发便携式软件,且不需要超级用户权限来安装它们的格式。它还允许Linux的上游开发者来分发他们的程序而不用
为什么牛逼的程序员都不用 “ ! = null " 做判空?
程序员的成长之路互联网/程序员/技术/资料共享关注阅读本文大概需要3.5分钟。作者:lizeyang来源:blog.csdn.net/lizeyang/article/details/40040817问题为了避免空指针调用,我们经常会看到这样的语句...if(someobject!=null){so
37岁码农现身说法:大龄程序员找工作
前几天突然接到dk的电话,要和我聊聊天。他说他们部门调整,虽然最后他留了下来,但还是非常焦虑。人无远虑必有近忧,他这次被刺激到了,想提高一下自己,以免下次再有类似的心惊肉跳。但怎么提高呢?程序员第一考虑的当然是技术,但现在真不知道学什么了:干了三四年的开发,手头的工作马马虎虎都没什么问题了。就算有问
java安全编码指南之:文件和共享目录的安全性
简介java程序是跨平台的,可以运行在windows也可以运行在linux。但是平台不同,平台中的文件权限也是不同的。windows大家经常使用,并且是可视化的权限管理,这里就不多讲了。本文主要讲讲linux下面的文件的权限和安全性问题,并且探讨一下如何在java程序中考虑文件的安全性。linux下
java安全编码指南之:序列化Serialization
简介序列化是java中一个非常常用又会被人忽视的功能,我们将对象写入文件需要序列化,同时,对象如果想要在网络上传输也需要进行序列化。序列化的目的就是保证对象可以正确的传输,那么我们在序列化的过程中需要注意些什么问题呢?一起来看看吧。序列化简介如果一个对象要想实现序列化,只需要实现Serializab
web worker的介绍和使用
简介什么是webworker呢?从名字上就可以看出,webworker就是在web应用程序中使用的worker。这个worker是独立于web主线程的,在后台运行的线程。webworker的优点就是可以将工作交给独立的其他线程去做,这样就不会阻塞主线程。WebWorkers的基本概念和使用webwo
java安全编码指南之:线程安全规则
简介如果我们在多线程中引入了共享变量,那么我们就需要考虑一下多线程下线程安全的问题了。那么我们在编写代码的过程中,需要注意哪些线程安全的问题呢?一起来看看吧。注意线程安全方法的重写大家都做过方法重写,我们知道方法重写是不会检查方法修饰符的,也就是说,我们可以将一个synchronized的方法重写成
Web Storage API的介绍和使用
简介WebStorage为浏览器提供了方便的keyvalue存储,是一种比cookie更加方便简洁的存储方式。也是诸多客户端存储方式中非常常见的一种。一起来看看吧。浏览器的本地存储技术除了最早的使用cookie来进行本地存储之外,现代浏览器使用WebStorageAPI来方便的进行key/value
java安全编码指南之:ThreadPool的使用
简介在java中,除了单个使用Thread之外,我们还会使用到ThreadPool来构建线程池,那么在使用线程池的过程中需要注意哪些事情呢?一起来看看吧。java自带的线程池java提供了一个非常好用的工具类Executors,通过Executors我们可以非常方便的创建出一系列的线程池:Execu
java安全编码指南之:Thread API调用规则
简介java中多线程的开发中少不了使用Thread,我们在使用Thread中提供的API过程中,应该注意些什么规则呢?一起来看一看吧。start一个ThreadThread中有两个方法,一个是start方法,一个是run方法,两个都可以调用,那么两个有什么区别呢?先看一下start方法:public
java安全编码指南之:输入注入injection
点击上方的蓝字关注我吧程序那些事简介注入问题是安全中一个非常常见的问题,今天我们来探讨一下java中的SQL注入和XML注入的防范。SQL注入什么是SQL注入呢?SQL注入的意思是,用户输入了某些参数,最终导致SQL的执行偏离了程序设计者的本意,从而导致越权或者其他类型的错误。也就是说因为用户输入的
java安全编码指南之:锁的双重检测
双重检测锁定模式是一种设计模式,我们通过首次检测锁定条件而不是实际获得锁从而减少获取锁的开销。 双重检查锁定模式用法通常用于实现执行延迟初始化的单例工厂模式。延迟初始化推迟了成员字段或成员字段引用的对象的构造,直到实际需要才真正的创建。 但是我们需要非常小心的使用双重检测模式,以避免发送错误。
java安全编码指南之:敏感类的拷贝
一般来说class中如果包含了私有的或者敏感的数据的时候是不允许被拷贝的。 如果一个class不想被拷贝,我们是不是不提供拷贝的方法就能保证class的安全了呢? 一起来看看吧。