Apache Software Foundation Thinking in Java:Java是通过applet以及使用Java Web Start来进行客户端编程的

本文介绍了Java早期的客户端编程方式,如Java Applets和Java Web Start,它们如今已不再主流。现代Java开发转向Servlet、JSP、Spring等技术,Java也不断演进。同时指出Java开发者需关注云计算、微服务、人工智能等新技术,以构建更好的应用程序。

在Java的早期阶段,Java Applets是一种在浏览器中运行的程序,它们使用Java的图形和网络功能。通过Java Applets,开发者可以在网页上嵌入动态内容,提供交互性,而无需用户下载和安装任何插件。
然而,随着浏览器的更新和安全性的提高,Java Applets已经不再被广泛支持。许多现代浏览器不再默认启用Java Applets,或者根本就不支持Java Applets。因此,Java Applets不再是主流的客户端编程方式。
Java Web Start(JNLP)是另一种早期用于分发和运行Java应用程序的机制。它允许用户从Web服务器下载应用程序的本地副本,并在本地运行这些应用程序,而不是在Web浏览器中运行。然而,与Java Applets一样,Java Web Start也已经被弃用,现代的Java开发已经转向使用更现代的部署和分发方法,例如使用JAR(Java Archive)文件和依赖管理工具,如Maven或Gradle。
现在,Apache Software Foundation等组织和其他开源项目正在推动新的Java客户端技术,如JavaFX,它提供了丰富的图形和媒体功能,可以用于构建桌面应用程序。然而,对于Web开发,Java通常与Servlet、JSP和Spring框架等技术一起使用,以构建服务器端应用程序。为了适应现代开发的需求,Java也在不断演进和发展。例如,Java 8引入了函数式编程的概念,使得代码更加简洁和易读。而Java 9则引入了模块化系统,使代码的依赖关系更加清晰和可管理。
尽管Java Applets和Java Web Start已经不再是主流的客户端编程方式,但它们在过去的开发历史中起到了重要的作用。它们让开发者能够使用Java语言在客户端进行编程,从而扩展了Java的应用范围。
然而,随着技术的进步和新的开发工具的出现,开发者现在有更多的选择来构建和部署他们的应用程序。对于现代的Java开发者来说,了解和学习这些新的技术和工具是非常重要的,以便他们能够利用最新的技术来构建更好的应用程序。对于现代的Java开发者来说,除了了解和学习新的技术和工具外,还需要关注Java社区的发展。Apache Software Foundation作为Java社区的重要成员,一直在推动Java技术的发展和创新。通过参与开源项目和与其他开源项目的合作,Apache Software Foundation和其他组织为Java开发者提供了许多有用的工具和框架,如Apache Tomcat、Apache Hadoop和Apache Spark等。
此外,现代的Java开发者还需要关注云计算和微服务的发展。这些技术为Java开发者提供了更多的部署和运行应用程序的选择,使得他们能够更好地满足用户的需求,并提高应用程序的可扩展性和可靠性。
总之,虽然Java Applets和Java Web Start已经不再是主流的客户端编程方式,但它们在过去的开发历史中起到了重要的作用。现代的Java开发者需要不断学习和适应新的技术和工具,以构建更好的应用程序,满足用户的需求。除了以上提到的技术,现代的Java开发者还需要关注其他一些领域,例如:

  1. 人工智能和机器学习:随着人工智能和机器学习技术的快速发展,Java开发者需要了解这些技术如何与他们的应用程序相结合,以提高应用程序的性能和智能化水平。
  2. 区块链技术:区块链技术是一个新兴的领域,它可以用于构建安全、透明和不可篡改的分布式账本。Java开发者可以探索如何将区块链技术应用于他们的应用程序中,以提高数据的安全性和可靠性。
  3. 持续集成和持续部署(CI/CD):CI/CD是一种自动化构建、测试和部署应用程序的方法。通过使用CI/CD,Java开发者可以提高应用程序的可靠性和交付速度。
  4. 容器化和虚拟化技术:容器化和虚拟化技术可以帮助Java开发者更好地管理和部署他们的应用程序。通过使用Docker、Kubernetes等工具,Java开发者可以轻松地构建、部署和管理他们的应用程序。
    总之,作为现代的Java开发者,我们需要不断关注新技术的发展,并探索如何将这些技术应用于我们的应用程序中。通过不断地学习和实践,我们可以提高我们的技能和知识水平,并成为更好的开发者。
    引论 :
    如果脚本语言可以解决客户端编程百分之八十的问题的话,那么剩下那百分之二十(那才是真正难啃的硬骨头)又该怎么办呢?Java是处理它们最流行的解决方案。Java不仅是一种功能强大的、被构建为安全的、跨平台的、国际化的编程语言,而且它还在不断地被扩展,以提供更多的语言功能,以及更多的能够优雅地处理在传统编程语言中很难解决的问题的类库,例如多线程(multithreading)、数据库访问(database access)、网络编程(network programming)和分布式计算(distributed computing)。Java是通过applet以及使用Java Web Start来进行客户端编程的。
    Applet是只在Web浏览器中运行的小程序。Applet是作为网页的一部分被自动下载的(就象网页中的图片被自动下载一样)。当applet被激活时,它便开始执行程序。这正是它优雅之处:它提供了一种一旦用户需要客户端软件时,就可以自动地从服务器分发客户端软件给用户的方法。当用户获取了最新版本的客户端软件时,并不会有错误产生,而且也不需要很麻烦的重新安装过程。因为Java的这种设计方式,使得程序员只需创建单一的程序,而只要一台计算机有浏览器,且浏览器具有内置的Java解释器(大多数的机器都如此),那么这个程序就可以在这台计算机上运行。由于Java是一种成熟的编程语言,所以在创建了到服务器的请求之前和之后,你可以在客户端尽可能多地做些事情。例如,你不必跨网络地发送一张请求表单去检查你是否填写了错误的日期或其它参数,你的客户端计算机就可以快速地标出错误数据,而不用等待服务器作出标记并传回一张图片给你。你不仅立即就获得了高速度和快速的响应能力,而且也降低了网络流量和服务器负载,从而不会使整个Internet的速度都慢了下来。
    Java applet胜过脚本语言程序的优势之一就是它是以被编译过的形式存在的,因此其源代码对客户端来说是不可见的。另一方面,虽然反编译Java applet并不需要花费多少力气,但是隐藏你的代码通常并不是一个重要的话题。有另外两个因素是很重要。就象你在本书稍后的部分会看到的那样,如果编译过的applet很大的话,那么就需要额外的时间去下载它。脚本语言程序只是被作为Web页面的一部分文本而集成到了Web页面中(通常比较小,并减少了对服务器的访问)。这对Web网站的响应能力来说很重要。另一个因素是非常重要的“学习曲线(learning curve)”。如果你是一个Visual BASIC程序员,那么转而学习VBScript可能是最快的解决方案(假设你可以限制你的客户只能用windows平台),而且由于它或许能够解决大多数典型的客户/服务器问题,所以你可能很那对学习Java报以公正的态度。如果你已经对脚本语言很有经验了,那么你在考虑付诸于Java之前,应该先看看JavaScript或VBScript是否满足你的要求,这样做对你会很有好处的,因为它们也许能够更方便地满足你的要求,而且使你更具生产力。

提问:
什么是LILO?
什么是BASH?
什么是CLI?
什么是GUI?
开源的优势是什么?
GNU项目的重要性是什么?
简单 Linux 文件系统?
Linux 的目录结构是怎样的?
什么是 inode ?
什么是硬链接和软链接?
RAID 是什么?
一台 Linux 系统初始化环境后需要做一些什么安全工作?
什么叫 CC 攻击?什么叫 DDOS 攻击?
什么是网站数据库注入?
Shell 脚本是什么?
可以在 Shell 脚本中使用哪些类型的变量?
Shell 脚本中 if 语法如何嵌套?
Shell 脚本中 case 语句的语法?
Shell 脚本中 for 循环语法?
Shell 脚本中 while 循环语法?
如何使脚本可执行?
在 Shell 脚本如何定义函数呢?
判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下?
添加一个新组为 class1 ,然后添加属于这个组的 30 个用户,用户名的形式为 stdxx ,其中 xx 从 01 到 30 ?
写一个 sed 命令,修改 /tmp/input.txt 文件的内容?
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bol5261

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值