足球资料库数据/孙祥/nba五佳球/足球直播哪个平台好 - cctv5今日现场直播

首頁 > 知識庫 > 正文

ZeroTurnaround創始人Jevgeni Kabanov及項目經理Sten Suitsev談JRebel for Android
2016-02-15 17:53:44   來源:Abraham Marín Pérez ,譯者 謝麗   評論:0 點擊:

在JRebel for Android的第一個穩定版本發布之后,InfoQ聯系到了ZeroTurnaround創始人兼首席執行官Jevgeni Kabanov及JRebel for Android項目經理Sten Suitsev,就他們創建該產品的初衷以及將來計劃推出何種新產品對他們進行了采訪。

JRebel for Android的第一個穩定版本發布之后,InfoQ聯系到了ZeroTurnaround創始人兼首席執行官Jevgeni Kabanov及JRebel for Android項目經理Sten Suitsev,就他們創建該產品的初衷以及將來計劃推出何種新產品對他們進行了采訪。

InfoQ:是什么讓你們決定創建JRebel for Android的?

Jevgeni Kabanov:對于ZeroTurnaround每項重大的投資,我們都會仔細權衡機會和選擇。在這種情況下,決定性因素是,市場上有一個我們充分理解的大問題,而我們可以重用已有的、獨一無二的技術來解決那個問題。

Sten Suitsev:是這樣。我們認識到,可以重用JRebel已有的核心代碼——我們已經使用了9年的Java類重加載方案——創建JRebel for Android。不用說,有許多特定于Android的技術需要處理,但事實是,當我們推動這個項目時,我們不用完全從頭開始創建一種有巨大差異的產品。

InfoQ:在開發JRebel for Android的過程中,難度最大的技術挑戰是什么?

Jevgeni Kabanov:我們每天都會遇到技術挑戰,但其中最大的一個挑戰是使“應用更新”或者運行時更新能夠適應不同規模的項目。一方面,這意味著,不必經歷整個重新打包和重新部署的過程就可以應用更新,這點我們是通過JRebel for Android Agent解決的。另一方面,我們希望大項目的更新速度同小項目一樣快,這就需要能夠增量更新;從來都沒有Android工具支持增量更新或安裝,因此,涉及Java編譯和Android資源打包有幾個痛點。

InfoQ:在Android之后,JRebel的下一步將是什么?你們計劃支持其他Android衍生系統嗎,比如Android TV、Android Wear或Android Auto?

Jevgeni Kabanov: 這里必須重點提一下,JRebel和JRebel for Android是不同的產品,它們各自有自己的路線圖。

Sten Suitsev:確實。雖然除了上面提到的核心代碼外還重用了一些其他的代碼,但每款產品所追求的目標是不同的。JRebel for Android產品主要關注特定于Android的特性,如增量構建和快速設備同步。JRebel for Java主要關注改進同Java生態系統的集成以及更好地支持Docker、虛擬機和云。

Jevgeni Kabanov:已經說過,雖然JRebel for Android并沒有為Android TV、 Wear和Auto提供官方支持,但實際上,它們的技術棧大部分都是同手機和平板電腦應用共享的。因此,簡單來說,它可能已經可以工作在這些系統上!在這一方面,我們希望收到用戶的反饋,如果用戶愿意嘗試的話。

長期來看,我們考慮將快速重新部署的理念帶到其他平臺,如.NET和iOS。不過,這兩個平臺需要從頭開發JRebel核心代碼,而不是像我們創建JRebel for Android那樣,大量重用現有的代碼庫。因此,這需要的工作量要多得多。

InfoQ:JRebel for Android目前可以用于Android Studio,在不遠的將來,你們計劃支持其他IDE環境嗎?

Sten Suitsev:我們的核心JRebel產品已經完全支持各種各樣的IDE環境。對于 JRebel for Android,除Android Studio之外,我們有類似的打算。事實上,許多用戶已經要求支持IntelliJ IDEA。我們正在從Android Studio插件中分離我們的邏輯,并將其置入我們的Gradle插件,這將使我們可以提供IntelliJ IDEA支持。這是我們優先處理的工作,很快就會推出。

InfoQ:如果將邏輯移到Gradle插件,那是否意味著開發人員可以從命令行使用JRebel for Android?

Sten Suitsev:現在還不能。但將來也許可以。

InfoQ:從另一方面來說,部分Android Studio用戶仍然會選擇Maven作為他們的構建工具,這部分人能夠從JRebel for Android受益嗎?

Sten Suitsev:現在還不能。我們已經收到了一些來自Maven用戶的請求,但目前,我們還沒有研究擴展到Gradle之外的其他構建系統。

InfoQ:JRebel for Android支持Kotlin,您能告訴我們是什么讓你們做出這個決定嗎?你們考慮支持其他語言了嗎?

Sten Suitsev:說實話,這并不是個困難的決定,因為我們主要是在字節碼層面進行操作。這就是說,我們可以支持所有兼容Dalvik和ART的語言。事實上,如果你實在想那么做的話,在已經集成了Gradle的情況下,你甚至還可以嘗試使用Scala和Groovy。也許,我們將會把那作為一項挑戰留給真正熱心的讀者!

InfoQ:您認為Android采用OpenJDK將會為Android開發帶來什么改變?你們必須對JRebel for Android做什么調整嗎?

Jevgeni Kabanov:我希望這意味著Android開發人員從此可以獲得更快的Java版本更新。在我們看來,這不會影響我們的工作方式,因為關于JRebel如何集成最新的Java版本,我們已經積累了許多知識,到現在為止,我們已經支持它有一段時間了。我們只需要在JRebel for Android團隊中運用那些知識。

Jevgeni Kabanov是ZeroTurnaround的創建者兼首席執行官。Jevgeni獲得了愛沙尼亞塔爾圖大學的博士學位,他為多種科學出版物、專利和開源項目作出過貢獻。Jevgeni獲得了多個獎項,包括Order of White Star和愛沙尼亞共和國的5th Class。

Sten Suitsev是JRebel for Android的產品經理。起初在愛沙尼亞塔爾圖大學學習期間,他是一名Android移動開發人員。之后,他在各種iOS、Android和Windows項目中擔任產品經理的角色。在業余時間,他喜歡釣魚或踢足球。

查看英文原文:Jevgeni Kabanov and Sten Suitsev, from ZeroTurnaround, Talk about JRebel for Android

相關熱詞搜索:kabanov suitsev jrebel android 文化 & 方法 DevOps 語言 & 開發 Java Android 操作系統 移動

上一篇:將在.NET Core中被廢止的技術
下一篇:微軟開源PDB

分享到: 收藏