Javaの概要
https://qiita.com/KenyaSaitoh/items/22f32b9d7aea5844d77
- Javaの言語特性(抜粋)
- プラットフォーム非依存の言語
- Java Virtual Machine
- Javaは、コンパイル型言語の一種である
- オブジェクト指向型言語
- 手続き型プログラミングとの比較
- 手続き型では分離されていた手続きとデータを「クラス」という概念によって統合し、クラスとクラスを相互に連携させることによって処理を構築するプログラミング技法
- 疑問:オブジェクト指向誕生の背景
- コンパイル型言語
- インタープリタ型言語との比較
- 堅牢性が高い開発
- プログラム実行時の処理性能
- 参考:
- インタープリタ型言語との比較
- 静的型付け言語
- プラットフォーム非依存の言語
JavaとTypeScriptの比較
なぜ僕たちはサーバレスでJavaを諦めTypescriptを採用したか #AWS - Qiita
- 起動オーバーヘッド
- > JVM本体やフレームワークが利用するDI/Webコンテナなどの起動にかかるオーバヘッドが非常に大きい
- > GCやJITコンパイルによってマルチスレッドを活用しても尚素晴らしいランタイムを実現しているがそれでも起動に数秒かかる
- JITコンパイル
- DIコンテナ(Dependency Injection)
DI・DIコンテナ、ちゃんと理解出来てる・・? #PHP - Qiita
- DIとは、「依存性の注入」ではなく「オブジェクトの注入」
- > この機能自体は旧来のいわゆるクラサバモデルでEC2上で動くアプリケーションならほぼ無視できるオーバーヘッドですが、LambdaなどのFaaS上で動くサーバレスアプリケーションでは決して無視できません。
- クラサバモデル
- > GCやJITコンパイルによってマルチスレッドを活用しても尚素晴らしいランタイムを実現しているがそれでも起動に数秒かかる
- > JVM本体やフレームワークが利用するDI/Webコンテナなどの起動にかかるオーバヘッドが非常に大きい
- 気になる単語
Springとは/Spring Bootとの違い
https://codezine.jp/article/detail/11310