พิจารณา
- พื้นหลังธุรกิจ
- การสนับสนุนจากชุมชน
- ส่วนขยายที่มีอยู่
- ชุดคุณสมบัติเริ่มต้น
- ความเรียบง่ายในการใช้งาน
- และความน่าเชื่อถือ
ทำไมคุณถึงชอบมากกว่ากัน
พิจารณา
ทำไมคุณถึงชอบมากกว่ากัน
คำตอบ:
ฉันจะพยายามเพิ่มข้อมูลของฉัน
ดังที่ฉันเข้าใจแล้ว Google ทำการปิดไม่ได้เป็นเพียงไลบรารี JS อื่น แต่เป็นชุดเครื่องมือที่จะช่วยให้คุณสามารถปรับรหัส JS ของคุณได้อย่างเหมาะสม การทำงานกับ jQuery ให้เครื่องมือที่ดีและไลบรารี่ที่มีน้ำหนักเบา แต่ก็ไม่ได้ทำให้โค้ดของคุณเล็กลง ปิดคอมไพเลอร์ประสงค์ สารวัตรปิดนอกจากนี้ยังอาจจะมีประโยชน์เช่นรหัสบางครั้ง minified มีพฤติกรรมที่แตกต่างกว่าเดิมและเป็นความเจ็บปวดที่จะแก้ปัญหา มันทำงานร่วมกับFirebugและสนับสนุนการทดสอบหน่วยซึ่งเป็นเพื่อนที่ดีที่สุดของนักพัฒนาในปัจจุบัน
ฉันเดาว่าไลบรารีใหม่ VS ที่สร้างมาอย่างดีนั้นจะขาดความพร้อมของส่วนขยายและการสอนที่ jQuery มีอยู่มากมาย อย่างไรก็ตามการถูกผลักดันโดย Google ควรตรวจสอบให้แน่ใจว่าการสนับสนุนและความน่าเชื่อถือนั้นดีทั้งคู่ เอกสารและบทแนะนำปัจจุบันทั้งสองก็ดูดีมากเช่นกัน
ถึงแม้ว่าคุณสมบัติของการปิดจะดูดีและสถาปัตยกรรมแบบแยกส่วนก็มีแนวโน้มเช่นกัน ฉันเดาว่า Google ใช้งานภายในเป็นเวลานานซึ่งหมายความว่าคุณสามารถคาดหวังว่าจะสามารถใช้งานคุณสมบัติพื้นฐานทั้งหมด (และอื่น ๆ ) และอาจเป็นวิธีที่ปรับให้เหมาะสมและปรับขนาดได้ พวกเขาพยายามนำเสนอเป็น STL ของ JavaScript ดังนั้นควรขัดมัน
หลังจากดูที่ฟีเจอร์อย่างละเอียดยิ่งขึ้นดูเหมือนว่านี่อาจเป็นขั้นตอนต่อไปสำหรับการพัฒนาเว็บแอปพลิเคชันเมื่อเทียบกับไลบรารีที่มีอยู่ในรูปแบบ jQuery มันเดาว่าเป็นประโยชน์ต่อการพัฒนาภายในของ Google แต่สิ่งต่าง ๆ เช่นการตรวจจับสถานะออนไลน์ (ดูgoog.eventsOnlineHandler ) การรวมคำขอ AJAX และการกระทำ JS ในประวัติเบราว์เซอร์ได้ง่าย (ดูgoog.History ) หรือเครื่องมือมากมาย พวกเขาให้ (ดูแพ็คเกจ goog.ui ) อาจช่วยเราทุกคนในการสร้าง webapps ที่ยอดเยี่ยมยิ่งขึ้น;)!
มันมาพร้อมกับคุณสมบัติแม่แบบที่ทำงานร่วมกับ Java (ใครบอกว่าGWT ?) ดังนั้นนี่อาจเป็นอีกข้อดีหนึ่งของการปิด
ในที่สุดมันก็ดูใช้งานง่าย ไวยากรณ์อาจเป็น verbose มากกว่าฟังก์ชั่นการ $ jQuery สั้น ๆ แต่ด้วย IDE และการทำให้สมบูรณ์อัตโนมัติมันไม่ใช่ปัญหาจริง ยิ่งกว่านั้นฉันบอกว่าเราสามารถคาดหวังว่าการรวมที่ดีใน IDEs เช่น Eclipse มาจาก Google
แก้ไข: ตามที่ขอฉันขอพูดสองสามคำเกี่ยวกับการอ้างอิง GWT Google Web Toolkit เป็นห้องสมุด Java ที่อนุญาตให้สร้างส่วนต่อประสานกับเว็บที่เปิดใช้งาน AJAX และสร้างรหัส JavaScript ที่จำเป็น (และปรับให้เหมาะสม) เนื่องจาก Google Closure อนุญาตให้สร้างเทมเพลตที่สามารถใช้ได้ทั้งฝั่งไคลเอ็นต์และฝั่งเซิร์ฟเวอร์ (โดยใช้ JavaScript และ Java) ฉันเดาว่ามันจะเป็นไปได้ที่จะใช้พวกเขาร่วมกันได้ในไม่ช้า (ถ้าไม่ใช่กรณีนี้)
ในช่วงสั้น ๆ ของฉันที่ API ฉันพบความแตกต่างระหว่าง jQuery และการปิดจะโดดเด่น
jQuery นั้นเป็นเพียงวิธีที่ง่ายขึ้นในการดำเนินการหลายอย่างเป็นประจำในแบบข้ามเบราว์เซอร์
การปิดเป็นกรอบงานที่ใหม่มากซึ่งเป็นวิธีการข้ามเบราว์เซอร์ในการใช้<canvas>
แท็กตัวอย่างเช่นและพวกเขาได้เพิ่มกิจกรรมใหม่
ดังนั้นนี่คือการเพิ่มลงในสิ่งที่เรามักจะทำกับจาวาสคริปต์พวกเขากำลังดำเนินการหลายอย่างที่ผู้คนต้องการทำและวางลงใน API
ตัวอย่างเช่นพวกเขามีเหตุการณ์ที่จะบอกว่าสถานะออนไลน์มีการเปลี่ยนแปลง ดังนั้นคุณสามารถบอกได้ว่าระบบออนไลน์
พวกเขามีฟังก์ชั่นจาวาสคริปต์ที่ใช้เครื่องมือเช่น Google Gears ซึ่งต่อเนื่องกับข้อเท็จจริงที่ว่าพวกเขาได้ขยายสิ่งที่สามารถทำได้ด้วย Javascript
ฉันใช้เวลาสองสามวันในการย่อยการเปลี่ยนแปลงทั้งหมด แต่ฉันเห็นได้ว่านี่อาจส่งผลกระทบอย่างใหญ่หลวงต่อเว็บแอปพลิเคชันที่สามารถพัฒนาได้
ข้อได้เปรียบที่ใหญ่ที่สุดของห้องสมุดปิดคือที่ออกแบบมาสำหรับการปิดคอมไพเลอร์ นี่เป็นการเปิดโอกาสใหม่สำหรับการพัฒนา JavaScript ...
คอมไพเลอร์มีคุณสมบัติเจ๋ง ๆ มากมาย:
สำหรับรายละเอียดดูได้ที่: http://blog.klokantech.com/2010/12/closure-compiler-for-openlayers-3x.html
แก้ไข : ดูวิดีโอ youtube นี้ซึ่งอาจตอบคำถามบางอย่างเกี่ยวกับ Google Closure ได้ดียิ่งขึ้น
น่าจะเป็นแหล่งข้อมูลที่ดีที่สุดในการปิด google คือกลุ่มสนทนาโครงการ, หน้า wiki, เอกสาร doc, การสาธิตและหนังสือที่ยังไม่เสร็จโดย Michael Bolinซึ่งขณะนี้มีให้บริการจากไซต์หนังสือซาฟารี
สิ่งหนึ่งที่ฉันสามารถบอกได้ทันที - มีเส้นโค้งการเรียนรู้ที่ชันกว่าสำหรับclosure
VS jQuery
แต่มันอาจจะคุ้มค่ามากเพราะห้องสมุดมีความกว้างใหญ่การจัดระเบียบที่ชัดเจนและประโยชน์ของการใช้มันพร้อมกับคอมไพเลอร์และเครื่องมือสร้างเทมเปิ
closure
ห้องสมุดในแง่นั้นเป็นอะไรที่dojo
มากกว่าjQuery
และแนวคิดบางอย่างถูกยืมมาจากdojo
Michael Bolin
คอมไพเลอร์ปิดของ Google ใช้JSDoc
ระบบเอกสารซึ่งพร้อมกัน (หากสร้างโดยโปรแกรมเมอร์อย่างถูกต้อง) ให้เอกสารและช่วยให้จับข้อผิดพลาดมากมายในเวลารวบรวม
ในขณะที่ชื่อฟังก์ชั่นนั้นละเอียดกว่าjQuery
คอมไพเลอร์จะย่อขนาดโค้ด (โดยใช้กลยุทธ์การเพิ่มประสิทธิภาพที่หลากหลาย) และการตรวจสอบประเภทจะช่วยประหยัดเวลาในการดีบักรหัสเป็นจำนวนมากดังนั้นการพิมพ์เวลาในชื่อที่ยาวขึ้นอาจไม่เป็นปัญหา ในเวลาเดียวกันชื่ออีกต่อไปเพิ่มความสามารถในการอ่าน
ไลบรารีรองรับเบราว์เซอร์ที่ทำงานในโหมด quirks เพื่อให้สคริปต์สามารถฝังโดยเว็บไซต์อื่น ๆ โดยใช้ "quirky" html
library ทำงานร่วมกับ (แต่ไม่ได้ขึ้นอยู่กับ) ระบบการสร้างเทมเพลต javascript soy
ที่ช่วยให้การกรอกเอกสารด้วยเนื้อหาง่ายขึ้น
like jQuery
google closure
อนุญาตให้ใช้โครงสร้างการสำรวจภายในด้วยข้อความค้นหาแบบสตริงโดยใช้ส่วนประกอบเฉพาะของห้องสมุด
closure
ไลบรารี่ขึ้นอยู่กับเนมสเปซที่มีการคั่นด้วยจุดมากกว่าJava
ซึ่งเป็นคุณลักษณะที่แข็งแกร่งขององค์กร
การใช้เนมสเปซดังกล่าวจะมีค่าใช้จ่ายในโค้ดที่ไม่ได้คอมไพล์ แต่ในโค้ดที่คอมไพล์แล้วสิ่งเหล่านั้นจะถูกแทนที่ด้วยชื่อตัวแปรแบบสั้น
like jQuery google closure allows traversing dom structure with the string-based queries using a dedicated component of the library.
คุณช่วยลิงค์ฉันไปที่เอกสารที่เกี่ยวข้องได้ไหม
goog.dom.DomHelper
แต่ฉันเองไม่เห็นฟังก์ชันการสืบค้นเทียบเท่ากับ jQuery @Evgeny: คุณให้รายละเอียดเพิ่มเติมกับเราได้ไหม
บางทีฉันอาจไม่ได้รับ jQuery แต่ฉันไม่เห็นคอลเล็กชันวิดเจ็ต UI จริงที่นั่น (มีปลั๊กอินใช่ แต่คุณไม่เคยรู้เลยว่ามันผ่านการทดสอบอย่างดีและบ่อยครั้งที่ไม่มีผู้ชนะที่ชัดเจนและ / หรือปลั๊กอินขาด เอกสาร)
การปิดมีชุดเครื่องมือ (ดูที่แท็บการสาธิต) รวมถึงปุ่มปิดที่ใช้งานไม่ได้ใน gmail
โดยทั่วไปแล้วมันมีฟังก์ชั่นการใช้งานมากขึ้นซึ่งเป็นส่วนหนึ่งของการเปิดตัว มันอาจจะไม่ใช่เรื่องใหญ่ แต่ฉันก็รู้สึกรำคาญกับปลั๊กอินของ jQuery เมื่อฉันกำลังมองหาบางอย่างที่ง่ายเหมือนโมดูลประวัติ ajax หรือเติมข้อความอัตโนมัติ
โดยรวมแล้วมันเป็นห้องสมุดขนาดใหญ่ + ชุดเครื่องมือและฉันจะทำความคุ้นเคยกับมันเพื่อรู้ว่ามีอะไรให้บ้าง
ฉันซาบซึ้งกับการมีส่วนร่วมของ Google ในชุมชนโอเพ่นซอร์สและฉันแน่ใจว่ามันมีอะไรเจ๋ง ๆ หากคุณต้องเปลี่ยนทุกอย่างให้เป็น Java ฉันคิดว่ามันช่างสุดยอดจริงๆ
แก้ไข:
ยุติธรรมพอสมควร ฉันไม่ได้เปรียบเทียบจริงๆ การปิดเป็นเหมือนโกดังขนาดใหญ่ที่มีเครื่องมือที่เป็นไปได้ทุกอย่างที่คุณต้องการตั้งอยู่ที่ไหนสักแห่ง เรียงจากชอบ. NET หรือห้องสมุด Java ขนาดใหญ่ เมื่อคุณพบสิ่งที่คุณต้องการคุณสามารถค้นหาสิ่งที่มีความเฉพาะเจาะจงสูงซึ่งทำงานเฉพาะอย่างสูง และสำหรับการผลิตคุณสามารถลบ cruft ทั้งหมดได้
ในทางตรงกันข้าม JQuery เป็นไขควงโซนิคที่ดัดแปลงได้ง่ายกว่า
Google Closure Library ช่วยให้คุณสามารถรวบรวมและเพิ่มประสิทธิภาพ JavaScript ของคุณ ไม่ใช่ห้องสมุดอย่าง jQuery jQuery เป็นสิ่งที่ให้ฟังก์ชั่นที่ช่วยให้คุณสามารถเขียนจาวาสคริปต์ของคุณได้เร็วขึ้น
Google Closure จะช่วยให้คุณสร้างรหัสจาวาสคริปต์ของคุณเองให้น้อยที่สุดเพื่อให้สามารถส่งได้เร็วขึ้นทางอินเทอร์เน็ต
เรื่องย่อสั้น ๆ Google Closure เป็นเครื่องมือในขณะที่ jQuery เป็นห้องสมุดที่คล้ายกับ Prototype