คำถามติดแท็ก notation

7
วิธีเขียนคำว่าอูฐสำหรับคำเช่น "phonenumber", "มอเตอร์ไซค์", "wavelength" ฯลฯ
ฉันมีปัญหาในการทำความเข้าใจวิธีใช้ไวยากรณ์ camelCaseกับชื่อตัวแปรบางส่วนของฉัน ตัวอย่างเช่นฉันควรเขียนคำอย่าง "phonenumber" ในกรณีอูฐอย่างไร มันเป็นphoneNumberหรือphonenumber? เช่นเดียวกันกับ "ชื่อผู้ใช้" ใช่usernameหรือuserNameไม่ ฉันคิดว่ามันไม่ได้มองขวามีกรณีเช่นอูฐmotorCycle, passWord, sunDay, setUpหรือwaveLengthเพราะสิ่งเหล่านี้เป็นเพียงหนึ่งในแต่ละคำ ฉันคิดว่าอาจเป็นสาเหตุที่เรียกว่าhashMapแต่hashtableในกรณีอูฐที่ไม่มีทุนในกรณีสุดท้ายเพราะ hashtable เป็นหนึ่งคำในขณะที่แฮชแผนที่คือสองคำ แต่ถ้ามอเตอร์ไซค์มีสีก็จะเป็นmotorcycleColorเพราะคำต่อกัน? ว่าถูกต้องหรือมันควรจะเป็นphoneNUmber, waveLength, sunBlockและแม้กระทั่งsunDayสำหรับวันอาทิตย์ของสัปดาห์? ทำไมตัวอย่างเป็นวิธีการที่เรียกว่าgetISOCountriesในขณะที่มันพูดว่าHttpHeadersเช่นมันไม่ชัดเจนว่าจะกลายเป็นตัวพิมพ์เล็กถ้าเรามีวิธีการเหมือนหรือString camelCaseString = dog.toCamelCase()interface CamelCase ที่เกี่ยวข้อง: https://english.stackexchange.com/questions/889/when-should-compound-words-be-written-as-one-word-with-hyphens-or-with-spaces

13
คุณนำหน้าชื่อตัวแปรด้วยตัวย่อของชนิดตัวแปรหรือไม่? (สัญลักษณ์ของฮังการี) [ปิด]
ในงานปัจจุบันของฉันไม่มีแนวทางการเข้ารหัส ทุกคนสวยมากในแบบที่เขาต้องการ ซึ่งเป็นเรื่องดีเนื่องจาก บริษัท มีขนาดเล็ก อย่างไรก็ตามมีผู้ชายคนใหม่หนึ่งคนที่เสนอให้ใช้สัญกรณ์ฮังการีเสมอ จนถึงตอนนี้พวกเราบางคนใช้สัญกรณ์ฮังการีบางประเภทพวกเราบางคนก็ทำไม่ได้ คุณรู้ไหมว่าเป็น บริษัท ด้านวิศวกรรมดังนั้นรูปแบบการเข้ารหัสจึงไม่สำคัญตราบใดที่อัลกอริทึมนั้นมีเสียง โดยส่วนตัวแล้วฉันรู้สึกว่าตัวย่อแบบเล็ก ๆ เหล่านี้ซ้ำซ้อน ชื่อที่คิดมาอย่างดีมักจะส่งข้อความเดียวกัน (ยิ่งไปกว่านั้นโค้ดส่วนใหญ่ของเราต้องทำงานกับ DSP ที่แปลกประหลาดบางอย่างซึ่งมีแนวคิดเหมือนboolหรือfloatไม่มีอยู่แล้ว) ดังนั้นคุณรู้สึกอย่างไรเกี่ยวกับสัญลักษณ์ของฮังการี? คุณใช้หรือไม่ ทำไม?

2
ทำไม Big O จึงสอนแทน Big Theta
สัญลักษณ์ Big O จัดเตรียมขอบเขตบนของฟังก์ชันในขณะที่ Big Theta ให้ขอบเขตที่ จำกัด อย่างไรก็ตามฉันพบว่าสัญกรณ์ Big O โดยทั่วไปแล้ว (และเป็นทางการ) สอนและใช้เมื่อพวกเขาหมายถึง Big Theta จริงๆ เช่น "Quicksort คือ O (N ^ 2)" สามารถเปลี่ยนเป็นคำพูดที่แข็งแกร่งมากขึ้น "Quicksort คือΘ (N ^ 2)" ในขณะที่การใช้ Big O นั้นถูกต้องทางเทคนิคการใช้ Big Theta ที่แพร่หลายจะไม่แสดงออกและนำไปสู่ความสับสนน้อยลงหรือไม่ มีเหตุผลทางประวัติศาสตร์บ้างไหมว่าทำไม Big O นี้จึงถูกใช้มากกว่าปกติ? หมายเหตุWikipedia : อย่างไม่เป็นทางการโดยเฉพาะอย่างยิ่งในวิทยาการคอมพิวเตอร์สัญกรณ์บิ๊กโอมักได้รับอนุญาตให้ถูกทารุณกรรมบ้างเพื่ออธิบายขอบเขตที่ไม่มีซีมโทติคที่ใช้สัญกรณ์บิ๊กซีอาจจะเหมาะสมกว่าในบริบทที่กำหนด

8
อะไรคือสิ่งที่ดึงดูดความสนใจของชาวฮังการี [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ในสิ่งที่ตั้งชื่อแนวทางใดที่คุณทำตาม? ผู้เขียนพูดว่า: นอกจากนี้ฉันชอบเขียนโค้ดโดยใช้สัญกรณ์ฮังการีจาก Charles Simonyi ฉันทำงานกับโปรแกรมเมอร์หลายคนที่ยังคงชอบใช้ภาษาฮังการีซึ่งส่วนใหญ่เป็นรสชาติของ Petzold / Systems Hungarian dwLength = strlen(lpszName)คิด ฉันได้อ่านการสร้างรหัสผิดดูผิดและฉันเข้าใจเหตุผลของ Apps Hungarian ซึ่งข้อมูลประเภทโดเมนรวมอยู่ในชื่อตัวแปร แต่ฉันไม่เข้าใจค่าในการจับคู่ประเภทคอมไพเลอร์กับชื่อ ทำไมโปรแกรมเมอร์ยังคงใช้รูปแบบของสัญกรณ์นี้อยู่? มันเป็นเพียงความเฉื่อย มีประโยชน์ใดบ้างที่เกินความสามารถในการอ่านที่ลดลง? ผู้คนเพิ่งเรียนรู้ที่จะเพิกเฉยต่อนักตกแต่งเมื่ออ่านรหัสและถ้าเป็นเช่นนั้นพวกเขาจะเพิ่มมูลค่าได้อย่างไร? แก้ไข: คำตอบจำนวนมากกำลังอธิบายประวัติหรือเหตุใดจึงไม่มีความเกี่ยวข้องอีกต่อไปซึ่งทั้งสองข้อนี้ครอบคลุมอยู่ในบทความที่ฉันอ้างถึง ฉันอยากได้ยินจากใครที่ยังใช้มันอยู่ ทำไมคุณใช้มัน มันอยู่ในมาตรฐานของคุณหรือไม่ คุณจะใช้มันหรือไม่ถ้าไม่จำเป็น? คุณจะใช้มันในโครงการใหม่หรือไม่? คุณเห็นว่าอะไรคือข้อดี?

2
จะแสดงชุดใน JSON อย่างไร
JSON สนับสนุนโครงสร้างข้อมูลต่อไปนี้ (เทียบเท่า Java): Scalar, Array / List และ Map A Setไม่รองรับ out-of-the-box ใน JSON ฉันคิดหลายวิธีในการเป็นตัวแทนของชุดใน JSON: [1] - เป็นรายการ อย่างไรก็ตามรายการมีลำดับของตัวเองดังนั้นสองรายการต่อไปนี้["a", "b"]และ["b", "a"]ไม่เท่ากับรายการ แต่พวกเขาควรจะเท่ากับชุด [2] - เป็นแผนที่ ใช้ชุดคีย์ของแผนที่และละเว้นค่า แต่อีกครั้งโดยใช้การเปรียบเทียบแบบมาตรฐานทั้งสองแบบไม่เหมือนกับแผนที่: {"a": "foo", "b": "bar"}, {"a": null, "b": null} [3] - เป็นแผนที่ที่มีค่าพิเศษ ใช้สเกลาร์พูด0หรือnullบังคับให้มันเป็นค่าของทุกคีย์ในแผนที่: {"a": 0, "b": 0} ด้วยวิธีนี้ภายใต้เครื่องมือเปรียบเทียบมาตรฐานวัตถุจะเท่ากันแม้ว่าจะเปลี่ยนการเรียงลำดับคีย์ อย่างไรก็ตามเทคนิคนี้สร้างมลภาวะเอกสาร JSON ด้วยข้อมูลที่ไม่เกี่ยวข้อง [4] …

12
คำนำหน้าประเภทและขอบเขตมีประโยชน์หรือไม่
เมื่อเร็ว ๆ นี้เริ่มงานแรกของฉันในฐานะนักพัฒนาซอฟต์แวร์ฉันถูกโยนลงมาเล็กน้อยเพื่อบอกว่าฉันไม่ต้องทำตามอนุสัญญาการตั้งชื่อใด ๆ ในรหัสของฉัน รหัสที่เขียนโดยกลุ่มที่ทำงานในโครงการอื่น ๆ โครงการขนาดใหญ่ตามอนุสัญญาการตั้งชื่อ แต่เนื่องจากฉันถูกนำเข้ามาเขียนแอปพลิเคชั่นใหม่สแตนด์อะโลนความรู้สึกคือว่ามันไม่สำคัญเลย มันเป็นความกังวลครั้งสุดท้ายของฉันดังนั้นฉันแค่ทำตามแบบแผนเดิมที่มีอยู่แล้วก็วิ่งไปด้วย int nTickCount bool bConnected object[] m_aItems fSum += fWeight * fValue class cManager enum etSystemStates etSystemStates eState cManager.cs แต่มันคุ้มค่าจริงหรือ ฉันคิดว่ามันยากที่จะตัดสินผลกระทบสุทธิว่าการทำตามแบบแผนการตั้งชื่อแบบนี้มีความเข้าใจและการตรวจจับข้อผิดพลาด แต่จากการมองเห็นมันก็ดูน่าเกลียด นอกจากนี้การมีทุกคลาสและไฟล์ทั้งหมดในโครงการที่เรียกว่า cSomething ดูเหมือนว่าจะไม่ค่อยสวย ฉันไม่ได้อยู่ภายใต้ภาพลวงตาว่าเป็นเรื่องใหญ่ระยะไกลเมื่อเปรียบเทียบกับสิ่งที่สร้างความแตกต่างอย่างชัดเจนเช่นอัลกอริธึมและสถาปัตยกรรมที่คุณใช้ แต่การประชุมใด ๆ ที่มีผลต่อรหัสทุกบรรทัดที่ฉันเขียนดูเหมือนว่าคุ้มค่า คุณคิดว่ารูปแบบการตั้งชื่อที่หรูหราและมีประสิทธิภาพที่สุดคืออะไรหากจำเป็นต้องใช้เลย? มันแสดงถึงประเภทและ / หรือขอบเขตหรือไม่?

6
คุณตั้งชื่อการควบคุม GUI ของคุณได้อย่างไร?
มันเป็นโดยทั่วไปถือว่าการปฏิบัติที่ดีที่จะใช้สัญกรณ์ฮังการีแต่เป็นเรื่องธรรมดาที่จะหาการควบคุม GUI ชื่อและuserNameTextBoxuserNameLabel คุณใส่ประเภทการควบคุมลงในชื่อหรือไม่ นี่เป็นสัญกรณ์ฮังการีไม่ใช่หรือ


2
pi หมายความว่าอย่างไรใน pseudocode อัลกอริทึม BFS นี้
ฉันมีรหัสเทียมต่อไปนี้สำหรับอัลกอริทึมการค้นหาแบบกว้าง BFS(G,s) 1 for each vertex u ∈ V(G) \ {s} 2 color[u] = white 3 d[u] = ∞ 4 π[u] = nil 5 color[s] = gray 6 d[s] = 0 7 π[s] = nil 8 Q = ∅ 9 Enqueue(Q,s) 10 while q ≠ ∅ 11 u = Dequeue(Q) …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.