iT邦幫忙

2023 iThome 鐵人賽

DAY 1
0
Vue.js

Vue & GraphQL 探險之旅:30天,從新手村到魔王之巔系列 第 1

[Day01] 踏入神秘的新手村:為什麼選擇 Vue & GraphQL?

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20230917/20141111u4a2BdgJdw.png

心之所動:參賽的初衷

筆者現職為資深全端工程師。在過去的一年中,首次在熟悉的前端框架 Vue 裡涉足 GraphQL 的開發。途中遭遇了許多出乎意料的挑戰,但同時也累積了豐富的經驗和深刻的教訓。真摯希望能將所學與各位讀者分享,無論是在學習階段或實際應用時都能夠更為順暢、避開雷坑。

另一方面,以我個人的經驗,GraphQL Client 的主流資源多偏向 React。
作為一名 Vue 開發者,這激發了我想要為 Vue 社群盡一份心力貢獻的動力。
 

Vue & GraphQL

https://ithelp.ithome.com.tw/upload/images/20230916/201411110khfSnZ5B5.png

Vue.js:簡單、易用的前端框架

Vue.js 是一個漸進式 JavaScript 框架,以三個主要特點受到廣大開發者的喜愛:

  1. 易於入門 Approachable:配合直觀的 API 和世界級的文檔,任何具備基礎網頁技能的開發者都能輕鬆上手。Vue 的這種易於入門的特點大幅地降低了學習的障礙,無論是團隊合作或教學相長都變得十分順暢。
  2. 高效能 Performant:Vue 擁有一個響應式的渲染系統,並透過編譯器的優化確保了高效能及迅速的渲染速度。這讓開發者在開發過程中無需過度擔心性能問題,減少了花費在手動調校的時間。
  3. 多功能性 Versatile:遵循漸進式的概念,Vue 提供了一個豐富且可擴展的生態系統,無論是小型的應用或大型的專案,Vue 都能夠輕鬆滿足開發需求。

在 VUCA 時代,開發者需要具備持續迭代與適應變化的能力。
對我而言,Vue.js 的特性帶來的整體開發體驗及其核心概念,更加貼近我所追求的前端開發框架之魅力。

GraphQL:為 API 而生的查詢語言

GraphQL 是由 Facebook 開發並於 2015 年開源的資料查詢與操作語言。
它的出現是為了解決一些傳統 RESTful API 的挑戰與限制,特別是在 Fetch Data 的靈活性和效率。

  1. 靈活性與高效率:用戶可以靈活指定所需要的資料,確保只回傳客戶端真正需要的資料,從而減少不必要的資訊傳輸和儲存。
  2. 強型別:每一個 GraphQL 查詢都是強型別的,確保資料的一致性與品質。
  3. 整合多種資料源:GraphQL 能夠輕易地整合多種資料源,統一資料存取接口。
  4. 即時更新:透過訂閱功能,用戶可以即時獲取資料更新。

GraphQL 不只是一種 API 技術。它代表了現代應用開發的趨勢,致力於提供更迅速、更靈活、且更一致的用戶體驗。特別是在應用的界面和用戶數量逐步增長時,這種體驗優化的效果更為凸顯。
 

探險指南 30 天

接下來的 30 天探險,總共有四個歷程:

新手村探索:啟航

  • 感受魔法:快速打造你的第一個 GraphQL 查詢。
  • 基石打底:深入了解 GraphQL 與 RESTful 的不同面貌。
  • 神秘寶典:介紹各種 GraphQL 學習資源和基本架構,如 Client、Server、Tools。
  • 特別盟友:深入了解 Apollo —— 專為 GraphQL 打造的全套解決方案,以及它如何與 Vue 配合。

勇者學院:鍛煉

  • 挑選裝備:挑選與設定 IDE、套件和工具,打造最佳的開發環境。
  • 首次任務:練習如何設計 GraphQL schema,並進行初次的 CRUD 操作。
  • 魔法學習:深入了解如何在 Vue.js 中整合 GraphQL 查詢。
  • 模擬實戰:手把手教你建立第一個簡單的應用。

冒險征途:磨練

  • 建立基地:利用 hasura 與 postgres 快速部署你的 GraphQL 伺服器。
  • 技能轉化:Vue.js x GraphQL 的進階技巧與最佳實踐。
  • 敵人分析:介紹常見的 GraphQL 問題和解決策略。
  • 特殊任務:學習訂閱功能與實時更新的技巧。
  • 實戰演練:手把手教你建立一個完整的 CRUD 應用程式。

魔王決戰:巔峰之路

  • 高階技能:深入了解測試和除錯的神秘技巧。
  • 魔王現身:分享那些只有深入探索後才能發現的陷阱和解決方法。
  • 諸神黃昏:優化你的 Vue & GraphQL 應用架構。
  • 跨領域合作:分享與後端工程師協同工作的心得,以及進一步與其他框架或技術的整合方式。
     

讀者預期收穫

首先,這不只是一篇技術指南或教學。基於真實的開發經驗,讀者將深入了解技術選型的思考過程、實際開發中所遭遇的挑戰,以及如何克服這些挑戰。

其次,對於新手來說,這系列會是一個全面而深入淺出的指南,帶領你走入 Vue 和 GraphQL 的世界,不再感到迷茫。對於有經驗的開發者,相信仍然可以從中獲得新的啟示和不同的觀點。

明天的探險,我們將初次感受 Vue & GraphQL 的魔法魅力 - 3分鐘快速打造你的第一個 GraphQL 查詢。


下一篇
[Day02] 旅程的第一步:使用 Replit 快速打造你的第一個 GraphQL 查詢
系列文
Vue & GraphQL 探險之旅:30天,從新手村到魔王之巔31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言