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

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

5
ภาษาโปรแกรมเทียบกับภาษามาร์กอัปกับภาษาสคริปต์
จนถึงตอนนี้ฉันไม่ทราบความแตกต่างที่สำคัญระหว่างทั้งสามนี้ เมื่อมีคนถามฉันเกี่ยวกับเรื่องนี้ฉันจะบอกพวกเขาว่า C # เป็นภาษาการเขียนโปรแกรม HTML และ XML เป็นภาษามาร์กอัปและ JavaScript และ VBScript เป็นภาษาสคริปต์ แต่อะไรคือความแตกต่างที่สำคัญที่ทำให้พวกเขาแตกต่างจากคนอื่น?

10
เหตุใดวันนี้ () เป็นตัวอย่างของฟังก์ชันที่ไม่บริสุทธิ์
ดูเหมือนว่าเมื่ออ่านบางอย่างเช่นบทความ Wikipedia เกี่ยวกับ "ฟังก์ชั่นบริสุทธิ์"พวกเขาระบุToday()ว่าเป็นตัวอย่างของฟังก์ชั่นที่ไม่บริสุทธิ์ แต่ดูเหมือนว่าบริสุทธิ์สำหรับฉัน เป็นเพราะไม่มีอาร์กิวเมนต์อินพุตที่เป็นทางการหรือไม่ เหตุใดเวลาที่แท้จริงของวันจึงไม่ถือว่าเป็น "อินพุตไปยังฟังก์ชัน" ซึ่งในกรณีนี้ถ้าคุณให้อินพุตเดียวกันนั่นคือดำเนินการtoday()สองครั้งในเวลาเดียวกันหรือย้อนเวลากลับไปดำเนินการอีกครั้ง (อาจเป็นสมมุติฐาน: )) ผลลัพธ์จะเป็นเวลาเดียวกัน Today()ไม่เคยให้ตัวเลขสุ่ม มันให้เวลากับวันเสมอ บทความ Wikipedia กล่าวว่า "เวลาที่ต่างกันมันจะให้ผลลัพธ์ที่แตกต่างกัน" แต่นั่นก็เหมือนกับการบอกว่าต่างกันx sin(x)จะให้อัตราส่วนต่างกัน และsin(x)เป็นตัวอย่างของฟังก์ชันบริสุทธิ์

24
สิ่งที่เป็นนามธรรม [ปิด]
มีคำจำกัดความที่ตกลงกันโดยทั่วไปสำหรับสิ่งที่เป็นนามธรรมของการเขียนโปรแกรมตามที่ใช้โดยโปรแกรมเมอร์หรือไม่ [หมายเหตุการเขียนโปรแกรมเชิงนามธรรมไม่ต้องสับสนกับคำจำกัดความของพจนานุกรมสำหรับคำว่า "สิ่งที่เป็นนามธรรม"] มีคำจำกัดความที่ชัดเจนหรือแม้แต่ทางคณิตศาสตร์หรือไม่? อะไรคือตัวอย่างที่ชัดเจนของ abstractions?

5
คำสำหรับการดำเนินการที่สามารถนำมาใช้หลายครั้งและไม่เคยเปลี่ยนสถานะเกินกว่าแอปพลิเคชันเริ่มต้นคืออะไร
ฉันพยายามจำคำหนึ่งฉันคิดว่ามันเกี่ยวข้องกับทฤษฎีการคำนวณหรือฐานข้อมูล คำพ้องความหมายที่ใกล้เคียงที่สุดคือatomicแต่นั่นไม่ใช่สิ่งที่แน่นอน โดยทั่วไปมันเป็นการคำนวณที่ควรให้ผลลัพธ์เหมือนกันแม้ว่าจะทำงานหลาย ๆ ครั้งในแถวหมายความว่ามันจะไม่สร้างผลข้างเคียงให้กับตัวเอง ฉันวิ่งข้ามคำนี้ในคำตอบ Stack Overflow เกี่ยวกับคำสั่ง chmod (หรือการดำเนินการอื่น ๆ ที่เกี่ยวข้องกับการอนุญาต) หวังว่าจะเพียงพอต่อไป การพูดถึงวิกิพีเดียไม่ได้ช่วยอะไรมาก

8
อะไรคือความแตกต่างระหว่าง 'เลเยอร์ของสิ่งที่เป็นนามธรรม' และ 'ระดับทางอ้อม'?
ฉันไม่แน่ใจว่าสามารถใช้ทั้งสองคำได้หรือไม่ อาจจะมีความแตกต่างทางวิชาการในวิทยาการคอมพิวเตอร์ซึ่งไม่เกี่ยวข้องกับการเขียนโปรแกรมแบบวันต่อวันหรือไม่ หรือฉันสามารถใช้ทั้งคำแทนกันได้โดยไม่ผิด อาจขึ้นอยู่กับบริบทที่ฉันใช้ทั้งสองคำ แก้ไข: ในเหตุผลที่ว่าทำไมผมพบคำทั้งสองอาจจะใช้แทนกันเป็นรายการเกี่ยวกับวิกิพีเดียชั้นที่เป็นนามธรรม คุณสามารถหาคำพูดของDavid Wheelers ที่ว่า 'ปัญหาทั้งหมดในวิทยาการคอมพิวเตอร์สามารถแก้ไขได้ด้วยการเปลี่ยนทิศทางในระดับอื่น'

3
"วิธีการเรียน" และ "วิธีการแบบอินสแตนซ์" ใน Python คืออะไร
มีการพูดคุยกันในการแชทเกี่ยวกับคำถาม (คำถามนั้นไม่เกี่ยวข้องกับคำถามนี้) ซึ่งได้เปิดเผยว่าฉันอาจไม่รู้จัก Python แต่อย่างใด ในใจของฉันถึงแม้ว่าคำศัพท์จะแตกต่างกันไปในแต่ละภาษา [ฟรี] ฟังก์ชั่น วิธีการคงที่ / ฟังก์ชั่นสมาชิกคงที่ วิธีการไม่คงที่ / ฟังก์ชั่นสมาชิกคงที่ เห็นได้ชัดว่าใน Python มีฟังก์ชั่นอีกประเภทหนึ่งที่ไม่เหมาะกับหมวดหมู่ข้างต้นซึ่งเป็นวิธีการหนึ่ง แต่ "ไม่รู้จักคลาส" "วิธีการเรียน" และ "วิธีการเช่น" ใน Python คืออะไร?

8
อะไรคือคำว่าซอร์สโค้ดที่ใหญ่มากที่คอมมิท [ปิด]
บางครั้งเมื่อเราตรวจสอบประวัติการกระทำของซอฟต์แวร์เราอาจเห็นว่ามีข้อผูกพันบางอย่างที่ใหญ่มาก - พวกเขาอาจเปลี่ยนไฟล์ 10 หรือ 20 ไฟล์ที่มีการเปลี่ยนแปลงหลายร้อยบรรทัดซอร์สโค้ด (เดลต้า) ฉันจำได้ว่ามีคำที่ใช้กันทั่วไปสำหรับการกระทำที่ยิ่งใหญ่ แต่ฉันจำไม่ได้ว่าคำนั้นคืออะไร มีใครช่วยฉันบ้าง อะไรคือคำที่ผู้เขียนโปรแกรมมักใช้เพื่ออ้างถึงการกระทำที่ยิ่งใหญ่และยักษ์ใหญ่? BTW มีการเปลี่ยนแปลงมากมายรวมกันเป็นแนวปฏิบัติที่ดีหรือไม่? ปรับปรุง: ขอบคุณพวกคุณสำหรับการสนทนาที่สร้างแรงบันดาลใจ! แต่ฉันคิดว่า "code bomb" เป็นคำที่ฉันกำลังมองหา

6
ทำไมโปรแกรมเมอร์ที่ดีถึงเรียกว่านินจา? [ปิด]
โปรแกรมเมอร์นินจาถูกกำหนดอย่างไร? หากเป็นเพียงนักพัฒนาที่มีประสบการณ์แล้วไม่มีวิธีที่ดีกว่าในการอธิบายสิ่งนั้นหรือไม่? นินจาฟังดูเหมือนเป็นลูกตลาดที่ออกแบบมาเพื่อดึงดูดนักพัฒนาด้วยความหลงผิดของตนเอง หรือฉันกำลังพลาดอะไรอยู่? โดยเฉพาะฉันต้องการทราบว่าคุณสมบัติของ Ninja เป็นที่ต้องการในโปรแกรมเมอร์ที่ทำให้การเปรียบเทียบมีผล (นอกเหนือจากปัจจัยความเท่)? ฉันได้พบบทความนี้ซึ่งทำให้การเปรียบเทียบที่ดีระหว่างลักษณะนินจาและการพัฒนาความคล่องตัว อย่างไรก็ตามฉันต้องการที่จะได้ยินจากคนที่ใช้คำว่า Ninja เพื่อการจ้างงานและแรงจูงใจของพวกเขาอยู่ข้างหลัง อัปเดต:มีการให้คะแนนที่ดีมากมายทั้งสองด้านของการโต้แย้ง ฉันได้พยายามที่จะสรุปเหล่านี้ในการโพสต์บล็อกของฉัน ฉันเลือกคำตอบของ JB ว่าเป็นคำตอบที่ยอมรับได้เพราะมันสรุปเหตุผลที่ถูกต้องทั้งหมดเพื่อทำการเปรียบเทียบ


2
ความหมายของ "ไม่แต่ง" คืออะไร?
ฉันเห็นมากของตำราโดยเฉพาะอย่างยิ่งการทำงานตำราการเขียนโปรแกรมที่อ้างว่าบางแนวคิด CS "ไม่แต่ง" ตัวอย่างคือ: ล็อคไม่เขียน, monads ไม่ได้เขียน ฉันมีช่วงเวลาที่ยากลำบากในการติดตามความหมายของวลีนี้ เมื่อฉันคิดถึงองค์ประกอบฉันคิดว่าทั้งองค์ประกอบของฟังก์ชั่นหรือการรวมวัตถุ (เช่นใน "องค์ประกอบที่โปรดปรานเหนือการสืบทอด") แต่ดูเหมือนจะไม่เป็นความรู้สึกที่ผู้คนใช้ที่นี่ ใครสามารถอธิบายความหมายของวลีนี้เมื่อใช้ในการแสดงออกเช่นสองตัวอย่างด้านบน (นั่นคือล็อคและพระ)

2
Node.js เป็นกรอบงานหรือไม่? [ปิด]
ฉันเห็นผู้สรรหาผู้พัฒนา ฯลฯ อ้างถึง Node.js เป็นกรอบ ในความคิดของฉันนี่เป็นสิ่งที่ไม่รู้ว่า Node.js เป็นอย่างไร บ่อยครั้งในคำบรรยายลักษณะงาน Node.js ถูกจัดกลุ่มเป็นห้องสมุดท่ามกลางAngularJS , Reactและอื่น ๆ โดยทั่วไปฉันเห็นว่าเป็นการถูกป้อนโดยบุคคลที่ไม่ทราบความแตกต่าง (HR, ผู้สรรหา ฯลฯ ) ในความคิดของฉัน Node.js เป็นแพลตฟอร์มหรือสภาพแวดล้อมรันไทม์ มันสลับ DOM API (JavaScript ในเบราว์เซอร์) สำหรับ API อื่น ๆ เช่นระบบไฟล์ (เนื่องจากทำงานเป็นเซิร์ฟเวอร์ไม่ใช่ในเบราว์เซอร์) ทำไมคนคิดว่า Node.js เป็นกรอบ; ฉันผิดหรือเปล่า จริง ๆ แล้วเป็นกรอบหรือไม่

6
พลังการแสดงออกที่เฉพาะเจาะจงหมายถึงอะไร?
พลังความหมายถูกกำหนดโดย Wikipedia ในฐานะ: .. ความกว้างของความคิดที่สามารถเป็นตัวแทนและสื่อสารในภาษานั้น "ความคิด" หมายถึงสิ่งต่าง ๆ (การดำเนินงานโครงสร้างอัลกอริธึม ฯลฯ ) เราสามารถสื่อสารกับเครื่องได้หรือไม่? หรือมันอ้างถึงแนวคิด "มนุษย์" ที่สามารถบันทึกและสื่อสารกับภาษากับคนอื่น ๆ ? พลังงานที่แสดงออกได้ประเมินและวัดค่าอย่างไร ตัวอย่างเช่นหากเราใช้ภาษาเช่น JavaScript และกำหนดข้อ จำกัด แปลก ๆ สำหรับชื่อตัวแปรเช่นตัวแปรต้องเป็นตัวเลข 8 หลักที่นำหน้าด้วยขีดล่างการจับคู่/^_[0-9]{8}$/เราจะสูญเสียพลังในการแสดงออกหรือไม่? หรือจะว่าเพียง แต่จะไร้สาระและน่ารำคาญ? เพื่อชี้แจง: อำนาจการแสดงออกที่วัดโดยความคิดทั่วไปที่มีอยู่ในภาษา: จำนวนเต็มและสตริง ลูป เงื่อนไข หรือหมายเลขของเฉพาะความคิดที่ไม่ซ้ำกันว่าภาษาที่สามารถเป็นตัวแทน: จำนวนเต็ม 1, 2 ... 2 ^ 32 สตริงที่มี "สุนัขจิ้งจอกพูดว่าอะไร" และ "wha pah pah pah pah …

3
ไบนารีคืออะไร [ปิด]
ฉันเห็นผู้ใช้ไบนารีคำศัพท์ในบริบทที่แตกต่างกันมาก ไบนารีคืออะไร การรวบรวมไฟล์ไบนารีไฟล์ติดตั้งไฟล์. dll หรืออะไร หรือเป็นคำทั่วไปสำหรับการรวบรวมไฟล์บางส่วนในดิสก์?

4
อะไรคือคำศัพท์สำหรับการฟื้นฟูสภาพประเภทนี้
ฉันแน่ใจว่ามีคำศัพท์สำหรับการรีแฟคเตอร์ต่อไปนี้ แต่ฉันจำไม่ได้และ Google-fu ของฉันกำลังทำให้ฉันล้มเหลว! refactor จะย้ายถ้าข้อความไปยังตำแหน่งที่พวกเขาจะได้รับผลกระทบมากที่สุดเช่นการเปลี่ยนแปลง $test = someFunctionThatReturnsABool(); for($x = 0; $x < 10000; $x++) { if ($test) { echo $x; } } สำหรับสิ่งนี้ $test = someFunctionThatReturnsABool(); if ($test) { for($x = 0; $x < 10000; $x++) { echo $x; } }


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