日本語の情報が少なく、がんばってリファレンスを読んだのですが、まだ理解できていないので伺います。

リファレンスをざっと読んだ感じだと、
ArraySliceはArray同様に振る舞うとあり、Obj-Cとの互換性がないとありました。
(英語が苦手のため誤った解釈かもしれません、間違っていたらご指摘ください。)

そして、ArraySliceは長期的なインスタンスの保管は、推奨されておらず、
一時的な処理にのみ利用すると書いてありました。

でしたら、わざわざArraySliceを用いる必要がないような?と思ったため調べました。
ArraySliceの正体やどのようなときに使用するのかを知りたいです。

そもそもArraySliceって何?となったのは
http://tercel-tech.hatenablog.com/entry/2014/08/18/211514
こちらのブログで掲載されている以下のコードを見てのことです

public subscript(range: Range<Int>) -> ArraySlice<Book> {
    get { return books[range] }
    set { books[range] = newValue }
}

ブログでは戻り値がSliceだったのですが、Swift2.3ではエラーがでたのでArraySliceに変更になったのかな?と思って書き直しています。

なぜここでArraySliceを使うのかも教えていただければ助かります。