怎麼選第一份工作?

從退伍到工作差不多過了兩年,這段時間有不少經驗我想已經足夠跟大家分享。這篇算是一個前導的文章,想來跟大家分享「第一份工作」的重要性。

重點是技能成長那段,討論薪水的地方太長可以跳過喔 XD

淺談 Ruby 的 Fiber(九)

這篇文章我們會把 Broadcast (廣播)功能實作出來,如此一來我們就擁有了可以將訊息透過 Fiber 實作的伺服器廣播給其他使用者的功能。

而這系列文章也就到此告一段落。

使用 Fiber 能給 Ruby 帶來好處嗎?

關於 Fiber 的系列文寫到現在也已經一個半月了,除了分享自己在使用 Fiber 的經驗之外,我也更加的熟悉 Fiber 的使用。

不過,這真的是有益於現有的專案嗎?

淺談 Ruby 的 Fiber(八)

到這篇為止,我們已經完成了將 Fiber 應用在程式中的基本雛型,現在只需要將上週未完成的錯誤處理,我們就能獲得一個可以正常發送訊息到伺服器的伺服器。

淺談 Ruby 的 Fiber(七)

上週我們開始重構 Fiber 的結構,透過一個統一的 Selector 物件來選取這個「當下」可以進行 I/O 操作的物件。

不過,我們原本預期是因為使用 rescue 來捕捉錯誤控制流程才讓他運行不正常,經過一週的思考後,卻發現事情跟預想的不太一樣。

淺談 Ruby 的 Fiber(六)

經過前面幾篇文章的介紹,我們已經初步的了解 Fiber 的性質。這系列的文章目標是利用 Fiber 實現再不透過 Thread 或者 Process 的情境,來實現支援多人連線的 TCP 聊天伺服器。

從這一篇開始,我們就要正式的來挑戰完整的實作了!

淺談 Ruby 的 Fiber(五)

經過上次的嘗試,我們已經開始對於 Fiber 的性質有一些了解,目前還需要解決已經結束的 Fiber 被呼叫,以及來不及處理的問題。

淺談 Ruby 的 Fiber(四)

在上週的文章我們注意到 Fiber 的使用並不是那麼容易的,因為我們需要自行管理每一個 Fiber 被恢復(#resume)的時機,這週就繼續來挑戰吧!

淺談 Ruby 的 Fiber(三)

延續上一篇文章的實作,我們已經有一個簡易的 Thread 版本 TCP Socket 伺服器可以運作,那麼該怎麼用 Fiber 修改呢?

淺談 Ruby 的 Fiber(二)

第一篇我們已經大致上了解 Fiber 的運作原理,不過要能夠實際上的掌握跟應用,我認為是需要靠實作來熟悉的。

所以,這一篇我們先來講學習 Socket 最常見的 TCP 伺服器實作吧!