首頁 >web前端 >js教程 >使用 jQuery 是愚蠢的嗎?

使用 jQuery 是愚蠢的嗎?

PHPz
PHPz原創
2023-09-04 12:45:12778瀏覽

使用 jQuery 是愚蠢的吗?

我們應該把這件事公開。人們似乎普遍認為 jQuery 使用者是無知的,而且往往是設計者。這是從哪裡來的,是真的嗎?


#根

當時的 Ja​​vaScript 社群並不像現在這樣充滿活力和熱情。

讓我們回顧一下記憶;我們將把時鐘倒回幾年——jQuery 之前的日子。當時的 Ja​​vaScript 世界是一個非常不同的場景。那個社區遠沒有今天那麼充滿活力和熱情。當然,當時有一些函式庫,例如 Prototype;但他們從未像 jQuery 那樣迅速吸引普通用戶的注意。當時,JavaScript 是一種廣受憎恨的語言。有時,我們很容易忘記,有時開發人員會拒絕花必要的時間…你知道…學習 JavaScript!相反,他們只是簡單地複製並貼上他們的方式,希望避免在褲子上留下令人討厭的 JavaScript 污點。

DOM

你的意思是,「我討厭 DOM API。」

這些複製貼上成癮者(我就是其中之一)沒有意識到,當你說“我討厭JavaScript”時,你真正的意思是(無論你是否意識到):“我討厭DOM API。”沒有人會因為這種感覺而受到責備。尤其是在那些日子裡,當 IE5 支援生效時,事情可能會變得有點糟糕。 DOM 的瀏覽器實作是罪魁禍首;不是 JavaScript 語言。這是因為實際上沒有任何 DOM 規範。結果,瀏覽器盡其所能地發揮了它的作用!我們有innerHTML 不是因為規範,而是因為Internet Explorer 團隊決定將其放入其中(此時其他瀏覽器供應商對其進行了逆向工程,並將其實現到自己的瀏覽器中)。但 JavaScript 語言作為一個整體是可靠的。

事實上,包括我自己在內的許多人都會說,作為一種語言,JavaScript 確實非常美麗。

jQuery

大約在那個時候,jQuery 進入了人們的視野,並開始席捲開發社群。雖然像Prototype 這樣的其他函式庫對於新手來說仍然保留了一定程度的複雜性和混亂,但jQuery 卻非常容易掌握,因為所有東西都可以透過jQuery 物件存取(諷刺的是,它經常被批評) 。

需要申請課程嗎?簡單的;這樣做是為設計師量身訂做的。 jQuery 允許您使用已知的 CSS 選擇器來查詢 DOM。

$('#container').addClass('ahh-yeah');

有趣的事實:從技術上講,儘管 jQuery 普及了 CSS 選擇器引擎的想法,但它很大程度上是基於 Dean Edwards 的工作。

然後,在某個時刻,時間線偏離了這個替代現實...

這確實簡單得不能再簡單了。透過抽像出複雜的程式碼和瀏覽器怪癖,開發人員可以繼續做重要的事情:建立網站和應用程式。

雖然 jQuery 的社群突飛猛進,但函式庫本身也在不斷成熟和成形。世界是桃色的。

然後,在某個時刻,時間軸傾斜到了這個替代現實(好吧,不像布朗博士那樣),突然間,如果你將自己標記為自豪的jQuery 用戶,JavaScript 社區的某些成員就會因此覺得有必要將您刻板印象為一個無知的「設計師」(無論您是否是)——當然不是「JavaScript 開發人員」。這怎麼發生的? JavaScript 開發人員不使用 jQuery?


人氣的負擔

每個人對聚光燈都有自己的看法。

很自然,一旦你達到一定的知名度(找不到更好的語言),你就會接受大量的審查。似乎每個人對聚光燈都有自己的看法。例如,您無疑聽過對天主教的無休止的批評。 「他們崇拜雕像。」這是唯一歷史可疑的宗教團體嗎?當然不是;但它是最大的。美國是世界上最強大的國家之一。自然,每個人都有自己的看法。 「美國人又無知又肥胖。」忽略好的,關注壞的。

jQuery 以壓倒性優勢成為最受歡迎的 JavaScript 函式庫。再說一遍,每個人都有意見。我讀過無數的批評——從它不做什麼,到程式碼庫的結構。然而,對 jQuery 最大的批評也許來自一個簡單的事實:與 Mootools 等軟體相比,其使用者平均而言對普通 JavaScript 的使用經驗較少。雖然有些人認為這是一個缺點,但老實說,我認為這是一個優點——以一種奇怪的方式。

jQuery 有許多經驗不足的使用者這一事實並不是它的失敗;而是它的失敗之處。這證明了它的吸引力。


jQuery 使用者不了解 JavaScript!

這是您聽到最多的爭論。再次證明 jQuery,許多人在學習普通 JavaScript 之前學習 jQuery。關於這是否是一件好事,已經有無數的爭論。事實上,這類討論延伸到所有抽象。

  • 在了解 CSS 的細節之前,設計人員是否應該分別使用 CSS 預處理器和框架,例如 Sass 和 Compass?
  • Ruby 開發人員可以在不先學習 JavaScript 的情況下使用 CoffeeScript 嗎?
  • 在學習如何編寫單一功能測試之前,您應該使用 Modernizr 嗎?
  • 如果您剛學習 PHP,可以使用 CodeIgniter 嗎?

就我個人而言,我覺得那些要求新手在轉向 jQuery 之前先學習 JavaScript 的人錯過了一件事:JavaScript 和 DOM 太可怕了!如果你把 ES5 規範丟給他們,他們會心臟病發作,除非他們真正有興趣成為 JavaScript 開發人員。許多人只需要在他們的網站上添加一些效果。我們不可能總是掌握一切。他們是選擇優先事項的壞人嗎?當然不是。

JavaScript 和 DOM 太可怕了!

將其與簡單的數學進行比較。當你第一次學習如何添加 2 2 時,你是按照官方的方式做的嗎?我當然沒有;我用我的手指。我敢打賭你也這麼做過。雖然這是問題的巨大簡化,但 jQuery 不也是這樣嗎?它為 JavaScript 新用戶提供了一個簡單且令人興奮的入口點。你真的希望他們在學習如何做一些有趣的事情之前先了解閉包、物件和全域變數嗎?來吧,來吧,現在。

嚴格的「以正確的方式學習,否則你就是個傻瓜」的觀點是天真的,並且沒有考慮到我們所有人都有的各種學習方式。

我將 jQuery 視為誘餌。將其舉過用戶的頭頂,讓​​他們感到非常興奮,然後,當他們覺得準備好了時,他們幾乎總是會繼續學習更多的普通 JavaScript。

jQuery 使用者編寫糟糕的程式碼

這又是一個大規模的概括。世界上一些最大和最有影響力的公司都使用 jQuery。但是,是的,有很多初學者仍在學習過程中。那好吧;它發生了。每種語言都存在糟糕的程式碼。我自己寫了很多內容,我很自豪地說!我們能做的最好的事情就是,盡可能地提供建議和提示,而不是公開蔑視他們。我們都在學習。我們真的需要攻擊某些人嗎,因為他們有不同的優先事項和技能?

隨著受歡迎,可能會出現糟糕的建議。

jQuery 成功地創造了這個令人難以置信的熱情社群 - 從鐵桿 JavaScript 開發人員到對完成工作如此輕鬆感到驚訝的設計師。這種熱情隨後導致社群成員編寫了無數的 jQuery 教學——無論好壞。雖然仍在學習 jQuery(我仍在做的事情),但我可以保證我在某個時刻提供了一些糟糕的建議。它與 PHP 社群並沒有太大不同。隨著受歡迎,可能會出現糟糕的建議。


Ruby 社群

這種毫無意義的教導幾乎傷害了社區。 ​​p>

在 Ruby 社群中,有一個有趣的動態。總的來說,教程是由退伍軍人編寫的。換句話說,如果您要撰寫 Ruby on Rails 文章或書籍,那麼您應該充分考慮到嚴格的審查。如果你沒有豐富的經驗,你就不敢寫。從某些方面來說,這是一種優勢。作為一名學生,您可以更輕鬆地確信您所學的內容是正確的。另一方面,PHP 教程到處都是。作家有時會專注於無關緊要的事情,而忽略重要的事情。您經常會找到 PHP 教程的最佳實踐,其中描述了使用單引號還是雙引號是否更快。當然,這種毫無意義的教導幾乎傷害了社區。 ​​p>

你喜歡什麼?

我必須說,這是一件有趣的事。你喜歡哪一個?是一個較小的、充滿熱情的基礎,還是一個非常受歡迎的、包含所有技能水平的基礎?當然各有利弊。

不可否認,我們中的許多人都覺得有必要成為開拓者。還記得父母什麼時候開始註冊 Facebook 的嗎?批評者普遍宣稱 Facebook 的末日已近。一旦你為了廣泛的吸引力而犧牲了排他性,人們就會本能地開始尋找下一個事物。但那並沒有發生。對於 jQuery 也是如此。當然,一些用戶已經轉向更全面的框架,例如 Dojo。但這是可以預料到的,並且應該成為 jQuery 的榮譽徽章。對許多人來說,學習週期是這樣的:

  • 學習 jQuery;興奮起來。
  • 意識到您不知道 this 在不同情況下指的是什麼。學習 JavaScript,並逐步改進舊的 jQuery 程式碼。
  • (可選)將您的技能提升到需要更全面的框架來建立大型應用程式的程度。開始查看其他工具,例如 Dojo。

有那麼糟嗎?


實際截止日期

夥計們,我們並不是用二進位編碼。

總是會有人建議你不要使用圖書館 - 就這樣。不過,考慮到 JavaScript 和 DOM 的當前狀態,我真誠地認為這是一個糟糕的建議——尤其是對於新手來說。不應該期望他們在學習過程的早期就與令人沮喪的瀏覽器不一致問題作鬥爭。而且,很多時候,抽像是一件非常好的事情!夥計們,這不像我們在這裡用二進制編碼。當您使用 jQuery 或任何其他流行的程式庫時,您將受益於無數的測試、錯誤修復和業內最優秀的人才。

現在,當然,您不需要使用其他人的框架。如果你有能力的話,創建自己的圖書館;這也有效!目標是:

  • 規範瀏覽器怪癖
  • 少寫程式碼
  • 從盡可能多的人的思想中受益
  • 滿足真正的截止日期並完成工作

jQuery 不是“設計師的庫”,但它對設計師很有吸引力。它不像其他庫那樣基於類,但這使得新手的入門更加輕鬆。所以我們最終得到的是一個幫助重新點燃 JavaScript 社群的函式庫。它足夠簡單,足以吸引新手,而且功能強大,足以被世界上最大的公司使用。到底為什麼又被批評呢?

以上是使用 jQuery 是愚蠢的嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn