มันสมเหตุสมผลหรือไม่ที่จะใช้ jQuery ในเว็บแอปพลิเคชันสมัยใหม่ -kitkit เท่านั้น?


9

ฉันกำลังทำงานกับเว็บแอปมือถือสองสามเครื่องสำหรับ Android (2.3+) และ iOS (4+) เบราว์เซอร์ของพวกเขารองรับ ECMAScript5 ส่วนใหญ่ซึ่งมีประสิทธิภาพมากและฉันต้องการใช้คุณสมบัติภาษาที่เป็นไปได้หันไปใช้ jQuery เฉพาะเมื่อฉันต้อง

กลับกลายเป็นสิ่งเดียวที่ฉันใช้ jQuery document.querySelectorAllสำหรับคือการมีทางเลือกที่สั้นลง อาจกำจัดได้เช่นกัน

หากฉันต้องสนับสนุนเบราว์เซอร์ WebKit ที่ทันสมัยเท่านั้นเป็นความคิดที่ดีที่จะกำจัด jQuery (และไลบรารี่วัตถุประสงค์ทั่วไปอื่น ๆ ) หรือไม่ พวกเขาเป็นชั้นของการอ้อมหลังจากทั้งหมด

(แอพไม่ต้องโทร AJAX จนถึงตอนนี้ฉันคิดว่านั่นเป็นสิ่งหนึ่งที่น่าเกลียด แต่มันก็คุ้มค่าที่จะรักษา jQuery ไว้เพื่อสิ่งนั้น?)


1
ที่เกี่ยวข้อง: gist.github.com/1455456 ;) สำหรับ XHR ฉันขอแนะนำตัวช่วยนี้ มันไม่ตอบคุณ แต่คุณได้คะแนนของฉัน
Florian Margaine

คำตอบ:


8

ไม่มันไม่เข้าท่า

jQuery เป็นห้องสมุดที่ป่อง ทุกคนรู้ว่า และทุกคนใช้มันเพราะเป็นหนึ่งในห้องสมุดข้ามเบราว์เซอร์ที่หายากที่เพิ่งใช้งานได้ (โปรดทราบว่าฉันไม่ได้พูดถึงกรอบงาน )

หากคุณไม่ต้องการการสนับสนุนเบราว์เซอร์รุ่นเก่าคุณไม่จำเป็นต้องใช้ jQuery

ความต้องการเล็กน้อยเช่นทางลัด QSA หรือตัวช่วย XHR นั้นบาง พวกมันถูกเพิ่มเข้ามาอย่างง่ายดายผ่านวัตถุเช่น นั้น

จากนั้นถ้าคุณชอบ API ของมันไปเลย แต่มันไม่จำเป็น

ฉันเข้าใจว่าบางคนชอบ:

$( '.table' ).addClass( 'active' );

หากต้องการ (ใช้โดย ):

[].forEach.call( By.qsa( '.table' ), function( table ) {
    table.classList.add( 'active' );
} );

ฉันค้นหาวิธีที่สองที่ชัดเจนกว่านี้อื่น ๆ จะไม่เห็นด้วย มันเป็นเรื่องของการตั้งค่า

นอกจากนี้หากรหัสของคุณมีโอกาสที่จะถูกย้ายไปยังเบราว์เซอร์เดิมในภายหลัง (หรือเบราว์เซอร์มือถือที่ไม่ใช่ webkit / sucky) ให้ใช้ jQuery มันจะลดอาการปวดหัวของคุณในภายหลัง

ที่เกี่ยวข้อง: https://softwareengineering.stackexchange.com/a/148536/42132


3
ถ้าคุณทำสิ่งนี้ 25 ครั้ง (ไม่ใช่ addClass x25 แต่มีอีกหลายกรณีที่คล้ายกัน) มันอ่านยากขึ้นเพราะมีโค้ดให้อ่านอีกมาก
Esailija

ฉันอ่านมันไม่ยากฉันพบว่ามันชัดเจนมากขึ้น เรื่องของการตั้งค่า
Florian Margaine

3
ฉันรู้สึกว่ามีเหตุผลอื่นอีกมากมายที่จะใช้ jQuery นอกเหนือจากการรองรับเบราว์เซอร์รุ่นเก่าเท่านั้น ฉันไม่เห็นด้วยกับความคิดเห็นของคำตอบนี้ซึ่งดูเหมือนว่าเป็นอัตนัยอย่างยิ่ง
Michael Durrant

@MichaelDurrant ใช่การใช้ jQuery ของ API นั้นเป็นเรื่องส่วนตัวมากและขึ้นอยู่กับความชอบ นี่คือสิ่งที่ฉันพูดในคำตอบนี้
Florian Margaine

"ทุกคนรู้ว่า" - อืมดูเหมือนว่าจะเป็นการลดทอนข้อโต้แย้ง jQuery มีคุณค่ามากมาย: decadecity.net/talks/what-has-jquery-ever-done-for-us
elias

8

ฉันคิดว่ามันคุ้มค่าที่จะใช้ jQuery ทำให้โค้ดของคุณมีขนาดเล็กและอ่านได้มากขึ้นส่งผลให้เกิดการพัฒนาที่รวดเร็วขึ้นและบำรุงรักษาน้อยลง (โดยคำนึงถึงประสบการณ์การใช้งานของคุณด้วย)

หาก jQuery หนักเกินไปสำหรับคุณคุณควรทดลองใช้Zeptoซึ่งเป็นทางเลือกที่มีน้ำหนักเบาสำหรับ jQuery (พร้อม api ที่คล้ายกัน)


0

ฉันจะบอกว่าเมื่อคุณไม่รู้จะทำอย่างไรให้ใช้ jQuery

jQuery มีมูลค่ามากมายจัดการกับกรณีขอบและหลีกเลี่ยงอาการปวดหัวสำหรับคุณ: https://decadecity.net/talks/what-has-jquery-ever-done-for-us

การใช้ jQuery กำลังยืนอยู่บนไหล่ของยักษ์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.