搜尋

搜尋結果

型別對程式語言的重要性
科技新知
MacauYeah・2024-07-08

JavaScript等程式語言的流行,好大一個原因是因為它很簡潔。而筆者認為,動態語言的特性,即是可以省略型別,是讓它簡潔的一個很大原因。動態、靜態與強型別、弱型別並一定對等,詳見Ref 動態語言的特性,就是同一個變數,在不同時候可能代表不同的數據類型,有時候是String,有時候是Integer。所以編寫時,乾脆就不寫數據類型,因為寫了也可能是白寫。 因此初學者並不需要處理大多導入import問題,也不用考慮很多compile error問題,至少程式可以運行一半,到了最後出錯的地方才停下,也就是不會因為型別問題而整個程式開不了。 不過筆者在接觸了JavaScript後,始終沒有大量使用。一來因為筆者慣用的Java,有著更大的基礎套件,改用JavaScript未必有優勢。而且動態語言還有一個長久的管理問題,我們該如何知道更新的影響有多大? 測試用例不是萬能藥 有一部份的人認為,動態語言管理難,是因為大家不愛寫測試用例。的確,若然大家寫的測試覆蓋率足夠多,一定可以預先發現問題。但筆者在Java上實踐了寫測試的習慣一段時間,依賴測試報錯,其實也是後知後覺。 IDE的界入 筆者認為,若想好好地管理程式碼,光寫測試是不夠的,我們還需要好好地讓IDE了解我們的程式碼,認它可以很有效地重構我們的程式碼。更強的IDE,還有機會可以提醒我們有一些設計上問題。 老實講,寫Java多的朋友,都可能都知道Intellij Ultimate的名字。筆者試用後,的確很有幫助。相較之下,vscode對於Java的支援,並不十分智能。但這裏筆者還覺得vscode對於java的編寫、重構、測試,在免費的情況下,都已經足夠是足夠佛心。對於網頁應用來講,vscode差的是對javascript的支援。 vscode對javascript的支援有限,其實不能怪它不夠努力。你想多一個免費的IDE怎樣去了解你的javascript程式? 我們連型別都沒有寫出來,它能怎樣推敲? 實時去模擬各種輸入?CPU又會不會耗乾?那麼寫到一半的程式碼又怎樣輸入? 直到最近筆者採用TypeScript之後,筆者看到曙光了 TypeScript 一個變相的JavaScript的靜態型別 原本的JavaScript其實也有型別的,只是不強制。若想IDE支援,需要以特定型式寫註解。但這樣寫註解,工作量並不比引用靜態型别來得輕鬆。所以最後,筆者還是覺得直接套用TypeScript,讓自己在每一次引用參數,都要好好地先了解函數的輸入輸出型別寫法。 說實在,從JavaScript到TypeScript並不輕鬆。一些原本很無腦的Axios, Promise, Vue語句,TypeScript寫起上來,都變得很複雜。但這個套用,對於IDE來講,真的很大幫忙。它就像突然讀懂了我們的程式一樣,可以跳入跳出,可以知道在多少處被引用。重構也變得更有信心,而不是等待事後測試報錯。 有一點要補充,TypeScript並不像Java那般需要完全預先宣告型別。例如函數的回傳結果,TypeScript就不會強制要求寫出型別,因為它可以有限度地猜得出來。當然,如果大家願意宣告,就更好。 總結 總括來講,型別就像厠所的衛生情況一樣。初期當然什麼都不處理也可以,但越用越久也沒有人理會,大家也不想用下去。若然大家都願意努力維持它的品質,大家會更有意願重複使用。 參考資訊 「靜態型別 vs. 動態型別」與「強型別 vs. 弱型別」 httpsblog.tarswork.compostprogramminglanguagetypesystem Typed JavaScript httpsdepthfirst.comarticles20211103typedjavascript

帶媽咪去澳洲倒數 #1 - 塗鴉滿滿的墨爾本
走遍世界
玉其・2018-06-26

長這個大,都沒試過跟媽咪單獨去旅行,一來就跟她去澳洲,而且兩星期那麼長,真的有點緊張。 我們由香港坐凌晨直航到澳洲,一直都聽說澳洲入境很嚴格,沒想到原來在上飛機前的那一刻就開始嚴格了,連我們在禁區裡買的盒裝飲品和水都不能帶上飛機,要我們扔掉或喝完再上機。 去程坐的是 Virgin Airline,設備很齊全,還有得充電,超開心~ 坐完通宵飛機困到不行,無奈還沒到Airbnb checkin的時間,只好先到附近的Queen Victoria Market逛逛嘍。 一看到這些海鮮美食,肚子就餓了,馬上買點來嚐嚐! 這個醃蝦啖啖肉,超好吃! 聽說澳洲的生蠔也很有名,但可能我跟媽咪都不太喜歡吃生蠔,所以覺得一般 海鮮水果市場的對面是的市集,有點像寬闊版的香港女人街 在Airbnb休息完後,就在市中心隨便逛逛,這邊的晝長夜短,夜晚8點幾才日落 第二天先到超出名的湄江牛河屋吃越南牛肉河粉,名不虛傳,味道真不錯。 之後在附近的唐人街逛逛,看了很多塗鴉。全部都超漂亮的! 因為臨近聖誕,到處都是聖誕裝飾。第一次過炎熱的聖誕節,感覺很特別~ 這天還報了一日團去看樹熊、袋鼠和企鵝,因為是參加中文團,所以團裡幾本都是內地的。其實報團後才發現,其實不用特別報團,在墨爾本的St Kilda都可以看企鵝,而且是免費的。。。 在墨爾本的最後一日去了Brighton Beach看彩虹小屋,所有屋都好漂亮,我也好想擁有一間啊! 之後回去市中心,在這個有百年歷史的Royal Arcade喝了一杯Koko Black的熱巧克力,Yammy 逛了好出名的塗鴉街,不過其實整個墨爾本都是滿滿的塗鴉,全部都超高水準的!

冰雪大三巴現身北海道札幌
走遍世界
LifeMag Editor・2016-02-06

咦?大三巴白雪雪?乜澳門落雪咩?唔係!呢度係北海道札幌嚟架!大三巴牌坊雪雕於ldquo;札幌冰雪節rdquo;登場,更成為今年冰雪節的核心,可以說是澳門人的驕傲。 今年札幌冰雪節共有二百零八個大小不同的雪雕及冰雕作品展出,而長達一點五公里、位於大通公園一至十二丁目的大通會場為重點展出會場。位於主幹道以及開幕式舉行地點的大三巴牌坊成為今屆的標誌。 Ray Egawa(@rayray5200_illest)張貼的相片 於 2016 年 2月 月 5 1026下午 PST 張貼 Roberto Teani(@malaussene72)張貼的相片 於 2016 年 2月 月 5 918下午 PST 張貼 不止如此,光影大三巴亦搬到去北海道,冰雪節舉行期間在大三巴牌坊雪雕呈現光雕表演,展現澳門文物建築與節慶盛事在協同效應下的無窮魅力,每半小時一場,每場十分鐘的演出將讓觀眾置身童話世界,投進令人目眩神迷的澳門冰雪奇緣。 在大三巴牌坊雪雕旁邊特設浪漫窩心的澳門咖啡室,讓大眾暫別雪國嚴寒、稍作休息,感受澳門暖暖的人情味。咖啡室洋溢葡式風情,食客可品嚐由專誠到澳門學藝的日本廚師精心製作的澳門小食及熱飲。同時,旅居北海道的八十後澳門攝影師劉善恆亦於現場展出其作品,讓訪客欣賞多幀訴說著澳門故事的動人佳作。 (圖片來源:澳門旅遊局、Instagram; 影片來源:HBC北海道放送)