內部報酬率 (Internal Rate of Return,IRR)

內部報酬率是一種用來衡量投資效益的指標,其概念是計算出一個折現率,使淨資金流入的現值與淨資金流出的現值加總為 0,也就是淨現值為 0 (NPV=0)。

淨現值的數學公式如下:

NPV=t=0NCt(1+r)t{NPV = \displaystyle \sum _{t=0}^{N}{\frac {C_{t}}{\left(1+r\right)^{t}}}}

其中 r{r} 是折現率、N{N} 為期間、Ct{C_{t}} 為第 t{t} 年的淨現金流量。
當我們帶入一個 r{r} 能使得 NPV=0 時,我們就把這個 r{r} 稱 IRR。

閱讀全文 »

在 Java 的多線程操作中,Concurrent Queue 是一種非常重要的容器,在共享資源的同時也能夠幫我們進行流程控制。
Java 的 Concurrent Queue 可以分為兩類,分別是 Blocking Queue 以及 Non Blocking Queue,兩種都是線程安全的,文章的最後會用 Blocking Queue 來實作 Producer Consumer Problem !

Consumer Producer

閱讀全文 »

Set

Set 的關係圖如下:
Java Set Interface

比較常用的:

  • HashSet: 不保證保存順序,速度最快
  • LinkedHashSet: 保存順序與存入順序相同
  • TreeSet: 依元素的大小排序,存入的元素必須是可比較的
閱讀全文 »

Collection

Collection 是 Java 中用來存儲、操作數據結構的一種框架,在此之下提供了許多實用的 Interface,包括 ListQueue 以及 Set (Map 是分開的)。

Java Collection

閱讀全文 »

Java OOP

Java 是一個物件導向的程式語言,重點在於如何定義物件之間的互動,Object Oriented Programming (OOP) 的三大特性分別是: Encapsulation (封裝)Inheritance (繼承)Polymorphism (多型)

閱讀全文 »

JVM, JRE & JDK

JVM, JRE & JDK

Java vs C

當開發 C 或 C++ 程式時,通常會先將原始碼透過編譯器轉換成目標機器可以理解的 Object Code。這個 Object Code 是特定於目標機器架構的,因此在不同的硬體平台上可能會產生不同的機器碼。因此,當將程式移植到不同的機器或架構時,通常需要重新編譯原始碼以生成適用於該特定平台的新 Object Code。

閱讀全文 »

strategies

這篇文章簡單紀錄了常見的五種部署策略: Big Bang Deployment、Rolling Deployment (滾動部署)、Blue-Green Deployment (藍綠部署)、Canary Deployment (金絲雀部署) 與 Shadow Deployment (影子部署)。

閱讀全文 »
0%