码农在囧途 随着时间的推移,曾经我们觉得重要的东西,可能在今天看来是如此的浅薄和无知,同理,今天我们放不下,想不开,觉得重要的东西,多年后我们可能也会觉得也就那样,所以,今天的的所有烦恼,忧愁,想不开,其实我们都没必要过于在意,因为有些东西随着时间的冲刷,也就那样了. 前言 Java8提供了Optional接口,Optional接口能够是我们的代码变得更加的优雅,可读性更高,同时能够很好的避免空指针,因为空指针是一个很让人头疼的问题,特别对于调用第三方接口,如果不知道对象的规约的时候,我们在取值…
一.前言 如果要给 Java 所有异常弄个榜单,我会选择将 NullPointerException 放在榜首.这个异常潜伏在代码中,就像个遥控炸弹,不知道什么时候这个按钮会被突然按下(传入 null 对象). 还记得刚入行程序员的时候,三天两头碰到空指针异常引发的 Bug,解决完一个,又在另一处碰到.那时候师兄就教我,不要相信任何『对象』,特别是别人给你的,这些地方都加上判断.于是代码通常为会变成下面这样: if(obj!=null){ // do something } 有了这个防御之后,虽…
简介 lambda表达式,又称闭包(Closure)或称匿名方法(anonymous method).将Lambda表达式引入JAVA中的动机源于一个叫"行为参数"的模式.这种模式能够解决需求变化带来的问题,使代码变得更加灵活.在JAVA8之前,参数模式十分啰嗦.Lambda表达式通过精简的方式使用行为模式克服了这个缺点 解决什么问题 传递行为.它允许我们将函数当成参数传递给某个方法,或者把代码本身当作数据处理,变成了一等公民.解决重复的代码片段和代码包裹问题. 内置抽象行为.把常见的…
首页   登录注册         CSS 黑魔法小技巧,让你少写不必要的JS,代码更优雅 阅读 8113 收藏 927 2017-09-26 原文链接:github.com 腾讯云容器服务CSS,立即免费体验容器集群吧!cloud.tencent.com 之前不久,由于自己平时涉猎还算广泛,总结了一篇博客:这些JavaScript编程黑科技,装逼指南,高逼格代码,让你惊叹不已,没想到受到了大家的欢迎,有人希望能博主还能整理个 CSS 的一些黑魔法小技巧,无奈我 CSS 一直很渣,没什么干货,最…
此文已由作者吴佳祥授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 好吧我承认这是篇任务. 最近看到个消息,ES2017已经定稿了,心想,我去,还完全没了解ES2016呢,ES8就定稿了,out了,这可咋办,赶紧Google(Baidu)去! 不过从ES6(2015)之后,tc39的规划是一年一个版本,所以ES7跟ES8也不会像ES6那么大的步子.粗略瞟了一眼,咦,装饰器(Decorator)还没到 Stage 3啊,好吧不过已经到了2了,想必之后还是会慢慢纳入的,就先了…
[前言] 大家好,我是TANZAME.出乎意料的,我们在立冬的前一天又见面了,天气慢慢转凉,朋友们注意添衣保暖,愉快撸码.距离 TZM.XFramework 的首秀已数月有余,期间收到不少朋友的鼓励.建议和反馈,在此致以深深的感谢. 不少围观的朋友经常问题我,.NET 体系下优秀的 O/RM 官方的有EF,第三方的有linq2db (国外).StackExchange/Dapper (国外).NHibernate (国外).PetaPoco (国外).Freesql (国内)等等,What's…
在C#中, 适当地使用Lambda表达式, 可以让我们的代码更优雅. 通过lambda表达式, 我们可以很方便地创建一个delegate: 下面两个语句是等价的 Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/-->//using delegate syntax Func<int, int> f = delegate(int i) { retur…
英文好的,可跳过,直接打开底部的“参考“链接. 代码变序--reordering of memory operations 大概4年前,阅读了这篇文章后http://www.albahari.com/threading/,我就自我满足,多线程编程不过就是用那些工具而已. 今天,读了一篇文章后,http://msdn.microsoft.com/en-us/magazine/jj863136.aspx,才发现C#代码是可以变序的(上面的文章也提到了,忘得一干二净). 举例,你写出如下的代码 voi…
先定义一个实体类 @Data @AllArgsConstructor @NoArgsConstructor public class Human { private String name; private int age; } 下面的操作都基于这个类来进行操作.这里面使用了Lombok类库,它用注解的方式实现了基本的get和set等方法,让代码看起来更加的优雅. JAVA8之前的List排序操作 在Java8之前,对集合排序只能创建一个匿名内部类 new Comparator<Human>(…
[如何让代码变“高级”(二)]-这样操作值得一波666(Java Stream)(这么有趣) 开发中的代码 在开发中的代码是不是很常见这样的代码: 这样的? for循环取元素取值 List<User> szUserList = new ArrayList<>(); for (User user : userList) { if (user.getAddress().equals("shenzhen")) { szUserList.add(user); } } 或…