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

คำถามเชิงทฤษฎีเกี่ยวข้องกับหัวข้อที่ไม่มีการใช้งานจริงในทางปฏิบัติทันที โปรดระวังเมื่อใช้แท็กนี้: คำถามของคุณอาจเหมาะสมกว่าสำหรับไซต์แลกเปลี่ยนวิทยาศาสตร์คอมพิวเตอร์

6
CPU ทำข้อผิดพลาดในการคำนวณบ่อยแค่ไหน?
ในหมายเหตุของ Dijkstra เกี่ยวกับการเขียนโปรแกรมแบบโครงสร้างเขาพูดถึงเรื่องการพิสูจน์ได้ของโปรแกรมคอมพิวเตอร์ในฐานะหน่วยงานที่เป็นนามธรรม ในฐานะที่เป็นข้อพิสูจน์เขากล่าวว่าการทดสอบไม่เพียงพอ เช่นเขาชี้ให้เห็นความจริงที่ว่ามันเป็นไปไม่ได้ที่จะทดสอบฟังก์ชั่นการคูณ f (x, y) = x * y สำหรับค่าใด ๆ ของ x และ y ทั่วทั้งช่วงของ x และ y คำถามของฉันเกี่ยวข้องกับคนอื่น ๆ พูดถึง "ฮาร์ดแวร์หมัด" ฉันรู้ว่าเรียงความที่เขียนขึ้นในปี 1970 เมื่อคอมพิวเตอร์ฮาร์ดแวร์ก็มีความน่าเชื่อถือน้อยลง แต่คอมพิวเตอร์ยังคงไม่สมบูรณ์ดังนั้นพวกเขาจะต้องทำผิดพลาดในการคำนวณบางครั้ง ไม่มีใครรู้ว่าสิ่งนี้เกิดขึ้นบ่อยแค่ไหนหรือหากมีสถิติใด ๆ เกี่ยวกับเรื่องนี้?
22 theory  cpu 

4
เครื่องหมายโคลอนในบล็อกหลามเป็นสิ่งจำเป็นทางเทคนิคหรือไม่
นี่เป็นเพียงคำถามเชิงทฤษฎีของ newbie ใหญ่ที่ต้องการเข้าใจมากขึ้น ฉันลืมโคลอนไปเรื่อย ๆ หลังจากบล็อกข้อความเริ่มต้นในไพ ธ อน นี่คือสิ่งที่ฉันหมายถึง: for <variable> in <sequence>: if <blah blah>: ความคิดของฉันคือเหตุผลหนึ่งที่ฉันลืมอยู่เสมอว่ามันเป็นความจริงโดยนัย: โคลอนหรือไม่คำแถลงลงท้ายด้วยบรรทัดนั้น คำถามของฉัน - ที่ฉันถามเพื่อเรียนรู้วิธีการทำงานของ python ไวยากรณ์ - ไม่ว่าลำไส้ใหญ่ไม่จำเป็นจริงๆ? ฉันจะเปลี่ยนไวยากรณ์ของไพ ธ อนเพื่อไม่ให้โคลอนไม่จำเป็นอีกต่อไปแล้วจะมีอะไรแตกหรือไม่ นั่นจะทำให้ข้อความบางอย่างคลุมเครือหรือเป็นไปไม่ได้ไหม?
19 python  syntax  theory 

6
ตัวอย่างของปัญหาทางธุรกิจที่เป็นไปไม่ได้ที่คำนวณได้คืออะไร
ฉันมีเพื่อนร่วมงานที่ปฏิเสธที่จะยอมรับความจริงที่ว่าเครื่องจักรทัวริง (และเครื่องจักรของ Von Neuman ตามส่วนขยาย) ไม่สามารถแก้ปัญหาการหยุดชะงักของตนเองได้: คุณสามารถทำอะไรกับเวลาและเงินเพียงพอ นอกจากนี้เขายังไม่ชอบปัญหาเชิงทฤษฎีที่โต้แย้งว่า: ในสาขาของเราเราจะไม่พบคำถามเหล่านั้น เราเป็นนักพัฒนาแอปพลิเคชั่นไม่ใช่นักวิทยาศาสตร์ตามทฤษฎี มีตัวอย่างที่ดีของปัญหาทางธุรกิจที่ไม่สามารถคำนวณได้ที่ฉันสามารถใช้เพื่อช่วยโน้มน้าวเขาได้หรือไม่?

4
ทำไม Cem Kaner พิจารณาการทดสอบที่ไม่เปิดเผยข้อผิดพลาดให้เสียเวลา?
สิ่งที่เกี่ยวกับการยืนยันการทำงานในการทดสอบเชิงบวกพิสูจน์ว่ามันทำงาน - ฉันควรจะพูดว่ามันเสียเวลา? แนวคิดแบบไหนที่อยู่เบื้องหลังคำพูดนี้? การทดสอบที่ไม่สำเร็จเช่นการทดสอบที่ไม่พบข้อผิดพลาดนั้นเป็นการเสียเวลา วิศวกรรมเว็บ: วินัยของการพัฒนาระบบการใช้งานเว็บ quoting เซมคเนอร์
15 testing  theory 

5
ทบทวนอัลกอริทึม เหตุใด heapsort ถึงอัลกอริทึม insort
ฉันไม่เห็นสาเหตุที่ heapsort ถูกพิจารณาเป็นอัลกอริธึม เรียงลำดับแบบ inplace ฉันหมายถึงโครงสร้างข้อมูลพิเศษที่มีองค์ประกอบของอาร์เรย์ที่เรียงลำดับเช่น heap ใช้เพื่อช่วยในการแยกค่า min และกระบวนการเรียงลำดับ ดังนั้นฉันอาจเข้าใจผิดนิยามของสถานที่ที่นี่หรือไม่ แต่การเรียงลำดับการแทรกนั้นชัดเจนว่ามันเป็นอัลกอริธึมแบบ inplace นั่นคือไม่จำเป็นต้องมีหน่วยความจำเพิ่มเติมสำหรับองค์ประกอบ แล้วทำไมมันถึงเข้ามาแทนที่

6
วิธีการกู้คืนจากการแยกเครื่อง จำกัด ?
คำถามของฉันดูเหมือนจะเป็นเรื่องวิทยาศาสตร์ แต่ฉันคิดว่ามันเป็นปัญหาที่พบบ่อยและนักพัฒนาที่มีประสบการณ์และโปรแกรมเมอร์หวังว่าจะมีคำแนะนำเพื่อหลีกเลี่ยงปัญหาที่ฉันพูดถึงในชื่อ Btw. สิ่งที่ฉันอธิบายร้องเป็นปัญหาจริงฉันพยายามแก้ปัญหาเชิงรุกในโครงการ iOS ของฉันฉันต้องการหลีกเลี่ยงค่าใช้จ่ายทั้งหมด โดยเครื่องสถานะ จำกัด ฉันหมายถึงสิ่งนี้> ฉันมี UI ที่มีปุ่มไม่กี่รัฐหลายเซสชันที่เกี่ยวข้องกับ UI นั้นและสิ่งที่ UI นี้แสดงถึงฉันมีข้อมูลบางอย่างที่แสดงค่าบางส่วนใน UI ฉันได้รับและจัดการทริกเกอร์ภายนอกบางอย่าง (แสดงโดยการเรียกกลับจากเซ็นเซอร์) ฉันทำแผนภาพสถานะเพื่อทำแผนที่สถานการณ์ที่เกี่ยวข้องให้ดีขึ้นและเป็นที่พึงปรารถนาใน UI และแอปพลิเคชันนั้น เมื่อฉันค่อยๆติดตั้งโค้ดแอปเริ่มทำงานมากขึ้นตามที่ควรจะเป็น อย่างไรก็ตามฉันไม่มั่นใจมากว่าจะแข็งแกร่งพอ ความสงสัยของฉันมาจากการเฝ้าดูกระบวนการคิดและการนำไปใช้ของฉันเอง ฉันมั่นใจว่าฉันมีทุกอย่างที่ครอบคลุม แต่ก็เพียงพอที่จะทำการทดสอบสัตว์เดรัจฉานใน UI และฉันก็รู้ได้อย่างรวดเร็วว่ายังมีช่องว่างในพฤติกรรม ... ฉันทำการปะแก้พวกเขา อย่างไรก็ตาม ในขณะที่แต่ละองค์ประกอบขึ้นอยู่กับพฤติกรรมจากการป้อนข้อมูลจากส่วนประกอบอื่น ๆ การป้อนข้อมูลบางอย่างจากผู้ใช้หรือแหล่งภายนอกทำให้เกิดห่วงโซ่ของเหตุการณ์เปลี่ยนแปลงสถานะ .. เป็นต้น ฉันมีองค์ประกอบหลายอย่างและแต่ละพฤติกรรมทำงานเช่นเดียวกับทริกเกอร์นี้ที่ได้รับเมื่อทริกเกอร์อินพุท -> และผู้ส่งวิเคราะห์ -> เอาท์พุทบางอย่าง (ข้อความการเปลี่ยนสถานะ) จากการวิเคราะห์ ปัญหาคือสิ่งนี้ไม่ได้มีการควบคุมตัวเองอย่างสมบูรณ์และส่วนประกอบของฉัน (รายการฐานข้อมูลสถานะเซสชันสถานะของปุ่มบางปุ่ม) ... สามารถเปลี่ยนแปลงอิทธิพลลบหรือแก้ไขนอกขอบเขตของเหตุการณ์หรือ สถานการณ์ที่พึงประสงค์ (โทรศัพท์ล่มแบตเตอรี่จะหมดทันทีเมื่อเปิดเครื่อง) …

9
โปรแกรมที่ไม่มีข้อผิดพลาดตามหลักวิชา
ฉันได้อ่านบทความมากมายที่ระบุว่ารหัสไม่สามารถปราศจากข้อบกพร่องและพวกเขากำลังพูดถึงทฤษฎีบทเหล่านี้: ปัญหาการหยุดชะงัก ทฤษฎีความไม่สมบูรณ์ของGödel ทฤษฎีบทของข้าว อันที่จริงทฤษฎีบทของไรซ์ดูเหมือนว่ามีความหมายของปัญหาการหยุดชะงักและปัญหาการหยุดชะงักอยู่ในความสัมพันธ์ใกล้ชิดกับทฤษฎีบทที่ไม่สมบูรณ์ของGödel สิ่งนี้หมายความว่าทุกโปรแกรมจะมีพฤติกรรมที่ไม่ตั้งใจอย่างน้อยหนึ่งรายการหรือไม่ หรือหมายความว่าไม่สามารถเขียนรหัสเพื่อยืนยันได้ สิ่งที่เกี่ยวกับการตรวจสอบแบบเรียกซ้ำ? สมมติว่าฉันมีสองโปรแกรม ทั้งคู่มีข้อบกพร่อง แต่ไม่มีข้อผิดพลาดร่วมกัน จะเกิดอะไรขึ้นถ้าฉันเรียกใช้พร้อมกัน และแน่นอนว่าการพูดคุยส่วนใหญ่พูดถึงเครื่องทัวริง สิ่งที่เกี่ยวกับระบบอัตโนมัติเชิงเส้นตรง (คอมพิวเตอร์จริง)?
12 bug  theory 

5
มีทฤษฎีทางคณิตศาสตร์ / การทดสอบซอฟต์แวร์อย่างเป็นทางการหรือไม่?
Googling "ทฤษฎีการทดสอบซอฟต์แวร์" ดูเหมือนว่าจะให้ทฤษฎีในความหมายที่นุ่มนวลของคำเท่านั้น ฉันไม่สามารถค้นหาสิ่งใดที่จะจัดเป็นทฤษฎีในเชิงคณิตศาสตร์ข้อมูลเชิงทฤษฎีหรือความรู้สึกทางวิทยาศาสตร์อื่น ๆ สิ่งที่ฉันกำลังมองหาคือสิ่งที่เป็นทางการว่าการทดสอบคืออะไรความคิดที่ใช้สิ่งที่กรณีทดสอบคือความเป็นไปได้ของการทดสอบบางสิ่งความเป็นประโยชน์ของการทดสอบบางอย่างขอบเขตของสิ่งที่ควรทดสอบ รหัสครอบคลุม ฯลฯ UPDATE: นอกจากนี้ฉันไม่แน่ใจอย่างสังหรณ์ใจเกี่ยวกับการเชื่อมต่อระหว่างการยืนยันอย่างเป็นทางการกับสิ่งที่ฉันถาม แต่มีการเชื่อมต่อบางอย่างชัดเจน

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

2
รหัสใดดีสำหรับการเพิ่มประสิทธิภาพการทำนายสาขา
การคาดการณ์ของสาขาและผลของการปรับแต่งคอมไพเลอร์รหัสใดมีแนวโน้มที่จะให้ประสิทธิภาพที่เหนือกว่า? โปรดทราบว่า bRareExceptionPresent แสดงถึงเงื่อนไขที่ผิดปกติ มันไม่ใช่เส้นทางปกติของตรรกะ /* MOST COMMON path must branch around IF clause */ bool SomeFunction(bool bRareExceptionPresent) { // abort before function if(bRareExceptionPresent) { return false; } .. function primary body .. return true; } /* MOST COMMON path does NOT branch */ bool SomeFunction(bool bRareExceptionPresent) { if(!bRareExceptionPresent) { …

3
รหัสเพิ่มเติม = ข้อผิดพลาดเพิ่มเติม
ย้อนกลับไปในวิทยาลัยฉันจำได้ว่ามีอาจารย์สอนวิชากฎหมายวิทยาศาสตร์คอมพิวเตอร์ เขาพูดอะไรบางอย่างเช่น "รหัสมากกว่าเท่ากับข้อบกพร่องมากขึ้น" และตั้งชื่อ (The Law Of Whatchamacallit) และให้เหตุผลกับใครบางคน ไม่มีใครรู้ว่า "กฎหมาย" นี้มาจากใครใครพูดมันหรือว่ามันเป็นคำฟุ่มเฟือยดั้งเดิม?

8
รายการลำดับความสำคัญของงานที่เก็บไว้ในฐานข้อมูล
ฉันพยายามคิดถึงวิธีที่ดีที่สุดในการทำสิ่งต่อไปนี้: ฉันมีรายการงานที่จัดเก็บในฐานข้อมูล งานมีลำดับความสำคัญที่กำหนดไว้ คุณสามารถเปลี่ยนลำดับความสำคัญของงานเพื่อจัดลำดับใหม่ที่ควรดำเนินการ ฉันกำลังคิดถึงบางสิ่งที่คล้ายกับ Pivotal Tracker ดังนั้นลองจินตนาการว่าเรามีสิ่งต่อไปนี้: 1 Task A 2 Task B 3 Task C 4 Task D 5 Task E เราตัดสินใจว่า E เป็นภารกิจที่สำคัญที่สุดแล้ว 1 Task E 2 Task A 3 Task B 4 Task C 5 Task D ฉันต้องการอัปเดตงานทั้งหมด 5 รายการเพื่อให้ลำดับความสำคัญใหม่แก่พวกเขา ถ้า Task B มีความสำคัญมากกว่า AI ก็จะมี …

7
การตรวจสอบและการตรวจสอบเป็นส่วนหนึ่งของกระบวนการทดสอบหรือไม่
จากแหล่งข้อมูลหลายแห่งฉันไม่เชื่อว่าคำจำกัดความง่ายๆที่เป้าหมายของการทดสอบคือการค้นหาข้อบกพร่องให้ได้มากที่สุด - เราทำการทดสอบเพื่อให้แน่ใจว่ามันใช้งานได้หรือไม่ เช่น followint เป็นเป้าหมายของการทดสอบแบบฟอร์ม ISTQB: ตรวจสอบว่า (ผลิตภัณฑ์ซอฟต์แวร์) เป็นไปตามข้อกำหนดที่ระบุไว้ (ฉันคิดว่าเป็นของจริง) แสดงให้เห็นว่า (ผลิตภัณฑ์ซอฟต์แวร์) เหมาะสำหรับวัตถุประสงค์ (ฉันคิดว่าเป็นการตรวจสอบ) ตรวจหาข้อบกพร่อง ฉันยอมรับว่าการทดสอบคือการตรวจสอบความถูกต้องและการตรวจจับข้อบกพร่อง ถูกต้องหรือไม่

5
การวิเคราะห์คำศัพท์ที่ไม่มีการแสดงออกปกติ
ฉันดู lexers สองสามตัวในระดับสูงกว่าต่างๆ ( Python , PHP , Javascriptและอื่น ๆ ) และพวกเขาทั้งหมดดูเหมือนจะใช้นิพจน์ปกติในรูปแบบเดียวหรืออีกรูปแบบหนึ่ง ในขณะที่ฉันแน่ใจว่า regex อาจเป็นวิธีที่ดีที่สุดในการทำสิ่งนี้ฉันสงสัยว่ามีวิธีใดบ้างที่จะได้รับการเลเยอร์พื้นฐานโดยไม่มีการแสดงออกปกติหรืออาจเป็นการแยกวิเคราะห์สตริงโดยตรง ใช่แล้วเป็นไปได้ไหมที่จะใช้การเรียงลำดับขั้นพื้นฐานบางอย่างในภาษาระดับสูง * โดยไม่ใช้นิพจน์ทั่วไปในรูปแบบใด ๆ * ภาษาระดับที่สูงขึ้นเป็นสิ่งต่าง ๆ เช่น Perl / PHP / Python / Javascript เป็นต้นฉันแน่ใจว่ามีวิธีที่จะทำได้ใน C
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.