2009-12-24 48 views
1

我注意到大部分與客戶端腳本有關的問題都與jQuery相關,並讓我思考。我想知道這些庫對JavaScript和DOM的實際知識所做的輕鬆操作。jQuery及其同伴是否幫助或傷害JavaScript知識?

爲你做了很多事情,我擔心的是越來越多的Web開發人員對JavaScript的瞭解甚少,除了如何包含jQuery庫並使用他們下載的插件。這是軟件開發的「快餐」方法,並且僅僅基於軼事證據,我認爲很多網絡「開發人員」在涉及到客戶端腳本時會陷入黑暗,因爲他們突然無法使用jQuery庫。

我的問題:這些庫是幫助還是傷害客戶端腳本的真正知識?

+1

這可能應該是社區Wiki。 – Annabelle 2009-12-24 19:53:50

+0

意思是當我創建它時檢查該框。現在完成。 – Chuck 2009-12-24 20:39:35

回答

12

在我看來,jQuery是作爲.NET框架的Win32 API,或GTK +是X11編程。它是「原始」API之上的另一層。它使得事情變得容易得多,並且以抽象較低級別細節的「成本」爲代價。通常這是好的,但有時這些細節很重要。它有時可以幫助我們熟悉底層的API(我認爲在jQuery/DOM的情況下比在.NET/Win32中更重要),但是如果有人在編寫純文本之前必須敲擊一個或兩個參考站點,我不會擔心。 DOM解決方案。

識別「JavaScript」和「DOM」之間的區別也很重要。 DOM不是JavaScript語言的一部分;它僅僅是主要瀏覽器中的JavaScript引擎暴露的API。因此,儘管使用jQuery可能會阻礙人們對DOM的瞭解,但這並不會影響他們對JavaScript語言本身的瞭解。

3

jQuery傷害了我對DOM的知識:我忘記了這個**** DOM作爲噩夢。

jQuery永遠不會傷害我的JavaScript知識。克羅克福德的文本後,你不能忘記JavaScript

+1

我同意我即使堅持使用jQuery也不會忘記JavaScript--但那是因爲我先學習了JavaScript,然後學習了JavaScript。我擔心的是那些沒有完全理解語言就直接跳入jQuery的人。 – philfreo 2009-12-24 20:05:26

+0

在某些時候,您仍然需要至少了解一些使用jQuery的JavaScript。 – 2009-12-24 20:12:26

+1

jquery不會替換所有的javascript,只有dom。我仍然有原型的空間,匿名遞歸等。 – 2009-12-24 20:15:24

6

這是編程中的常見問題。

一般而言,圖書館和高水平的抽象使曾經困難的事情變得簡單得多。這往往會讓理解低級內部構件的人數變得更小,同時也提高了整個行業的整體生產力。

+0

我同意爲什麼當別人已經做到了時,發明輪子,我寧願爲我的客戶提供價值 – 2009-12-24 19:53:58

0

爲什麼你關心「真實」的知識?最終的結果是重要的。

如果一個開發人員可以通過一個非常好的界面和佈局製作一個真正快速加載的網站,那麼他或她是一個成功的開發人員。他如何做到這一點是無關緊要的。

+0

問題是泄漏的抽象,雖然... http:///www.joelonsoftware.com/articles/LeakyAbstractions.html – Skilldrick 2009-12-24 19:59:05

+0

我不同意。不知道你爲什麼或如何做的工作並不一定會讓你成爲一名成功的開發人員,它可能會讓你成爲一名幸運的黑客。你相信一個技工搖晃了幾根電線,並聲稱你的車是因爲它開始而被固定的嗎? – Chuck 2009-12-24 20:43:18

+0

查克,你正在變得極端。抽象是Software中的遊戲名稱。它導致高生產率並專注於手頭的問題。請記住,如果抽象被創造出來,它只意味着有一部分兄弟會致力於這個事業,因此它不像你所描繪的那樣不穩定。如果我按照你的理念(極端),我們也應該編寫一個Web應用程序的操作系統。至於jQuery,我見過這些人一直致力於優化性能並關注功能請求。 – Kabeer 2009-12-24 22:14:48

1

我是從孩子學習Javascript開始的 - HTML + Javascript是部署最簡單的事情,而無需真正瞭解計算機如何工作。從那以後,我覺得我對JavaScript的瞭解比以往任何時候都要多。

但是,現在有很少的項目爲我使用沒有jQuery的Javascript。事實上,在我瞭解jQuery之前,我創建了自己的庫。他們不是很好,但他們工作,並節省了我大量的時間和重複的代碼。

我想我的觀點是,JavaScript的專業人員會爲自己創造出偉大的圖書館,無論有多少n00bs最終抓住了他們。即使我們正在傷害初學者對JavaScript的知識(我甚至沒有這樣斷言),但jQuery仍然是一件好事。它對初學者的影響是我們爲初學者提供的學習過程的問題,而不是工具本身。

1

我認爲jQuery和它的同伴可能會大大提高Javascript的一般知識。當我發現jQuery時,我從不喜歡Javascript並儘可能少地使用它,認爲它是一種美妙而美麗的語言。事實上,它現在可能是我最喜歡編程的語言,並且通過閱讀jQuery庫的源代碼,我學到了很多東西。我無法相信我的經歷在任何方面都不尋常。