ใช่ฉันเข้าใจความคับข้องใจของคุณด้วยกฎโง่ ๆ ฉันอ่านโปรแกรมจำนวนมากที่มีความคิดเห็นที่ไร้ประโยชน์เช่นนั้น
x = x + 1; // add 1 to x
และฉันพูดกับตัวเองนั่นคือเครื่องหมายบวกหมายความว่า !! ว้าวขอบคุณที่บอกฉันฉันไม่รู้
แต่ที่กล่าวว่าลูกค้าจ่ายบิล ดังนั้นคุณให้สิ่งที่พวกเขาต้องการ ถ้าฉันทำงานที่ตัวแทนจำหน่ายรถยนต์และลูกค้าบอกว่าเขาต้องการรถปิคอัพฉันจะไม่เถียงกับเขาเกี่ยวกับว่าเขาต้องการรถปิคอัพจริง ๆ หรือไม่และตอบคำถามเขาในสิ่งที่เขาคาดหวังไว้ ฉันจะขายรถกระบะให้เขา
โอเคมีบางครั้งที่สิ่งที่ลูกค้าบอกว่าเขาต้องการและสิ่งที่เขาต้องการจริงๆนั้นอยู่ไกลเกินกว่าที่ฉันพยายามจะพูดคุยกับเขาบางทีอาจโน้มน้าวให้เขาเห็นด้วยกับเหตุผลที่มีเหตุผลมากกว่านี้ บางครั้งมันก็ใช้งานได้ ในท้ายที่สุดถ้าฉันไม่สามารถเปลี่ยนใจเขาได้ฉันจะให้สิ่งที่เขาต้องการ หากเขากลับมาใหม่ในภายหลังและพูดว่าโอ้ไม่เป็นไปตามข้อกำหนดทางธุรกิจของฉันจริง ๆ แล้วเราสามารถเรียกเก็บเงินจากเขาเพิ่มขึ้นเพื่อทำสิ่งที่เราบอกให้เขาทำในครั้งแรก คุณสามารถเจรจาต่อรองกับลูกค้าได้มากแค่ไหนขึ้นอยู่กับว่าพวกเขาเชื่อมั่นในความเชี่ยวชาญของคุณมากแค่ไหนสัญญาของพวกเขากับคุณเหมาะสมกับองค์กรอย่างไรและตรงไปตรงมามากแค่ไหน
มันจะเป็นกรณีที่หายากมากซึ่งถ้าฉันคิดว่ามันขึ้นอยู่กับฉันฉันจะสูญเสียสัญญาเพราะฉันคิดว่าข้อกำหนดนั้นไม่เหมาะสม
โปรดจำไว้ว่าคนที่ บริษัท ของคุณกำลังเจรจาอาจจะใช่หรือไม่ใช่คนที่คิดค้นกฎ 25% นี้ มันอาจเป็นกฎที่กำหนดให้พวกเขาจากที่สูงขึ้น
ฉันเห็นคำตอบห้าข้อที่เป็นไปได้:
หนึ่ง. โน้มน้าวใจเจ้านายของคุณหรือใครก็ตามที่กำลังเจรจากับลูกค้าเพื่อโต้แย้งเกี่ยวกับเรื่องนี้ อัตราต่อรองนี้จะไม่ประสบความสำเร็จ แต่คุณสามารถลอง
สอง. ปฏิเสธที่จะทำมัน สิ่งนี้อาจทำให้คุณถูกไล่ออกหรือถ้า บริษัท เห็นด้วยกับคุณทำให้คุณเสียสัญญา ดูเหมือนว่าจะไม่ก่อผล
สาม. เขียนความคิดเห็นที่ไร้ประโยชน์เพื่อเติมเต็มพื้นที่ความคิดเห็นที่เพิ่งทำซ้ำสิ่งที่อยู่ในรหัสและโปรแกรมเมอร์ที่มีความสามารถในการปรับเปลี่ยนรหัสสามารถดูได้ใน 2 วินาที ฉันเคยเห็นความคิดเห็นมากมายเช่นนี้ หลายปีที่ผ่านมาฉันทำงานให้กับ บริษัท ที่เราจำเป็นต้องใส่บล็อกความคิดเห็นต่อหน้าทุกฟังก์ชั่นที่ระบุพารามิเตอร์เช่น:
/*
GetFoo function
Parameters:
name: String, contains name
num: int, the number
add_date: date, the date added
Returns:
foo code: int
*/
int GetFoo(String name, int num, Date add_date)
การคัดค้านที่ความคิดเห็นดังกล่าวเป็นภาระการบำรุงรักษาเพราะคุณต้องทำให้ทันสมัยไม่ถูกต้อง ไม่จำเป็นต้องทำให้ทันสมัยเพราะไม่มีโปรแกรมเมอร์ที่จริงจังจะดูพวกเขา หากมีคำถามใด ๆ เกี่ยวกับเรื่องนี้โปรดทำให้ชัดเจนกับสมาชิกทุกคนในทีมว่าควรละเว้นความคิดเห็นที่ไร้ประโยชน์และซ้ำซ้อน หากคุณต้องการทราบว่าพารามิเตอร์ของฟังก์ชั่นคืออะไรหรือบรรทัดของโค้ดอะไรให้อ่านโค้ดอย่าดูความคิดเห็นที่ไร้ประโยชน์
สี่ หากคุณกำลังจะเพิ่มความคิดเห็นที่ไร้ค่าซ้ำซ้อนอาจถึงเวลาที่จะเขียนโปรแกรมเพื่อสร้างความคิดเห็น การลงทุนล่วงหน้า แต่สามารถประหยัดการพิมพ์ลงบนถนน
ย้อนกลับไปเมื่อฉันเริ่มธุรกิจนี้ครั้งแรก บริษัท ที่ฉันทำงานเพื่อใช้โปรแกรมที่โฆษณาว่า "เขียนเอกสารของคุณให้คุณ! ทำเอกสารให้ครบทุกโปรแกรม!" ระบบต้องการให้เราให้ตัวแปรทั้งหมดเป็นชื่อที่ไม่มีความหมายเป็นหลักแล้วมีตารางที่ให้ชื่อที่มีความหมายสำหรับแต่ละตัวแปรดังนั้นโดยพื้นฐานแล้วสิ่งที่ "เอกสารอัตโนมัติ" ได้แทนที่ชื่อที่ไม่มีความหมายที่บังคับให้เราใช้ชื่อที่มีความหมาย ตัวอย่างเช่น - สิ่งนี้ใช้ได้กับ COBOL - คุณมีบรรทัดในโปรแกรมของคุณที่กล่าวไว้
MOVE IA010 TO WS124
และพวกเขาต้องการสร้าง "เอกสาร" ที่กล่าวถึง
COPY CUSTOMER NAME IN INPUT RECORD TO CUSTOMER-NAME IN WORKING STORAGE
อย่างไรก็ตามเราสามารถเขียนโปรแกรมเพื่อสร้างเอกสารที่ไม่มีค่าพอ ๆ กันได้อย่างง่ายดาย อ่านบรรทัดเช่น
a=b+c
และสร้างความคิดเห็น
// add b to c and save result in a
เป็นต้น
ห้า. ทำให้ดีที่สุดในกฎโง่ ๆ พยายามเขียนความเห็นที่เป็นประโยชน์และมีความหมาย เฮ้มันอาจเป็นการออกกำลังกายที่ดี
โอ้โดยวิธีการฉันขอเพิ่มที่คุณสามารถเล่นเกมตัวชี้วัด
ฉันจำได้ว่าครั้งหนึ่งที่นายจ้างบอกว่าพวกเขากำลังจะเริ่มต้นการวัดประสิทธิภาพการทำงานของโปรแกรมเมอร์ด้วยจำนวนโค้ดที่เราผลิตต่อสัปดาห์ เมื่อเราถูกบอกเรื่องนี้ในที่ประชุมฉันพูดว่าเยี่ยมมาก! ฉันสามารถเพิ่มคะแนนของฉันได้อย่างง่ายดาย ไม่มีการเขียนเพิ่มเติม
x=x+4;
ฉันจะเขียนแทน:
x=x+1;
x=x+1;
x=x+1;
x=x+1;
ลูป? ลืมฉันจะคัดลอกและวางรหัสสิบครั้ง เป็นต้น
ดังนั้นที่นี่หากพวกเขากำลังจะนับบรรทัดความคิดเห็นให้แต่ละบรรทัดสั้นและดำเนินการต่อความคิดในบรรทัดถัดไป หากมีการเปลี่ยนแปลงสิ่งที่เกิดขึ้นในความคิดเห็นอย่าอัพเดตความคิดเห็นที่มีอยู่ ใส่วันที่ลงไปจากนั้นคัดลอกข้อความทั้งหมดแล้วเขียน "อัพเดต" และวันที่ใหม่ หากไคลเอนต์ถามมันบอกพวกเขาว่าคุณคิดว่าจำเป็นต้องรักษาประวัติ ฯลฯ