參與學生:劉名益、黃珮珊、賴偉翔
專題背景:校園的地點名稱不統一,新生或外來者看不懂找不到
情境:有一公告如下,「夏季制服」發放,地點:
中央校區東川堂休閒桌椅區、介仁校區聯合辦公室前木桌區、建國校區慈悲喜捨川堂。
--------------------
請問,慈悲喜捨川堂,是哪裡?東川堂休閒桌椅區,是哪裡?
--------------------
許多人看到之後不知道地點是哪裡?
1.應該要用正式名稱(前川堂),雖然大家不熟,但至少要統一
2.因為知道大家不熟,至少要加上例如A107總務處旁
3.前川沒有編號,應該要加上編號,例如A107-1(這樣至少可以推估在哪一棟?幾樓?)
---------------------------
一個資訊系統的構想,要做一個"校園空間查詢"的APP,讓大家可以查例如"建國電腦教室五",就可以看到地圖,甚至可以進一步規劃"路線"。
這不是工讀,也不是課程。只是想讓一二三四年級有興趣研究程式設計的同學一起研究。所以也沒有一定的進度。
沒有上課或meeting,應該就是用LINE群組。
完全依自己的時間設定進度
先討論功能需求,再來決定開發工具。
希望MAP部分盡量不要被Android或iOS綁住。甚至考慮用SVG的方式顯示。
如果想要開發一個資料庫的手機APP,大致功能是,可以輸入教室編號,之後就可以顯示學校的校區地圖,基本上預計的顯示方式是,第一張大範圍地圖,第二張中範圍地圖,第三張小範圍地圖。第四則是表格顯示該位置的資訊。
這樣的功能,適合用哪一種開發工具。
這樣的APP構想非常清晰,具備資料查詢、地圖顯示與表格資訊整合三大核心功能。根據你的需求,以下是幾種適合的開發工具與平台選擇,並附上各自的優勢與適用情境:
📱 適合開發這類資料庫與地圖整合的手機APP工具
1. Flutter(Dart)
優勢:
跨平台(iOS + Android)一次開發,節省時間與成本。
支援 Google Maps API 與自訂地圖元件。
UI 表現優異,適合多層次地圖切換與表格顯示。
適用情境:若希望快速部署到多平台,並保有良好使用者體驗。
2. React Native(JavaScript)
優勢:
跨平台,社群資源豐富。
可整合地圖元件如 react-native-maps,並搭配 SQLite 或 Firebase 做資料庫管理。
表格與地圖切換可用多種 UI 套件實現。
適用情境:若團隊熟悉 JavaScript,或希望與 Web 前端技術整合。
3. Android 原生開發(Kotlin 或 Java)
優勢:
完整掌控地圖與資料庫功能。
可使用 Google Maps SDK、Room 資料庫、RecyclerView 表格顯示。
適用情境:若只針對 Android 平台,並希望高度客製化。
4. Swift + SwiftUI(iOS 原生)
優勢:
Apple 地圖整合容易,UI 表現細緻。
CoreData 或 SQLite 可作為資料庫。
適用情境:若只針對 iOS 使用者,並希望與 Apple 生態系整合。
🗺 地圖與資料庫整合建議
地圖來源:可使用 Google Maps、OpenStreetMap 或自製校區地圖(以圖片方式呈現)。
資料庫選擇:
SQLite:適合本地查詢,快速且輕量。
Firebase Realtime Database / Firestore:適合雲端同步與多人使用。
Room(Android)或 CoreData(iOS):原生資料庫框架,整合性高。
因為使用者可能有IOS或者ANDRIOD,變成若使用Google Map或者Apple地圖,反倒會有侷限對嗎?
這意味著如果你選擇其中一種原生地圖 SDK,就必須為另一平台額外設計替代方案,增加開發與維護成本。
🧩 更通用的替代方案(跨平台地圖顯示)
✅ 使用自訂地圖圖片 + 區域標記
將校區地圖分成三張圖片(大、中、小範圍),以圖片方式顯示。
使用座標或區塊標記來顯示教室位置。
可搭配 Flutter 或 React Native 的 Image + GestureDetector 或 SVG 元件來實現互動。
✅ 使用 OpenStreetMap(OSM) 或 Mapbox
OpenStreetMap:開源地圖,跨平台支援,可自訂圖層與樣式。
Mapbox:商用地圖服務,支援 Flutter、React Native、Android、iOS,並可自訂地圖樣式與互動。
2025/10/31 討論:賴智昕、賴偉翔
規劃三階段
第一階段:查詢並顯示大範圍地圖+小範圍地圖
第二階段:如何知道自己的現在位置(定位)
第三階段:如何規劃路線。
其他逐步可思考的工作
1.如何呈現查詢結果?向量SVG或CANVAS?點陣JPG?
2.系統名稱?
3.是否應用創新創業?
如何定位?
1.用QRCODE貼紙。(最理想方式,還可以顯示開發單位的名字以增加曝光)
2.用門牌、告示牌拍照後進行影像辨識(AI)
3.用空間拍攝進行影像辨識。(難度太高)
2025/11/03 討論:賴偉翔
Q1:如何定位。可用WIFI,或者藍芽。或者使用貼紙,上面有QRCODE
Q2:如何處理地點的暱稱?同一地點可能有不同稱呼,例如電腦教室五=電五=C401