คำนำ: เอาละที่เพิ่มขึ้นอย่างรวดเร็ว แต่ตัดสินใจที่จะดึงมันออกมา คำตอบนี้อาจเป็นประโยชน์กับคุณและผู้อ่านคนอื่น ๆ
คำแนะนำรหัส
ในขณะที่ JSLint และ JSHint เป็นเครื่องมือที่ดีในการใช้งานในช่วงหลายปีที่ผ่านมาฉันได้ชื่นชมสิ่งที่เพื่อนของฉัน@ugly_syntaxเรียก:
การออกแบบพื้นที่ขนาดเล็ก
นี่เป็นหลักการทั่วไปเช่นเดียวกับ "พระเซน" ซึ่ง จำกัด ทางเลือกที่ต้องทำมีใครสามารถสร้างสรรค์และสร้างสรรค์ได้มากขึ้น
ดังนั้นสไตล์โค้ด zero-config JS ที่ฉันโปรดปรานในปัจจุบัน:
StandardJS
UPDATE :
ไหลได้ดีขึ้นมาก ด้วยคุณสามารถเพิ่มประเภทลงใน JS ของคุณด้วยจะช่วยให้คุณป้องกันข้อบกพร่องมากมาย แต่มันก็ยังสามารถออกไปให้พ้นทางของคุณเช่นเมื่อเชื่อมต่อ JS ที่ไม่ได้พิมพ์ ให้มันลอง!
Quickstart / TL; DR
เพิ่มstandard
เป็นการพึ่งพาโครงการของคุณ
npm install --save standard
จากนั้นในpackage.json
เพิ่มสคริปต์ทดสอบต่อไปนี้:
"scripts": {
"test": "node_modules/.bin/standard && echo put further tests here"
},
สำหรับเอาต์พุต snazzier ขณะพัฒนาnpm install --global snazzy
และรันแทนnpm test
และใช้มันแทน
หมายเหตุ: การตรวจสอบประเภทกับ Heuristics
เพื่อนของฉันเมื่อพูดถึงพื้นที่การออกแบบที่เรียกว่าElmและฉันขอแนะนำให้คุณลองใช้ภาษานั้น
ทำไม? JS ในความเป็นจริงแรงบันดาลใจจากเสียงกระเพื่อมซึ่งเป็นชั้นเรียนพิเศษภาษาที่เกิดขึ้นจะuntyped ภาษาเช่น Elm หรือPurescriptจะพิมพ์โปรแกรมปฏิบัติการภาษา
พิมพ์ จำกัด เสรีภาพของคุณเพื่อให้คอมไพเลอร์ตรวจสอบและให้คำแนะนำคุณเมื่อคุณละเมิดภาษาหรือกฎของโปรแกรมของคุณ โดยไม่คำนึงถึงขนาด (LOC) ของโปรแกรมของคุณ
เมื่อเร็ว ๆ นี้เรามีเพื่อนร่วมงานรุ่นน้องใช้อินเทอร์เฟซแบบโต้ตอบสองครั้ง: หนึ่งครั้งใน Elm หนึ่งครั้งใน React ลองดูความคิดของสิ่งที่ฉันกำลังพูดถึง
เปรียบเทียบMain.elm
(พิมพ์) ⇔ index.js
(ไม่พิมพ์) ไม่มีการทดสอบ
(ps. โปรดทราบว่ารหัสการตอบสนองไม่ได้เป็นสำนวนและสามารถปรับปรุงได้)
หนึ่งคำพูดสุดท้าย
ความจริงก็คือ JS ไม่ได้พิมพ์ ฉันจะแนะนำการเขียนโปรแกรมแบบพิมพ์ให้กับคุณคือใคร
ดูด้วย JS เราอยู่ในโดเมนที่แตกต่าง: เป็นอิสระจากประเภทเราสามารถแสดงสิ่งที่ยากหรือเป็นไปไม่ได้ที่จะให้ประเภทที่เหมาะสม (ซึ่งอาจเป็นข้อได้เปรียบอย่างแน่นอน)
แต่หากไม่มีประเภทก็มีน้อยที่จะทำให้โปรแกรมของเราอยู่ในการตรวจสอบดังนั้นเราจึงถูกบังคับให้แนะนำการทดสอบและสไตล์โค้ด (เพื่อขยายให้น้อยลง)
ฉันแนะนำให้คุณดู LISP (เช่นClojureScript ) เพื่อหาแรงบันดาลใจและลงทุนในการทดสอบรหัสของคุณ อ่านวิธีการของสต็อกย่อยเพื่อให้ได้แนวคิด
สันติภาพ.
Combine this with the previous 'var' statement
->Do not mix 'require' and other declarations
ความขัดแย้ง