ฉันควรลงทุนเวลาเรียนรู้ Coffeescript หรือไม่ [ปิด]


11

ฉันเป็นนักแปลอิสระและฉันได้รับขนมปังและเนยโดยช่วยคนอื่นให้เขียนโค้ดจาวาสคริปต์ได้ดีขึ้น ฉันมีประสบการณ์ที่ดีกับเฟรมเวิร์ค JavaScript ส่วนใหญ่

ฉันสงสัยว่าถ้าฉันใช้เวลาในการเรียนรู้กาแฟ ใครควรเรียนรู้และไม่ต้องการใคร


นี่เป็นคำถามที่ค่อนข้างคลุมเครือ ใครควรเรียนรู้ ใครก็ตามที่ต้องการ มันเป็นเพียงเรื่องของการตั้งค่ามันจบลงด้วยการแปลเป็น JS ต่อไป


พูดอย่างมืออาชีพเริ่มเรียนรู้สิ่งต่าง ๆ เมื่อคุณเห็นว่าต้องการโฆษณาที่เหมาะสมกับคุณมากพอเว้นแต่ว่าคุณไม่ชอบสิ่งที่มากพอและคุณมีทางเลือกแน่นอน
Erik Reppen

คำตอบ:


8

ประการแรกกาแฟเป็นเรื่องยากที่จะเรียนรู้ ฉันสามารถใช้งานได้อย่างสบายใจในเวลาเพียงไม่กี่วันและ Javascript ของฉันค่อนข้างชำนาญ - ฉันแน่ใจว่าถ้าคุณมีความสามารถด้าน Javascript มันจะเร็วกว่าที่คุณจะรับ

สำหรับว่ามันคุ้มค่ากับการเรียนรู้ฉันคิดว่านั่นเป็นคำถามที่มีเพียงคุณเท่านั้นที่สามารถตอบได้ ฉันสงสัยว่ามันจะมีประโยชน์สำหรับคุณเหมือนที่ฉัน - จาก Ruby ฉันพบว่าไวยากรณ์ของ Javascript ยุ่งเหยิงอย่างไม่น่าเชื่อและฉันจะแนะนำข้อผิดพลาดอย่างต่อเนื่องโดยวางเครื่องหมายอัฒภาคที่นี่หรือวงเล็บที่นั่น Coffeescript ทำให้ฉันเขียนโค้ดที่ทำงานได้ง่ายขึ้นมาก หากคุณคุ้นเคยกับการเขียน Javascript อยู่แล้วฉันสามารถดูว่าคุณจะยุ่งยากอย่างไร

คำแนะนำของฉันคือการตรวจสอบเอกสาร CoffeeScriptอย่างรวดเร็วและพยายามตัดสินใจว่าคุณต้องการให้โค้ดของคุณดูเป็นแบบนี้หรือวิธีที่มีโค้ดตัวอย่างอยู่และคุณมีคำตอบ เพียงแค่ไม่ต้องกลัวกับโค้งการเรียนรู้ - มันไม่ชันเลย


ใช่ แต่จะมีประโยชน์เมื่อฉันต้องเขียนรหัสโดยใช้ YUI หรือ JQuery
พระตะวันออก

มีประโยชน์มาก YUI เป็นขยะ
Rein Henrichs

@ Akshar Prabhu Desai CoffeeScript ตั้งใจที่จะไม่ทำลายลิงก์
OnesimusUnbound

7

ประสบการณ์ของฉันคือการเรียนรู้ CoffeeScript ช่วยให้ฉันเข้าใจ JavaScript ได้ดีขึ้น แน่นอนฉันเป็นกรณีที่รุนแรง - ฉันเป็นโปรแกรมเมอร์ JavaScript ปานกลางและฉันตัดสินใจที่จะเขียนหนังสือเกี่ยวกับ CoffeeScript: http://pragprog.com/titles/tbcoffee/coffeescript

ดังนั้นด้วยความลำเอียงที่ออกไปฉันจะพูดว่า: ทุกคนที่ไม่ใช่ผู้เชี่ยวชาญอย่างสมบูรณ์เกี่ยวกับ JavaScript (และต้องการเป็นหนึ่ง) ควรเรียนรู้ CoffeeScript มันทำให้คุณมีมุมมองใหม่เกี่ยวกับ "ส่วนที่ดี" ของภาษา Brendan Eich ผู้สร้าง JavaScript ได้ชื่นชม CoffeeScript ซ้ำ ๆ เพื่อให้ JavaScript มีรูปแบบที่สวยงามโดยไม่บดบังความหมาย

CoffeeScript จะช่วยให้คุณทำงานอิสระได้โดยตรงหรือไม่? นั่นเป็นการยากที่จะพูด แน่นอนว่ามีงานไม่มากที่ขอรหัส CoffeeScript เป็นรหัส JavaScript (แม้ว่ามันจะไม่เจ็บที่จะถามว่า "มันใช้ได้หรือไม่ที่จะใช้ CoffeeScript สำหรับงานนี้?") แต่จากนั้นมีคนงาน CoffeeScript แข่งขันกันไม่มากนัก ทั้ง. แน่นอนว่าคุณสามารถหลีกเลี่ยงการส่ง JavaScript ที่คอมไพล์ได้ตราบใดที่ผู้ว่าจ้างไม่มีข้อกำหนดสไตล์โค้ดที่เฉพาะเจาะจง เอาต์พุต CoffeeScript สามารถอ่านได้ค่อนข้างดี แต่แน่นอนว่าไม่ดีเท่า JavaScript ที่เขียนด้วยมืออย่างเชี่ยวชาญ (สมมติว่าผู้เชี่ยวชาญรู้วิธีเขียนสำหรับมนุษย์ ... )

ในที่สุดฉันก็ทราบว่า CoffeeScript มีชุมชนที่ยอดเยี่ยมที่คุณสามารถขอความช่วยเหลือได้ หนึ่งในข้อดีของภาษาใหม่คือโดยทั่วไปมีเพียงโปรแกรมเมอร์อัจฉริยะเท่านั้นที่เรียนรู้พวกเขา (ดูบทความของ Paul Graham " The Python Paradox ") ดังนั้นในขณะที่มี CoffeeScripters น้อยกว่า JavaScripters คุณอาจพบว่าง่ายกว่าที่จะรับความช่วยเหลือเกี่ยวกับปัญหาที่ยากโดยการมีเพื่อนใน CoffeeScript-land


3

คอฟฟี่สเพรสให้บริการแก่ผู้ที่ตัดฟันเป็นโปรแกรมเมอร์ด้วย Python หรือ Ruby ฉันเรียนรู้ด้วย python และแม้ว่าฉันใช้ภาษา c-like อื่น ๆ เช่น c #, php หรือ javascript เองฉันก็พบว่าไวยากรณ์ของพวกเขายุ่งยากยุ่งยาก verbose และน่าเกลียด มันน่ารำคาญที่ต้องจัดการกับวงเล็บปีกกา, อัฒภาคและเสียงเส้นทั้งหมด

Coffeescript ยืมความคิดที่ดีที่สุดของภาษาเหล่านี้ในขณะที่ยังรักษา "ส่วนที่ดี" ของจาวาสคริปต์ไว้โดยไม่ถูกแตะต้อง มันเพิ่มไวยากรณ์ที่ดีขึ้นและแสดงออกมากขึ้นอยู่ด้านบน มีหลายสิ่งที่ใช้โค้ดหลายบรรทัดใน javascript ซึ่งสามารถแสดงด้วย liners หนึ่งอันใน coffeescript และสิ่งเหล่านี้เป็นวิธีที่เข้าใจง่ายชัดเจนและแสดงออกได้มากกว่า

ตัวอย่าง: สร้างอาร์เรย์ของตัวเลขตั้งแต่ 3 ถึง 10 ได้อย่างไร

myarray = [3..10]

คุณจะสร้างอาเรย์อื่นที่มีไอเท็มก่อนหน้านี้คูณด้วยสามได้อย่างไร

newarray = [i * 3 สำหรับฉันใน myarray]

ลองทำใน javascript ธรรมดาแล้วคุณจะรู้ว่าทำไม Coffeescript จึงเป็นสิ่งที่พระเจ้าส่งมาให้พวกเราหลายคน ...


0

ฉันแปลงจาก JavaScript เป็น CoffeeScript เมื่อประมาณ 6 เดือนที่แล้วและฉันชอบมากมีหลาย ๆ ที่ที่ไวยากรณ์ทำให้ชีวิตง่ายขึ้นเล็กน้อย

ตัวอย่างเช่นคุณสามารถจัดโครงสร้างวัตถุในการมอบหมายดังนั้นฉันเพิ่งเขียนโค้ดบางอย่างเช่นนี้

func = ({io: io, el: el} -> ...

ดังนั้นคุณผ่านวัตถุและแยกมันออกเป็นส่วน ๆ ฉันรักกาแฟจริงๆ

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