IT討論區(179) - any update?
蘋果批+亡爺奶西 2022-11-30 19:02:15 java 啦仲c#
:^(

Ads

Moya 2022-11-30 19:05:36 加拿大c#工多過java
:^(
69701 2022-11-30 19:05:46 Java is both an Interpreted and compiled lang.
JIT 會係run time compile 常用嘅bytecode into machine code
之後就唔會再call Interpreted method
而呢個optimization係會一路行緊個application
有支thread一路睇住嚟做optimization
同埋做好多 algo/syntax 嘅optimization
而每一代嘅jdk/jvm都會有performance 嘅改進
所以基本上過咗咁多年已經玩到好成熟
不過咁樣比較其實唔fair
應該係比較java 同其他compiled lang會比較公平啲
手一黏便緊(UTC+9 2022-11-30 19:14:13 稱呼黎講 手巴唔會稱呼java做interpreted
Instead手巴會叫compiled into bytecode
69701 2022-11-30 19:16:07 我唔係java expert 但我都簡單講幾樣
1. JIT 會係runtime 將一啲成日call嘅method compile做machine code
之後就會淨係call個compiled version 但呢個optimization係會一路做嘅
throughout 個jvm lifecycle,
啫係唔同時間唔同嘅method calling 都會有唔同嘅改動
2. even係少method calling 但如果個thread 行呢個method 夠耐 都一樣會做optimization
3. 成日call 嘅短method會係optmization其間將佢inline 咗
4. 一啲conditions嘅branch 例如係if else, switch 如果係成日行 都會做machine code optimization
5. loop unrolling 會將啲nested loop打成一個大loop再直接call個compiled instruction
6. 仲有一大堆 data flow 嘅analysis 同optimization會做但就唔詳細講了
力=質量x加速度 2022-11-30 19:19:10 此回覆已被刪除
69701 2022-11-30 19:19:59 比較新式嘅framework 同 Vert.x, Mircronaut個啲都係叫比較集中係microservice嘅framwork
我都未玩過 但以我所知係reactive in nature,
所以個architecture係non blocking 嘅
但比較promising 嘅新framework應該係Helidon 聽聞underlying 嘅implementation已經用緊project loom
不過其實都好睇你想做乜
其實Spring都唔算太差 易用但只係差在internal 用好多 reflection 嚟做佢啲dark magic
69701 2022-11-30 19:20:45 bytecode之後一樣會compiled做machine code
睇你點定義intepreted 同compiled
手一黏便緊(UTC+9 2022-11-30 19:22:11 手巴通常唔叫qemu 做interpreter
力=質量x加速度 2022-11-30 19:22:18 此回覆已被刪除
手一黏便緊(UTC+9 2022-11-30 19:26:25 唔係Java expert
因為視乎唔同target platform可能會用唔同既optimization策略
Say 變唔變branchless 用唔用SIMD

Ads

69701 2022-11-30 19:32:12 第一樣要講嘅就係bytecode同jvm 嘅write once use everywhere嘅概念
全部都compile做machine code
就有機會好似c/c++ 呢啲compiled lang
咁係唔同嘅environment 都可能會有唔同嘅差別
第二就係compile嘅時間 同埋size
淨係用gvm native image 同普通咁比都可以差三四倍
時間或者係空間都係咁話
仲有jvm runtime會成日load/unload啲class
如果乜都compile 哂做machine code
我諗個memory usage都會多唔少 (我估)
modern SE 嚟講乜都要上cow
你諗吓每做一次cicd個時間同空間都要多咁多 好撚貴的
69701 2022-11-30 19:32:52 啱啊
:^(
蘋果批+亡爺奶西 2022-11-30 19:53:41
:^(
:^(
:^(
:^(
:^(
:^(
:^(
:^(

其他唔係啊嘛
唔洗咁掛 2022-11-30 20:01:24 唔撚係掛
:^(
力=質量x加速度 2022-11-30 21:24:11 此回覆已被刪除
陶宇飛 2022-11-30 21:32:47 此回覆已被刪除
69701 2022-11-30 21:42:51 peak performance 可能有啲分別
呢個就係 AOT vs JIT 各有各好
native image 比較啱做 aws lambda
漢語字庫 2022-11-30 22:16:53 而家IT討論區,好熱鬧
:^(
:^(
:^(
男男細乳 2022-11-30 22:42:12 咁唔係下下都要比較peak performance既
web野行k8s/serverless講scale out速度多過一部機食到幾多request
強力飲水 2022-11-30 22:44:07 睇緊cpp class 皮毛 真系好能顛。。
淨系constructor都夠煩。。shadow copy deep copy 仲有move constructor。。
然後pass class by function 又要睇系行左邊段copy定pass reference定temp object 。。又要睇l value 又r value。。
頂5順要聽日再睇operator overloading。。顛。。

Ads

強力飲水 2022-11-30 22:46:20 可以預想到至少要花多兩星期先睇得到stl。。inheritance。。smart pointer 等等的皮毛。仲未計concurrency 個堆臭系!!
男男細乳 2022-11-30 22:53:01 聽講你concurrent吊緊好多靚系。。
強力飲水 2022-11-30 22:54:16 幾時教我k8s 。。公司成日轉pricing model 好春煩。。
強力飲水 2022-11-30 22:55:07 成班IT毒撚,玩circular Linkedlist 昨。。