เป็นเวลานานผมที่ถกเถียงกันอยู่ว่าพวกเขามีมูลค่าเท่ากันหรือเพื่อให้ใกล้มากเท่ากับว่ากำไรที่เป็นไปได้โดยการทำทางเลือกที่เหมาะสมก็ยังห่างไกลไกลต่ำกว่าค่าใช้จ่ายของการโต้เถียงเกี่ยวกับมัน
เป็นที่สอดคล้องกันเป็นสิ่งที่สำคัญแม้ว่า ฉันเลยบอกว่าให้เราพลิกเหรียญแล้วเขียนโค้ด
ฉันเคยเห็นโปรแกรมเมอร์ต่อต้านการเปลี่ยนแปลงเช่นนี้มาก่อน ได้รับมากกว่านั้น! ฉันเปลี่ยนอาชีพของฉันหลายครั้ง ฉันใช้สไตล์ที่แตกต่างใน C # ของฉันมากกว่า PowerShell ของฉัน
ไม่กี่ปีที่ผ่านมาฉันทำงานกับทีม (นักพัฒนา ~ 20 คน) ที่ตัดสินใจขอข้อมูลจากนั้นทำการตัดสินใจจากนั้นจึงบังคับใช้สิ่งนั้นในทุกรหัสฐาน เรามีเวลา 1 สัปดาห์ในการตัดสินใจ
คร่ำครวญและน่าเกรงขามมากมาย "ฉันชอบวิธีของฉันเพราะมันดีกว่า" มากมาย แต่ไม่มีเนื้อหา
ในขณะที่เรากำลังศึกษาประเด็นคำถามที่ละเอียดกว่าใครบางคนถามว่าจะจัดการกับปัญหานี้อย่างไรในรูปแบบของวงเล็บปีกกาแบบเส้นเดียวกัน:
void MyFunction(
int parameterOne,
int parameterTwo) {
int localOne,
int localTwo
}
โปรดทราบว่าไม่ชัดเจนทันทีที่รายการพารามิเตอร์สิ้นสุดลงและเนื้อหาเริ่มต้นขึ้น เปรียบเทียบกับ:
void MyFunction(
int parameterOne,
int parameterTwo)
{
int localOne,
int localTwo
}
เราได้อ่านเกี่ยวกับวิธีที่ผู้คนทั่วโลกจัดการกับปัญหานี้และพบรูปแบบของการเพิ่มบรรทัดว่างหลังจากวงเล็บปีกกาเปิด:
void MyFunction(
int parameterOne,
int parameterTwo) {
int localOne,
int localTwo
}
หากคุณกำลังจะหยุดพักสายตาคุณก็สามารถทำได้ด้วยการทำรั้ง จากนั้นทัศนวิสัยของคุณก็จะสม่ำเสมอเช่นกัน
แก้ไข : สองทางเลือกในโซลูชัน 'บรรทัดว่างพิเศษ' เมื่อใช้ K&R:
1 / เยื้องข้อโต้แย้งการทำงานแตกต่างจากร่างกายฟังก์ชั่น
2 / ใส่อาร์กิวเมนต์แรกในบรรทัดเดียวกันกับชื่อฟังก์ชั่นและจัดเรียงอาร์กิวเมนต์เพิ่มเติมในบรรทัดใหม่กับอาร์กิวเมนต์แรก
ตัวอย่าง:
1 /
void MyFunction(
int parameterOne,
int parameterTwo) {
int localOne,
int localTwo
}
2 /
void MyFunction(int parameterOne,
int parameterTwo) {
int localOne,
int localTwo
}
/ แก้ไข
ฉันยังคงยืนยันว่าความมั่นคงมีความสำคัญมากกว่าข้อควรพิจารณาอื่น ๆ แต่ถ้าเราไม่มีแบบอย่างที่เป็นที่ยอมรับแล้ววงเล็บปีกกาต่อบรรทัดคือวิธีที่จะไป