avatar
文章
360
标签
49
分类
10
首页
时间轴
分类
关于
Logo只有那年胜过年年
搜索
首页
时间轴
分类
关于

只有那年胜过年年

恭喜微微软喜当爹,Github 嫁入豪门。
发表于2025-10-30|程序人生
今天是 Github 嫁入豪门的第 2 天,炒得沸沸扬扬的微软 Github 收购事件于昨天(06月04日)尘埃落定,微软最终以 75 亿美元正式收购 Github。 随后,Gitlab 趁势带了一波节奏,在其官网上祝贺 Github 被微软收购,并表示此次收购代表着软件开发者的影响力的日渐增长,将软件开发的下一个发展看成是每个人都可以贡献的世界。 原文:https://about.gitlab.com/2018/06/03/microsoft-acquires-github/ 更有网友称这是一桩最滑稽的收购案,世界上最大的闭源公司收购了世界上最大的开源公司。 微软公司的实力不用说,操作系统、办公套件几乎被微软垄断,你没见过国内用 Linux 系统上班的吧,Mac 也只是小众,太贵,也并不是所有普通人能用得起的。 Github 作为后起之秀,成立于 2008 年 4 月,截至 2018 年 3 月已刚好 10 年,其开源社区就已超过 2800 万开发人员,以及 8500 多万个代码库。我们 Java 的各种开源框架如 Spring、Mybatis、Dubbo 等都是托管在 ...
屌炸天,Oracle 发布了一个全栈虚拟机!
发表于2025-10-30|程序人生
前阵子,Oracle 发布了一个黑科技 “GraalVM”,号称是一个全新的通用全栈虚拟机,并具有高性能、跨语言交互等逆天特性,真有这么神奇? GraalVM 简介GraalVM 是一个跨语言的通用虚拟机,不仅支持了 Java、Scala、Groovy、Kotlin 等基于 JVM 的语言,以及 C、C++ 等基于 LLVM 的语言,还支持其他像 JavaScript、Ruby、Python 和 R 语言等。 GraalVM 有以下几个特性。 更加高效快速的运行代码 能与大多数编程语言直接交互 使用 Graal SDK 嵌入多语言 创建预编译的原生镜像 提供一系列工具来监视、调试和配置所有代码 官网:http://www.graalvm.org/ GraalVM 有什么用?1、支持多种语言组合编程来看下面这段代码,来自官网。 const express = require('express'); const app = express(); app.listen(3000); app.get('/', func...
Java 13 发布了!
发表于2025-10-30|程序人生
通告一下,Java 13 09/17 发布了,尝鲜地址: https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK13 大家知道就好,有兴趣的在本地捣鼓一下,应该没人说想用在生产吧。。 Java 13 新特性介绍: https://www.oracle.com/technetwork/java/javase/13all-relnotes-5461743.html#NewFeature 大家先了解下吧,后面栈长有时间会出下 Java 13 方面的新特性教程。 Java 12 的已经写了几篇,有兴趣的可以学习下。 《Java 12 骚操作,String居然还能这样玩!》 《Java 12 骚操作,switch居然还能这样玩!》 《Java 12 骚操作,文件对比居然还能这样玩!》 还有好多,不一一列举了:
阿里巴巴制定了这 16 条设计规约!
发表于2025-10-30|程序人生
1、【强制】存储方案和底层数据结构的设计获得评审一致通过,并沉淀成为文档。说明:有缺陷的底层数据结构容易导致系统风险上升,可扩展性下降,重构成本也会因历史数据迁移和系统平滑过渡而陡然增加,所以,存储方案和数据结构需要认真地进行设计和评审,生产环境提交执行后,需要进行 double check。 正例:评审内容包括存储介质选型、表结构设计能否满足技术方案、存取性能和存储空间能否满足业务发展、表或字段之间的辩证关系、字段名称、字段类型、索引等;数据结构变更(如在原有表中新增字段)也需要进行评审通过后上线。 2、【强制】在需求分析阶段,如果与系统交互的 User 超过一类并且相关的 User Case 超过 5 个,使用用例图来表达更加清晰的结构化需求。3、【强制】如果某个业务对象的状态超过 3 个,使用状态图来表达并且明确状态变化的各个触发条件。说明:状态图的核心是对象状态,首先明确对象有多少种状态,然后明确两两状态之间是否存在直接转换关系,再明确触发状态转换的条件是什么。 正例:淘宝订单状态有已下单、待付款、已付款、待发货、已发货、已收货等。比如已下单与已收货这两种状态之间是不可能...
疯了!同事又问我为什么不能用 isXXX
发表于2025-10-30|程序人生
最近在做Code Review,写下了这篇文章:代码写成这样,老夫无可奈何!,说多了都是泪啊。。 最近又有人同事跑过来质疑我: 为什么变量名取名不能用 isXXX 这种方式,这样有什么问题?! 醉了,讲了好多次都记不住,我让他自己去看阿里巴巴的《Java开发手册》,或者自行百度,说实话,有点工作经验人都知道,这都是基础的东西。 本没什么好写的,鉴于有好多小白程序员,今天栈长就把为什么不能用 isXXX 拿出来分享一篇文章吧,希望对你有用。 首先我们来看阿里巴巴的《Java开发手册》关于 isXXX 是怎么定义的吧: 【强制】POJO 类中布尔类型变量都不要加 is 前缀,否则部分框架解析会引起序列化错误。反例:定义为基本数据类型 Boolean isDeleted 的属性,它的方法也是 isDeleted(),RPC 框架在反向解析的时候,“误以为”对应的属性名称是 deleted,导致属性获取不到,进而抛出异常。 上面的规范很容易理解吧,就是如果使用 isXXX 这种命名形式会引起潜在的异常呗! 我们再来看一段 IDE 生成的 getter/setter 代码:...
《全球架构师峰会》参会回来,想和大家分享下
发表于2025-10-30|程序人生
这两天(07.06 - 07.07)参加了 InfoQ 在深圳举办的 2018《全球架构师峰会》,它号称是一个面向高端技术管理者、架构师的技术会议,50 % 参会者拥有 8 年以上工作经验。从往期回顾看来,已经在深圳、北京一共举办了 5 场峰会。 说实话,我也是第一次参加这么高端大气上档次的峰会,如果现在要我来总结这两天的会议,只能用一片空白来形容了,会议太多,也比较杂乱。。主要包括微服务、深度和机器学习、人工智能、大数据、架构、区块链、金融、视频直播、产品研发等等。但同一时间只能听一场,所以只能选择性的听。 首先参加这个峰会的门票是不便宜的,两天下来要 6 千多不说,还有的是要坐飞机、请假过来参加的。花了大笔钱和时间,最重要的是要所收获的,不然怎么向公司领导交待成果?怎么向技术同事吹牛逼你这两天学到的东西?如果是个人,不学到一点东西,你怎么对得起你交的这大几千块钱、时间等等,毕竟这不是一笔小钱。 东西太多,记住的不多,后续翻下 PPT 好好回顾一下吧!累了,不多说了,全程拍了图,需要的回复 “AS2018” 获取吧。
新年放大招:Github 私库免费了!
发表于2025-10-30|程序人生
据《Github 嫁入豪门》这篇文章刚好半年了,那时候栈长还表示对 Github 的期待,仅仅半年,现在就已经有了巨大改变。 微软果然是豪门,嫁入半年就已经开花结果了,免费私库已全面无限制开启…… 我们来看下 Github 的官宣: New year, new GitHub: Announcing unlimited free private repos and unified Enterprise offering 新年,新的 Github, Github 宣布了两个重大更新: 1、无限制免费私库(GitHub Free) 即现在可以无限制的免费使用 Github 私有仓库,让开发人员更好的使用 GitHub,不过最多只有 3 个免费协作成员。 2、统一的企业产品(GitHub Enterprise) Github 提供了更简单、灵活、统一的企业产品,通过 GitHub Connect 可以连接打通云仓库以及本地化仓库。 下面我们来演示一下如何创建一个私库: 如图所示,选择 Private 即可,之前这个选项是必须付费才能开放的,现在免费无限制放开了。 我们再来看下如何...
10 道腾讯的 Java 面试题
发表于2025-10-30|程序人生
下面总结10道面试腾讯的Java面试题。 1、说几种常见的攻击方式及预防手段。 2、http1.x和http2.x的区别。 3、mysql查询语句怎么做性能分析。 4、你知道哪几种排序算法? 5、HashMap和HashTable的区别,并说明其底层实现数据结构。 6、HashMap满了之后怎么扩容? 7、Linux中远程传输文件有什么方式? 8、说说Java中异常的分类。 9、TCP和UDP的区别,TCP为什么是三次握手,不是两次。 10、说说数据库设计的三范式,可以违反三范式吗?
18 道 Java 基础面试笔试题
发表于2025-10-30|程序人生
1.你最常上的两个技术站和最常使用的两个app分別进什么?主要解决你什么需求? 2.请简述http协议中get请求和post请求的区别. 3.请简述session和cookie的区別. 4.简述Servlet与JSP的关系, 5.JSP内置对象有哪些,各自起到的作用 6.简述你所理解的JAVA封装、继承、多态。 7.写出2个常用的设计模式(伪代码),并简述应用场景。 8.HashMap和HashTable区别。 9.HashSet和TreeSet的区别。 10.ArrayList和LinkedList的区别。 11.==与equals的区别。 12.简述泛型、反射、注解应用场景及各自解决了哪些问题。 13.Thread类的方法有哪些,如何多种方式实现线程同步。 14进程与线程的区别,JAVA中有哪些方式可以创建线程。 15.现有一学生表结构(student-id,class-id,name),请写出统计每班有多少学生的SQL语句。 16.假如你正在开发一个系统的登录程序,请简述你是如何实现记住用户名和密码这个操作的,并如何实现? 17.在视图层不支持存储co...
Java 中创建 String 的两道面试题及详解
发表于2025-10-30|程序人生
我们知道创建一个String类型的变量一般有以下两种方法: String str1 = "abcd"; String str2 = new String("abcd"); 那么为什么会存在这两种创建方式呢,它们在内存中的表现形式各有什么区别? 下面来看下面两道经常遇到的面试题。 面试题1:String a = "abcd"; String b = "abcd"; System.out.println(a == b); // true System.out.println(a.equals(b)); // true 解析: 用””创建的a,b两个字符串,==和equals比较返回都为true,这是因为a,b都指向了方法区的同一个字符串。所以,当同样的一个字符串用””重复创建时只在方法区创建一次。 面试题2:String c = new String("abcd...
1…567…36
avatar
2025
文章
360
标签
49
分类
10
公告
🌸 春去秋来,花开花落 📚 桌上的日历又薄了几页 💭 记忆中的昨天还那么清晰
最新文章
掌握 Spring 框架这 10 个扩展点,开发效率直接翻倍2025-11-10
Minikube安装教程2025-11-07
Deepseek 本地部署各个版本超级详细教学,网页版、软件版2025-11-04
Slow HTTP POST 慢速攻击2025-10-30
JDK 紧急漏洞,XMLDecoder反序列化攻击2025-10-30
分类
  • 其他3
  • 区块链4
  • 后端225
  • 安全漏洞3
  • 工具30
  • 性能4
  • 教程1
  • 数据库21
  • 架构15
  • 程序人生54
标签
文章LinuxJVM分布式技术其他区块链基础安全漏洞多线程性能优化新特性架构算法程序人生行业动态规范资料集合进阶面试Elastic JobdockerJWTDubboMyBatisNettyShiroSpringSpring MVCSpring CloudTomcatSpring BootZookeeper日志开源综合技术消息队列缓存连接池Eclipse
归档
  • 2025年11月 3
  • 2025年10月 355
  • 2025年09月 1
  • 2024年12月 1
网站信息
文章数目 :
360
本站访客数 :
本站总浏览量 :
最后更新时间 :
访客地图
© 2025 By 2025
搜索
数据加载中