在 2020 年(及以後)成為一名前端開發人員意味著什麼

已發表: 2023-04-21

您有沒有想過前端開發人員前端部分到底意味著什麼? 我曾經問過 Eric Meyer(他做網站的時間幾乎與網站出現的時間一樣長)他是否知道這個詞在很早的時候是什麼意思,他說知道。 所以,這不是一個全新的頭銜或職位,但多年來它的範圍肯定發生了變化。

“前端”本質上是指網絡瀏覽器。 我認為自己是一名前端開發人員,老實說,如果您稱我為 Web 瀏覽器開發人員,我也不會討厭。 但是,這可能不會流行起來(聽起來有點像您構建網絡瀏覽器)。 作為前端開發人員,您與 Web 瀏覽器密切合作並編寫在其中運行的代碼,特別是 HTML、CSS、JavaScript 和 Web 瀏覽器使用的少數其他語言(例如,媒體格式,如 SVG)。 或者,也許更常見的解釋是,代碼最終被處理成瀏覽器可以理解的語言。 那是您作為前端開發人員的領地!

瀏覽器不是單獨存在的,它們運行在各種各樣的設備上。 我們通過響應式設計的時代了解到這一點。 最重要的是:用戶在這些設備上使用這些瀏覽器。 沒有人比前端開發人員更接近用戶。 因此,前端開發人員為使用可在各種設備上運行的瀏覽器的人們編寫代碼。

圖片:7 隻手拿著不同的移動設備,例如手機、筆記本電腦和平板電腦。
圖片來自 Shuttershock

處理這個龐大的用戶、設備和瀏覽器環境本身就是一項工作! 我認為你不是每天都從哲學上思考你的職位,這很好; 我們只是在這里和你的祖父克里斯一起做一些反思。

如果您剛剛從編碼訓練營畢業,並且您的網站建設經驗有些狹窄且新鮮,那麼如果您將前端開發視為“React 東西”而將後端開發視為“Node”,那是可以原諒的東西”或“Python 東西”,這是當今最熱門的口味。 你也沒有錯。 React 一般用作前端框架(字面意思是在瀏覽器中運行的 JavaScript)。 Node 和 Python 是不真正在 Web 瀏覽器中運行的語言示例; 它們被構建為在網絡服務器(呃,計算機)上運行。

在這個領域停留一段時間,你會看到這些庫、語言、構建過程,甚至關於如何最好地構建網站的整個哲學都像緩慢的潮汐一樣來來去去。

你可能會看到一些老前輩不時揮舞著拳頭,大喊我們應該從過去的錯誤中吸取教訓。 你還可以看到一些特別喧鬧的年輕人揮舞著同樣高的拳頭,宣布過去是無關緊要的背景,不再是有用的話題。

一個孩子很傻,另一個看起來很生氣,正在揮舞著拳頭。
圖片來自 Shuttershock

可能他們都是對的。 只要沒有人討厭,這就是流程的一部分。

情況有變。 我發現今天的許多網​​站確實比過去的網站更複雜。 特別是大的。 社交網絡和媒體播放器。 旅遊預訂網站。 電子商務店面。 工程工具。 這些網站開始規模很大,而且只會越來越大。 他們是自己的經濟體,有龐大的團隊支持他們。 這種複雜性是網絡技術變革的一個原因,也是新舊學校之間摩擦的一個原因(如果我們可以這麼簡單地描述的話)。

許多從事技術工作的人本質上是為一個大網站工作。 因此,我們最常收到這些人的來信。 這些人構建工具。 他們寫博客文章,他們繼續播客,他們發表演講。 他們幫助改變技術本身,以滿足他們的需求。

一直以來,“前端”仍然只是瀏覽器。 瀏覽器語言、HTML、CSS 和 JavaScript 仍然是核心技術。 這些語言在進化,瀏覽器本身也在進化,但速度更慢。 他們所做的與硅谷最喜歡的口號完全相反:快速行動,打破陳規。 他們移動緩慢,很少破壞任何東西。

身為前端開發者,還是關心在那些設備上使用那些瀏覽器的用戶。 他們的經驗就是我們的工作。 希望工具可以幫助我們做到這一點。

那麼作為前端開發者你在什麼呢?

  • 您正在執行設計,使其在任何屏幕上看起來都不錯
  • 您正在將語義應用於內容
  • 您正在抽像地構建 UI,以便您可以有效地重複使用部件和样式
  • 您正在考慮在瀏覽器中呈現的內容的可訪問性
  • 您關心站點的性能,這意味著您要處理瀏覽器使用的資源大小和數量。

那些事情一直都是真的,而且永遠都是,因為它們基本上是瀏覽器級別的問題,而這就是前端。

發生變化的是瀏覽器能夠處理越來越多的工作。 總的來說,有各種各樣的原因,比如瀏覽器 API 變得更強大,圖書館變得更漂亮,計算機變得更好。 多年來,將工作從服務器卸載到瀏覽器變得越來越有意義(單頁應用程序!)。 儘管觀察鐘擺向後擺動(預渲染站點!)並找到中間地帶(JAMstack!)很有趣。

現在的前端開發可能還包括:

  • 構建整個網站,從最小的組件到整個頁面,直至 URL 級別
  • 從API中獲取自己的數據並根據需要操作數據以進行顯示
  • 自行處理網站狀態
  • 通過用戶交互和輸入來改變/改變數據,並將數據保存在狀態中並通過 API 返回服務器

這些都是現在在瀏覽器中就可以完成的事情,讓這位老開發者大開眼界。 當你認為它是你已經要做的所有事情的重中之重時,那真是一大堆責任。

幾個不同的人正在看一個大干草堆的圖像。
圖片來自 Shuttershock

雖然這些年干草堆的工作往往會增加,但我們作為前端開發人員的指路明燈並沒有發生太大變化。 我們的核心職責仍然是照顧在設備上使用網絡瀏覽器的用戶。 所以我們必須獲取一些數據。 太好了,我們這樣做是為了構建一個快速、語義化、可訪問的頁面來滿足我們用戶的需求。 所以我們需要建立一個設計系統。 太棒了,我們這樣做是為了為我們的用戶構建一個易於理解的界面,讓他們能夠不斷發展,而不會造成不一致的混亂。 所以我們要學習一些新的不熟悉的技術。 好吧,我們的工作是保持警惕並確保新事物最終會出現,以便為用戶改善我們的網站。

祝你好運!