解決Web前端開發的痛點-前端網頁技術比較(上)



在現代網頁開發中,工程師常常面臨各種令人困擾的挑戰。舉例來說,建立不同風格和主題的網頁設計時,需要運用不同效果。而在建立複雜多變的網頁時,更是面臨來自不同瀏覽器的問題,這些瀏覽器包括手機、電腦、平板等,它們的大小和尺寸各不相同,使得頁面要因「物」制宜。為了確保在多種設備上呈現良好的頁面效果,工程師必須找到解決方案來處理這些痛點。

在本文中,我們將介紹幾種前端網頁技術,這些技術可以增進溝通效率、改善頁面效果,供不同需求開發者參考使用。需要注意的是,我們不會否定任何工具,而是以中立的立場比較它們的優點和特點,以幫助開發者在實際情況下做出適當的選擇。

下一篇章,我們將更深入地介紹其中一種技術,並闡述實際應用案例,希望有助於工程師解決Web前端開發相關議題。

三大技術簡介

本文以三大技術進行說明與比較,開發人員或工程師可依據需求選擇最適合的方法,以獲取最佳成果。

  1. No-Code Tool (無程式碼工具)

No-Code Tool是其中一類軟體開發工具,提供非技術背景的人能夠創建應用程式、網站、工作流程等,無需撰寫任何程式碼就可完成建立。這工具通常提供視覺化介面,讓用戶可透過拖曳與放置相關元素,有一定的設定規則和邏輯,以及能配置不同組件來完成所需的應用功能。No-Code Tool使非開發人員也能參與軟體開發過程,加快應用程式的開發週期,並降低了技術門檻。

  1. Hand-Coding (手寫程式碼)

手寫程式碼是傳統的軟體開發方法,指的是開發人員透過手動編寫程式碼來創建軟體應用、網站或其他系統。這種方法需要開發人員具備編輯程式語言的知識和技能,並且需要深入理解應用的需求和結構。手寫程式碼所需較多時間,仰賴開發人員靈活性和掌控,適用於複雜的應用場景。

  1. design-to-code(設計轉碼)

設計轉碼是指將設計師創建的視覺設計(如UI設計、網頁設計)自動轉換為實際的程式碼。這個過程可以利用自動化工具,例如將設計文件轉成HTML(超文本標記語言),用於定義網頁的結構和內容,可創建標題、段落、圖像、超連結等、CSS(層疊樣式表),用於定義網頁的外觀和風格,可以掌握文字、顏色、佈局、邊距等和其他前端程式碼。設計轉碼有助於減少設計師和開發人員之間的溝通成本,同時提高了設計準確性,惟仍需開發人員進行程式碼的調整和優化,無法直接套用。

解決技術分析比較

三大技術簡介後,以下細部展開三者之相異處與說明,如下圖1所示。 

圖1 開發前端網頁之三大技術|資料來源:本計畫整理

  1. No-Code Tool,如Wix、Elementor和WebFlow,這些平台有既定的編輯功能與設計,使得若有一設計原稿,不容易打造完全一致的效果。此外,這些平台無法獲得生成的程式碼,使得開發人員無法完全掌握操作,不建議用於客製化網頁開發。以下簡介各特點、優點與限制。

        (1) Wix

  • 特點:易使用的網站建立平台,提供豐富的模板和拖放式介面,適用於初學者和沒有技術背景的用戶。
  • 優點:提供廣泛的模板庫,適用於多種不同類型的網站。它具有強大的拖放式編輯功能,可以輕鬆自定義頁面布局和設計,還提供了一些應用程式和插件,用於添加功能,如線上商店、社交媒體整合等。
  • 限制:雖然Wix的自由度較高,但在某些需自定義功能受到限制。

        (2) Elementor

  • 特點:是一個WordPress插件,專注於頁面建立。它提供直觀的前端拖放式編輯器,使WordPress用戶能夠輕鬆創建和編輯網站頁面,而無需編寫程式碼。
  • 優點:可與現有的WordPress網站整合,使用戶可以在其現有網站上使用豐富的視覺化工具。它提供了許多小部件和模組,用於創建各種元素,如標題、圖像、按鈕等。
  • 限制:雖然Elementor為非開發人員提供了強大的工具,但它仍然依賴於WordPress平台,因此需要一定的學習和了解。

        (3) Webflow

  • 特點:網站構建工具,它結合了視覺化設計和前端開發能力。適用於希望更深入制定自有之網站外觀和功能的用戶。
  • 優點:允許用戶創建響應式設計、自定義互動和複雜的動畫效果。具有直觀的視覺化編輯器,允許用戶在設計的同時生成程式碼,因此適合具備一定前端開發知識的人。
  • 限制:相對於其他平台,Webflow的學習曲線較陡峭,需要較多的時間和努力才能掌握。
  1. Hand-Coding,是完全依靠前端工程師的手寫程式碼,容易掌握操作,使得能設計出與原稿相似之網頁。然而,手寫前端程式碼需耗費大量時間,且仍有可能與設計稿產生差異,造成增加團隊間溝通和等待成本,若對於誤差零容忍的客戶來說是無法採此方式,恐增加專案逾期之風險。
  2. design-to-code解決方案包括Anima、pxCode和Locofy,它們提供將Figma設計轉換為HTML程式碼的功能,節省手動切版的時間和精力。這些工具基本上遵循相同的原理,可供開發人員直接使用或進一步修改。當使用這些工具可以加快開發速度,同時確保設計原稿與實際建置一致性。以下簡介各特點、優點與限制。

        (1) Anima

  • 特點:是一個設計工具,旨在幫助設計師將設計稿轉化為交互式和可點擊的原型,主要用於在設計過程中與開發人員和利益相關者共享和討論設計概念。
  • 優點:可在設計工具中添加交互元素、鏈接和動畫,創建更接近實際產品的原型。這有助於提高設計與開發之間的溝通,減少誤解,並加速專案進程。
  • 限制:雖然 Anima 可以幫助創建原型,但它的重點是在設計階段增加交互性,而不是在開發階段生成程式碼。

        (2) pxCode

  • 特點:一個將設計稿轉化為可產出程式碼的工具,幫助設計師和開發人員更緊密地合作,從而加快從設計到開發的轉換過程。
  • 優點:可根據設計稿自動生成前端程式碼,如 HTML、CSS 和 JavaScript。這有助於減少手動編寫代碼的工作量,同時提供設計師和開發人員之間的即時反饋。
  • 限制:雖然 pxCode 可以生成程式碼,但生成的代碼可能需要進一步優化和調整,以滿足專案的特定要求和標準。

        (3)Locofy

  • 特點:一個使用者體驗優化平台,幫助企業改善其數位產品的使用者體驗,透過收集和分析使用者行為數據來提出優化建議。
  • 優點:可助企業了解使用者在應用程式或網站上的行為,找出瓶頸和問題,並提供優化建議,以提高使用者滿意度和參與度。
  • 限制:使用 Locofy 需要進行數據收集和分析,因此在個人隱私和數據保護,資安方面多留意法規等規定。

因地制宜選擇最適方案】 

前端網頁技術有許多不同的選擇,每一種都有其優點和限制。開發者應根據項目的需求和目標來選擇最合適的技術,與設計師的溝通也可透過數位工具來強化協作關係。下一篇章,我們將分享過去應用design-to-code於專案之案例,從四部分分析:(1)功能和準確性、(2)程式碼品質及彈性、(3)響應式設計及(4)學習曲線,以說明實現更敏捷的前端開發。 

  • 參考資料
  1. 封面圖:https://pixabay.com/illustrations/web-web-developer-1935737/
  2. com(wiki):https://zh.wikipedia.org/zh-tw/Wix.com
  3. Elementor(wiki):https://en.wikipedia.org/wiki/Elementor
  4. Webflow(wiki):https://zh.wikipedia.org/zh-tw/Webflow
  5. Anima:https://www.animaapp.com/
  6. pxCode:https://www.pxcode.io/
  7. Locofy:https://www.locofy.ai/
延伸閱讀