搜尋

搜尋結果

Spring Boot 04 - 進入http json api 世代
科技新知
MacauYeah・2024-05-23

本節,我們將會建立一個http服務,提供json api讓程式訪問。 下戴模版 我們跟上節一樣,使用Spring Initializr (Maven) 下載模版,但細節筆者就不再講啦。Dependency主要選擇 Spring Web Spring Boot DevTools 下載後,可以直接運行測試,可以用指令 mvn test 或經IDE運行。Spring會至少測試下能不能成功取用預設的8080端口。 Controller 我們若要實作 http json api,需要在 spring 中加入一個類,附註為 @RestController ,那方便起見,類名我們也命名為 XXXController 吧。作為示範,我們弄一個 HomeController.java ,裏面有最常見的 http GET, POST功能。 // src/main/java/io/github/macauyeah/springboot/tutorial/springbootwebapibasic/controller/HomeController.java import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; // ... other import @RestController @RequestMapping("/api") public class HomeController { @GetMapping("/someRecord/{uuid}") public Map readSomeRecord(@PathVariable String uuid) { return Map.of("ret", "your uuid:" + uuid); } @PostMapping("/someRecord") public Map createSomeRecord(@RequestBody Map requestBody) { HashMap ret = new HashMap(requestBody); ret.put("ret", "got your request"); return ret; } } HomeController裏,完整的URL 其實為: GET http://localhost:8080/api/someRecord/{uuid} POST http://localhost:8080/api/someRecord URL中的api之後的路徑,都是定義在 HomeController 中,而前半的8080及context path,是使用預設值。在正式環境下,可能隨時會被重新定義。但我們做本地測試,只需要驗證預設值就可以了。 我們真的運行起程式mvn clean compile spring-boot:run,再使用最簡測試工具進行測試。Windows的朋友,可以選擇Postman作為測試,它有圖形介面。而linux的朋友,請用curl,預設安裝都會有。下列為方便表示測試參數,筆者選用curl。 測試GET,其中1234會自動對應到spring裏的uuid。 curl http://localhost:8080/api/someRecord/1234 # return {"ret":"your uuid:1234"} 測試 POST,其中的 -d 參數,會對應 spring裏的 @RequestBody, -H 參數則是設定 http header 的意思,我們就使用約定俗成的 json 作為 header 。 curl -X POST http://localhost:8080/api/someRecord -H "Content-Type: application/json" -d '{"requst":"did you get it?"}' # return {"requst":"did you get it?","ret":"got your request"} 上面的兩個操作,都回傳了我們輸入的資訊,這代表了我們成功用spring架起了http json api,而且正常讀入資訊。 Test Case 雖然我們可以正常地架起 api,但每次開發都要 postman / curl這種工具額外試一次,其實也有一些成本。而且 api 數量變大,或經多次修改後,就重複人手執行,就變得相當討厭。 面對這個問題,筆者會建議寫測試用例,即是Test Case,而且用Spring內置的@SpringBootTest來寫。 產生一個空的Test類,vscode中,最簡單可以Source Action => Generate Test,然後加入這次要測試的參數。 // src/test/java/io/github/macauyeah/springboot/tutorial/springbootwebapibasic/controller/HomeControllerTest.java import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.RequestBuilder; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.result.MockMvcResultHandlers; import org.springframework.test.web.servlet.result.MockMvcResultMatchers; @SpringBootTest @AutoConfigureMockMvc public class HomeControllerTest { @Autowired private MockMvc mockMvc; @Test void testGetSomeRecord() throws Exception { RequestBuilder requestBuilder = MockMvcRequestBuilders.get("/api/someRecord/1234") .contentType(MediaType.APPLICATION_JSON); this.mockMvc.perform(requestBuilder) .andExpect(MockMvcResultMatchers.jsonPath("$.ret").value("your uuid:1234")) .andDo(MockMvcResultHandlers.print()); } @Test void testPostSomeRecord() throws Exception { String request = """ {"requst":"did you get it?"} """; RequestBuilder requestBuilder = MockMvcRequestBuilders.post("/api/someRecord") .contentType(MediaType.APPLICATION_JSON) .content(request); this.mockMvc.perform(requestBuilder) .andExpect(MockMvcResultMatchers.jsonPath("$.requst").value("did you get it?")) .andExpect(MockMvcResultMatchers.jsonPath("$.ret").value("got your request")) .andDo(MockMvcResultHandlers.print()); } } 最後就是執行 mvn test 或經IDE運行,應該都會得到所有測試都通過的結果。 mvn test # other test result ... [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.368 s -- in io.github.macauyeah.springboot.tutorial.springbootwebapibasic.controller.HomeControllerTest # other test result ... 上面的程式碼很多,我們逐一來。 @SpringBootTest 寫在類的外面,代表執行這個測試類時,需要運行起整個Spring程序,當然也包括http的部份。 @AutoConfigureMockMvc 寫在類的外面,代表執行這個測試類時,可以模擬一些發向自己的 http 請求。 @Autowired private MockMvc mockMvc 寫在類的裏面,因為之前有定義了可以模擬 http 的請求,Spring在運行時為大家提供了那個所謂的模擬http client的實例。 MockMvcRequestBuilders,則是建造要測試的URL及Header參數。 MockMvcResultMatchers,則是檢查回傳的結果是否如遇期的一樣。 為何這個http client叫模擬 - Mock ? 因為在測試用例中,可能連Controller 內部依賴組件也需要進一步模擬,這樣才能把測試目標集中在Controller裏,這也是單元測試的原意。只是本次的例子看不出模擬與否的差別。 MockMvcResultMatchers.jsonPath(),這是用來檢測json的結構是否跟預期一樣。有些網路上的其他例子會簡寫成 jsonPath() ,但因為vscode IDE的自動import功能比較差,筆者還是保留傳統的寫法。 如果大家覺得@SpringBootTest很難,想折衷地把其他測試方法,那麼把 postman / curl好好管理起來,每次修改完程式,都完整地執行一次 postman / curl ,也可以達到測試的效果。只不過大家還是要好好學會整合 postman / curl,知道如何檢測json結構,什麼時候有錯,什麼時候叫測試通過,所以也要花一樣功夫來實現。 最後,大家千萬不要因為測試難寫而逃課,因為寫測試絕對地可以減輕日後重執行的工作量。除非你的程式碼即用即棄,否則都建議寫測試。(測試跟寫文檔不一樣,有了測試也不能沒有文檔。好消息的是,文檔現在越來越多自動生成的工具,我們日後再找機會介紹。) Source Code spring boot web api basic

【日本。大阪】梅田スカイビル 空中庭園展望台 (梅田藍天大廈)
走遍世界
80後愛旅行✈️・2023-09-17

梅田藍天大廈是日本大阪新梅田城內的摩天大樓, 地上40層樓、地下2層, 高度約為173公尺。 是大阪地區的地標和觀光勝地之一。 梅田藍天大廈由東西兩棟建物構成, 在頂部以圓形的空中庭園展望台將兩棟建物連結起來。 在頂層的空中庭園展望台能遠眺以梅田為中心的大阪風景。 按著指示走到室內, 往空中庭園走去 繼續跟著指示走 這是整個梅田藍天大廈的模型 坐上能看到景觀的升降機往上 出升降機後已經是39樓了, 在這邊是買票的地方 後面就是一條有360°視野的通天電梯, 從39樓上40樓去囉~ 電梯兩旁都是玻璃, 都能看到外面的風景! 40樓是一個室內的展望台, 有幾張白色旋轉形的情侶座, 聽說坐在那裡看風景一絕呢~ 把大阪市的夜景一覽無遺 在室內展望台逛了一圈後就走上露天的SKY WALK展望台 不方便走樓梯的旁邊也有升降機能使用 終於來到SKY WALK了, 我最期待的就是這個像是漫天星空的地板, 一閃一閃的很美! 我們超幸運的, 剛剛還在下雨, 到我們來到室外SKY WALK時雨就停了~停了!!! ( 為安全起見, SKY WALK是不能撐傘的! 應該是風太大吧。所以如果是下雨的話, 應該只能穿雨衣或者是直接淋著) 看出去的夜景跟室內的差不多, 所以我更在意的是星空地板 這個角落的地板原是會亮燈的, 可是今天沒有開呢 要是燈開了會是左一這圖這樣的... 這裡看下去就是剛剛坐的通天電梯, 一條是坐上來的, 一條是一會坐下去的。 看完夜景後就沿路下去 這裡有一個圖告訴你看到的建築物是什麼 40樓還有一個戀愛大明神 (在這個位置是....有點奇怪啦) 裡面是自助求籤解籤 再次坐上通天電梯

測試驅動開發 | 系統邊界Mock
科技新知
MacauYeah・2024-04-23

好一段日子之前,筆者就介紹了一些寫Test Case的大方向 。對於大部份情況來說,有分隔的開發環境,有整個配套,測試起來是順暢的,想做單元測試可以,做整合測試也可以。但如果沒有,我們其實也要想辦法寫Mock。 Mock這個概念,對於寫前端程式的朋友應該比較熟悉,因為前端開發者總不能等後端準備好之後,才開始慢慢設計。前端很早期就要模擬一些情況,做介面設計,做各種思考。而且這個Mock不是指在運行單元測試時,才使用的臨時修改隨機數據。而是針對開發時,自行模擬的後端或外部環境。不過因為前端介面涉及很多主觀設計,很多元素冇辦法做固定的自動測試,所以前端的測試通常要人幫測試。 而後端開發,邊界Mock這一概念也很有用。在外部環境不足的情況下,為自己系統的邊界部份自建一個Stub / Dummy 等的模疑數據,是很有幫助的。不論我們對外部環境的掌控度有多少,我們走測試驅動開發(Test Driven Development),好好地定義這個外部環境的期待行為是很重要的。 例如,你有個功能,需要存入數據,但資料庫未準備好,也沒有所謂的In Memory資料庫可以用。這時,自己架空寫一個什麼都不做或回傳固定結果的函數作為中轉接口,然後在你的Test Case可以規劃你的想要結果。 也許你會說,這個函數就是存下資料,我不會需要它的回傳結果,但我們其實還是可以在Test case 中定義一些錯誤檢測,確保這個函數沒有Throw Exception 。再進一步想,我們主程式是否真的不負任何儲存失敗的責任?要定義其他回傳變數,方便寫Log讓追蹤?或者我們至少要知道成功後的Primary Key ?若然業務上真的不在乎儲存結果的有效性,我們不存入數據也是可以的? 所以歸根究底,我們還是在乎儲存的成功與否。還是有必要去驗證驗寫入是否成功。 上述例子,因為資料庫不存在,開發途中可能Test Case 有好長一段時間也通過不了,但至少當資料庫完備後,可以直接驗證,不用人手手工測試。 舉另外一個例子,我們要從某個地方,例如API或資料庫,讀取數據。我們也可以先寫中轉接口,並為它寫Test Case定義應有的行為。雖然明明就只是讀取,我們沒法控制太多。但在接口做好異常狀態處理,是很重要的。例如Handle exception、檢查某些重要業務值會不會是空、確保後續部份可以正常使用,這是因為我們不能被外部系統的失誤而導致自身系統癱瘓。 其實測試驅動,本質上就是強逼大家想多一點,好好定義預期的行為,不論內部條件怎樣變化,都有一自動的檢收標準。

【馬交慳多拿 baby】 母親節精選飲食優惠特輯 -28.4.2023
生活在我城
Cheers!・2023-05-05

母親節就到喇!梗係要帶媽咪食大餐慶祝喇~小編為大家整理母親節精選飲食優惠特輯,保證氹得媽咪開開心心,想知就即刻去片喇~ 1.漁人碼頭珀克餐廳 母親節一於帶媽咪去食大餐喇!5 月 14 日去珀克餐廳食母親節限定自助餐,仲送疊疊樂蛋糕一個,保證氹得媽咪開開心心! 珀克餐廳.寵愛母親節 成人 $368*;小童 $178* (6-12歲);長者 $218* (65歲或以上) *另加收10%服務費 電話:8799 6606 2.英皇娛樂酒店御廚 英皇娛樂酒店御廚同 MPay 合作,即日起至 5 月 31 日,用 MPay 支付即享自助餐75折,快啲帶媽咪去試下喇! 英皇娛樂酒店御廚 午市:成人 $198,小童(3至11歲) $178; 晚市:成人 $328,小童(3至11歲) $228; 電話:2838 9988 3.CTM CTM X TVB Anywhere 母親節送大禮,喺 5 月 1 - 31 日期間同媽咪登入使用 TVB Anywhere 服務睇精彩好戲及節目,即可贏取大獎高達 $23,800! 新客戶更享額外 2次抽獎機會,仲可以 $0 換購 Home Media 電視盒子,快 d 去申請啦 ~ 依家居家光纖寬頻客戶低至 $0 即可換購 Home Media 電視盒子連 24 個月 TVB Anywhere 服務(原價:$2,512)。 *600Mbps 或以上居家光纖寬頻客戶享 $0 換購以上娛樂組合套裝,300Mbps 客戶享 $99 換購,150Mbps 或以下客戶享 $280 換購。 詳情 4.Crepe 諗唔到送咩禮物比媽咪?送上顏值十足嘅 「母親節限定」 芋頭系列蛋糕或千層,都可以贏得媽咪芳心,5 月 8 日前預訂仲有早鳥優惠享全澳「免費送貨」,記得提早預訂喇! 「母親節限定」 荔浦芋泥芒芒奶凍蛋糕 6寸 荔浦芋泥芒芒奶凍千層5寸/ 7寸 供應日期:5 月 13 - 15日 電話:6886 5068 5.手工廚房 手工廚房亦推出母親節早鳥蛋糕優惠,5 月 1 日前預訂心型士多啤梨西瓜蛋糕 1.5磅 $200 (原價 $280),而 2.5 磅蛋糕都係 $300 (原價 $398)! 供應日期:5 月 12 - 14 日 電話:6325 9013

也許討厭也是一種愛
其他
皓芯・2022-07-13

“我覺得媽媽……很討厭。”有時候孩子覺得挫敗時,會說出一些讓父母很難受的話。我們也曾經是個調皮的孩子,也暗自“討厭”著自己的家人,希望自己能逃離這個家,甚至會做出一些反擊或報復行為。 有句說話:「星星之火,可以燎原。」孩子之所以會這樣,正表示我們的教育方式無法培養出正向人格。 看看本書《我討厭媽媽》封面,一隻小兔子交叉手臂、耳朵高高地豎起坐在餐桌前, 小嘴巴氣呼呼的撅起,想著媽媽的種種「不是」,小兔子氣得想離家出走。到底媽媽犯了什麼錯,讓小兔子這樣討厭呢?並說出一句讓媽媽很受傷的話呢? 本書《我討厭媽媽》,是日本繪本大獎得主酒井駒子經典之作,她的繪本作品常從自己的童年印象出發,酒井駒子擅長油畫,栩栩如生地呈現出兒童的經驗與情緒。其作品包括《黑夜小小熊》、《狐狸神仙》、《星期五的小砂糖》等。 本書以孩子的視角,隨著小兔子對媽媽滿腹牢騷、諸多不滿,了解小兔子為什麼“我討厭媽媽”,最令小兔子不滿的是,媽媽不願和他結婚,於是,小兔子決定離家出走…讓人會心一笑,很可愛也很真實,像極了小時候的我們。 一本看起來很普通的晚安書,小兔子的抱怨看似「小題大作」,實則蘊含溫馨的故事,是一本非常適合親子共讀的繪本。藉由這些微不足道的「小事」,說出了每個小孩子的心聲,父母可問一問孩子:你覺得爸爸媽媽有什麼「討厭」的地方? 《我討厭媽媽》 作者: 酒井駒子 譯者: 米雅 繪者: 酒井駒子 出版社:三之三 出版日期:2005/04/10 ISBN:9789867295026 訂購地點: 鞠智繪本屋 圖片來源:博客來

超強一站式網購超市 隨時隨地買到日韓台高質食品
生活在我城
奇奧L・2022-01-11

橙式生活主打日韓台優質食品,引入各式新潮有品味嘅產地直送靚貨,仲有各種冷凍食品、日常用品,種類繁多。 全天候24小時可以上網落單,安坐家中就可以輕鬆收貨!網購過程簡單流暢,每張訂單都經過細心整理,包裝完好妥善,買滿$300即享免費配送!另外佢地仲設有線下體驗店,提供過百種產品展示! 新春梗係要辧年貨,由即日起橙式生活進行節日促銷活動,購買日韓台直送產品、新鮮水果、零食乾貨同、優質肉類,都可以享有88折,買滿$300仲免運費送到府上!折扣同時適用於網店同線下體驗店,大家可以預早行街上網掃定貨,優惠只做到年30晚 (1月31日)咋! 優惠碼:newyear88 *新年禮盒、和牛和蔬菜類除外* 使用優惠碼嘅步驟都好簡單,真係超方便啊! 年近歲晚,大家喺咪煩惱緊要辨咩年貨送禮呢,想買特別又有新年喻意的產品送比親朋好友,又諗唔到要買啲咩,咁就快啲黎睇吓小編的推介啦! 獲獎無數嘅台灣十大伴手禮品牌聖保羅,各款台灣直送的春節禮盒,橙式生活而家開始接受預訂!亮點有象徵圓滿、誠摯心意嘅招牌Q餅,沿用傳統工法炮製,外層酥脆,內有Q彈麻糬及不同口味嘅香滑餡料;禮盒另配搭其他精選台灣風味果酥,包裝設計夠晒優雅華麗,真係新年送禮自用佳品! 橙式生活仲有賣埋港澳台人氣品牌微熱山丘嘅新年限定禮盒,佢出名用最天然的食材製作鳯梨酥,無任何人工添加成份,保證新年食得開心又安心。喜歡台式烘焙糕點嘅您絕對唔可以錯過! 預訂電話:+853 63382660 橙式生活每日晚上八點截單,翌日即可安坐家中收到貨囉! 橙式生活滿300起免費送貨 無接觸安心送,配送箱定時消毒 Wechat公眾號:橙式生活網上超市 Facebook:橙式生活Orange Lifestyle 客服熱線:+853 63382660 網上超市website:www.ostyle-shop.com 線下體驗店address:澳門台山牧場街61號新城市工業大廈5樓N座 (用5號電梯)

本地遊新增10條線,有2條航空迷必定兩眼發光!
旅遊情報
OHChance 旅遊誌・2020-07-21

昨天旅遊局公佈「心出發.遊澳門」活動因應反映熱烈,加推10條新路線,7月22日早上10:30 開始預訂!當中有2條路線絕對是航空迷的首選 MA-L 直升機觀賞團 以前想坐直升機,去香港單程都要幾千,就算之前南航係珠海辦的直升機港珠澳大橋觀賞線,活動價都要499人民幣/位,呢次政府優惠價398!雖然已經是本地遊活動所有團最貴的一個,但絕對是CP值高到爆的一個: .直升機遊覽港珠澳、橫琴澳大、 .觀光塔58、61層門票 .直升機登機牌可當250元用來玩skywalk .漁人碼頭燈光夜市100蚊消費卡 不過收到資料,一班機只有12個位,一天只有3班,逢星期五六日才有團,所以位置非常稀少!估計比天浪淘園10分鐘掃光2個月的位置還要恐怖! MA-H 澳航及私人飛機參訪 之前的澳航親子團反應非常熱烈,一早已經無哂位,這次新條又有澳航份,而且唔限定小朋友啦!呢次會上飛機參觀澳航客機,聽講解一些起飛前的準備工作,平時唔係咁易有機會,非常值得考慮! 另外仲會去參觀商人航空中心及睇下私人飛機,仲可入登機入去睇下有機豪!咁正ge 團先係68蚊咋 大家記得7月22日早上10:30,去參與活動的旅行社去報名啦~ https://www.lovemacau.org/admin/site/list-agent === 想搵平機票去玩,即上 https://fb.com/ohchance 第一時間獲得最新旅遊資訊! 去日本旅行買咩 JR Pass好?即上 OH!Note!小燦的旅行筆記做功課 https://ohnote.info/ 唔知間航空公司好唔好坐?馬上 Subscribe OH Chance Youtube 睇睇佢:https://youtube.com/c/OHChanceTravel

【噴射飛航】免費香港酒店住宿
生活在我城
澳門優惠・2019-03-25

噴射飛航推出優惠,購買兩套豪華位來回船票,即可免費獲贈由香港貝爾特酒店九龍/屯門送出之酒店住宿一晚!其他推介:近期噴射飛航優惠/近期金光飛航優惠 優惠日期: 2019 年 2 月 18 日起至 2019 年 4 月 30 日 優惠內容: 優惠只適用於2019年2月18日至2019年4月30日期間往來香港(上環/九龍/屯門)-澳門(外港碼頭/氹仔)航線,最後回程日為2019年5月1日並須視乎客位供應情況而定。 優惠不適用於以下指定日期之噴射飛航航班:2019年4月19-22日。 屯門貝爾特酒店入住日期不適用於: 2019年4月5-7﹑12-15﹑19-22及26-29日。 九龍貝爾特酒店入住日期不適用於: 2019年3月8-9日﹑4月5-7﹑12-15﹑19-22及26-29日。 每次交易必須購買兩套豪華位正價來回船票並只限送出一晚一間酒店房間,二人乘坐之來回航班必須相同方可享用酒店房間優惠。 第一程船票只適用於由澳門(外港碼頭/氹仔)往香港(上環/九龍/屯門) 並必須於航班出發日期前三天或以上預訂。 第一程出發之航班日期必須與酒店入住日期相同,回程不限。 詳情: https://www.turbojet.com.hk/tc/promotions/pentahotel-accomodation.aspx * 所有優惠及條款以官方網站為公布為準。 * 更多澳門優惠情報、有獎活動及有獎遊戲,可瀏覽 https://lifemag.cyberctm.com/zh_TW/blogger/MacauJetso。

【2019澳門健身房】場地夠大!設施齊全!喜來登酒店健身中心
專題報導
Cheers!・2019-03-22

24小時開放的喜來登健身中心位於路氹城的澳門喜來登金沙城中心大酒店4樓。場內主要劃分為三個區域—有氧、力量及拉伸。健身中心採用頂級健身品牌TechnoGym健身器材,種類十分齊全,更設有一間獨立運動室,供專業導師教授瑜伽、護脊體操及各種有氧運動等。 每天早上7時至晚上10時期間,健身中心有專業教練免費從旁指導。每天不同時段亦設有不同的免費健身課程,如瑜伽、高強度間歇運動、核心訓練及時下最流行的美體塑身運動等,以迎合不同會員的健體需求。有興趣的顧客可到喜來登健身中心前台或於澳門喜來登大酒店官方微信@sheratonmacao查詢課程時間表或報名成為會員。 除了健身中心內的設施,會員還可以使用酒店泳池。泳池種類分別有露天恆溫泳池、按摩池及淺水池,除了適合個人悠然暢游,亦適合一家大小舒暢共享歡樂時光,但要注意泳池並不是24小時開放。 此外,每次前來健身的會員還可享四小時免費自助泊車,部分會籍的會員更額外尊享酒店的餐飲、水療優惠及健身全日通之禮遇。 喜來登健身會籍現分為:30天試堂(限新會員)、3個月、6個月及12個月,會籍價目由澳門幣1,280+/月起。 喜來登健身 地址:澳門喜來登金沙城中心大酒店四樓 開放時間 健身房: 24小時開放 泳池: 早上10時 至 晚上6時(按季節及天氣情況而定) 健身教練駐場: 早上7時 至 晚上10時 查詢可致電:8113 0229 或 電郵 fitness.macao@sheraton.com 或 微信查詢 更多資料:做Gym好去處,澳門健身房推薦!

[評] 《還願》
手機‧電玩
MacauYeah・2019-03-06

原本以為等試玩完澳門本土的《瞑目》再一次過寫心得文,做一做兩地團隊比較。但考慮到這遊戲重新上架時間未定,所以還是獨立出來聊聊會好一點。(《瞑目》上市日期 2019/03/13 ) 《還願》故事很短,正常解迷、不刻意找攻略的話,應該4小時以內可以通關。 遊戲名字改得很好,很貼合劇情發展。劇情內容是有稍為有點隱悔的,所以如果你只看別人直播,理論上是看不懂在故事在講什麼,但自己親自遊玩的話,會推稿到大部份劇情。作為一個獨立制作團隊,這個水準很好。 畫面是3D。因為使用了漫步的操作方式,所以很少機會出現3D暈問題。而恐怖的呈現方式是以突襲的手法出現,相對沒有太多壓迫感,有受嚇的,但可以喘氣。(生化危機1、2就屬於壓迫感為主的恐怖。) 遊戲性價比其實很高,以一個在澳門看電影的價錢遊玩一場3小時的恐怖遊戲,並不會虧(比某賭場的VR好多了)。筆者特別喜歡這類不用為農而農的升級遊戲,以食物的講法就是精緻不油膩。 可惜的是,遊戲因為政治因素而下架,扣除政治問題的話,是很值得推薦的。特別如果能在大陸市場上推廣的話,在該地區的第一發行量應該賣得比《中國式家長》要好。 總結:現時很多大廠的制作都走下波,能夠像Monster Hunter World、Resident Evil 2這樣有市場但又能求突破的遊戲並不多。反而是獨立制作,著重局部突破的小眾遊戲,更能打動人心。雖然,叫好不一定叫賣,想走創意開發的伙伴們依然還要繼續努力。但筆者相信,隨著電競文化被視為商機,再過五年,傳統遊戲文化就會被附帶推動而變得更成熟可接納,屆時持續在努力的良心開發者,就會得到應有的回報。 想睇遊戲直播,記得訂閱我地嘅 Twitch / YouTube / Facebook