首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学习 Java,使用哪个版本最好

我们要学习和使用 Java 语言,就需要搭建好 Java 的开发环境,边学习知识,边实践编码,可以更好的体会 Java 这门语言的精髓。...但 Java 更新换代好多版,JDK 同样推陈出新,JDK 那么多版本,哪个版本更适合初学者呢? 选择 JDK 的标准 在我看来,任何一项技术的使用,必须要考虑两个点,一个是稳定性,另一个是普遍性。...普遍性代表着这项技术被广泛使用甚至形成良好的社区交流氛围,这就意味着你可能踩的坑基本都被别人踩过了,即便遇到什么问题,也可以很快在网上找到答案。...如果基于这两个技术选型要素,作为 JDK 版本的选择标准,那我觉得现阶段的初学者更适合使用 JDK 8 来学习。...---- 我是蜗牛,大厂程序员,专注技术原创和个人成长,正在互联网上摸爬滚打。欢迎关注我,和蜗牛一起成长,我们一起牛~下期见! ----

2.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    我到底应该使用哪个 CRI 替换 kubernetes 集群的 Docker?

    那么除了 docker 之外,我们还可以使用其他什么 CRI 呢?...测试环境 我这里的测试环境是一个 1.19.4 版本的 kubernetes 集群,使用 ansible 进行创建(https://gitlab.com/incubateur-pe)。...创建集群 这里我直接使用 molecule 创建一个集群,并配置了它在每个 worker 节点上使用不同的 cri,对应的 ansible 源码位于:https://gitlab.com/incubateur-pe...在我看来,docker 仍然是让整个容器化向前发展的一个伟大工具。但是好像我还没有回答我最初的问题,那就是:我应该为我的k8s集群使用什么CRI?...从我个人角度考虑的话,我个人的选择是:containerd,他速度快,配置方便,相当可靠和安全,不过 cri-o 已经支持 cgroupsv2 了,所以如果我使用 fedora 或者 centos/8

    3.2K20

    现代OpenGL(一):我的第一个OpenGL程序

    在OpenGL 3.0以前的版本或者使用兼容模式的OpenGL环境,OpenGL包含一个固定管线(fixed-function pipeline),它可以在不使用着色器的环境下处理几何与像素数据。...我们看到的glBegin()、glRectf()以及glEnd()这些函数都是以前固定管线模式中所使用的API函数。 从3.1版本开始,固定管线从核心模式中去除,因此我们必须使用着色器来完成工作。...可以看到从开始的顶点数据到最后在界面上的显示需要经过很多过程,这里我比较重要的是和必经的阶段包括Vertex Shader(顶点着色阶段)、Rasterization(光栅化阶段)和Frgament Shader...“为前缀,可以在任何OpenGL的工作平台上应用。...由于SFML(Simple and Fast Multimedia Library)是使用C++编写的,我本人比较喜欢使用C++而非C语言,所以下面的示例程序会使用SFML库。

    2.2K30

    OpenGL中的投影使用

    大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。 OpenGL中的投影使用 在OpenGL中,投影矩阵指定了可视区域的大小和形状。...对于正投影与透视投影这两种不同的投影类型,它们分别有各自的用途。 正投影 它适用于2D图形,如文本、建筑画图等。在它的应用场合,我们希望在屏幕上展示准确的物体大小和度量。...透视投影 它使用透视除法,对距离观察者较远的物体进行缩短和收缩。...以下的代码设置使用了透视投影,展示了一个由太阳(黄色)、地球(红色)、月亮(灰色)三者构成的运动系统。...这是一个经典的嵌套变换的样例,我们使用矩阵堆栈将一个物体依据还有一个物体进行变换,执行结果如图所看到的: /* 程序清单 4-3 * 2014/5/18 */ #include <glut.h

    82910

    免费拿走我的代码可以,但请对使用我的时间付费

    作为软件开发人员,我不得不承认开源代码改变了世界。这些开源软件原本可以变得更好,遗憾的是一些因素阻止了它。...我为开源工作付出了很多自己的业余时间,这些时间原本可以用来陪伴家人、享受生活或者写作,然而这样的付出并没有收到任何物质方面的回报。我今天在此声明,决定终止目前自己所从事的所有开源工作。”...例如,红帽公司需要更多企业使用 Linux 方便其销售 Linux 企业版,Oracle 使用 MySQL的目的也是为了推广企业版,Google 希望世界上所有人都使用它的手机和浏览器,而微软正试图将开发人员吸引到一个平台上然后推送其...如果你坚持构建自己的愿景,并为他人提供有价值的代码,当他们想要参与项目时自然心甘情愿付费。事实上,你贡献应当是稀缺代码,这样,用户必须根据你发布的每个新版本调整他们想要的更改。...当我谈到 “开源 ”时,我的意思是只要代码被许可,就可以用来构建专有的东西。这通常意味着许可证( MIT 、Apache 或者 BSD),但并不总是。

    1.1K80

    揭秘2021年美国公司都在使用哪个版本的Vue.js?

    Vue.js 越来越受欢迎,企业开始考虑将 Vue.js 作为其开发工作的唯一选择,这只是时间问题。在这篇文章中,我将讨论在美国使用 Vue.js 的顶级公司,以及他们使用的版本和原因。...我们中的许多人都可能会尝试,因为那是每个男人的梦想。 你可以在定制过程中选择各种颜色。此外,你可以根据自己的喜好选择车轮和内饰。你还可以选择不同的功能添加到你的定制宝马中。你应该感谢 Vue.js。...2)灵活 Vue.js 具有高度的灵活性和可伸缩性,你可以用它开发功能齐全的应用程序。使用 Vue.js 进行开发很简单。 3)面向未来 持续更新可以保证应用程序没有 Bug,并提高应用程序的性能。...5)非常流行 我认为我不需要再解释 Vue.js 的受欢迎程度了,因为许多大公司都在使用它,比如 Facebook、Netflix、阿里巴巴、Adobe、Behance 和 Grammarly。...很多公司都在采用 Vue.js 及其最新版本。 在开发领域,Vue.js 已经证明了自己是一个健壮的框架。因此,如果想开发自己的应用程序,你可以尝试使用 Vue.js。

    1.3K40

    重新审视 Kotlin 反射,我觉得可以合理使用

    也就是说,如果你使用 Kotlin 反射,请立刻马上更新到 1.2.60 以上的版本,这样就不会有 built-in types 的问题。...,只要它的慢在合理范围内,我们其实也是可以接受的。...11.0 26.3 Kotlin 反射 20.2 38.6 48.4 33.5 尽管仍然比 Java 反射耗时多一些,但对于使用反射的场景来说,这样通常也是可以接受的。...需要注意的是,过去的版本应该在后续的执行中也不会很慢,只是去年的文章我没有太注意这部分数据。...小结 其实之前让我觉得不安的主要是性能问题,显然这样看来倒也还好。而一些未完善的部分也在最近的版本得到了完善,因此 Kotlin 反射库的使用评级由“谨慎使用”上调为“合理使用”。 ----

    1.2K20

    Async的线程池使用的哪个?

    前言在Spring中我们经常会用到异步操作,注解中使用 @EnableAsync 和 @Async 就可以使用它了。...但是最近发现在异步中线程号使用的是我们项目中自定义的线程池 ThreadPoolTaskExecutor 而不是之前熟悉的 SimpleAsyncTaskExecutor那么来看一下他的执行过程吧。...它会使用 @Import 注入一个 AsyncConfigurationSelector 类,启动是通过父类可以决定它使用的是配置类 ProxyAsyncConfiguration 。...我们有这个切入点之后,每次请求接口执行异步方法前都会执行 AsyncExecutionInterceptor#invoke() , determineAsyncExecutor 用来决策使用哪个执行器@...因此,如果我们使用异步任务,一定不能采用默认执行器的配置,以防OOM异常!最好的方式是指定执行器!

    1.2K20

    Effective C++条款3 我可以不使用const?

    前言 const是C++中用得非常频繁的一个关键字,但是如果你不使用这个关键字,对程序的运行结果影响不大,那么,我可以不使用const吗?...但是为了安全,推荐使用const,这是一个良好的习惯,坚持下去的结果是你的代码将变得更加健壮,当然你也可以不使用const,只不过当代码量到一定程度后,你的代码将会变得比较脆弱,而且随着量级的一步步升高...,一般来说,non-const版本可以调用const版本的实现,避免重复。...采用const引用,既可以避免多余的函数调用,也能保证数据不被修改。 如果不使用const直接传递引用,调用者会认为这个对象是可以被更改的。...但是如果你使用了mutable关键字,那么情况就不一样了,因为这个关键字使得你可以在const函数中修改mutable类型的值。

    58730

    微软史上最成功的操作系统是哪个版本?

    到现在为止个人还是觉得微软最成功的的操作系统还是XP系统,现在很多人还在使用着这个版本,只不过由于软件的支持力度问题,很多软件已经运行不起来了,说到微软的操作系统的演化史其实就是科技技术的进步史,最初的微软...window1.0,算是微软操作系统历史上里程碑意义的一个版本,真正打开微软操作系统的商业化之路,这个版本放在今天看起来显得非常幼稚,但在当时已经是非常之先进。...这不是一个最成功的的版本,绝对是最优有历史意义上的一个版本。...window95,算是跨时代的一个版本,能够支持fat32,用户体验上已经提升了许多,性能和稳定上也有了本质的提升,这个版本算是现在意义上的操作系统版本。...window xp个人觉是最可靠稳定的一个版本,前几天淘汰的一台电脑里面安装还是xp系统,占有资源非常少,功能也非常的完善,其实到现在还是有点念念不忘,虽然硬件和软件的发展都需要更新版本,在低硬件配置的版本中还是首选的版本

    3.5K30

    前端测试题:(解析)Git中,删除远程分支,可以使用哪个命令?

    考核内容: 版本管理 题发散度: ★★ 试题难度: ★★ 看看大家的选择 解题: Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。...Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。...新版的 Git: git-scm.com/downloads 最有代表性的就是:github.com 已经成为全球开源代码托管平台。...分支使你可以在不影响master分支的情况下处理代码的单独副本。 首次创建分支时,将以新名称创建master分支的完整克隆。 然后,你可以独立地在此新分支中修改代码,包括提交文件等。...一旦你的新功能已完全集成并且代码稳定,就可以将其合并到master分支中! 在线测试: 答案: A. git branch -d branch_name

    46040

    《我的PaddlePaddle学习之路》笔记十一——新版本Fluid的使用

    0.13.0、Python 2.7 *Fluid版本的使用可以学习笔者的新系列教程:《PaddlePaddle从入门到炼丹》 前言 ---- PaddlePaddle的Fluid是0.11.0提出的...,我们在此之前都没有使用过,那么接下来就让我们去使用Fluid版本,同时对比一下之前所写的,探讨Fluid版本的改变。...trainer,通过num_passes来指定训练的Pass,而Fluid的是使用一个循环来处理的,这样就大大方便了我们在训练过程中所做的一些操作了,而在此之前是使用一个event训练时间的,虽然也可以做到一些操作...,保存模型虽然复杂一点点,但是对于之后的预测是极大的方便了,因为在预测中,不需要再定义神经网络模型了,可以直接使用保存好的模型进行预测。...PaddlePaddle学习之路》笔记十——自定义图像数据集实现目标检测 下一章:《我的PaddlePaddle学习之路》笔记十二——可视化工具VisualDL的使用 项目代码 ---- GitHub地址

    98320

    我用 OpenGL 实现了那些年流行的相机滤镜

    OpenGL ES 相机基础滤镜 上文中我们通过 ImageReader 获取到 Camera2 预览的 YUV 数据,然后利用 OpenGLES 渲染实现相机预览,这一节将利用 GLSL (OpenGL...(vec3 x, vec3 y) 向量 x ,y 之间的叉积 genType normalize (genType x) 标准化向量,返回一个方向和 x 相同但长度为 1 的向量 GLSL 一些使用频率比较高的内建函数...缩放的圆 缩放的圆效果实现主要依赖偏移量来动态改变圆半径的大小,在半径区域内对纹理采样显示图像,在半径区域外返回一个固定颜色(如白色)。...distance 也是 GLSL 的内建函数,用于计算两点之间的距离。...,但是在 OpenGL 采样时,图像的宽高比往往不是 1 ,这就导致了数值相同的纵横坐标,对应不同的采样权重,出现了预期绘制圆形而实际上却绘制出椭圆的情况。

    98610

    面试官:请使用 OpenGL ES 将 RGB 图像转换为 YUV 格式。我 ……

    针对这位读者大人的疑惑,今天专门写文章介绍一下如何使用 OpenGL 实现 RGB 到 YUV 的图像格式转换,帮助读者大人化解此类问题。...OpenGL 实现 RGB 转 YUV 好处 使用 shader 实现 RGB 到 YUV 的图像格式转换有什么使用场景呢?在生产环境中使用极为普遍。...glReadPixels 大家经常用来读取 RGBA 格式的图像,那么我用它来读取 YUV 格式的图像行不行呢? 答案是肯定的,这就要用到 shader 来实现 RGB 到 YUV 的图像格式转换。...需要注意的是 OpenGL ES 实现 YUV 渲染需要用到 GL_LUMINANCE 和 GL_LUMINANCE_ALPHA 格式的纹理。...关于 shader 实现 YUV 转 RGB (NV21、NV12、I420 格式图像渲染)可以参考文章:OpenGL ES 3.0 开发(三):YUV 渲染 和 FFmpeg 播放器视频渲染优化,本文主要重点讲

    5.2K41

    OpenGL 中的颜色混合和使用

    但和肉眼观察不同的是,OpenGL 里最终呈现的颜色,是将两个片元混合之后计算的值,我们可以改变这片元混合的方式,这就和前面 Android 里面提到的 PorterDuffXfermode 混合模式一样...modeAlpha 参数的含义是颜色的 Alpha 透明度通道进行混合时所使用的混合方程式名字,通过其可以实现 RGB 和 Alpha 通道单独指定混合方程式的功能 源因子和目标因子 对于颜色混合来说...当然,还可以使用另外一种混合因子组合 GL_SRC_ALPHA 和 GL_ONE_MINUS_SRC_ALPHA,根据源因子的透明度来设置混合因子。...关于如何使用 GL_SRC_ALPHA 和 GL_ONE_MINUS_SRC_ALPHA 混合因子,可以参考之前的文章 用 OpenGL 对视频帧内容进行替换,大概原理都一样的,就是图片换成带透明度的,...具体的实现可以参考我的 Github 项目,求一波 Star 。 https://github.com/glumes/AndroidOpenGLTutorial

    2.5K11
    领券