iT邦幫忙

ruby相關文章
共有 421 則文章

技術 Day. 33 - 後記

上一次參加鐵人賽已經是兩年前,這幾年雖然一直都有在找適合的題目。不過都在開賽前認為內容不夠寫完三十天就一直沒有繼續挑戰。不過這次剛好遇到很難得的遊戲專案開源,而...

技術 Day. 32 - 實作練習 - 登入遊戲

到目前為止我們已經將遊戲的狀態保存機制處理完畢,接下來只要調整客戶端支援前幾天實作新版本伺服器就能夠透過玩家的暱稱登入遊戲,並且取回上一次進入的狀態。 登入機制...

技術 Day 31 - 實作練習 - 保存狀態(二)

在上一篇我們已經成功將資料庫建立起來,不過我們還需要將原本的 Player Model 轉換成使用資料庫的資料。並且加入玩家連上產生角色、記錄座標這些功能,才能...

鐵人賽 Software Development DAY 30

技術 Day. 30 - 實作練習 - 保存狀態(一)

現在我們已經可以完整的同步不同玩家的資訊,不過依舊無法將玩家的狀態保存在伺服器。因此我們需要改寫伺服器來保存狀態,受限於內容長度以及 RPG Maker MV...

技術 ( Day31 - 加碼 ) Windows 10 安裝 Ruby + Rails + Node.js + Git + postgresql

說在前面,鐵人賽 30 天其實已經完成了 近期正記錄些文章,之後會以個人部落格 https://riverye.com/ po 文更新為主 一口氣將常用的軟體...

鐵人賽 Software Development DAY 29

技術 Day 29 - 實作練習 - 玩家列表

經過重構之後我們終於可以回到「後加入的玩家看不到之前玩家」的問題,這個問題源自於我們在玩家加入時並沒有發送任何資訊給新加入的玩家「線上有多少人」 處理的方式我們...

鐵人賽 Software Development DAY 28

技術 Day. 28 - 實作練習 - Client 重構

在上一篇我們注意到客戶端的邏輯如果都放在同一個檔案(SimpleRPG_Map.js)裡面是相當混亂的,因此我們需要稍微區分不同的職責來處理。在前面提到的 Un...

鐵人賽 Software Development DAY 27

技術 Day. 27 - 實作練習 - 顯示其他玩家

在我們將加入地圖的指令處理完畢後,我們就能夠收到來自其他玩家的「加入」資訊,也就能夠呈現其他玩家在地圖上並且做出反應。不過原本 RPG Maker 所支援的只有...

鐵人賽 Software Development DAY 26

技術 Day 26 - 實作練習 - 加入地圖

當我們已經能夠管理所有線上的玩家後,需要再進一步做的處理就是將其他玩家都顯示出來。因此我們要先增一個叫做 join 的指令表示有一個玩家進入了地圖。 Playe...

鐵人賽 Software Development DAY 25

技術 Day - 25. 實作練習 - 連線池

到目前為止我們已經能讓遊戲的操作跟伺服器連結起來,可以透過伺服器去管理一些行為的操作。不過要讓其他玩家能夠出現在地圖上,我們就必須調整現階段的程式碼讓伺服器能夠...

鐵人賽 自我挑戰組 DAY 30

技術 Day30-完賽是這種感覺啊

且戰且走 30 天,老實說過程中 N 的 N 次方次想放棄, 要同時忙作業、複習、專案、生活等, 好幾次在失衡的邊緣,快撐不下去, 看著一起學習的夥伴比我還努力...

鐵人賽 自我挑戰組 DAY 29

技術 Day29 - Codewars 刷題

挑戰 Codewars LV3 題目 題目(Calculator): Create a simple calculator that given a stri...

鐵人賽 Software Development DAY 24

技術 Day 24 - 實作練習 - 架構客戶端

伺服器的部分我們已經有一個大概的雛形可以使用,所以我們先切換到客戶端把遊戲的操作設計進去。雖然可以直接繼續把伺服器開發完畢,不過能看到專案動起來也是很重要的。...

鐵人賽 自我挑戰組 DAY 28

技術 Day28 - Codewars 刷題

先補上昨天未解完 Codewars LV4 的答案, 時間複雜度沒有解決,若有更好解法可在下方留言讓我知道喔~~ 到 LV4 解起來花的時間比平常更久, 過程中...

鐵人賽 Software Development DAY 23

技術 Day 23 - 實作練習 - 指令執行

現在我們的伺服器已經可以處理 WebSocket 連線並且透過我們自定義的物件來管理,不過當接收到指令的時候還是無法直接執行。因為已經採用 WebSocket...

鐵人賽 Software Development DAY 22

技術 Day 22 - 實作練習 - 處理 WebSocket 連線

前面幾篇我們已經針對建構 WebSocket 做了一定程度的準備,接下來就要將 WebSocket 連線從預設的行為接手回來改為用我們自己的方式來進行管理。這樣...

鐵人賽 自我挑戰組 DAY 27

技術 Day27 - Codewars 刷題

倒數三天強度不升級下怎行呢 Codewars LV4 打算一氣呵成寫完,結果後面卡住 (暈 正確解法明天補上~ 題目(Next bigger number w...

鐵人賽 自我挑戰組 DAY 26

技術 Day26 - Codewars 刷題

延續昨天的題目繼續解 Codewars LV5 題目, 參考網路大大寫法,以自己的方式說明。 題目(Simple Pig Latin): Move the f...

鐵人賽 Software Development DAY 21

技術 Day 21 - 實作練習 - Autoload 機制

正常情況下我們開發這類伺服器應用每當修改程式後都需要重新啟動,不過 Ruby on Rails 卻可以在不重新開啟的狀況下不斷修改跟測試,這極大的改善了開發速度...

鐵人賽 Software Development DAY 20

技術 Day 20 - 實作練習 - WebSocket 伺服器

我們現在已經有一個可以執行的指令,接下來就是要將 Web Server 啟動。在 Ruby 裡面我們可以透過兩種方式將 Rack 打開。 使用 config....

鐵人賽 自我挑戰組 DAY 25

技術 Day25 - Codewars 刷題

寫 code 前,先讀懂題目是很重要的, 前面寫起來挺順的,實際丟 Codewars LV5 測試時, 代誌不是憨人想的那麼簡單, 例外訊息沒留意到,卡在後面搞...

鐵人賽 Software Development DAY 19

技術 Day 19 - 實作練習 - Server 雛形建立

既然已經決定好了 Server 和 Client 的方向,我們就先從伺服器端開始著手製作。至少要先有一個能提供基本操作的雛形,才能夠讓後續客戶端相對容易測試。...

鐵人賽 自我挑戰組 DAY 24

技術 Day24 - Codewars 刷題

題目看起來好理解,想下及翻閱 API 後, 透過組合技便能完成題目。 Codewars LV6 題目(Write Number in Expanded For...

鐵人賽 Software Development DAY 18

技術 Day 18. 實作練習 - 準備與規劃

關於遊戲實作的部分在 Unlight 的原始碼中有太多東西可以參考跟學習,前面半個月的時間我們已經將連線遊戲中最主要的機制了解,透過運用 Socket API...

鐵人賽 自我挑戰組 DAY 23

技術 Day23 - Codewars 刷題

昨天 (正確來說是今天凌晨) 趕專案到 3 點多 還能一早錄影鐵人賽覺得活著真好 xd Codewars LV6 題目(CamelCase Method):...

鐵人賽 自我挑戰組 DAY 22

技術 Day22 - Codewars 刷題

出門前刷一波 讓自己不用一直惦記著鐵人賽還沒寫 xd Codewars LV8x1、LV7x1 題目(Convert number to reversed a...

鐵人賽 Software Development DAY 16

技術 Day 16 - Singleton 的應用(一)

前面討論了連線遊戲是如何在伺服器跟玩家之間溝通的方法跟行為,不過遊戲跟 Web 和其他應用相比從初期就很快需要面對複雜的狀態問題。也因為這樣遊戲的除錯跟維護相對...

鐵人賽 Software Development DAY 15

技術 Day 15 - 連線的加密 (三)

我們已經大概了解 SRP 是怎樣在不傳輸密碼的狀況下讓伺服器跟客戶端驗證對方,不過 Unlight 是怎樣利用產生後的 Session Key 去加密傳輸還看不...

鐵人賽 Modern Web DAY 9

技術 [Day 13] Model 生成與資料庫遷移

[Day 11] MVC 架構介紹了MVC 架構,提到Model是商業邏輯與資料庫溝通的重要部分。今天就從 Model 的產生,介紹到資料庫遷移。 大綱 Mo...

鐵人賽 自我挑戰組 DAY 20

技術 Day20 - Codewars 刷題

2/3 過去了,發了 20 篇廢文 再 10 天就結束了,同時也是最忙的階段 一起把鐵人賽完賽吧!! Codewars LV8 題目(Fake Binary)...