搜尋

搜尋結果

Lambda 表達式之可讀性
科技新知
MacauYeah・2023-11-24

Java作為一個真OOP物件導向的程式,在設計和編寫上是很嚴謹,什至是囉嗦的程度。近年很多Programmer因為各種原因,都放棄Java跳船去其他語言。 Javascript是其中一個很多人的選擇,因為Javascript有nodejs的加持,在Web世界下,可以同時走frontend、backend路線。而Javacript亦有一個很明顯的特性,就是大部份的library都以callback的型式出現。另外,Javascript也讓很多人覺得很簡潔,這除了是因為它沒有強型態的規限外,另一個原因也是因為有callback的大量使用。 Function Pointer 其實callback,籠統一點講就是在一個function A傳入另一個function pointer B。而編寫function A的作者,並初期並不知道function pointer B的實際操作會是什麼。A作者只是強調在特別定時候,它就會使用這個function pointer B。而這種把function pointer 傳來傳去的做法,就可以看成是Functional Programming的基礎。 Functional Programming除了把function pointer 當成是一等公民以外,還有很多附加要求,例如: Pure Function 它只會使用到自己的Local Variable本地變數,這樣它的作用域就鎖死在Function內部,就不會有副作用。 傳統的OOP,Class中不少變數會以Class Attribute型式存在,雖然它們可能是private attribute,但還是獨立於Function外,這樣各Function的操作,都要靠作者好好地記著Class Attribute的狀態。 Nested Functions 與普通程式語言類似,很多情況下都需要local variable,而Function Programming要足夠好用的話,就需要彈性地在function裏定義local function pointer。 Java Lambda 表達式 其實從Java 8開始,就有提供Lambda表達式,這是一個可以制作匿名function pointer的方法。所以硬要講,Java也可以做Functional Programming。 但必需要盡早強調的是,Java經常性地使用class attribute,它們很多時候都會引申請狀態的概念。即是在它們必需經過特定步驟後,class attribute才會有特定的意義。也就是Lambda表達式想保持Pure Function的特性,它可以使用的時期就有很大限制。 但我們還有必要使用Lambda嗎 以筆者的經驗來講,它還是有作用的,特別在於它可以改善Class Function的閱讀性。 例如下面一個Java Class。它是一個工廠,提供一個服務可以生產一堆車。那些車而需要經過特定檢測,才能推出。 public class Factory ex1 public static List generateListOfCarByForLoop List tempCars = new ArrayList; many other logic many other logic many other logic List passTestCars = new ArrayList; for Car car tempCars if car.getWheels.size == 4 many other check logics many other check logics many other check logics passTestCars.addcar; return passTestCars; 中間的for loop可以用lambda來改寫。 ex2 public static List generateListOfCarByLamda List cars = new ArrayList; many other logic many other logic many other logic cars = cars.stream.filtercar gt; if car.getWheels.size == 4 many other check logics many other check logics many other check logics return true; return false; .toList; return cars; 有人會說,上述ex2只是形式上改變了,沒有特別易讀。就像ex3這樣,把特定邏輯抽成獨立function,才是真正的易讀,對嗎 ex3 public static List generateListOfCarByForLoopFunction List tempCars = new ArrayList; many other logic many other logic many other logic List passTestCars = filterCarsByWheelsSizetempCars, 4; return passTestCars; private static List filterCarsByWheelsSizeList originalList, int targetSize List passTestCars = new ArrayList; for Car car originalList if car.getWheels.size == targetSize many other check logics many other check logics many other check logics passTestCars.addcar; return passTestCars; 上述ex3是一個有效的改進。如果大家不計較傳入參數的先後順序及交互影響的話,就已經很足夠。 但如果大家對於多參數的解讀又怎樣 private static List someotherfunctionList cars, List wheels 大家又會不會突然停住,想想到底是cars影響wheels,還是wheels影響cars 對於多參數的function來講,相互影響就會越來越多,但使用Lambda的話,可以針對性地表達這是一個Predicate Lambda。 ex4 public static List generateListOfCarByLamdaComposition List cars = new ArrayList; many other logic many other logic many other logic List wheels = new ArrayList4; cars = cars.stream.filter filterCarByWheelSizePredicatewheels .toList; return cars; private static Predicate filterCarByWheelSizePredicateList wheels return car gt; if car.getWheels.size == wheels.size many other check logics many other check logics many other check logics return true; return false; ; 就最後的ex4版本,可以很明確的知道是cars被Predicate所作用。 如果大家還有其他使用Lambda的明顯好處,也可以一起來Github分享大家的Code

亞洲萬里花式兌換(二) │ 來回大阪/首爾只需17500里!
旅遊情報
MO560・2019-06-08

亞洲萬里通花式兌換二 │ 最低17500里就可以來回大阪首爾! MO560 教你玩轉飛行里數 1. 簡介 這是亞洲萬里通標準賞的兌換表格,所有里數以單程計算。當我們用亞洲萬里通換機票時,就要付出一定數量的里數,而換機票的所需里數是以距離計算的。只要符合規則,不管你怎樣飛,所需要的里數都是一樣的! 今次花式兌換是基於上一次的Stopover第五航權教學,不同的是今次會教大家把其中一部分的去程機票放到回程機票中,從而使當中的兩個航點可以使用更少里數去兌換來回機票,更有小編推介的「澳門換法」! 更多其他花式兌換,請留意Facebook更新Facebook MO560 開始之前先簡單認識相關遊戲規則:1. 來回機票可以理解為兩張單程機票2. 一張單程機票最多可以包含兩個航段3. 必須在出票日起353日內完成兩段飛行4. 如果涉及夥伴航空公司會貴一點 緊貼最新最潮澳門信用卡、飛行里數、旅遊資訊,記得讚好MO560的Facebook! 如想查看更多詳情,請到MO560的Facebook或Website查看。 2. 規則說明 如果你覺得以下內容有點複雜或你有其他疑問的話,可以在Facebook向小編查詢喔。 國泰的總部在香港﹝廢話﹞,但由於第五航權的關係,國泰在台北、曼谷、溫哥華都有經營非往返香港的航線,它們分別是: 台北TPE ndash; 東京NRT台北TPE ndash; 大阪KIX台北TPE ndash; 名古屋NGO台北TPE ndash; 首爾ICN曼谷BKK ndash; 新加坡SIN溫哥華YVR ndash; 紐約JFK 今次的主題會用到的是 台北大阪 和 台北首爾 的航線,只有這兩條航線符合今次的主題,不過它們都是熱門的旅遊地點,所以都值得介紹啦。記住,這些航線都有由國泰自己經營的航線,並不是夥伴航空公司,亦不是Codesharing。同時,因為不會涉及夥伴航空公司,所以用標準賞的兌換表格就可以換到了。 然後,你要有一個新概念:「香港大阪台北」是一張 香港台北 的單程機票,你只是在大阪轉機和轉機時間有點長。另外,你可以先去台北再去大阪首爾,亦可以反過來先去大阪首爾再去台北,所需里數都是一樣的。至於在台北要不要停留幾天就視乎你的旅程,要去台北走走的話就出機票時把兩個航班分隔幾天就可以了。 緊貼最新最潮澳門信用卡、飛行里數、旅遊資訊,記得讚好MO560的Facebook! 如想查看更多詳情,請到MO560的Facebook或Website查看。 3. 兌換例子 如果你覺得以下內容有點複雜或你有其他疑問的話,可以在Facebook向小編查詢喔。 以下是來回都在香港,並全部使用里數的換法。由於全程都坐國泰,所以不入境台北就不需入台證,直接轉機即可,行李亦可以申請直掛。另外,文章最尾更有小編推介的「澳門換法」喔。 香港 來回 大阪 │ 17500里 不出境台北 回程直接在台北轉機 機票一 │ 紅色 │ 10000里11月2日 ndash; 香港 ndash; 大阪11月9日 ndash; 大阪 ndash; 台北總飛行距離為2597里 屬於第二區間 機票二 │ 藍色 │ 7500里11月9日 ndash; 台北 ndash; 香港 小編在Blog中已經幫大家整理了幾個兌換例子,包括台北大阪、台北首爾、來回首爾等等,請轉到MO560的Website中查看。 澳門換法 另外,由於今次的花式兌換必須有一程在台北轉機,人在澳門的話,你就要往來香港機場再加一次台北轉機,好像有點麻煩。所以小編以下舉個澳門例子,方便大家作對比,至於要用那種兌換方法就視乎你自己囉。 澳門換法 來回 大阪 │ 10000里 HKD$400 機票一 │ 紅色 │ 10000里2月2日 ndash; 香港 ndash; 大阪2月8日 ndash; 大阪 ndash; 台北總飛行距離為2597里 屬於第二區間 機票二 │ 藍色 │ HKD$4002月8日 ndash; 台北 ndash; 澳門 這種換法你只需10000里加HKD$400左右就可以來回大阪首爾了,有一程更是直接在澳門機場的,免除了往返都在香港機場的小麻煩。至於在台北要不要停留幾天就視乎你的旅程,要去台北走走的話就買機票時把兩個航班分隔幾天就可以了。 注意:「澳門換法」由於在台北轉機是乘坐不同的航空公司,需要自行入境再checkin,所以需要入台證,航班之間請預留充足時間。 HKD$400為台灣虎航最低價時的參考價。 小編在Blog中已經幫大家整理了幾個兌換例子,包括台北大阪、台北首爾、來回首爾等等,請轉到MO560的Website中查看。 緊貼最新最潮澳門信用卡、飛行里數、旅遊資訊,記得讚好MO560的Facebook! 如想查看更多詳情,請到MO560的Facebook或Website查看。 喜歡小編的文章嗎?比個Like支持我啦 Facebook MO560Instagram mo560_travelWebsite httpsmotravel.info 想追蹤最新最潮澳門信用卡、飛行里數、旅遊資訊?將MO560設定為 「搶先看See First」!

第三十五屆澳門藝術節。澳門炫目劇團舞台劇<今夜無人能睡>
文化創意
蘇蘇・2025-05-17

本應是最溫暖的避風港,卻成為了最沉重的牢籠;本應是相依相扶的家人,卻造成了最致命的傷害。在病態的關係中,有沒有哪種愛能帶來救贖? 澳門舞台劇《今夜無人能睡》以病態陰鬱的黑色幽默,直擊社會貧困家庭的困境,揭開長期照顧者與被照顧者無處傾訴的悲歌。 照片來源 澳門藝術節FB 演出陣容包括香港舞台劇獎最佳女主角楊螢映和最佳男配角蔡澤民,以及多位澳門演員,以寫實細膩的演繹探究人性的脆弱,是否能釜底抽薪尋找救贖的可能。 觀眾入座時,姐姐及婆婆已在演區內活動。姐姐因為交通意外,雙腿失去了活動能力,她戴着耳機看書,沉醉在自我世界中;失智婆婆則用助行器在台上走來走去,一會兒去洗手間,一會兒去倒水,一會兒在床上輾轉反側,妹妹在自己的房間沉迷著自己的事情,這就是她們的生活日常,活在同一空間但又沉溺在各自的世界中,互不干涉卻又相互依賴。觀眾一邊入場就座,一邊步進她們的日常之中。 剛開始時,觀眾會對她們正在做甚麼大感興趣,但當時間久了,就會慢慢的自僱看著自己的電話。這有如當下社會令人唏噓的困境,除非身在其中,又或者被報上新聞或社交平台,才會引起人們的關注。這不正是我們面對各類社會問題的狀態嗎? 照片來源 澳門藝術節FB 總體而言,導演沒有以悲天憫人的形式呈現三婆孫的不幸,反而以略帶自嘲的荒誕引發思考。最後姐姐道出被照顧者與照顧者的永恆矛盾:既唏噓又依賴。 《今夜無人能睡》作為這屆藝術節的澳門代表,不僅是澳門藝術成就的展示,更是澳門文化主體性的宣言,透過戲劇讓世界看見這座小城的創造力與文化的深度,促進戲劇生態的可持續成長。

今時今日,課金手遊值得遊玩嗎?
手機‧電玩
MacauYeah・2023-10-20

原本筆者想做一個掌機遊戲 Switch,Steam Deck, Mobile Phone的詳細對比,但最近手機的手遊真的讓筆者有太多感受,所以筆者先直接聊一聊遊戲機制問題。 說實話,手機 Mobile Phone這個載體,一定是受眾最廣的。非競技類免費課金遊戲讓大家最開心,下載不用錢,開局刷首抽,不課也開心。而對於鍾情遊戲,用課金買資源,理應亦是符合輕、重不同情度的玩家。走一次性買斷路線的遊戲,也適合無網路情境。 免費課金遊戲又分兩大類,一些是買消耗道具,提供提示或額外資源,一些就是抽獎制,把某些特別資源限制在低機率的彩池當中。以最近的Monster Hunter Now為例,就是走前者路線。可以買回復藥或增加素材的道具,供特殊情境使用。以星穹鐵道為例,就是抽獎制,某些特別角色需要從彩池中抽出。 Monster Hunter Now鼓勵大家走出門,多去一些不同的地方,原意是好的。星穹鐵道設定階段等級上限,讓特殊角色跟普通角色差異有個限度,原意也是好的。上述兩個例子,都是鼓勵大家享受遊戲基礎玩法,不需要每一刻都想著課金問題。而筆者心中的強烈反轉點,亦是因為玩了這兩款遊戲,才爆發出來。 手遊發商始終要找到收益的來源,所以通過設計一些心理關口,等玩家忍不住的時候,就課金下去。營運需要金錢,合理回收成本,大家都應該可以理解。筆者對於之前一款競技手遊,也本著支持支持的態度,去課金兩三輪。因為遊戲課金目的很明確,就是提前解鎖指定角色。筆者課出去,亦玩到想玩的角色,大家都合乎預期。 但問題是MHN和星穹,雖然看似課也能玩,但實際上,兩者玩下去都很痛苦。MHN的資源囤積速度很慢,選錯武器走錯開發路線,想換武器就得花相當大的時間成本。即使課金,也不能取得指定武器素材,也不能指定出現的魔物,使課金的確定性變得很低很低。 星穹也類似,遊戲原本就有每日取得資源上限。課金可以抽多個角色,但無法讓你重塑角色。在資源有限的情況下,你不單要考慮養那個角色,還要考慮養哪個技能,壓力也真大。到後來,可能你更在意資源收益,去猛翻功略找養成策略,而不是去研究過關機制。 這還引伸另一個問題。我課金,為了更好地享受遊戲,隨時想玩就玩,忙的話,就先不玩,有時間,就多玩玩,但上述兩遊戲都不行。MHN課金道具染色球,亦需要玩家無時無刻打開遊戲,在指定的時空標記魔物。有空想多打兩場?不行。星穹的課金模式還有分一次性和月票制。月票制雖然每日資源變多,但你若很忙,沒時間玩,那天的資源就會浪費掉。之後即使你很閒,也不能多玩。 或者有人會說,無限課金不就解決問題了嗎?但這樣的話,筆者寧願支持買斷制遊戲,至少一次性付費之後,不論怎樣重塑,也是在連續的時間內可以重來的事,再加上對機制上的熟習,多次重塑的時間會會更短。 即使講了這麼多的不是,上述兩遊戲還是相當出色的。MHN以動作遊戲規格來看,是非常能發揮手機的便攜性同時能以最直觀的方式去實作動作遊戲的刺激感。星穹的聲畫演出絕對是上上成,回合制戰鬥並不讓玩家覺得沉悶。但兩遊戲的問題就是課金收益讓人蛋疼非常。 或許,之後筆者還是會出一篇掌機遊戲大評比,但可能課金手遊就不在對比範圍裏面,能比的就只有一次性付費遊戲

來場推理世界探險之旅吧
其他
皓芯・2022-07-12

『我要把所有的財產,贈與將我殺死的犯人。。』 故事從女主角劍持麗子的前男友死亡說起,故事中二人久未連絡,家財萬貫的前男友榮治,留下一份令人匪夷所思的遺書。遺囑中的遺產分配,除了有一般人想像中的對象,還對前女友們、對自己曾經親切過的人、甚至是自己心愛的小狗和照顧者,都留下了為數不小的遺贈。甚至hellip;殺害他的兇手可以獲得遺產? 日本「這本推理小說了不起!」大賞受賞作得獎小說,作品更被改編影視化,這是本不存在複雜犯案技巧的推理小說。 作者新川 帆立,職業麻將選手,從事律師工作。在16歲時閱讀夏目漱石《我是貓》深受感動,立志成為作家。而她律師生涯的所見所聞,也轉化為小說女主角劍持麗子的塑造養分。 女主角劍持麗子,是一個頭腦靈敏、勢利主義的律師,作為「前女友」的她,也被賦予獲取一部份財產的權利。同時,正因榮治這份奇怪的遺書內容、不可思議的犯人選拔,麗子須幫助委託客戶爭取「成為殺害榮治的犯人」,從而成為了「犯人候補」的代理人。 隨著故事發展,爾虞我詐的爭權內幕,充滿疑點的情節與人物關係,讓人忍不住一直往下翻頁。究竟榮治為何要寫下那樣的遺書呢? 《前男友的遺書》 作者: 新川帆立 譯者: 詹慕如 繪者: 丹地陽子 出版社:春天出版社 出版日期:20211208 ISBN:9789577414731 訂購地點 一書齋 圖片來源博客來誠品劍心

為了「公主」!《阿倫王子歷險記》
文化創意
繪本與棋@黃庭熾・2020-12-09

  《阿倫王子歷險記》是我最喜歡的童話改編繪本之一,童話改編繪本都有一種魔力,常常叫人眼前一亮。   《阿倫王子歷險記》改編自經典童話故事《青蛙王子》,保留了青蛙、王子、公主等元素,但無關乎魔咒,也沒有「撞牆一變」的怪事發生,更多聚焦在擬人的動物於成長與交友途上的經歷與發現。   《阿倫王子歷險記》的故事動人,阿倫在父母的溺愛下以為自己是世界的中心,總相信在未來、唾手可得的地方有更曼妙的禮物在等待他發掘,於是在同儕生活中過得不稱意的他洗車旅行去,遇到落單的雛鳥露西......在旅程的終點,矢志拜訪公主的阿倫遇上了「公主」,但公主不在城堡香閨深處,而在驀然回首的旅途當中;命運用不一樣的禮物給阿倫如願以償,催熟童年、嘎然成長,讀之令人對自己心中的「那個阿倫」又憐惜又疼愛。   阿倫與露西能否看見城堡,是小讀者的一大關注點,所以在披露這個重大情節之前,探討小讀者心中的經驗、他們如何期待、又如何想像,值得延伸細訴。   小讀者的想像是驚人的,有些人惦記著阿倫王子的承諾,覺得翻越山丘之後,尋獲的是鶵鳥失散的父母;有些人滿腦子天國,覺得終點即是陷阱,大結局必然盡訴天國;有些人心中有滿滿的盼望,覺得故事告終必然大團圓結局,既有公主還招待了兩隻鸛;有些人巧結線索,安排王孫落難,冒名王子早遇上鸛國公主......   繪本的封面,是動物朋友倆開著跑車,駛過風光明媚的郊野──也許,天下無不散之筵席,但美好的回憶憑畫面永存。 你可以到這些圖書館借閱這本繪本: 氹仔圖書館、白鴿巢公園黃營均圖書館、紅街市圖書館mdash;mdash;實際館藏情形可以透過澳門公共圖書館館藏查詢系統瞭解。

香港 | 大和堂
小城角落
原來世界這樣大・2019-03-07

留住牌匾、鐵閘、百子櫃,也留住了情懷。 因文物保育、不想老店「被消失」,最後決定把大和堂的一事一物保留,只是翻新了破舊的裝潢,把醫館活化成咖啡店,記錄歲月的痕跡。在大和堂「咖啡店」開張時,都已經有留意了,但是想感受多於「趁墟」,故此還在等待一個合適的日子去大和堂。 我特意避開黃金時間,專程早起去大和堂吃個早餐再回辦公室,感受早上的一片寧靜。曾是在九龍城長大的,或多或少對這一帶留有一點感情。看著這地區的變更,嘅嘆日月如梳,時間飛逝。 醫館、藥行換上了咖啡店,新舊融合,雖是兩樣截然不同的東西,但合起來亳無違和感,如此的自然、調和,十分神奇。人人說著要科技進步、經濟發展,高樓大廈起個不停,只顧一直向前看,卻忘了回望我們所擁有的。是經濟發展更為重要?還是往事不想重提? 大和堂的咖啡和食物是沒有什麼了不起的地方,但是充滿了故事。 不要等失去了才感到可惜。不論是保育文物,還是身邊的人和事,我們要學會「珍惜」這兩個字。不應輕易忘掉、拆掉那些舊舖、舊建築物,因為它們的存在才是人類進步、發展最有力的証明。而身邊的事物,是我們成長的見證。 大和堂九龍城衙前塱道24號

喜來登 「美式海鮮盛宴」自助餐 不顧儀態盡情擦個夠
澳城餐飲
Ping・2017-10-24

每日都在等星期五,Happy Friday做乜好?最好就係約齊朋友盡情飲飽食醉。得知澳門喜來登大酒店推出了個新的「美式海鮮盛宴」自助餐,每周只在星期五和六供應,好奇到底美式食法跟平時食法有甚麼分別?今次就趁星期五親身去試試,一探究竟! 盛宴一向提供琳琅滿目、選擇繁多的自助餐,這次 「美式海鮮盛宴」是在原本的自助餐上再額外增加多一個選擇,可謂雙重享受。 海鮮是分開用一個桶子上桌的,所以只要安坐下來便能慢慢品嚐,還能自選調味,有別於平時吃海鮮自助餐要次次到海鮮區取,也不用跟別人爭崩頭。 點菜時需先選擇海鮮口味, 有路易斯安那調味粉、海鮮及冬陰功三種選擇。 選擇後,服務員會將海鮮沾滿惹味香料,把桶子載著,拿到客人面前,你猜他如何上菜?竟然將滿桶的海鮮倒在餐桌上! 加拿大棕螃蟹、阿拉斯加蟹腳、俄羅斯皇帝蟹腳、波士頓龍蝦、鮮蝦、青口等多款鮮甜海鮮都從桶子應聲落桌!好豐富啊! 然後就可以恣意地用木槌、鉗子等工具來拆蟹,盡情拆、盡情吃!全程用手,餐廳貼心提供了手套和圍巾,所以也不怕弄髒雙手和衣服。 一開始還有點不習慣,老實說平時在外面用餐甚少會直接用手吃東西。但見鄰桌的人大聲地用槌敲碎蟹腳,感覺非常爽,包保平日的悶氣全消(笑),就知道這個食法本身就是要人隨意、隨性、不顧儀態地大快朵頤,其實拆蟹當然是用手最快最方便啦! 原來這種吃法源自於美國南部的路易斯安那州鄰近墨西哥海灣, 當地盛產甲殼類海鮮,當煮好的海鮮與當地傳統混合香料一同拌勻,便成了路易斯安那州風味十足的馳名煮海鮮。 今次我選了海鮮味,海鮮入口非常鮮美,尤其加拿大麵包蟹、 波士頓龍蝦更是啖啖肉。此外還有幾款特調醬汁提供,包括檸檬香草奶油醬、蟹肉濃湯醬、粵式黑胡椒醬及酸辣醬,又為海鮮再增添不同風味。個人比較鍾情於檸檬香草奶油醬,酸酸甜甜,令人開胃。 食完海鮮已覺得飽肚,不過不要忘記還有buffet line等著自己,是時候去填另一個胃,甜品胃!甜品蛋糕選擇多,非常吸引,有各式蛋糕、馬卡龍、即煮pancake,還有多款口味的 haagen dazs 雪糕! 「美式海鮮盛宴」自助餐在每個週五及週六晚上6時至10時30分,於澳門喜來登大酒店的「盛宴」餐廳供應。價錢為成人每位澳門幣468元,6至12歲小童每位澳門幣200元,另收加一。