koji 積分 0

現在新的部署都給他開著了,方便

IngramChen 積分 0

這個 init constructor

public PersonRecord{
    if ("Heinz".equals(firstName))
      throw new IllegalArgumentException(…);
}

到是沒想過

IngramChen 積分 1 編輯於

除了效能考量,要不要用外部的 fonts/js/css 也有個簡單的判斷原則:

你的網站是公開給 internet 用嗎?

如果不是,那就全部都 self host,不要用外部的 CDN

你接到的案子,是給公司行號/圖書館/kiosk... blah blah 的 內部 應用,用外部 CDN 是自找苦吃。

IngramChen 積分 0

啊?到時候 kotlin target byte code 設 14 以後不就有了嗎

smallufo 積分 0
That is, the toString() method (as well as equals() and hashCode()) is implemented using an invokedynamic-based mechanism. This is similar to how string concatenation has also been migrated to use invokedynamic in recent Java versions.

這是唯一吸引人的地方,也是目前 kotlin 做不到之處。這算 Oracle 的後發者優勢吧。

koji 積分 1

沒關係反正我們也還可以寫很多年~

IngramChen 積分 0

整個 sealed class/pattern match/destruction...等等,也不知道要幾年…

IngramChen 積分 0

我們家自己架的 artifactory 很舊,remote repo 都沒 https,看了這篇才發現...

kaif 積分 0

全世界都抄s3 api啊,真的標準是cdmi沒人裡他。aws也沒差吧,沒一個能打的

IngramChen 積分 0

要加的功能好多,2020 做的完?

把工作從 UI thread 拔掉當然是很好,不過我觀察發現卡住的地方通常是真的算很久 (貼個 Java code 轉成 kotlin 之類的),或是修改一個 1000 行的 kotlin 程式檔。parser 不再快一點也是白搭

metavige 積分 1

是不是程式語言的缺陷有待討論 但是,的確我想,當初有這些 DP 是在解決當時發生的一些問題,所歸納出來的常用解法 但是如果要用新的語言來解釋以前的東西,好像有點怪怪的 畢竟,這些語言在設計之初,應該就已經想到了之前發生的一些問題了吧~

每個語言都應該會有自己的 Design Patterns,因為 DP 的由來,本來應該就是集結了大多數人在解決某些問題所歸納出來的解法~ 我的見解是這樣

IngramChen 積分 2

會 Swift 的人都是 iOS 開發者,和後端需要的技能差太多。我的觀察有志寫 mobile/front end 的人,通常對只有冷冰冰純數據的開發沒什麼興趣。

_hhnj 積分 1

以一位沒碰過 Swift 的開發者身份,我有想到兩個:

  1. 對於已熟悉 Swift 的開發者,不需要再學習第二種語音就能開發後端
  2. 由於會編譯成 machine code,在啟動、效能上應該有不錯的表現
chchwy 積分 1

只是好奇,用 Swift 開發後端有什麼特別的優勢嗎?

IngramChen 積分 1

應該是 design pattern 發明出來後回流到語言本身

IngramChen 積分 0

kotlin 有的大家都想要,這點 Java 也一樣 (被逼的)

kotlin 吸收前人的經驗,只留下實用的功能,現在變成現代化語言的標竿了。Dart 也許到了 4.0 功能上也會差不多

IngramChen 積分 0 編輯於

改得超多的,之前的什麼 any T 都不見了

In Valhalla, we convert from inline to reference types via an inline widening conversion. This is similar to boxing, but it has a significant difference: the result of the conversion is not an identity object (as a box would be), but a reference to an inline object.

Boxing 的話是直接開一個肥 Object, Reference projection 的話只是一個 reference 指向 inline object,所以整個輕量化。

看到後面,最大缺點是 Optional 要寫成

Optional.inline<User> userOpt = Optional.of( findUserById(12))

這種奇怪的型式才能得到最佳化,然後像是 Map API 也變難懂:

public V.ref get(K key);

看到 return V.ref 一定很傻眼

IngramChen 積分 1 編輯於

昨天把公司的大小專案都升到 jdk 11 和最新的 spring boot 了

蠻爽的

時間久了發現我現在的更新週期大約是;

  • spring boot 一年
  • vuejs 半年
  • k8s 半年
  • postgresql 一年以上
  • JDK 三年以上
  • OS 三年以上

可能的話我也想一兩年升一次 k8s 就好, 但目前不太可能...

yllan 積分 1

有類似經驗。面試很多junior都說寫過python,一問之下都只是寫爬蟲。

我很好奇是不是有什麼書是專門教準備面試要先寫爬蟲的? 🤔