長大了Java! 提出Java桌面版

不,這不是另一個“ Java已死”的咆哮。 Java非常活躍。 它是可用的最佳開發和運行時平臺之一。 迄今為止,最穩定的平臺。 那可能只是它最大的禍根。 荒謬! 穩定性如何? 你可能會問。 好吧,由于它,您可以看到突破創新的緩慢進展。 請參閱有關閉包的辯論以及模塊系統/ OSGI的進展。

每年,Java平臺僅通過一些API和小的語言更改/添加而增長。 沒有重大的重大創新活動在發生。 所有正在發生的重大變化都在其外部。 無論是依賴注入,持久性API,腳本API,桌面API,應用程序框架API,它們只是隨后添加到平臺中。 但是它們只是API。 我們需要的東西很大。 比今天先進了十年。

我感覺Java正在以自下而上的方式前進。 一次微小而緩慢的變化。 我們需要一種自上而下的方法。 考慮未來,設計它,然后僅以自下而上的方法實施它。

以新的Swing應用程序框架為例(現已從標準中刪除)。 我認為這個新框架是一個設想不周的想法。 看一下吉恩軍的糟糕狀況。 如果不支持多媒體,則臺式機無法取得實質性進展。 是的,JavaFX即將推出(超過3年?)。 這是向前邁出的一大步,但還不是標準(但是,會永遠嗎?)。

我們擁有JavaSE,并且JavaEE是基于JavaSE構建的。 為什么我們不能在臺式機上做同樣的事情? 為什么我們不能擁有Java Desktop Edition或JavaDE之類的東西? 把所有大東西放在這里。 這樣,我們可以使JavaSE保持簡單。 語言和VM更改已納入JavaSE。 SE和適用于EE和'DE'的通用API。 但是桌面添加的內容,例如應用程序框架,多媒體,瀏覽功能,小工具欄,JavaFX等,都包含在“ DE”中。 當然,還需要考慮JavaME,但是由于業界希望將SE引入ME,因此在本博客中可以將它們視為相同。

有人可能會認為,桌面與Web應用程序和功能強大的瀏覽器(帶有HTML 5)的流行無關。 但是,正如任何公正的報告所言,臺式機的無關緊要不會在短期內發生。 畢竟,瀏覽器需要在桌面上運行!

基本上,Java Desktop Edition成為新的操作系統。 它應該與基礎操作系統透明集成。 具有OSGI上的服務和模塊形式的功能。 因此,一切都是服務:打印服務,文檔服務,文件服務,圖形服務,數據庫服務,<在此處添加您喜歡的服務>。 因此,高級功能可以作為服務公開給系統中的任何模塊或應用程序(模塊集合)。 想象一下,將Eclipse插件作為服務公開給所有應用程序。

考慮一下Java桌面的創新可能性(以前聽過嗎?):

  • Java瀏覽器,內置對applet,JavaFX的支持–我們可以有applet插件
  • 瀏覽器可以嵌入任何應用程序中
  • GIMP之類的編輯器-JIMP?
  • 適用于所有應用程序的標準安裝程序–沒有特定于操作系統的Eclipse或Netbeans版本(Java WAS應該編寫一次,隨處運行)
  • 最后,一個Java媒體播放器
  • 桌面小工具欄
  • Java辦公室
  • <您最喜歡的應用程序在這里>

現在是Java成長并發揮其作用的時候了。

參考: 成長Java! 在My Java Experiences中,由我們的JCG合作伙伴 Sheikh Mohammad Sajid 提出Java桌面版
快樂編碼
拜倫
相關文章 :
  • 選擇一種新的編程語言來學習
  • 每個程序員都應該知道的事情
  • 生存在狂野西部開發過程中的9條提示
  • 軟件設計法則
  • 討厭Java嗎? 你在打錯仗

翻譯自: https://www.javacodegeeks.com/2011/06/grow-up-java-proposing-java-desktop.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374829.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374829.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374829.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[算法練習]Excel Sheet Column Title

題目&#xff1a; Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB 代碼&#xff1a; class Solution { public: string convertToTitle(…

7-16 求符合給定條件的整數集 (15 分)

給定不超過6的正整數A&#xff0c;考慮從A開始的連續4個數字。請輸出所有由它們組成的無重復數字的3位數。 輸入格式&#xff1a; 輸入在一行中給出A。 輸出格式&#xff1a; 輸出滿足條件的的3位數&#xff0c;要求從小到大&#xff0c;每行6個整數。整數間以空格分隔&#…

JUnit學習之hamcrest、testSuite介紹及測試原則

[轉自] http://huihai.iteye.com/blog/1994270 上一節說了junit的一些基本概念&#xff0c;主要使用assert做一些基本的判斷。但很多時候使用assert做判斷&#xff0c;并不方便&#xff0c;如果要判斷某幾個值是否為true或false&#xff0c;這時使用hamcrest來判斷就會方便許多…

Java最佳實踐– Vector vs ArrayList vs HashSet

在使用Java編程語言時&#xff0c;我們將繼續討論與建議的實踐有關的系列文章&#xff0c;我們將在三個最常用的Collection實現類之間進行性能比較。 為了使事情變得更現實&#xff0c;我們將在多線程環境下進行測試&#xff0c;以討論和演示如何將Vector &#xff0c; ArrayLi…

iOS:圖片上傳時兩種圖片壓縮方式的比較

上傳圖片不全面的想法&#xff1a;把圖片保存到本地,然后把圖片的路徑上傳到服務器&#xff0c;最后又由服務器把路徑返回&#xff0c;這種方式不具有擴展性&#xff0c;如果用戶換了手機&#xff0c;那么新手機的沙盒中就沒有服務器返回的圖片路徑了&#xff0c;此時就無法獲取…

7-17 爬動的蠕蟲 (15 分)

一條蠕蟲長1寸&#xff0c;在一口深為N寸的井的底部。已知蠕蟲每1分鐘可以向上爬U寸&#xff0c;但必須休息1分鐘才能接著往上爬。在休息的過程中&#xff0c;蠕蟲又下滑了D寸。就這樣&#xff0c;上爬和下滑重復進行。請問&#xff0c;蠕蟲需要多長時間才能爬出井&#xff1f;…

淺談泛型之泛型方法

實際不用多說只舉2個例子就行: //例1 static void fromArrayToCollection(Object[] a, Collection<?> c) {for (Object o : a) { c.add(o); // 編譯錯誤,錯誤原因也很簡單,<?>是無上下界的通配符泛型,所以編譯器根本無法確認類型} } //例2 static <T> void…

Android特效 五種Toast詳解

Toast是Android中用來顯示顯示信息的一種機制&#xff0c;和Dialog不一樣的是&#xff0c;Toast是沒有焦點的&#xff0c;而且Toast顯示的時間有限&#xff0c;過一定的時間就會自動消失。而且Toast主要用于向用戶顯示提示消息&#xff0c;接下來巴士為大家總結了Android五種To…

Java最佳實踐–高性能序列化

在使用Java編程語言時&#xff0c;我們將繼續討論與建議的實踐有關的系列文章&#xff0c;我們將討論并演示如何將對象序列化用于高性能應用程序。 所有討論的主題均基于用例&#xff0c;這些用例來自于電信行業的關鍵任務超高性能生產系統的開發。 在閱讀本文的每個部分之前…

7-18 二分法求多項式單根 (20 分)

二分法求函數根的原理為&#xff1a;如果連續函數f(x)在區間[a,b]的兩個端點取值異號&#xff0c;即f(a)f(b)<0&#xff0c;則它在這個區間內至少存在1個根r&#xff0c;即f0。 二分法的步驟為&#xff1a; 檢查區間長度&#xff0c;如果小于給定閾值&#xff0c;則停止&a…

java只使用try和finally不使用catch的原因和場景

JDK并發工具包中&#xff0c;很多異常處理都使用了如下的結構&#xff0c;如AbstractExecutorService&#xff0c;即只有try和finally沒有catch。 class X {private final ReentrantLock lock new ReentrantLock();// ...public void m(){lock.lock(); // block until condi…

Java 7:嘗試資源

本文研究try-with-resources語句的用法。 這是一個聲明一個或多個資源的try語句。 資源是一個對象&#xff0c;程序完成后必須將其關閉。 try-with-resources語句可確保在語句末尾關閉每個資源。 任何實現java.lang.AutoCloseable或java.io.Closeable接口的對象都可以用作資源。…

Spring學習(19)--- Schema-based AOP(基于配置的AOP實現) --- 配置切面aspect

Spring所有的切面和通知器都必須放在一個<aop:config>內&#xff08;可以配置包含多個<aop:config>元素&#xff09;&#xff0c;每個<aop:config>包含pointcut&#xff0c;advisor和apsect元素。ps&#xff1a;他們必須按照這個順序進行聲明 <aop:pointc…

2021-10-08

word文檔&#xff1a;.doc .docx 需求文檔、架構文檔、接口文檔、詳設文檔一般都是用word編寫。 Excel表格&#xff1a;.xls、.xlsx’&#xff0c;.csv 測試用例 PPT幻燈片&#xff1a;.ppt、*.pptx 版本不同 可執行文件&#xff08;windows系統&#xff09;&#xff1a; *.exe…

UITableViewCell 選中的狀態小技巧

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {[super setSelected:selected animated:animated]; //cell 沒被選中時 隱藏這個 _leftImageViewself.leftImageView.hidden !selected; //選中text變紅 不然變灰色self.textLabel.textColor selected ? [UICol…

Spring和AspectJ的領域驅動設計

在JavaCodeGeeks主持的上一篇文章中&#xff0c;我們的JCG合作伙伴 Tomasz Nurkiewicz介紹了使用State設計模式進行領域驅動設計的介紹 。 在該教程的最后&#xff0c;他承認他省略了如何將依賴項&#xff08;DAO&#xff0c;業務服務等&#xff09;注入域對象的過程。 但是&am…

BZOJ 3143 HNOI2013 游走 高斯消元 期望

這道題是我第一次使用高斯消元解決期望類的問題&#xff0c;首發A了&#xff0c;感覺爽爽的.... 不過筆者在做完后發現了一些問題&#xff0c;在原文的后面進行了說明。 中文題目&#xff0c;就不翻大意了&#xff0c;直接給原題&#xff1a; 一個無向連通圖&#xff0c;頂點從…

VS2019安全函數scanf_s問題

VS2017、VS2019等安全函數scanf_s問題&#xff1a; scanf()、gets()、fgets()、strcpy()、strcat() 等都是C語言自帶的函數&#xff0c;它們都是標準函數&#xff0c;但是它們都有一個缺陷&#xff0c;就是不安全&#xff0c;可能會導致數組溢出或者緩沖區溢出&#xff0c;讓黑…

eclipse啟動tomcat, http://localhost:8080無法訪問的解決方案

問題:&#xff1a; tomcat在eclipse里面能正常啟動&#xff0c;但在瀏覽器中訪問http://localhost:8080/不能訪問tomcat管理頁面&#xff0c;且報404錯誤。同時其他項目頁面也不能訪問。訪問的時候出現下列頁面: 現在關閉eclipse里面的tomcat&#xff0c;在tomcat安裝目錄下雙擊…

GWT EJB3 Maven JBoss 5.1集成教程

大家好&#xff0c; 在本文中&#xff0c;我們將演示如何正確集成GWT和EJB3 &#xff0c;以實現示例項目&#xff0c;使用maven進行構建并將其部署在JBoss 5.1應用服務器上。 實際上&#xff0c;您可以輕松地更改maven構建文件中的依賴關系&#xff0c;并將項目部署到您喜歡的…