อะไรคือความคิดเห็นที่ดีที่สุดในซอร์สโค้ดที่คุณเคยเจอ? [ปิด]


360

อะไรคือความคิดเห็นที่ดีที่สุดในซอร์สโค้ดที่คุณเคยเจอ?

คำตอบ:


1462

ฉันมีความผิดโดยเฉพาะอย่างยิ่งนี้ฝังความคิดเห็นที่ไม่สร้างสรรค์, บทกวีรหัสและเรื่องตลกเล็ก ๆ น้อย ๆ ในโครงการส่วนใหญ่ของฉัน (แม้ว่าฉันมักจะมีความรู้สึกเพียงพอที่จะลบสิ่งที่น่ารังเกียจโดยตรงก่อนที่จะปล่อยรหัส) นี่คือสิ่งหนึ่งที่ฉันชอบเป็นพิเศษวางไกลลงไปไกล ๆ ว่า 'God Object' ที่ออกแบบมาไม่ดี:

/**
* For the brave souls who get this far: You are the chosen ones,
* the valiant knights of programming who toil away, without rest,
* fixing our most awful code. To you, true saviors, kings of men,
* I say this: never gonna give you up, never gonna let you down,
* never gonna run around and desert you. Never gonna make you cry,
* never gonna say goodbye. Never gonna tell a lie and hurt you.
*/

ฉันขอโทษ!!!! ฉันช่วยตัวเองไม่ได้ ..... !

และอีกคนหนึ่งที่ฉันจะยอมรับว่าผมยังไม่ได้รับการปล่อยตัวจริงเข้าไปในป่าแม้ว่าฉันกำลังมากอยากที่จะทำเช่นนั้นในหนึ่งในชั้นเรียนที่ใช้งานง่ายน้อยของฉัน:

// 
// Dear maintainer:
// 
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
// 
// total_hours_wasted_here = 42
// 

2
// Dear Programmer // // โค้ดของคุณทำงานช้าลงในขณะนี้ซึ่งฉันได้แก้ไขข้อบกพร่องทั้งหมดที่คุณ // แนะนำ // แต่การเพิ่มประสิทธิภาพของคุณช่วยได้แน่นอน
DevinB

2
+.5 สำหรับ Rickrolling ในความคิดเห็น, +.5 สำหรับ total_hours ดีเลิศ
Wayne Werner

3
ครั้งแรกที่ฉันได้รับ RickRolled อย่างแท้จริง - และมันก็ตลกดี เมื่อฉันเห็นลิงก์ไปยัง YouTube ฉันมักจะคาดหวังว่าจะได้ RickRolled (อูฐใส่ซองภาษาอังกฤษ !!) แต่ฉันไม่เคยคาดหวังว่าจะได้รับ RickRolled ในการแสดงความคิดเห็นเกี่ยวกับรหัส
Vincent McNabb

4
total_hours_wasted_here = -32768 ฉันต้องทำอย่างไร ฉันคิดว่ามีบางอย่างผิดปกติ
Behrooz

8
โปรดหยุด "อัปเดต" เคาน์เตอร์ มันไม่คุ้มค่ากระแทกคำถามนี้บนหน้าอีกครั้ง
Michael Myers

1055
Exception up = new Exception("Something is really wrong.");
throw up;  //ha ha

5
ฉันอ่านความคิดเห็นทั้งหมดจากบนลงล่างสงสัยว่าผู้คนหมายถึงอะไรเมื่อพวกเขาพูดว่า "แตกขึ้นอ่านข้อความนี้" หรือ "แตกขึ้นอ่านว่า" ดี. ฉันเพียงแค่แตกขึ้นอ่านหนึ่งนี้ ...
Daren โทมัส

37
LOL ทำตามตัวอักษรอย่างแท้จริงด้วยความฉลาดและความเป็นเด็กของสิ่งนี้
David Koelle

2
คลาส MonkeyPoo ขยายข้อยกเว้น {}; ... โยน MonkeyPoo ใหม่ (); // เพราะมันสนุกกว่าการโยนมากกว่าข้อยกเว้น
Adam Rosenfield

2
ฉันเริ่มใช้ Ganna ขึ้นแทนของอดีตจากนี้ XD
Ammar

23
เมื่อฉันตื่นขึ้นมาจากการนอนหลับลึกอย่างแท้จริง IQ ของฉันก็ลดลงเหลือประมาณ 25 และจิตใจของฉันก็กลายเป็นสถานที่ที่แปลกมาก ครั้งหนึ่งหลังจากเขียนจาวามาไม่นานฉันตื่นขึ้นมากลางดึกรู้สึกไม่ดีและเข้าห้องน้ำ ขณะที่ฉันอาเจียนเข้าห้องน้ำสิ่งเดียวที่ฉันคิดได้ก็คือ "ฉันสงสัยว่าตอนนี้ฉันกำลังโยนข้อยกเว้นอะไร ... "
Frank Farmer

1052
//When I wrote this, only God and I understood what I was doing
//Now, God only knows

175
นั่นคือวลีจาก Karl Weierstrass นักคณิตศาสตร์ผู้ให้คำนิยาม epsilon และ delta continuity ที่ยอดเยี่ยมแก่เรา
Edwin Jarvis

3
Weierstrass ผู้ที่แตกต่าง
Peter Wone

4
@Augusto คุณมีแหล่งที่มาสำหรับการระบุวลีที่ Weierstrass หรือไม่? ฉันต้องการทราบว่าเขาหมายถึงอะไร
เควิน

1048
stop(); // Hammertime!

8
ฉันชอบมัน. ดาดาดา, ดาดา, ดาดา, มันจบแล้ว (David Spade, SNL, อัปเดตวันหยุดสุดสัปดาห์)
MrBoJangles

83
หยุด(); // ทำงานร่วมกันฟัง!
Erik Forbes


2
หยุด(); // นั่นคือเสียงอะไร?
Yuval

2
หยุด(); //! ในนามของความรัก. ก่อนที่คุณจะทำให้หัวใจฉันแตก

1030

ดูเหมือนว่าจะหยุดไม่ให้มารร้ายเลอะรหัสของฉัน ...

// Autogenerated, do not edit. All changes will be undone.

7
ทำให้ฉันหวังว่ารายการโปรดที่สนับสนุนดังนั้นในการตอบกลับแต่ละครั้ง
AviD

3
@AviD คุณสามารถคั่นหน้าstackoverflow.com/questions/184618/…
alex

@alex, duh ดีตอนนี้ ... อย่างไรก็ตามฉันหมายถึงเช่นเดียวกับที่คุณสามารถทำเครื่องหมายคำถามเป็นรายการโปรด ...
AviD

@ AviD ใช่ฉันรู้เพียงแค่แนะนำวิธีแก้ปัญหา
alex

3
ฉันคิดว่าพวกเขาจะทำให้รหัสของคุณยุ่งเหยิงไปเรื่อย ๆ : มันบอกว่ามันจะแก้ไขตัวเองดังนั้นทำไมไม่ทำลายมันเพื่อการเตะ?
Mateen Ulhaq

946
// sometimes I believe compiler ignores all my comments

26
ฉันหวังว่าคอมไพเลอร์จะไม่สนใจความคิดเห็นของบุคคลนี้
โปรแกรมเมอร์ Windows

86
// เนื่องจากฉันไม่เคยได้ยินกลับมาจากคอมไพเลอร์ฉันเชื่อว่านี่เป็นเรื่องจริง
Liwen

40
ฉันคิดว่ามันควรจะเป็นเรื่องน่าขัน ...
นีลบาร์นเวล

52
เสียงหัวเราะที่เป็นอนาคตคอมไพเลอร์อ่านความคิดเห็นเพียงเพื่อให้แน่ใจว่าพวกเขาไม่ได้เข้าใจผิด ;-D
sharkin

4
// # reply_from_compiler คุณชอบ clippy ใช่ไหม?
คาร์ล

930
// I dedicate all this code, all my work, to my wife, Darlene, who will 
// have to support me and our three children and the dog once it gets 
// released into the public.

169
นี่อยู่ที่ไหนสักแห่งในซอร์สโค้ด Duke Nukem Forever หรือไม่ ;)
Adhip Gupta

1
ฉันไม่เข้าใจสิ่งที่ตลกมาก?
hasen

11
เขาอุทิศรหัสด้านล่างให้กับภรรยาของเขาแม้ว่าเขาจะรู้ว่ามันแย่มากที่เขาจะถูกไล่ออกหรือทำให้ บริษัท ของเขาเลิกกิจการ :)
Robert P

390
ทำไมสุนัขถึงได้เปิดตัวสู่สาธารณะ?
Nosredna

1
@Nosredna ขอบคุณสำหรับความคิดเห็นตลก ๆ ! @hasen j รหัสถูกเขียนแย่มากที่ "โปรแกรมเมอร์" มักจะสูญเสียงานของเขาและภรรยาของเขาจะต้องสนับสนุนครอบครัว
Jamol

911
//Code sanitized to protect the foolish.
using System;
using System.Collections.Generic;
using System.Text;
using System.Reflection;
using System.Web.UI;

namespace Mobile.Web.Control
{
    /// <summary>
    /// Class used to work around Richard being a fucking idiot
    /// </summary>
    /// <remarks>
    /// The point of this is to work around his poor design so that paging will 
    /// work on a mobile control. The main problem is the BindCompany() method, 
    /// which he hoped would be able to do everything. I hope he dies.
    /// </remarks>
    public abstract class RichardIsAFuckingIdiotControl : MobileBaseControl, ICompanyProfileControl
    {
        protected abstract Pager Pager { get; }

        public void BindCompany(int companyId) { }

        public RichardIsAFuckingIdiotControl()
        {
            MakeSureNobodyAccidentallyGetsBittenByRichardsStupidity();
        }

        private void MakeSureNobodyAccidentallyGetsBittenByRichardsStupidity()
        {
            // Make sure nobody is actually using that fucking bindcompany method
            MethodInfo m = this.GetType().GetMethod("BindCompany", BindingFlags.DeclaredOnly | 
                BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
            if (m != null)
            {
                throw new RichardIsAFuckingIdiotException("No!! Don't use the fucking BindCompany method!!!");
            }
            // P.S. this method is a joke ... the rest of the class is fucking serious
        }

        /// <summary>
        /// This returns true if this control is supposed to be doing anything
        /// at all for this request. Richard thought it was a good idea to load
        /// the entire website during every request and have things turn themselves
        /// off. He also thought bandanas and aviator sunglasses were "fuckin' 
        /// gnarly, dude."
        /// </summary>
        protected bool IsThisTheRightPageImNotSureBecauseRichardIsDumb()
        {
            return Request.QueryString["Section"] == this.MenuItemKey;
        }

        protected override void OnLoad(EventArgs e)
        {
            if (IsThisTheRightPageImNotSureBecauseRichardIsDumb())
            {
                Page.LoadComplete += new EventHandler(Page_LoadComplete);
                Pager.RowCount = GetRowCountBecauseRichardIsDumb();
            }
            base.OnLoad(e);
        }

        protected abstract int GetRowCountBecauseRichardIsDumb();
        protected abstract void BindDataBecauseRichardIsDumb();

        void Page_LoadComplete(object sender, EventArgs e)
        {
            BindDataBecauseRichardIsDumb();
        }

        // the rest of his reduh-ndant interface members
        public abstract string MenuItemName { get; set; }
        public abstract string MenuItemKey { get; set; }
        public abstract bool IsCapable(CapabilityCheck checker, int companyId);
        public abstract bool ShowInMenu { get; }
        public virtual Control CreateHeaderControl()
        {
            return null;
        }
    }
}

อัปเดต: ผู้แต่งดั้งเดิมของรหัสออกมาเองดังนั้นฉันต้องให้เครดิตเมื่อถึงกำหนด แดนแมคคินลีย์ออกจาก บริษัท ที่ฉันอยู่ด้วยไม่นานหลังจากที่ฉันเริ่มและเขาพูดถึงเรื่องรหัสอธิบายพื้นหลังและ "WTF's" อีกสองสามอย่างที่ริชาร์ดเขียนไว้


27
มันเต็มไปด้วยความหยาบคาย แต่ฉันหัวเราะในลูกบาศก์ตลอดเวลาที่อ่านมัน
willasaywhat

241
เซ็นเซอร์เซ็นเซอร์ครับ นำกลับมาเป็นต้นฉบับ!
coder1

58
ย้อนกลับ พวกเราทุกคนเป็นผู้ใหญ่ที่นี่ หากรหัสดั้งเดิมได้รับการ "ทำให้สะอาด" คุณจะไม่มีวันจำได้เพียงพอที่จะโพสต์ไว้ที่นี่
JosephStyons

56
จะสนุกกว่าเดิมหากลูกค้าเห็นชื่อคลาสในการติดตามสแต็ก
finnw

5
โปรดอย่าย้อนกลับไปสู่รุ่น NSFW - ผู้เขียนยอมรับรุ่น SFW อย่างชัดเจนในการแก้ไข 3 และ 6
Adam Davis


727
// drunk, fix later

หวังว่าฉันล้อเล่น และรู้ว่านักพัฒนาที่เขียนรหัสฉันคิดว่าเขาหมายถึงมันอย่างแท้จริง


258
นั่นเป็นเรื่องไร้สาระที่เขียนความคิดเห็นเมื่อพวกเขาเมา
Jiminy

66
@Jiminy: อย่างจริงจัง! เมื่อฉันเมารหัสฉันตื่นขึ้นมาด้วยรหัสที่สวยงามที่ฉันโชคไม่ดีที่ไม่เข้าใจ
JoshJordan

22
โอ๋ ... ถ้าคุณไม่เข้าใจมันก็มีที่จะงดงาม!
Anders Hansson

14
ฮ่าฮ่า !!! ฉันทำสิ่งนี้เพื่อความสนุก: ทำเรื่องโค่นล้มการโค่นล้มในพื้นที่ของฉันเป็น 'เมา' และพบว่ามีคนหนึ่งแสดงความคิดเห็นที่ฉันจำไม่ได้ว่า: "ทำงานได้อีกครั้งอย่างใดเลย ...
ivan_ivanovich_ivanoff

14
ฮ่า, ".. วิธีใดวิธีหนึ่ง BAC ระหว่าง 0.129% และ 0.138% ฟาโรห์สามารถเขียนโปรแกรมเหนือมนุษย์ ... " xkcd.com/323
อัลฟ่า Codemonkey

719
// Magic. Do not touch.

20
Magic = บอบบางใช่ไหม
MrBoJangles

44
เตือนฉันถึงสิ่งนี้: catb.org/esr/jargon/html/magic-story.html
Simon Howard

5
ฉันต้องเขียนหลายครั้ง - ส่วนใหญ่เพื่อเตือนตัวเองว่า "ถ้าคุณแตะรหัสต่อไปนี้โดยไม่ทราบว่าคุณกำลังทำอะไรสิ่งที่ไม่ดีจะเกิดขึ้น!"
Shalom Craimer

6
@Simon โฮเวิร์ดฉันเพียง แต่ไม่ได้สัมผัสมันถ้ามันบอกว่า "เพิ่มเติมเวทมนตร์"
DevinB

4
ฉันยังจำได้ว่าการสอน CS ในโรงเรียนมัธยมซึ่งคำถามโง่ ๆ ของเราได้รับคำตอบด้วย "Magic! และรอยยิ้มที่ชั่วร้ายที่สุด
nevets1219

701

#define TRUE FALSE //Happy debugging suckers


95
#define NULL (:: rand ()% 2) // จะค่อนข้างดีเช่นกัน
Viktor Sehr

33
#define if (if (!
Bart van Heukelom

66
@Bart: คุณไม่สามารถมี parens ครึ่งในรหัสของคุณ แต่คุณสามารถทำ#define if(x) if(!(x))(หรือมากกว่า sinisterly, #define if while)
คริสลัทซ์

8
ตามที่ได้รับสิ่งนี้จะใช้งานได้จริง: อักขระความคิดเห็นจนถึงจุดสิ้นสุดของบรรทัดตรวจสอบให้แน่ใจว่าบรรทัดที่มีโอกาสซึ่งมาโครนี้ถูกใช้ไม่สามารถคอมไพล์ได้ ตัวอย่างเช่น: a = TRUE;จะแปลa = FALSE // Happy debugging suckers;ซึ่งจะนำไปสู่ข้อผิดพลาดในการคอมไพล์เพราะเทอร์มินัล;อยู่ในความคิดเห็น หากคุณใช้ความคิดเห็นบล็อก/* Eat this */มันจะทำงาน
rix0rrr

6
#define struct unionมีประโยชน์มากในระบบที่ จำกัด หน่วยความจำ
msw

640
// I'm sorry.

179
(รหัสที่ตามมาทำให้ฉันร้องไห้)
Greg D

20
คนที่ผมอยากเห็นรหัสที่ตามมา ...
เอริคฟอร์บ

33
// คุณได้รับการอภัย ไปในความสงบสุขลูกชายของฉัน
Mark Allen

52
นี่ควรเป็นความคิดเห็นมาตรฐานในแม่แบบเริ่มต้นที่สร้างโดย MSFT
Alexandre Brisebois

1
จริง ๆ รหัสที่ตามนี้คืออะไร ???
จักรีฤทธิ์

636
return 1; # returns 1

32
คลาสสิก! แต่ผมชอบคนนี้ได้ดียิ่งขึ้น: "i ++; // เพิ่มฉันโดย 1"
steffenj

71
ใครจะรู้ว่าเขา #define 1 เป็นอย่างอื่น ...
icelava

13
ฉันต้องการความคิดเห็นที่ไม่คุ้นเคยกับฉัน
Drew Dormann

6
ฉันเห็นสิ่งนี้มาก ฉันรู้ว่ามีโคเดอร์จำนวนมากที่แยกส่วนการทำงานด้วยความคิดเห็นแล้วกรอกรหัสด้านล่าง / ข้างแต่ละความคิดเห็น ทำให้มันง่ายมากที่จะเขียนฟังก์ชั่นธุรกิจขนาดใหญ่ แต่คุณจบลงด้วยความเห็นที่ค่อนข้างละเอียดในบางครั้ง
ปี๊บปี๊บ

88
# ส่งคืนสิ่งใด เฉพาะเจาะจงมากขึ้น.
Ozan

591
/* This is O(scary), but seems quick enough in practice. */ 

ตามด้วยซ้อนกันสี่ for-loops


33
pfft นั่นเป็นเพียง N ^ 4 เท่านั้นไม่มีที่ไหนที่ใกล้จะแย่เท่ากับ 4 ^ N หรือ N!
tloach

14
ฉันเคยตีสถานการณ์ด้วยลูปซ้อนกัน 8 ลึก รันไทม์ถูกวัดเป็นชั่วโมง
Loren Pechtel

8
ฉันมีอัลกอริทึม O (n) กับ RTT เครือข่าย 500ms ในวงด้านใน n> 100k อุ๊ยตาย
geofftnz

6
มีคุณภาพการไถ่: พวกเขารู้ว่าคำศัพท์ O ขนาดใหญ่อย่างน้อย หวังว่าแต่ละวงจะทำงานมากกว่าขนาดเล็กมาก N :-D
จอนเปื้อน

27
ผมทำงานกับใครสักคนที่จะพูดว่า "O (MFG) โปรด"
เจสัน Orendorff

589
// Replaces with spaces the braces in cases where braces in places cause stasis 
   $str = str_replace(array("\{","\}")," ",$str);

34
+1 - อัจฉริยะบริสุทธิ์ นี้ควรไปในเสื้อยืดหรือสิ่ง :-)
โกง

71
Dr Seuss เขียนโค้ดหรือไม่ +1!
Blorgbeard หมดเขต

11
ความต้องการสองพยางค์มากขึ้นในตอนท้าย ...
ไมเคิลไมเออร์

88
เพิ่งเปิดความคิดเห็นเพื่อบอกว่ามันต้องใช้สองพยางค์เพิ่มเติม แต่เห็นได้ชัดว่าฉันเอาชนะตัวเองได้ภายในสามเดือน
Michael Myers

15
ฉันไม่เห็นด้วยกับความจำเป็นที่จะต้องเพิ่มพยางค์ แต่ละกลุ่มมีห้าพยางค์สามพยางค์
KevDog

542

มันพูดถึงปริมาณงานของเราว่าเมื่อถูกถามเกี่ยวกับ "ความคิดเห็นที่ดีที่สุด" เราทุกคนตอบด้วยความคิดเห็นที่แย่ที่สุดที่เราสามารถหาได้ ...


67
ฉันเห็นด้วยกับความคิดเห็นของคุณอย่างสมบูรณ์ว่าความคิดเห็นไม่ค่อยจำเป็น
harpo

16
ขึ้นอยู่กับความคิดเห็น แม้แต่ภาษา "การทำเอกสารด้วยตนเอง" ก็สามารถได้รับประโยชน์จากความคิดเห็นเช่น Python ฉันเกลียดที่จะต้องอ่านรหัสเพื่อหาว่าเกิดอะไรขึ้นเมื่อประโยคง่าย ๆ สามารถบอกฉันได้
crystalattice

32
ฉันไม่เห็นด้วย: ความคิดเห็นไม่จำเป็น มีหลายครั้งที่ความคิดเห็น "การกำหนดกรอบรูปแบบ" ที่เรียบง่ายสามารถช่วยให้เข้าใจรหัสได้ทั้งหมด ตัวอย่างเช่นหากคุณกำลังใช้อัลกอริทึมที่ซับซ้อนเพื่อหลบหนีความซับซ้อนของเวลาของอัลกอริทึมแรงเดรัจฉานการอ้างอิงอาจจำเป็น
Mark Brittingham

83
รหัสบอกว่าอะไร ... ความคิดเห็นบอกว่าทำไม!
Richard Ev

3
ฉันไม่เห็นด้วยเพิ่มเติมกับ "Richard E" ความคิดเห็นมีไว้เพื่อบอกอนาคตของคุณ * (เพื่อนร่วมงานผู้ตรวจทานด้วยตัวคุณเอง) ทำไมคุณถึงเลือกที่จะทำสิ่งที่เลวร้ายแทนที่จะเป็นเรื่องอื่น ฉันไม่ได้เกี่ยวกับความคิดเห็นที่เกลื่อนกลาดทั่วทุกสถาน
Danita

525
long john; // silver

6
ข้าวโพดบริสุทธิ์ นั่นเป็นเหตุผลที่ฉันชอบมัน
MrBoJangles

6
แตกขึ้นโดยสิ้นเชิงเช่นกัน ฉันคิดว่ารหัสของฉันตอนนี้น่าเบื่อเกินไป
wonderchook


12
อาจจะฉัน double dแต่รอยแตกนี้ฉันขึ้นทุกครั้ง
เควิน

1
ประณามฉันกำลังคิดถึงen.wikipedia.org/wiki/Long_John_Silver's Ether ฉันหิว
Tek

508
Catch (Exception e) {
 //who cares?
} 

11
อันนี้ทำให้ฉันหัวเราะเหมือนจิตใจ
แท็บเล็ต

68
ฉันเห็นสิ่งเดียวกันด้วย // เลื่อนไปไม่มีอะไรให้ดูที่นี่
Ferruccio

6
ฉันหัวเราะอย่างหนักในครั้งนี้
Franck

9
ต้องยอมรับว่าฉันทำสิ่งนี้มากกว่าหนึ่งครั้งเพราะบางครั้งมันก็ไม่สำคัญ
NotMe

17
ว้าวฉันเขียนความคิดเห็นนั้นตลอดเวลา ฉันไม่เคยคิดว่ามันเป็นเรื่องตลกฉันคิดว่ามันเป็นคำพูดที่จริงจัง
Jay

496
/**
 * Always returns true.
 */
public boolean isAvailable() {
    return false;
}

ไม่ต้องพึ่งพาความคิดเห็น ...


85
ฉันมักจะบอกเพื่อนร่วมงานของฉัน "ความคิดเห็นไม่ทำงาน !!"
OscarRyz

15
ฉันเชื่อว่าคุณหมายถึง "ไม่ต้องพึ่งพารหัส" ฉันแน่ใจว่าข้อมูลจำเพาะการออกแบบและข้อกำหนดจำเป็นต้องใช้รหัสส่งคืนหรือจริง :)
gbjbaanb

ดูเหมือนว่าสิ่งที่คุณต้องการเห็นในรุ่น techie ของ failblog.org
BobC

5
สิ่งนี้เกิดขึ้นจริงผู้คนไม่ได้ใส่ใจกับเอกสารที่ทันสมัยพร้อมกับการเปลี่ยนแปลงแม้ว่าจะอยู่เหนือฟังก์ชั่น
Henk

25
... #define false true?
new123456

457
/*
 * You may think you know what the following code does.
 * But you dont. Trust me.
 * Fiddle with it, and youll spend many a sleepless
 * night cursing the moment you thought youd be clever
 * enough to "optimize" the code below.
 * Now close this file and go play with something else.
 */ 

32
เตือนฉันถึงเพื่อนที่สาบานได้ว่าเขาสามารถปรับแต่งอัลกอริธึมเชิงพิสูจน์กลเชิงกลที่ฉันเคยเขียนเมื่อหลายปีก่อนในโครงการ AI เขาปรับปรุงประสิทธิภาพ แต่รหัสไม่ทำงาน ... ซึ่งเขาสาบานได้ว่าเป็นความผิดของฉัน
Mark Brittingham

อืมฉันไม่เห็นอันนี้ที่ไหนซักแห่งเลยเหรอ?
bzlm

6
@ Mark เขาเพียง แต่บอกว่าเขาจะเพิ่มประสิทธิภาพของเวลาที่เขากล่าวว่าไม่มีอะไรที่เกี่ยวกับการทำงาน = P
DevinB

98
หากไม่ต้องทำงานฉันสามารถปรับรหัสใด ๆ ให้เป็นศูนย์ได้
Michael Borgwardt

9
นั่นคือการควบคุมแหล่งที่มา เสียเวลาสองสามชั่วโมงในการพยายามปรับให้เหมาะสมแล้วถ้ามันไม่ได้ผลให้ย้อนกลับไป
Kibbee

429
try {

} finally { // should never happen 

}

15
++ คนอื่น ๆ ใน บริษัท ของฉันเขียนสิ่งนี้ตลอดเวลา!
CVertex

17
ฉันเคยเห็นความคิดเห็นนั้น (และแม้กระทั่งเขียนด้วยตัวเอง) ในอดีตที่ผ่านมาสำหรับสิ่งที่ไม่ควรเกิดขึ้นใหม่ (แต่ในกรณีที่นี่รหัสเพื่อจัดการข้อผิดพลาด) ส่วนที่สนุกที่สุดคือของ TI อยู่ในกลุ่มสุดท้ายซึ่งหมายความว่ามันควรจะเสมอเกิดขึ้น ...
ทรอยโฮเวิร์ด

32
ใช่นั่นเป็นเรื่องตลก =)
Erik Forbes

15
หากคุณมีการเรียกใช้ System.exit () ในบล็อกลองแล้วใช่ในที่สุดไม่ควรเกิดขึ้น!
Romain Linsolas

6
เหตุผลที่ # 984 เพื่อใช้ Debug.Assert () ;)
Scott Hanselman

411

จาก: https://github.com/zepouet/Xee-xCode-4.5/blob/master/XeePhotoshopLoader.m#L108

// At this point, I'd like to take a moment to speak to you about the Adobe PSD
// format. PSD is not a good format. PSD is not even a bad format. Calling it
// such would be an insult to other bad formats, such as PCX or JPEG. No, PSD
// is an abysmal format. Having worked on this code for several weeks now, my
// hate for PSD has grown to a raging fire that burns with the fierce passion
// of a million suns.
//
// If there are two different ways of doing something, PSD will do both, in
// different places. It will then make up three more ways no sane human would
// think of, and do those too. PSD makes inconsistency an art form. Why, for
// instance, did it suddenly decide that *these* particular chunks should be
// aligned to four bytes, and that this alignement should *not* be included in
// the size? Other chunks in other places are either unaligned, or aligned with
// the alignment included in the size. Here, though, it is not included. Either
// one of these three behaviours would be fine. A sane format would pick one.
// PSD, of course, uses all three, and more.
//
// Trying to get data out of a PSD file is like trying to find something in the
// attic of your eccentric old uncle who died in a freak freshwater shark
// attack on his 58th birthday. That last detail may not be important for the
// purposes of the simile, but at this point I am spending a lot of time
// imagining amusing fates for the people responsible for this Rube Goldberg of
// a file format.
//
// Earlier, I tried to get a hold of the latest specs for the PSD file format.
// To do this, I had to apply to them for permission to apply to them to have
// them consider sending me this sacred tome. This would have involved faxing
// them a copy of some document or other, probably signed in blood. I can only
// imagine that they make this process so difficult because they are intensely
// ashamed of having created this abomination. I was naturally not gullible
// enough to go through with this procedure, but if I had done so, I would have
// printed out every single page of the spec, and set them all on fire. Were it
// within my power, I would gather every single copy of those specs, and launch
// them on a spaceship directly into the sun.
//
// PSD is not my favourite file format.

1
บรรทัดหลังจากนั้นและความคิดเห็นมันสุดยอดเค้ก สติ? มีสติอะไร? รูปแบบกินมันทั้งหมด ...
คิมรีซ

66
s / PSD / Internet Explorer / g s / รูปแบบไฟล์ / เว็บเบราว์เซอร์ / g ตอนนี้มันตรงกับความคิดของฉัน
TJ L

10
ฉันเสียดายโปรแกรมเมอร์ที่ต้องผ่านความเจ็บปวดเช่นนี้ !!! แต่ความคิดเห็นที่ยอดเยี่ยม ได้เทใจเขาออกมา
Microkernel

4
บรรทัดนี้: // PSD ไม่ใช่รูปแบบไฟล์โปรดของฉัน ทำให้เป็นแบบคลาสสิก
joedevon

387
const int TEN=10; // As if the value of 10 will fluctuate... 

136
ในตลาดวันนี้ 10 ตอนนี้มีค่าเพียง 9
Steve Fallows

13
บางทีสักวันหนึ่งเราจะพัฒนานิ้วขึ้น ...
Loren Pechtel

59
ค่า 10 มีค่ามากขนาดไหน?
Mikeage

184
const int TEN = 11; // ของฉันไปถึงสิบเอ็ด
พากย์

18
การโทรหา Fortran จาก C - Fortran จะทำการโทรโดยการอ้างอิงเท่านั้นดังนั้นคุณต้องการตัวแปรสำหรับค่าคงที่ทั้งหมด
Martin Beckett

364
    #Christmas tree initializer  
    toConnect = []  
    toRead =   [  ]  
    toWrite = [    ]   
    primes = [      ]  
    responses = {}  
    remaining = {}  

25
นั่นเป็นชัยชนะ ชัยชนะครั้งใหญ่ ...
พายุไซโคลน

16
ตกลงฉันจะใช้ในครั้งถัดไปที่ฉันต้องการอาร์เรย์ว่างสี่ชุดและสองแฮช!
Josh

Urgh เสียง FAIL! ถึงผู้เขียนที่ไม่ทราบว่าเขาใช้ภาษาที่ไม่มีรูปแบบหรือไม่
TheBlastOne

ฉันสงสัยว่าเขาไม่รู้เกี่ยวกับภาษาที่ไม่มีรูปแบบ นั่นเป็นเรื่องตลกที่ดี :-)
Román

362

ประมาณกลาง 30 หน้า xslt

<!-- Here be dragons  -->

8
ฉันยังคงพยายามหาวิธีแสดงความคิดเห็น XSLT ในลักษณะที่สมเหตุสมผล
rjzii

78
เราต้องการมังกรมากขึ้นในรหัสของเรา
346 Jon Smock

1
เริ่มแรกฉันนึกถึงen.wikipedia.org/wiki/21st_Century_Compilers
chakrit

6
@annakata คุณคิดว่าไม่ดีวันอื่นมีคนขอความช่วยเหลือเกี่ยวกับไฟล์ 31GB xml ฉันร้องไห้ออกมาด้วยความปวดร้าว
Dana the Sane

1
มีคนโทรหาฉันหรือเปล่า
Troggy

353

ในวิธีการ 2000 บรรทัดที่ไม่ใส่เครื่องหมายข้อคิดเห็นอย่างสมบูรณ์

{ 
  { 
    while (.. ){ 
      if (..){
          }
      for (.. ){ 
          }
         .... (just putting in the control flow here, imagine another few hundred ifs)
      if(..)   {
            if(..)     {
                   if(..)   {
                ...
                (another few hundred brackets)
                       }
                  }
         } //endif

(อันที่จริงฉันเอาวงเล็บทั้งหมดไปวางไว้สักวันหนึ่งเพื่อดูว่ามันแย่แค่ไหนและการจัดรูปแบบซองได้รับสิ่งนี้:

{{{{}}{}{}{}{}}{{}{{}{}{}{}{}{}{{}{}}{}{}{{}{}{}{}{}{}{}{}{}{}{}{{}}}{{}{{}}{{{}}}{{}{}{}{}{}{}{}{{}}{}{{{}}{}{{}{}}{{{}}{}{}{}{}}{{}}}{}{{}{}{}{{}{{}}{}}{{}}}{{}}{{}}{{}}{}{{}}{{}}{{}}{{}{}{}}{}{}{{{}}{{}}}{}{}{}{}}{{{}{{}{}{}{{}{}{}{}{}{}}{}}{{}}{{}{}}}{{}}{{}}}{{}}{{}}{}{}{}{}{{}}{{}{}{}{}}}}{}{}}{{}{{{}{}{}{}}}}{{}{{{}}}}{{}{{{}{{}}{}{{}}{}{{}{}}{{}}{}{{}}}{{}}}}{{}{}{}{}{}{{{}    {{{{}}{}{}{}{}}{{}{{}{}{}{}{}{}{{}{}}{}{}{{}{}{}{}{}{}{}{}{}{}{}{{}}}{{}{{}}{{{}}}{{}{}{}{}{}{}{}{{}}{}{{{}}{}{{}{}}{{{}}{}{}{}{}}{{}}}{}{{}{}{}{{}{{}}{}}{{}}}{{}}{{}}{{}}{}{{}}{{}}{{}}{{}{}{}}{}{}{{{}}{{}}}{}{}{}{}}{{{}{{}{}{}{{}{}{}{}{}{}}{}}{{}}{{}{}}}{{}}{{}}}{{}}{{}}{}{}{}{}{{}}{{}{}{}{}}}}{}{}}{{}{{{}{}{}{}}}}{{}{{{}}}}{{}{{{}{{}}{}{{}}{}{{}{}}{{}}{}{{}}}{{}}}}{{}{}{}{}{}{{{}{}{{}}{}}}{}}{{}}{{}{}}{{}{{}{{}}}}{{{}{{{}}}}}{{{{{}}}}}{}{}{}{{{{}}}{}{}}{{}{{}}}}{}{{}}{}}}{}}{{}}{{}{}}{{}{{}{{}}}}{{{}{{{}}}}}{{{{{}}}}}{}{}{}{{{{}}}{}{}}{{}{{}}}}

Endif ปรากฏขึ้นรอบ ๆ บรรทัดที่ 800)


180
รหัสทัวร์ - เดอฟรองซ์
Andreas Petersson

7
นี่คือ thedailyworsethanfailure.com
deadbug

67
ดูเหมือนว่ากระเพื่อม!
endian

8
ความคิดเห็นนั้นอาจจะมีการแก้ไขข้อผิดพลาดของคอมไพเลอร์ : |
Rob Howard

49
ระดับความซับซ้อนของวัฏจักรของ OH SHIIIIIIIII

353
long long ago; /* in a galaxy far far away */ 

1
ใช้งานได้จริงหรือ ภาษาใด?
อริส

16
@Mauris: เดิมเป็นส่วนขยาย C และ C ++ สำหรับจำนวนเต็ม 64 บิตซึ่งผู้ขายจำนวนมากได้รับการสนับสนุน จากนั้น C99 และ C ++ 0x ได้รับการสนับสนุนตามมาตรฐาน: en.wikipedia.org/wiki/Long_long
Juliano

ทำให้ฉันคิดถึงจุดที่ไกลและใกล้ที่เราเคยใช้ในดินแดน 16 บิต :)
Macke

1
มันยังใช้งานได้ดีอย่างสมบูรณ์แบบ ก่อนอื่นเราใส่ไว้ในคอมไพเลอร์ของเราที่ Convex เมื่อ 25 ปีก่อนเพราะ DMR แนะนำว่าควรเป็นชื่อของ int 64 บิตของเรา
tchrist

352
//This code sucks, you know it and I know it.  
//Move on and call me an idiot later.

26
สุจริตในความคิดเห็น!
ผู้ขาย Mitchel

46
ฉันรักความซื่อสัตย์
เจฟฟ์ชูมัคเกอร์

2
ขั้นตอนแรกในการปรับปรุงคือการรับทราบข้อบกพร่อง
icelava

ยอมรับความผิดพลาดของคุณก่อนที่คนอื่นจะพูดเกินจริง :)
naveen

324
// If this comment is removed the program will blow up 

201
เมื่อนานมาแล้วฉันได้แก้ไข segfault ใน Java3D โดยไม่ตั้งใจโดยเพิ่มความคิดเห็น มันทำซ้ำได้ 100% หากฉันลบความคิดเห็นมันล้มเหลว ตราบใดที่ความคิดเห็นอยู่ที่นั่นมันก็ใช้ได้ดี ฉันคิดว่ามันเป็นปัญหาจังหวะเวลาที่แปลกประหลาด แต่ฉันไม่เคยคิดออกว่าเกิดอะไรขึ้น
DNS

54
Magic / More Magic
DevinB

16
นี่เป็นเหมือนไวรัส มันมีเนื้อหาหมายถึงการปกป้องตัวเอง มันเหมือนกับ DNA ขยะที่คัดลอกตัวเองได้ดี
ชาร์ลีดอกไม้

23
คุณควรเปรียบเทียบ bytecode ที่สร้างขึ้นโดยรุ่นที่ 2
JoelFan

13
ฉันใช้เวลาครึ่งวันละครั้งในการคิดว่าการจบความคิดเห็น C ด้วย\ (ใช้เพื่อทำเครื่องหมายทิศทางที่เรากำลังไปในอาร์เรย์ 2 มิติ) ทำให้คอมไพเลอร์ข้ามบรรทัดถัดไป
Tgr
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.