【开源软件】最好的开源软件-2022-第五名 JHipster
JHipster是一个雄心勃勃、甚至富有远见、全栈、快速的Java应用程序开发平台。它最有远见的方面可能是允许一系列不同的技术在前端和数据层扮演不同的角色,但它并不止于此。JHipster提供了一系列其他细节,包括一个处理脚手架生成的CLI工具,该工具可以针对异构技术堆栈工作:由Vue.js UI领导的MongoDB、由React领导的Postgres,以及许多其他组合。所有这些都与最先进的Spring/Java中间件拼接在一起。
JHipster还缓解了诸如通过Spring安全性添加安全性之类的痛点。您将获得几个现成的现代部署选项和CI/CD集成。
【开源软件】最好的开源软件-2022-第四名 vaadin
一个允许开发人员用Java实现web用户界面而不必编写任何HTML或JavaScript的web框架?还有什么更好的呢?并不是每个编写代码的人都能制作出漂亮的UI或喜欢处理HTML。有些编码员宁愿用牙刷打扫厕所。Vaadin不仅简化了新应用程序的代码,而且它的服务器端API有点像Swing-样,因此将Swing应用程序转换为现代web应用程序比完全重写更不痛苦。你可以在vaadin.com上查看,也可以从GitHub上获取。
【开源软件】最好的开源软件-2022-第三名 Docker
当然,你可以用你的笔记本电脑、EKS或GKE或其他什么东西做所有的事情,但如果你只想用几个容器四处走动呢?然后你就可以去玩Docker了。虽然由于五个实例、四个小时的限制,你无法开始运营你的新创业公司来做安全、人工智能或分析(现在所有新创业公司都在做这些事情),但在你完全投入之前,使用Docker是一个尝试的好地方。因为也许你不想在公共场合暴露自己(这总是一个坏主意),也许你想从GitHub上的开源(MIT许可)存储库安装一个内部版本的Play with Docker,这样你组织中的人就可以四处走动了?
【开源软件】最好的开源软件-2022-第二名: Podman
新的科幻恐怖类型…检查一下…容器管理来了波德曼。实际上,Podman 1.0是在2019年发布的。与Docker不同,Podman可以作为一个进程运行,没有特权的用户,与Docker无根相比限制相对较少。此外,Podman中的容器映像和pod往往比Docker中的要小。此外,您可以直接在Podman中构建Kubernetes pod。迁移甚至可以像别名docker=podman一样简单,因为podman支持许多相同的命令。也许你想脱离束缚,成为一个Pod Man?
【开源软件】2022年最佳开源软件-排名第一:AlmaLinux
世界需要更多的Linux发行版吗?很多商业软件已经在Red Hat Enterprise Linux上实现了标准化。RHEL的基本免费版本是CentOS,Red Hat收购了它,并基本上扼杀了它,至少作为RHEL的替代品。不出所料,许多使用CentOS的人对此表现不佳,导致Rocky Linux和AlmaLinux的出现来填补这一空白。AlmaLinux声称与RHEL的二进制兼容性和社区所有权。
【快速应用开发】Blitz.js简介:Next.js的全栈框架
Blitz.js采用零API方法将Next.js前端连接到后端数据存储。以下是它的工作原理
Blitz.js是一个基于React和Next.js的新兴JavaScript框架。它是一个全栈的、有主见的框架,这意味着它对如何构建JavaScript应用程序做出了某些假设。Blitz最有趣的方面可能是所谓的零API方法,其中框架完成将用户界面连接到后端数据存储的工作。
让我们亲身体验一下JavaScript应用程序开发的这一有趣而独特的观点。
目录
- 设置闪电战演示
- 创建新项目
- Blitz.js中的RPC
- 身份验证
- 结论
设置闪电战演示
首先,使用以下命令将Blitz添加为全局NPM包:NPM iblitz@alpha-g。现在,您可以使用该工具创建一个新项目,方法是键入:blitz new demo app。清单1显示了演示应用程序的设置。
清单1。创建新的Blitz应用程序
【快速开发】使用SvelteKit
如何使用SvelteKit将利用服务器端渲染和Svelte的易用性的全栈应用程序连接在一起。
像Next.js和Gatsby这样的所谓元框架在过去几年里已经起飞了。本文将向您介绍最新的示例之一,SvelteKit的SvelteKit框架。与之前的Next.js一样,SvelteKit为构建反应式web应用程序提供了一个一体化的全栈平台。
SvelteKit是Sapper的继任者,Sapper是Svelte的上一代全栈预提交框架。
什么是SvelteKit?
SveltKit背后的理念是将前端和后端结合在一起,实现两全其美。除了实现简单的构建过程(因为整个堆栈是组合在一起的)外,SvelteKit还提供了以下开箱即用的好处:
【为什么Wasm是云计算的未来| WebAssembly的崛起】
【数据安全】Java AES加密和解密
1.概述
对称密钥分组密码在数据加密中起着重要作用。这意味着加密和解密都使用相同的密钥。高级加密标准(AES)是一种广泛使用的对称密钥加密算法。
在本教程中,我们将学习如何在JDK中使用Java Cryptography Architecture(JCA)实现AES加密和解密。
2.AES算法
AES算法是一种迭代的对称密钥块密码,它支持128、192和256位的密钥(秘密密钥)来加密和解密128位块中的数据。下图显示了高级AES算法:
如果要加密的数据不满足128位的块大小要求,则必须对其进行填充。填充是将最后一个块填充为128位的过程。
3.AES变化
AES算法有六种操作模式:
【Java】从JDK 8迁移到JDK后续版本
JDK8和以后的JDK版本之间进行了重大更改。
每一个新的JavaSE版本都引入了一些与以前版本的二进制、源代码和行为不兼容。JDK9中发生的Java SE平台的模块化以及后来的模块化带来了许多好处,但也带来了许多变化。只使用官方Java SE平台API和受支持的JDK特定API的代码应该可以继续工作而不会发生更改。使用JDK内部API的代码应该继续运行,但应该迁移以使用支持的API。
某些API在其默认行为中被设置为不可访问、删除或更改。编译或运行应用程序时可能会遇到问题。请参阅删除的工具和组件以及安全更新。
以下部分描述了JDK包中的更改,当您将JDK 8应用程序迁移到以后的JDK版本时,您应该注意这些更改。
查看运行应用程序时可能遇到的更改列表。
【Angular】Angular中的最差实践
简介:
Angular是构建web应用程序的一个流行而强大的框架,但与任何技术一样,它也有一些糟糕的做法。作为一名开发人员,重要的是要意识到这些最糟糕的做法,这样你就可以避免它们,并编写可维护、高性能和可扩展的代码。
在本文中,我们将探讨Angular开发中一些最常见的最差实践,并提供解决方案和最佳实践。
因此,让我们深入学习如何避免Angular开发中的这些常见错误
请深呼吸,保持耐心。
1.不要清除您的订阅:
这是一种非常常见的做法,可能会导致内存泄漏🤯🤯
constructor(private userService:UserService){} onInit(){ this.userService.user$.subscribe(user=>{...}) }
当您在Angular中订阅Observable时,您正在Observable和订阅者之间创建连接。
Observable将继续发出值,直到您取消订阅它,即使订阅它的组件不再使用。
要解决此问题,只需使用其中一个: