popcorny 積分 0

納悶Java為什麼不直接在語言層級支援這個功能

List<String> nameLt = ["Justin", "Monica"];

Map<String, Integer> scoreMap = {
   "Justin": 95,
   "Monica": 100
};
koji 積分 0

看完這個還是快快來先跑在 9 上好了,module 就以後再說了...

IngramChen 積分 2

現在也沒什麼產品了吧?都直接做成 cloud service

Hibernate 真是個精美的物件導向設計,尤其是當你了解 OR mapping 是多麼的不匹配後....

可惜資料庫並不是為了物件導向設計而存在的,設計的繁複精巧變成本末倒置

natsu 積分 1 編輯於

為什麼我們沒有真的喜歡 Hibernate?

因為做專案要連那家的資料庫1通常一開始就固定了,還沒有聽過客戶說:我會換!

所以只有少數做產品的才會需要 Hibernate 吧。

natsu 積分 0

所以目前的結論是:

  1. 如果可以就把 InterruptedException 往外丟,然後由外層執行例外處理 (e.g. transaction rollback、close resources)。
  2. 若你的 method 有可能會被其他 thread 中斷,但無法丟出 InterruptedException,則執行例外處理時至少要呼叫 Thread.currentThread().interrupt();
  3. 若你的 method 確定不會被其他 thread 中斷,則可自行決定是否要做例外處理。
IngramChen 積分 0

通常 thread 是 library 或 framework 呼叫你的 method 的。所以你也不知道它們是不是 loop 還是怎樣

natsu 積分 0

目前看起來也只有在巢狀 loop 中會有影響... 請看 Why do we have to interrupt the thread again? 小節1

所以其實 Thread.currentThread().interrupt(); 也不是一定要加的?

IngramChen 積分 0

打開 IDE search InterruptedException 就會發現一堆地方沒加 Thread.currentThread().interrupt();

natsu 積分 0
看來這樣寫是不好的:
try {
    Thread.sleep(1000);
} catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

比較好的作法應該是把 InterruptedException 往外丟,讓程式儘快終止:

try {
    Thread.sleep(1000);
} catch (InterruptedException e) {
    throw e;
}

若不能丟出 InterruptedException,至少也要呼叫 Thread.currentThread().interrupt();

try {
    Thread.sleep(1000);
} catch (InterruptedException e) {
    Thread.currentThread().interrupt();
}
chchwy 積分 0

我用這款唯一的理由就是可以一鍵打開 Pull Request

haocheng 積分 0

用 Electron 不是應該也支援 Linux?

alsuka 積分 0

自身目前開發經驗只有接觸到 vue js, 前端技術真的就是多看,有機會再摸

caterpillar 積分 4 編輯於

JUnit 5 想當共主,搞了個所謂的 JUnit Platform!

單就測試框架來說,JUnit 5 中應該是指 JUnit Jupiter 這塊。

JUnit Vintage 底層跑的,應該還是 JUnit 4,只不過多了層 JUnit Platform Engine,然後 JUnit Platform Launcher 透過 Engine 來跑 JUnit 4。

簡單來說,JUnit 4 還是 JUnit 4,只不過 JUnit 5 透過 JUnit Vintage 知道怎麼跑它。

如果有人想,可以實作一個 TestNG 的 [TestEngine1],然後 JUnit Platform Launcher 也可以透過 Engine 來跑 TestNG 了,寫程式時照樣使用 TestNG 的 API。

只是說,如果我用 JUnit 4、TestNG 還是爽爽的,那就繼續用就好了啊?幹嘛中間還多個 JUnit Platform?如果不想使用 JUnit Jupiter 的話,確實就是如此,就架構看來,JUnit Platform 主要是對 IDE、plugin、build tools 有利,不用每個測試框架做一套自己的工具。

當然,真的看完 JUnit Jupiter 而產生了愛的話, JUnit Platform 還是可以當 Migration 過程的平台(從 JUnit 4 到 JUnit Jupiter,或者是從 TestNG 到 JUnit Jupiter?)

目前的理解是這樣…

IngramChen 積分 0 編輯於

Oracle 和 Apache 不合的啦。反正 apache 不收的就是換 eclipse 收

IngramChen 積分 1

最近 reactjs 才被 wordpress 和 apache 放棄。試論明年 react 轉弱的可能性