为什么一提到java的swing和awt组件,大家都不建议学(java.awt组件)

Java Swing Mysql实现图书管理系统源码附视频指导运行教程

style="text-indent:2em;">这篇文章给大家聊聊关于为什么一提到java的swing和awt组件,大家都不建议学,以及不建议使用前端ui库对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

本文目录

  1. web前端是不是没有前景了
  2. 前端最新的UI库有哪些啊,萌新跪求
  3. 为什么一提到java的swing和awt组件,大家都不建议学
  4. 零基础适合学习web前端吗

web前端是不是没有前景了

前端开发趋势一直都是热度高且变化快。因此,对于前端开发者来说,想要跟上这些不断变化的趋势,需要耗费巨大的精力。至于2022年前端技术具体会发生哪些变化,让我们一起来聊聊吧。

1、前端介绍

前端,也称为“客户端开发”,简单来说,你可以在应用程序或网站的屏幕上看到的所有内容都属于前端。

让我们考虑一个现实的例子:你正在访问的网站。内容设计、图像、段落和线条之间的间距,左上角的公司徽标,以及右下角的小通知按钮——所有这一切都是前端。

2、前端技术包括哪些?

前端开发是创建Web页面或app等前端界面呈现给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。它从网页制作演变而来,名称上有很明显的时代特征。在互联网的演化进程中,网页制作是Web1.0时代的产物,早期网站主要内容都是静态,以图片和文字为主,用户使用网站的行为也以浏览为主。随着互联网技术的发展和HTML5、CSS3的应用,现代网页更加美观,交互效果显著,功能更加强大。

2.1、HTML

掌握HTML是网页的核心,是一种制作万维网页面的标准语言,是万维网浏览器使用的一种语言,它消除了不同计算机之间信息交流的障碍。因此,它是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言,学好HTML是成为Web前端开发人员的基本条件。

HTML是一种标记语言,能够实现Web页面并在浏览器中显示。HTML5作为HTML的最新版本,引入了多项新技术,大大增强了对于应用的支持能力,使得Web技术不再局限于呈现网页内容。

随着CSS、JavaScript、Flash等技术的发展,Web对于应用的处理能力逐渐增强,用户浏览网页的体验已经有了较大的改善。不过HTML5中的几项新技术实现了质的突破,使得Web技术首次被认为能够接近于本地原生应用技术,开发Web应用真正成为开发者的一个选择。

HTML5可以使开发者的工作大大简化,理论上单次开发就可以在不同平台借助浏览器运行,降低开发的成本,这也是产业界普遍认为HTML5技术的主要优点之一。AppMobi、摩托罗拉、Sencha、Appcelerator等公司均已推出了较为成熟的开发工具,支持HTML5应用的发展。

2.2、CSS

学好CSS是网页外观的重要一点,CSS可以帮助把网页外观做得更加美观。

2.3、JavaScript

学习JavaScript的基本语法,以及如何使用JavaScript编程将会提高开发人员的个人技能。

2.4、Bootstrap

主流框架之一,Bootstrap是基于HTML、CSS、JavaScript的,它简洁灵活,使得Web开发更加快捷。

2.5、html5-boilerplate

该框架可以快速构建健壮,且适应力强的webapp或网站。

2.6、Meteor

Meteor是新一代的开发即时web应用的开源框架,它能在较短时间内完成开发。

2.7、SemanticUI

基于自然语言有效原则的UI组件框架。

2.8、AmazeUI

国内首个开源HTML5跨屏前端框架产品系列,中文排版支持更优、本土化组件丰富。该产品系列中有专门针对移动端的HTML5混合应用开发框架AmazeUITouch以及针对跨屏HTML5网页开发的AmazeUIWeb。其中,AmazeUITouch可以帮助开发者通过丰富的组件,快速构建出与原生APP相媲美的专属移动端的HTML5应用。

3、2022年前端技术领域变化

3.1、Web组件化

基本上这就是未来。为什么?因为这些纯Web组件与框架无关,并且可以在没有框架或没有任何框架拼写标准化的情况下工作。因为它们没有JS疲劳,并且得到了现代浏览器的支持。因为它们的文件大小和消耗将是最佳的,并且VDOM渲染令人赞叹。

这些组件提供了CustomElement,这是一个JavascriptAPI,可让你定义新html标签,HTML模板以指定布局,当然还有ShadowDOM,它本质上是特定于组件的。在这个领域中知名的工具是Lit-html(和Lit-element),StencilJS,SvelteJS,当然还有Bit,它们是可重用的模块化组件,可以在任何地方直接共享,使用和开发。考虑组件开发时代的未来,以及模块化,可重用性,封装和标准化的原理,Web组件就是答案。

3.2、微前端

Serverless即“无服务器”架构,它试图帮助开发者摆脱运行后端应用程序所需的服务器设备的设置和管理工作,它由第三方云计算供应商负责后端基础结构的维护,同时以服务的方式为开发者提供所需的功能,例如数据库、消息、身份验证等。

微前端的概念类似于微服务,它将前端应用拆分成一个个更小的更简单的能够独立开发、测试、部署的小块,在用户看来它依旧是一个独立的产品。前端业务在发展到一定规模后,需要一种能将业务化繁为简的架构。常用的微前端解决方案有single-spa、qiankun。

微前端、Serverless目前都未出现大规模应用的情况,各大公司对此都处于探索阶段,两项技术稳步发展,期待未来大规模的应用。

3.3、微设计

布拉德·弗罗斯特(BradFrost)提出的理论将Web应用程序的构成与原子,分子,有机体等的自然构成进行了比较,最后以具体的Web页面作为结尾。原子由分子组成(例如,文本输入+按钮+标签原子=搜索分子)。分子组成生物体。有机体位于布局模板中,该模板可以具体化为交付给用户的页面。

Atomic组件的优势不只是通过模块化和可重用的组件来构建模块化UI应用程序。这种范例迫使你思考组成每个组件的角色和API。

3.4、Web组装

Web程序集将语言多样性带入Web开发中,以弥补JavaScript创建的空白。它被定义为“基于堆栈的虚拟机的二进制指令格式。Wasm被设计为可移植目标,用于编译高级语言(如C/C++/Rust),从而可以在Web上为客户端和服务器应用程序进行部署。”

埃里克·埃利奥特在他的文章中优雅地概述了该概念的好处:在wasm中实现对性能至关重要的内容,并将其像标准JavaScript模块一样导入。一种新语言:WebAssembly代码定义了以二进制格式表示的AST(抽象语法树)。您可以编写和调试文本格式,以便于阅读。对浏览器的改进:浏览器将理解二进制格式,这意味着我们将能够编译二进制捆绑包,压缩后的二进制包小于我们今天使用的文本JavaScript。较小的有效载荷意味着更快的传递。根据编译时的优化机会,WebAssembly的运行速度可能比JavaScript快!

3.5、封装样式和ShadowDom

组件的一个重要方面是封装-能够使标记结构,样式和行为保持隐藏状态,并与页面上的其他代码分开,以使不同部分不会冲突,并且代码可以保持整洁。ShadowDOMAPI是其中的关键部分,它提供了一种将隐藏的单独DOM附加到元素的方法。ShadowDOM实际上已经被浏览器使用了很长时间了。您可以将影子DOM视为“DOM中的DOM”。它是自己的隔离DOM树,具有自己的元素和样式,与原始DOM完全隔离。

它允许将隐藏的DOM树附加到常规DOM树中的元素上。该阴影DOM树以影子根开头,可以与普通DOM相同的方式附加到所需的任何元素上。这样做的主要目的是,我们不需要为类使用名称空间,因为不存在名称冲突或样式溢出的风险。这就是Web组件样式进行真正封装的解决方案。

3.6、TypeScript接管前端

最近的每次交谈都听起来好像TS正在接管前端开发。据报道,有80%的开发人员承认他们想在下一个项目中使用或学习TypeScript。尽管有缺点,但TS代码更易于理解,实现更快,产生的错误更少。想重构你的React应用程序并与TS一起使用吗?去吧。想逐步开始吗?使用Bit之类的工具逐步将你的应用程序中的组件重构为TS,并使用React-Typescript编译器独立于应用程序构建它们。

TypeScript,它是有类型定义的JavaScript的超集,包括ES5、ES5+和其他一些诸如反射、泛型、类型定义、命名空间等特征的集合,为了大规模JavaScript应用开发而生。复杂软件需要用复杂的设计,面向对象就是一种很好的设计方式,使用TypeScript的一大好处就是TypeScript提供了业界认可的类(ES5+也支持)、泛型、封装、接口面向对象设计能力,以提升JavaScript的面向对象设计能力。市面上的框架也对TypeScript提供了非常好的支持。

React对.tsx支持非常好,比如我在Midwaycontroller里支持tsx写法,这是非常大胆的,对于后面reactssr来说是一个极大便利;Vue从v2.5.0之后对ts支持就非常好;Node.jsWeb框架,尤其是Egg.js对ts支持非常好,当然还有更高级更专注的的Midway框架,Midway基于Egg生态,同时提供IoC等高级玩法;

在使用Webpack编译前端应用式,通过TypeScript-loader可以很轻松地将TypeScript引入到Webpack中。有了TypeScript-loader,就可以一边使用TypeScript编写新代码,一边零碎地更新老代码。毕竟ts是js超集,你有空就改,非强制,特别包容。

3.7、从组件库到动态集合

组件开发的出现催生出了一种工具的产生,它就是Bit,以及其托管平台Bit.dev。使用Bit来连续隔离现有组件并将其导出到动态可重用的共享集合中,而无需努力构建麻烦且高度耦合的组件库。使用Bit,你可以独立隔离,版本控制,构建,测试和更新UI组件。它简化了在现有应用程序中隔离组件,将其收集到远程集合并在任何地方使用的过程。

每个组件都可以在任何项目之外构建,测试和渲染。你可以更新单个组件(及其相关组件),而不是整个应用程序。在bit.dev平台中(或在你自己的服务器上),可以为不同的团队远程托管和组织组件,以便每个团队都可以控制自己的组件开发。每个团队都可以共享和重用组件,但又保持其独立性和控制力。

该平台还提供了共享组件的多合一生态系统:它自动记录UI组件的文档,在交互式中渲染组件,甚至提供内置注册表以使用npm安装组件。此外,你可以在任何存储库中导入组件并进行修改。在短期内,这以与Spotify/iTunes更改以前通过静态CD音乐专辑共享音乐的过程类似的方式,彻底改变了共享和组成组件的过程。这是一个动态的模块化解决方案,每个人都可以共享和使用组件。从长远来看,Bit有助于微前端的开发。主要是因为它已经可以让你独立版本,测试,构建和更新UI应用程序的各个部分。

3.8、设计与开发的整合

随着组件驱动设计系统的兴起,使产品和团队之间的UI一致,新工具应运而生,弥合了设计师和开发人员之间的鸿沟。但是,这不是简单的任务。尽管代码本身实际上是唯一的真理源(这是用户真正得到的),但是大多数工具都试图弥合设计者与设计者之间的鸿沟。在此类别中,您可以找到成帧器,Figma,InvisionDSM等。在开发人员的末端,你可以看到Bit.dev之类的平台如何托管下一代组件库并帮助建立共享组件的采用范围。

该平台为您的实际源代码提供了呈现的可视化效果,以便设计人员可以与开发人员合作,并以可视化方式在源代码本身上进行讨论。要注意的另一个有前途的想法是设计令牌。将令牌放置在代码中,设计人员可以通过它们直接与外部协作工具真正控制简单的样式方面(例如颜色)。与Bit.dev等平台集成后,可以创建比以往更紧密的工作流程。

3.9、跨端开发框架迅猛发展

从最初的ReactNative,到后来的Flutter,electron,跨端的解决方案受到了大量前端工程师的关注和学习。

Flutter2的发布,其Web开发能力也过度到了稳定版本,同时桌面端开发能力也进入了beta阶段,进一步提高了代码的复用性,同时它也拓展了很多IOS的功能,生态进一步壮大。近乎一套代码便可以完成移动端、web端、桌面端应用的开发,大大缩减开发人员学习其他平台开发技术的成本,一线互联网公司也在将其部分应用使用Flutter进行重构。

electron作为一个基于Nodejsde桌面端跨端开发框架,深受大厂的喜爱,飞书、vscode、twitch等均是基于electron进行开发。跨平台也让Electron可同时开发Web应用和桌面应用,无论是UI,还是代码,很多资源都可以共享,大幅减少了开发者的工作量。

需求推动着跨端框架的发展,无论从成本还是效率考虑,跨端开发都将成为前端开发未来的发展方向之一,其生态也会迎来疯狂扩张。

3.10、低代码平台持续发展

随着十四五规划的推出,进一步推动了企业数字化转型的步伐,众多企业面临数字化转型。相较于培养一支开发团队,多数企业更倾向于使用低代码平台,通过无编码或低编码的方式快速搭建自己的数字化系统。同时,低代码平台迎来了爆发式的增长,至今仍将保持50%的平稳增速。平台快速发展,覆盖的业务场景也逐渐增多,中小企业95%以上的场景可通过低代码平台搭建,中大型企业的覆盖率也能达到70%。

低代码平台的迅猛发展,很多业务场景的开发工作逐渐被平台替代,很多简单的前端页面的开发都会转移到平台中完成,初级前端工程师的生存重建逐渐被蚕食。同时低代码平台的发展也会对前端工程师提出了更高的要求。

4、总结

前端开发趋势一直都是热度高且变化快。因此,对于前端开发者来说,想要跟上这些不断变化的趋势,需要耗费巨大的精力。至于2022年前端技术具体会发生哪些变化,让我们拭目以待吧。

本文分享自华为云社区《2022前端技术领域会有哪些新的变化》,作者:架构师李肯。

前端最新的UI库有哪些啊,萌新跪求

刚好看到这个问题,给你推荐一些吧,因为最近也有做这方面的分享。欢迎一起交流讨论!

Vue.js技术栈组件库

vuePC端组件库

1、Element『githubstar45.6K』

饿了么团队开发的一套为开发者、设计师和产品经理准备的基于Vue2.0桌面端组件库。

2、iView『githubstar23.3K』

一套基于Vue.js的高质量UI组件库。目前统计使用iView组件库的大厂有:今日头条、阿里巴巴、腾讯、百度、京东、滴滴、美团、新浪...

3、Vuetify『githubstar25.8K』

基于Vue.js的MaterialDesign组件框架。包含手工制作的精美材料组件。不需要设计技能,也能创建令人惊叹的应用程序。

4、Quasar『githubstar14.9K』

基于Vue.js的开源框架,允许Web开发人员快速创建多种类型的responsive++网站/应用,编写代码一次并同时将其部署为网站、移动应用或Electron应用。

5、AntDesignVue『githubstar10.5K』

基于vue.js和AntDesign样式的UI组件库,开发和服务于企业级产品。

6、BootstrapVue『githubstar11.6K』

基于Bootstrapv4+Vue.js的前端UI框架。基于flexbox弹性布局,用于在web上构建响应式,移动优先的项目。

7、Muse-UI『githubstar8.1K』

基于Vue2.0优雅的MaterialDesignUI组件库。

vue移动端组件库

1、Mint-UI『githubstar15.8K』

饿了么前端团队开发的基于vue.js的移动端UI框架,它包含丰富的CSS和JS组件,能够满足日常的移动端开发需求。

2、Vant『githubstar13.9K』

有赞前端团队基于有赞统一的规范实现的Vue组件库,提供了一整套UI基础组件。

3、CubeUI『githubstar8.1K』

滴滴团队开发的基于Vue.js实现的精致移动端组件库。支持按需引入和后编译,轻量灵活;扩展性强,可以方便地基于现有组件实现二次开发。

4、NutUI『githubstar1.9K』

京东自研的轻量级移动端Vue组件库,目前最新的版本是2.2.5,有近50多个组件。开发和服务于移动Web界面的企业级前中后台产品。

React.js技术栈组件库

1、MaterialUI『githubstar58.1K』

基于GoogleMaterialDesign设计规范的React组件库,开箱即用,使用它可以快速搭建出赏心悦目的应用界面。

2、ReactWeUI『githubstar2.7K』

微信团队出品的基于React/WeUI的移动端UI组件库。

3、AntDesignMobile『githubstar8.3K』

支付宝团队出品的基于Preact/React/ReactNative移动端UI组件库。

4、Pile『githubstar256』

滴滴团队基于React的移动端开发组件库。组件丰富、轻量、易用,包含50多个交互功能,支持多语言与自定义皮肤。

5、OnsenUI『githubstar8K』

OnsenUI专为移动应用程序设计的丰富UI组件应用程序框架。可以用于与当下流行框架(如Vue.js、AngularJS1、Angular2+和React)更紧密地集成。

好了,就推荐到这里,如果想要了解更详细的介绍,可以去看看下方的链接文章。

https://www.toutiao.com/i6834426578668093956/

https://www.toutiao.com/i6832455087994962435/

https://www.toutiao.com/i6836313110047883787/

??最后

如果小伙伴们有比较喜欢的UI组件库,也可以在评论区留言,欢迎一起交流讨论。

为什么一提到java的swing和awt组件,大家都不建议学

早期的java主要是应用在web开发方面,所以从实用的角度出发,确实可以略过AWT和Swing的学习。在移动端开发流行之后,AWT和Swing又成为一个必修的内容了,因为做Android开发如果有一定的AWT基础是比较好的,很多概念是统一的。

为了描述这个问题,我们首先要了解到底什么是AWT,什么是Swing,以及它们与Android开发有什么联系。

AWT与Swing

java语言第一个支持图形界面开发的API就是AWT,在AWT中定义了java图形界面的很多核心概念,所以要了解java的图形界面开发方式一定要从了解AWT开始。下面分别介绍一下AWT中的三个核心概念:容器、组件、布局。

图形容器是存放图形元素的场所和环境,java中把容器分为顶级容器和次顶级容器。顶级容器可以单独显示、次顶级容器不能单独显示。顶级容器的代表是Frame,次顶级容器的代表是Panel。

图形组件是具体的图形应用元素,比如Button(按钮)、TextField(文本框)、Label(标签)、Choice(下拉列表)等等,每一个图形组件代表一种具体的图形应用元素。

布局的作用是安排图形组件在容器中的排列样式,常见的布局方式有BorderLayout、FlowLayout和GridLayout等。其中BorderLayout是Frame的默认布局管理器,FlowLayout是Panel的默认布局管理器。

具体的图形开发根据不同的界面设计采用不同的容器、布局和组件进行搭配组合,复杂的图形组件遵循顶级容器嵌套次顶级容器的方式来完成。

Swing与AWT相比较最大的优点是轻量级方式,Swing不依赖于本地操作系统,所以在样式上能够进行统一。在写法上采用了在AWT的类名基础上增加一个大写的J字符,比如在AWT中的Frame改为JFrame,Button改为JButton等等。

在实际的开发中比较推荐使用Swing的方式,一个原因是Swing的组件在外观上更具备科技感,另一个原因是它占用的资源较AWT更少。

事件处理

说到AWT和Swing一定要说一下图形组件的事件处理方式,Java中的事件处理方式采用了监听的方式,也可以称为“代理”的方式。事件处理类通过实现具体的接口来完成对应的事件处理,比如ActionEvent对应的ActionListener接口;KeyEvent对应的KeyListener接口;MouseEvent对应的MouseListener接口和MouseMotionListener接口;WindowEvent对应的WindowListener接口等等。

这种处理方式让图形界面类和事件处理类进行了有效的分离,在代码处理上更加方便和灵活,在Swing的很多组件中也遵循了MVC的结构,让代码更加容易模块化。

总的来说java中的事件处理并不复杂,通过一定的实验就能完全掌握,所有这并不是学习的负担。

AWT与Android开发的关系

传统的java图形处理方式并不完全适用于Android开发,在Android开发中通常采用配置文件的方式来完成Activity的创建,当然也可以使用代码的方式来完成Android的界面开发。

不管使用哪种方式来创建Android界面,大体的概念是一致的,比如布局、组件等等,只不过名称上有所区别,比如AWT中的Flowlayout对应于Android的布局是LinearLayout等,虽然名称不同但是概念是一致的。

事件处理方式也是大体一致,不过android开发中提供了基于回调的事件处理方式,这种方式在做一些简单的事件处理时比较方便。

所以如果将来要从事Android开发还是建议系统地学习一下AWT或Swing。

关注我,学习更多关于java开发的内容。

零基础适合学习web前端吗

260

收藏分享转发到头条复制链接微信微信扫码分享新浪微博QQ空间举报小小猿爱嘻嘻

2019年12月09日·优质科技领域创作者

关注

当然有可能,web前端作为当前一个非常流行的开发领域,不管在桌面端还是移动端都有着非常深入的应用,入门学习来说,其实非常容易,零基础也完全可以,下面我简单介绍一下web前端的学习过程,感兴趣的朋友可以尝试一下:

01前端开发软件

初学入门,选择一个合适的开发软件,非常有必要,目前来说,大部分编辑软件和IDE环境都支持前端网页开发,这里介绍2个比较好用、容易学习的代码编辑器,分别是vscode和sublimetext,对于前端网页开发来说,非常不错,值得一试:

vscode

这是一个轻巧灵活的代码编辑器,在开发界非常流行,免费、开源、跨平台,自带有非常多的插件和扩展,可以轻松、高效的编辑前端代码,智能补全、代码高亮、语法提示等功能非常不错,对于前端来说,是一个非常不错的开发软件:

sublimetext

这也是前端开发中比较常用的一个软件,支持跨平台,但原则上不免费,基本功能和使用方式与vscode类似,支持自动补全、代码高亮、语法提示等常见功能,编辑前端代码来说,也非常轻松容易,对于初学使用来说,也是一个不错的选择:

02前端基础入门

前端软件选择好后,就是前端基础入门的过程,这里主要以html、css和js为主,多看多练习,以熟悉常用的标签和属性为主,至于学习资料的话,这个网上就非常多了,菜鸟教程、w3cschool、B站等都非常不错,有大量优质的视频和文档,对于入门前端来说,完全够用了,当然,你也可以找一本专业的前端书籍,一边学习一边练习:

03前端高阶深入

前端基础熟悉后,可以尝试着学习一些常用的前端框架,vue、react、angularjs等都非常不错,也非常主流,在实际项目开发中经常会用到,企业招聘中也会作为一个重点考察,熟悉各种框架的优缺点及设计思想,多做项目,积累经验,以不断提升自己的能力为主:

目前,就分享这么多吧,前端入门来说,非常容易,只要你多看多练习,很快就能掌握的,后期就是学习各种框架和组件,内容会非常多,迭代也比较快,需要不断的学习和积累,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

关于本次为什么一提到java的swing和awt组件,大家都不建议学和不建议使用前端ui库的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

软帝学院 喜欢swing的进,java层次关系图快速理清脉络

声明:本文内容来自互联网不代表本站观点,转载请注明出处:https://bk.77788889.com/1/79929.html

相关推荐