文章

顯示從 3月, 2023 起發佈的文章

React Native Canvas介紹及修正在Android 12上的滾動效果

圖片
React Native Canvas介紹 https://github.com/iddan/react-native-canvas 如果你想在React Native上製在一個用手指在螢幕上繪圖的功能,那麼React Native Canvas會很適合你。 React Native Canvas 是一個很有趣的library,它可以讓你在React Native上使用類似HTML 5 Canvas的API。 那麼它是如何做到的?很簡單,就是直接使用WebView,然後寫一套API去把指令從React Native傳過去WebView。 在WebView那裡就是直接調用HTML 5的Canvas API了。 來看一下它的原始碼: 這個原始碼是我從 Canvas.js 裡抽出來的,可以看到其實就是一個WebView。而WebView component和React Native之間就是利用 onMessage 和 webview.postMessage 來進行溝通的。 這是一種很常用的WebView交換資料方式,詳細可以到react-native-webview的API文檔去查看。 onMessage (Prop): https://github.com/react-native-webview/react-native-webview/blob/master/docs/Reference.md#onmessage postMessage (Function): https://github.com/react-native-webview/react-native-webview/blob/master/docs/Reference.md#postmessagestr Library的其它檔案連接了各種Canvas API的interface,一般用到的都會有。 我自己是用來製作簡單的手指繪圖功能,效能還算不錯,如果我不說的話,基本上沒有人會知道這個繪圖功能是一個WebView做出來的。 當然,這就是得益於現在的手機越來越快,WebView效能越來越好,我現在連PDF都是用PDF.js來顯示的。回想很多年前,我也曾試在手機上使用PDF.js,但實在太慢。 以後有機會說說在React Native上用PDF.js。 話說回來,只要你會用HTML 5的Canvas AP...

ChatGPT說明了學會提問的重要性

圖片
最近最火熱的話題肯定是ChatGPT了,到處都是ChatGPT相關的報導和教學,連我媽都知道有這個玩意存在。 不如為何,最近和AI相關的應用好像真的多了不少,在ChatGPT出現前,大家已經在玩AI生成圖片了。從Midjourney到Stable Diffusion,很多不接觸AI的人都開始對這些魔法產生了興趣。 其實ChatGPT並不是OpenAI的新發明,如果我沒記錯的話,它的GPT已經做了幾年了,這幾年一直都有提供收費的GPT AI供開發人員使用。而ChatGPT之所以爆紅,根本原因是它提供了一般人能輕鬆使用的用戶介面,而不用去使用付費的API。 不管怎樣也好,現在大家用過了ChatGPT後,大概都已經回不去了,以後都會是一個有個人AI輔助的世界了,事實上很多人已經開始依賴了這些工具。 ChatGPT真的能夠在工作上和日常生活中幫到很大的忙,改變了工作的方式。這也許是新時代的工作方式,然而,一個新的技能也隨之而來,那就是學會提問。 從小的時候,已經被教導過學會提問是學習中重要的一環,現在可能更重要了。大家都在使用的AI工具,為什麼我用得比你更精準,出來的效果更好?可能就是我提問的技巧比較好。 現在網絡上有一個新興的詞,叫prompt engineering。就是我們對AI說的「咒語」,這還真是一個學問,你的prompt越詳細精準,出來的結果就更能符合你的目標。 所以,即使有了新的工具,也會需要新的技能才能運用自如。今天開始就訓練一下自己的表達能力和提問技巧吧! (本篇文章並不是由ChatGPT生成的,請放心閱讀)