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

คำถามเกี่ยวกับความหมายวัตถุประสงค์หรือความเข้าใจร่วมกันของคำและแนวคิดที่เกี่ยวข้องกับวงจรชีวิตการพัฒนาระบบ

5
คำจำกัดความที่เป็นทางการสำหรับคำว่า "ภาษา OO บริสุทธิ์"?
ฉันไม่สามารถนึกถึงสถานที่ที่ดีขึ้นในหมู่พี่น้อง SO เพื่อตั้งคำถามเช่นนี้ เดิมทีฉันอยากถามว่า "python เป็นภาษา OO บริสุทธิ์หรือไม่" แต่เมื่อพิจารณาถึงปัญหาและประสบการณ์ที่ไม่สะดวกสบายของผู้คนในขณะที่พยายามกำหนดคำศัพท์ฉันตัดสินใจเริ่มต้นด้วยการได้คำจำกัดความที่ชัดเจนสำหรับคำนั้น ๆ มันค่อนข้างยุติธรรมที่จะเริ่มต้นด้วยการโต้ตอบโดยดร. อลันเคย์ซึ่งเป็นคนบัญญัติศัพท์ (สังเกตแรงบันดาลใจในการเปรียบเทียบทางชีววิทยากับเซลล์หรือสิ่งมีชีวิตอื่น ๆ ) มีวิธีการดังต่อไปนี้ในการเข้าถึงภารกิจ: ให้การวิเคราะห์เชิงเปรียบเทียบโดยการแสดงรายการภาษาการเขียนโปรแกรมที่สามารถแสดง (หรือไม่สามารถทำได้) คุณสมบัติบางอย่างที่ไม่ซ้ำกันและเพียงพอที่จะกำหนดคำศัพท์ (แม้ว่า Smalltalk, Scala, Javaและอื่น ๆ ) เป็นตัวอย่างที่เป็นไปได้ แต่ IMO ไม่เกิดผล ) ให้คำจำกัดความอย่างเป็นทางการ (หรือใกล้เคียงกับมันเช่นในเชิงวิชาการหรือเชิงคณิตศาสตร์มากขึ้น) ให้คำนิยามเชิงปรัชญาที่ต้องพึ่งพาบริบทเชิงความหมายของภาษาที่เป็นรูปธรรมหรือประสบการณ์การเขียนโปรแกรมเบื้องต้น (ต้องมีโอกาสในการอธิบายที่ประสบความสำเร็จโดยชุมชน) รุ่นปัจจุบันของฉัน: "ถ้าเขียนโปรแกรมบางอย่าง ( อย่างเป็นทางการ ) ภาษาที่สามารถ ( หลักไวยากรณ์ ) ความแตกต่างระหว่างการดำเนินงานและถูกดำเนินการเช่นเดียวกับการสรุปเกี่ยวกับประเภทของแต่ละตัวถูกดำเนินการไม่ว่าจะเป็นประเภทนี้เป็นวัตถุ (ในความรู้สึกของ OOP) หรือไม่นั้นเราเรียกว่า ภาษาดังกล่าวเป็นภาษา OO ตราบใดที่มีอย่างน้อยหนึ่งประเภทในภาษานี้ซึ่งเป็นวัตถุในที่สุดหากทุกประเภทของภาษาเป็นวัตถุที่เรากำหนดให้ภาษาดังกล่าวจะบริสุทธิ์ …

3
เริ่มต้นอาร์เรย์ในเวลาคงที่ที่ตัดจำหน่ายแล้ว - กลวิธีนี้เรียกว่าอะไร?
มีโครงสร้างข้อมูลนี้ที่แลกเปลี่ยนประสิทธิภาพของการเข้าถึงอาเรย์กับความต้องการที่จะวนซ้ำมันเมื่อล้างมัน คุณเก็บตัวนับรุ่นกับแต่ละรายการและตัวนับรุ่นสากล การดำเนินการ "ล้าง" เพิ่มตัวนับการสร้าง ในการเข้าถึงแต่ละครั้งคุณจะเปรียบเทียบตัวนับรุ่นเทียบกับระดับโลก หากพวกเขาแตกต่างกันค่าจะถือว่าเป็น "สะอาด" คำตอบนี้เกิดขึ้นในStack Overflowเมื่อเร็ว ๆ นี้ แต่ฉันจำไม่ได้ว่าเคล็ดลับนี้มีชื่ออย่างเป็นทางการหรือไม่ ทำมัน? กรณีใช้งานอย่างหนึ่งคืออัลกอริธึมของ Dijkstraหากมีเพียงส่วนย่อยของโหนดที่จะต้องผ่อนคลายและหากต้องทำซ้ำ ๆ

2
“ กระบวนการนกขมิ้น” คืออะไร
ในหนังสือ "Hard Code" โดย Eric Brechner เขากล่าว การโกหกเป็นหนึ่งในนกขมิ้นที่มีคุณค่าในกระบวนการที่สามารถเตือนคุณถึงปัญหา ฉันเคยได้ยิน dev หรือสองโยนรอบ "นกขมิ้น" เก่า มันคืออะไร? [Google ไม่ได้ตอบให้ฉัน บางทีคำหลักของฉันอาจเป็นตัวเลือกที่ไม่ดี]

5
“ วิธีการ” เป็นคำพิเศษใน OOP มาจากที่ใด
"วิธีการ" เป็นคำพิเศษในการเขียนโปรแกรมเชิงวัตถุ ไม่มีใครรู้ว่าเมื่อใดที่เริ่มใช้คำนี้ในแง่นี้และเกี่ยวข้องกับภาษาโปรแกรมหรือสาขาอื่น ๆ ของการเรียนรู้เชิงปริมาณ

16
อะไรคือวิธีที่ดีกว่าในการอธิบายกระบวนการ“ Idiot Proofing” ชิ้นส่วนของซอฟต์แวร์ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ปิดให้บริการใน8 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ สำหรับฉันแล้ว Idiot Proofing นั้นหมายถึงการทำให้แน่ใจว่าผู้ใช้จะไม่สามารถแบ่งซอฟต์แวร์ได้แม้ว่าเขาจะลองก็ตาม ตัวอย่างเช่นหากค่าถูกอ่านจากกล่องข้อความและถูกแปลงเป็น double หากซอฟต์แวร์อ้างอิงนั้นเป็นตัวพิสูจน์ที่งี่เง่าก็จะไม่แตกหากผู้ใช้พิมพ์ในค่าที่ไม่ใช่ double ฉันเพิ่งเขียนกำหนดการพัฒนาและหนึ่งในรายการที่ชื่อว่า "Idiot proof UI" ผู้คนที่ฉันกำลังสร้างซอฟท์แวร์นี้แกล้งทำผิดกับคำ แต่ฉันสามารถดูว่าคำนี้จะทำให้คนอารมณ์เสียจริงๆ เป็นวิธีที่ดีกว่าที่จะพูดแบบนี้?

6
ซอฟต์แวร์“ Center of Excellence” (CoE) มีลักษณะอย่างไร?
เมื่อเร็ว ๆ นี้ผู้อำนวยการคนใหม่ของแผนกของฉันเข้ามาและแสดงความปรารถนาว่าเราจะกลายเป็น "ศูนย์กลางของความเป็นเลิศ" ฉันคาดหวังว่าเนื่องจากเขาเป็นเจ้านายคนแรกของฉันที่จริงมีพื้นฐานการเขียนโปรแกรมที่จะมีคำอธิบายบางอย่างนี้ อย่างไรก็ตามมันถูกทิ้งไว้ที่ ในขณะที่ฉันเห็นสิ่งนี้ในช่วงไม่กี่วันที่ผ่านมาฉันกำลังจะว่างเปล่าในสิ่งที่ CoE หมายถึงแท้จริงนอกเหนือจาก "การมีประสิทธิภาพ" ในการส่งมอบผลิตภัณฑ์ นี่คือรายการหลักที่ฉันกำลังดิ้นรนกับ: นี่เป็นเพียงคำศัพท์ที่ถูกโยนทิ้งไปตามประเภทการจัดการหรือไม่? คุณสมบัติอะไรที่ทำให้กลุ่มนักพัฒนาซอฟต์แวร์และผู้ทดสอบยอดเยี่ยม คุณวัดความเป็นเลิศในบริบทนี้ได้อย่างไร

8
ความซับซ้อนของจุดไม่กลับมา คุณเรียกว่าอะไร
ในฐานะนักพัฒนาซอฟต์แวร์หนึ่งในภารกิจหลักของฉันคือรักษาความซับซ้อนภายใต้การควบคุม อย่างไรก็ตามในบางโครงการมีช่วงเวลาที่ระดับความซับซ้อนเพิ่มขึ้นสูงจนถึงจุด "ไม่กลับ" ที่ผ่านมาช่วงเวลานี้คุณไม่สามารถกลับโครงการไปสู่ระดับความซับซ้อนที่ยอมรับได้ในเวลาน้อยกว่าที่คุณจะต้องเขียนใหม่ทุกอย่างตั้งแต่เริ่มต้น ช่วงเวลาที่เฉพาะเจาะจงนี้มีชื่อในภาษาโปรแกรมเมอร์หรือไม่ --edit-- ขออภัยถ้าฉันไม่ชัดเจน ฉันไม่คิดว่า "ช่วงเวลา" นี้มีชื่อเป็นทางการหรือเป็นตัวชี้วัดที่ร้ายแรง ฉันคิดเกี่ยวกับบางสิ่งบางอย่างในจิตวิญญาณของ"การ Ballmer สูงสุด" ใน xkcd


9
ข้อกำหนด "โปรโตคอล" และ "มาตรฐาน" แตกต่างกันอย่างไร
ฉันพบคำว่า "โปรโตคอล" ทำให้เกิดความสับสน (ในแง่ของวิทยาศาสตร์คอมพิวเตอร์นั่นคือ) หากโปรโตคอลเป็นเพียงชุดของกฎมันจะง่ายกว่าไหมถ้าเราใช้คำว่า "มาตรฐาน" แทน (เช่นใน "มาตรฐาน HTTP")

2
วัตถุการเปิดใช้งานใน JavaScript คืออะไร?
ในบริบทการดำเนินการที่กำหนดวัตถุตัวแปรเป็นวัตถุการเปิดใช้งานของบริบทการดำเนินการนั้น จากการวิจัยออนไลน์ของฉันฉันสามารถค้นหาประโยคก่อนหน้านี้ที่ใช้ถ้อยคำใหม่ในวิธีที่ต่างกัน แต่ไม่มีใครสามารถบอกได้ว่ามันคืออะไร วัตถุการเปิดใช้งานคืออะไร

11
“ มนุษย์อ่านได้” หมายความว่าอะไร? มันเป็นการเรียกชื่อผิดหรือไม่?
ตัวอย่างของฤดูใบไม้ผลิที่ใจสอง: เหตุผลหนึ่งที่โปรแกรมเมอร์. Net ได้รับการสนับสนุนให้ใช้ไฟล์. config แทน Windows Registry ก็คือไฟล์. config เป็น XML และสามารถอ่านได้โดยมนุษย์ ในทำนองเดียวกัน JSON บางครั้งก็ถือว่ามนุษย์สามารถอ่านได้เมื่อเทียบกับรูปแบบที่เป็นกรรมสิทธิ์ มนุษย์สามารถอ่านได้จริงหรือไม่? ในตัวอย่างของข้อมูลการกำหนดค่า: รูปแบบไม่เปลี่ยนแปลงความหมายพื้นฐานของข้อมูล - ในทั้งสองกรณีข้อมูลแสดงถึงสิ่งเดียวกัน ทั้งไฟล์รีจิสทรีและไฟล์. config ถูกจัดเก็บไว้ภายในเป็นซีรีย์ 0s และ 1s ในระดับนั้นตัวแทนที่เป็นรากฐานไม่สามารถอ่านได้อย่างเท่าเทียมกันโดยมนุษย์ ทั้งไฟล์ registry และ. config ต้องการเครื่องมือในการอ่านจัดรูปแบบและแสดง 0s และ 1s เหล่านั้นและแปลงเป็นรูปแบบที่มนุษย์สามารถอ่านได้ ในกรณีของการกำหนดค่าที่เก็บไว้ใน Windows Registry นี่คือตัวแก้ไขรีจิสทรี ในกรณีของ XML มันอาจเป็น text editor หรือ XML reader ไม่ว่าจะด้วยวิธีใดเครื่องมือจะทำให้สามารถอ่านข้อมูลไม่ใช่รูปแบบข้อมูล …

6
คำที่ใช้อธิบายฟังก์ชั่น / วิธีที่แก้ไขวัตถุที่ถูกเรียกนั้นคืออะไร?
ขออภัยสำหรับคำถามทั่วไป ฉันค้นหาทั่วและพบกระทู้จำนวนมากที่คล้ายกันนี้ แต่ไม่ใช่หนึ่งที่ตอบคำถามเฉพาะของฉัน - บางทีอาจเป็นเพราะคำที่ฉันค้นหาไม่มีอยู่ เพื่อนคนหนึ่งของฉันคือการเรียนรู้การเขียนโปรแกรมจาวาสคริปต์โดยเฉพาะและเขาถามฉันว่าทำไมมันถึงไม่ทำงาน: var a = "Hello World"; a.replace("Hello", "Goodbye"); console.log(a) // Logs "Hello World" เหตุผลเป็นเพราะreplaceไม่ได้แก้ไขaเนื่องจากสตริงไม่เปลี่ยนรูปใน JavaSript เพราะมันส่งคืนสตริงคุณต้องทำอะไรบางอย่างเช่น ... var a = "Hello World"; a = a.replace("Hello", "Goodbye"); console.log(a); // Logs "Goodbye World" อย่างไรก็ตามทางเลือกคือฟังก์ชั่นเช่นจาวาสคริปต์reverse()เพราะมันจะทำการแก้ไขสิ่งที่เรียกว่า ตัวอย่างเช่น: var fruits = ["Apples", "Oranges", "Bananas"]; fruits.reverse(); console.log(fruits) // ["Bananas", "Oranges", "Apples"] …

4
ศัพท์เทคนิคที่ใช้แทนการฉีดแบบพึ่งพา?
นี่เป็นศัพท์เฉพาะ (การเขียนเชิงเทคนิค) มากกว่าคำถามทางเทคนิคอย่างแท้จริง ฉันกำลังพยายามเขียนข้อเสนอการปรับโครงสร้างใหม่ (และให้สิทธิ์ตัวเอง) โดยมีศูนย์กลางที่การขยายการฉีดที่ต้องพึ่งพาในแอปพลิเคชันของเรา ในขณะที่เราใช้Springในการเรียกถั่วอัตโนมัติยังคงมีกรณีที่ยกตัวอย่างถั่วที่ใช้MyClass obj = new MyClass(...)ซึ่งสามารถฉีดได้ทั้งหมด ฉันต้องการทำให้ข้อเสนอของฉันใช้ระบบการตั้งชื่อที่สง่างามและอ้างอิงถึงรูปแบบการออกแบบตรงข้ามกับ DI ด้วยคำที่เหมาะสม คำว่า "คับคัปปลิ้ง" เป็นคำที่เพียงพอหรือไม่ที่ตรงกันข้ามกับ DI?

1
ความหมายของคำศัพท์ในการเขียนโปรแกรมคืออะไร
ฉันกำลังดู Objects C บางเอกสาร .. และได้รับสิ่งนี้: UIGraphicsBeginImageContext: สร้างบริบทกราฟิกบิตแมปและทำให้เป็นบริบทปัจจุบัน นอกจากนี้คำเดียวกันนี้ถูกใช้ใน Robotlegs: ( http://www.adobe.com/devnet/actionscript/articles/intro-robotlegs-pt1.html ) บริบท: บริบทเป็นกลไกการเริ่มต้นที่เริ่มต้นการฉีดพึ่งพาและยูทิลิตี้หลักต่างๆที่ Robotlegs ใช้ ความหมายตามพจนานุกรมของบริบทเมื่อฉัน googled ดูเหมือนจะไม่ตรงกับวิธีที่ใช้ในการเขียนโปรแกรม: con · text / ˈkäntekst / คำนามสถานการณ์ที่จัดรูปแบบสำหรับเหตุการณ์คำสั่งหรือแนวคิดและในแง่ที่สามารถเข้าใจและประเมินได้อย่างสมบูรณ์ ส่วนต่าง ๆ ของสิ่งที่เขียนหรือพูดที่นำหน้าและปฏิบัติตามคำหรือข้อความทันทีและอธิบายความหมายของมัน ทุกคนสามารถโยนแสงได้บ้าง! โวลต์

3
วิธีจัดทำเอกสาร API แบบทดสอบหรือที่ไม่สมบูรณ์เช่น @deprecated
มีคำที่ดีที่คล้ายกัน แต่แตกต่างจาก "คัดค้าน" เพื่อหมายความว่าวิธีการหรือ API อยู่ในรหัสฐาน แต่ไม่ควรใช้เนื่องจากการใช้งานไม่สมบูรณ์หรือมีแนวโน้มที่จะเปลี่ยนแปลง? (ใช่ฉันรู้วิธีการเหล่านั้นไม่ควรเปิดเผยต่อสาธารณชน yada yada yada ฉันไม่ได้สร้างสถานการณ์ของฉันฉันแค่พยายามทำให้ดีที่สุดเท่าที่จะทำได้) ผู้คนแนะนำอะไร ทดลองไม่สมบูรณ์มีอะไรอีกหรือ หากฉันกำลังสร้างเอกสาร javadoc สำหรับ API นี้ที่ยังอยู่ในฟลักซ์ฉันควรใช้แท็ก @deprecated หรือมีข้อตกลงที่ดีกว่า สำหรับฉัน @deprecated แสดงว่า API นี้เก่าและมีกลไกที่ต้องการที่ใหม่กว่าพร้อมใช้งาน ในสถานการณ์ของฉันไม่มีทางเลือก แต่วิธีการบางอย่างใน API ยังไม่เสร็จสิ้นและไม่ควรใช้ ณ จุดนี้ฉันไม่สามารถทำให้พวกเขาเป็นส่วนตัว แต่ฉันต้องการที่จะใส่คำเตือนที่ชัดเจนในเอกสาร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.