วิศวกรรมซอฟต์แวร์

ถาม - ตอบสำหรับมืออาชีพนักวิชาการและนักเรียนที่ทำงานในวงจรการพัฒนาระบบ

8
ในช่วง 20 ปีที่ผ่านมาไม่เคยมีสิ่งใดที่ให้ผลกำไรจากการพัฒนาซอฟต์แวร์จำนวนมากหรือไม่? [ปิด]
ในNo Silver Bullet Fred Brooks สร้างการคาดการณ์ที่หลากหลายเกี่ยวกับอนาคตของวิศวกรรมซอฟต์แวร์โดยสรุปได้ดีที่สุดจาก: ไม่มีการพัฒนาอย่างใดอย่างหนึ่งไม่ว่าจะเป็นเทคโนโลยีหรือในเทคนิคการจัดการที่ตัวเองสัญญาว่าจะปรับปรุงประสิทธิภาพการผลิตตามลำดับความน่าเชื่อถือและความเรียบง่ายเพียงอย่างเดียว เหตุผลของเขาน่าเชื่อถือมาก Brooks เขียนในปี 1986: เขาพูดถูกมั้ย นักพัฒนาซอฟต์แวร์ในปี 2014 ผลิตซอฟต์แวร์ในอัตราที่น้อยกว่า 10 เท่าเร็วกว่าในปี 1986 หรือไม่? โดยการวัดที่เหมาะสม - การเพิ่มผลผลิตมีขนาดใหญ่แค่ไหน?

13
เนื้อหาที่เข้ารหัสในเกม
ฉันมีความคิดในการใช้การเข้ารหัสเพื่อป้องกันไม่ให้ผู้ใช้หาเนื้อหาในโปรแกรมของฉันนอกโปรแกรม เช่นเดียวกับผู้ใช้อาจพบว่าพื้นผิวไม่เคยใช้ในเกมเพื่อเป็นส่วนหนึ่งของไข่อีสเตอร์บางประเภทในขณะที่ไปที่ข้อมูลเกม สิ่งนี้อาจทำลายทุกคนหากโพสต์ออนไลน์ ลองนึกภาพห้องลับที่ผู้เล่นต้องกดหมายเลขที่ถูกต้องบนประตูรักษาความปลอดภัยในเกมซึ่งหากถูกต้องควรสร้างคีย์ถอดรหัสที่ถูกต้องแล้วถอดรหัสส่วนนั้นของระดับและเปิดประตู ดังนั้นการทำไข่อีสเตอร์จึงไม่สามารถเข้าถึงได้แม้ว่าจะมองผ่านข้อมูลเกมตั้งแต่กุญแจไม่ได้ถูกจัดเก็บจริงมันสร้างขึ้นตามการป้อนข้อมูลของผู้ใช้ นี่เป็นอีกตัวอย่างของสิ่งที่ฉันจินตนาการ ฉันมีเกมไขปริศนาที่มีสมมุติ 20 ระดับแต่ละอันเข้ารหัสโดยใช้คีย์ที่แตกต่างกัน แทนที่จะเก็บคีย์ถอดรหัสลงในโปรแกรมโดยตรงเพื่อให้ใครบางคนสามารถถอดรหัสโปรแกรมและค้นหามันฉันสร้างคีย์เข้ารหัส / ถอดรหัสขึ้นอยู่กับวิธีแก้ปริศนาก่อนหน้านี้แทน วิธีนี้ผู้เล่นจะต้องไขปริศนาจริงก่อนที่จะรับข้อมูลใด ๆ เกี่ยวกับระดับต่อไปแม้ว่าจะมองผ่านข้อมูลเกม ผู้เล่นหากมีความรู้สามารถเป็นไปได้ที่จะบังคับให้มัน "ง่าย" เดียรัจฉานเพราะจำนวนของการแก้ปัญหาอาจน้อยกว่าจำนวนคีย์ถอดรหัส มันเป็นเรื่องซับซ้อนของตัวต่อและไม่สำคัญมากที่นี่ แม้ว่าฉันจะโพสต์คำตอบเกี่ยวกับที่นี่ มีโปรแกรม / เกมในวันนี้ที่ทำอะไรแบบนี้? กำลังจัดเก็บเนื้อหาที่เข้ารหัสในเกมหรือไม่ และถ้าไม่ใช่ทำไม มีกฎและข้อบังคับมากมายเกี่ยวกับเรื่องนี้ทั้งในระดับร้านค้าและประเทศหรือไม่? ไม่มีใครเห็นข้อผิดพลาดที่ชัดเจนว่าฉันหายไปหรือไม่ การเพิกเฉยสิ่งต่าง ๆ เช่นประสบการณ์ของผู้ใช้ความคิดดูเหมือนจะฟังดูแล้วทำให้ฉันสงสัยว่าทำไมฉันไม่เคยเห็นสิ่งนี้มาก่อน แก้ไข : มันอาจจะไม่ชัดเจนว่าสิ่งที่ฉันพูดดังนั้นนี่คือตัวอย่างที่เป็นรูปธรรมมากขึ้น สมมติว่าฉันมีฟังก์ชั่นที่รับสายอักขระ 20 ตัวและสร้างคีย์สมมาตรซึ่งฉันสามารถใช้เพื่อเข้ารหัส / ถอดรหัสเนื้อหาบางส่วนในเกม วิธีเดียวที่ผู้ใช้สามารถเข้าถึงเนื้อหานั้นคือการรู้จักอักขระ 20 ตัวและสร้างคีย์เดียวกัน กุญแจนี้จะไม่ถูกจัดเก็บโดยตรงและถูกสร้างขึ้นทันทีตามการป้อนข้อมูลของผู้ใช้ ตัวละครเหล่านี้จะถูกซ่อนอยู่ในเกมในสิ่งที่อาจเป็นหนังสือโต้ตอบกับ NPCs หรือแม้แต่ด้านนอกของเกมที่อยู่ด้านหลังกล่อง ดังนั้นด้วยชุดค่าผสมที่เป็นไปได้ 2 * 10 ^ …
45 encryption 

9
อะไรคือความแตกต่างระหว่าง "ไวยากรณ์" และ "น้ำตาลเชิงกล"
พื้นหลัง หน้า Wikipedia เกี่ยวกับSyntactic Sugarกล่าวว่า: ในวิทยาการคอมพิวเตอร์น้ำตาล syntactic เป็นไวยากรณ์ในภาษาการเขียนโปรแกรมที่ออกแบบมาเพื่อให้สิ่งที่ง่ายต่อการอ่านหรือการแสดง มันทำให้ภาษา "หวาน" สำหรับมนุษย์ที่จะใช้: สิ่งที่สามารถแสดงได้ชัดเจนยิ่งขึ้นรัดกุมหรือในรูปแบบทางเลือกที่บางคนอาจชอบ ฉันไม่เข้าใจจริงๆว่าความแตกต่างระหว่างวากยสัมพันธ์น้ำตาลกับวากยสัมพันธ์คืออะไร ฉันขอขอบคุณจุดที่รุ่นน้ำตาลสามารถชัดเจนและกระชับมากขึ้นบางทีต้มออกไปบางแผ่น แต่ฉันรู้สึกว่าในบางระดับไวยากรณ์ทั้งหมดจะทำเช่นนั้นเพื่อสร้างสิ่งที่เป็นนามธรรมเกี่ยวกับสิ่งที่โค้ดได้รับการรวบรวมลงไป จากหน้า Wikipedia เดียวกัน: ตัวประมวลผลภาษารวมถึงคอมไพเลอร์ตัววิเคราะห์แบบคงที่และที่คล้ายกันมักจะขยายการสร้าง sugared เป็นโครงสร้างพื้นฐานมากขึ้นก่อนการประมวลผลบางครั้งกระบวนการที่เรียกว่า "desugaring" ในฐานะที่เป็นแบบฝึกหัดทางความคิดถ้าฉันใช้ "บ่อยครั้ง" ในคำสั่งนี้เพื่อหมายถึง "เสมอ": หากความแตกต่างเป็นเพียงว่าคอมไพเลอร์ "desugars" ไวยากรณ์ก่อนที่จะย้ายไปยังขั้นตอนถัดไป ของคอมไพเลอร์รู้ (หรือสนใจ) อะไรคือ Sugar'd Syntax หรือไม่ คำถามที่เกี่ยวข้องมากในเว็บไซต์นี้"คำจำกัดความที่เข้มงวดของน้ำตาลซินแทคติค" มีคำตอบที่เริ่ม: IMHO ฉันไม่คิดว่าคุณจะมีคำจำกัดความเกี่ยวกับน้ำตาลในประโยคเพราะวลีนี้เป็น BS และน่าจะถูกใช้โดยคนที่พูดถึง "โปรแกรมเมอร์จริง" โดยใช้ "เครื่องมือจริง" ใน "ระบบปฏิบัติการจริง" สิ่งใดที่อาจบ่งบอกฉันได้ว่าอาจไม่มีความแตกต่างอย่างมากกับ coder ที่ใช้ภาษานี้ บางทีความแตกต่างอาจสังเกตได้เฉพาะนักเขียนคอมไพเลอร์เท่านั้น? …

11
ในฐานะสถาปนิกซอฟต์แวร์ฉันควรจะให้ความสำคัญกับการวิเคราะห์บันทึกและแก้ไขข้อบกพร่องของคนอื่นหรือไม่
ตั้งแต่เรียนจบ (ปลายปี 2548) ฉันทำงานกับ บริษัท เดียวกันกับวิศวกรซอฟต์แวร์ c ++ ปีที่แล้วฉันได้รับการเลื่อนตำแหน่งเป็นสถาปนิกซอฟต์แวร์ แต่ฉันพบว่าตัวเองมีส่วนร่วมมากขึ้นในด้านคุณสมบัติและการแก้ไขข้อบกพร่องการสนับสนุนระดับ 2 50% ของเวลาที่ฉันใช้ใน Notepad ++ วิเคราะห์บันทึกซอฟต์แวร์และพยายามหาสิ่งที่ผิดพลาด 30% การแก้ไขข้อผิดพลาดของผู้อื่นและส่วนที่เหลือ (ถ้ามี) ตรวจสอบสปาเก็ตตี้นักพัฒนา ฉันเริ่มเกลียดผลิตภัณฑ์นี้และคิดถึงกลยุทธ์การออกจาก บริษัท นี้ คุณคิดว่าฉันสามารถทำอะไรในสถานการณ์นี้ คุณสถาปนิกซอฟต์แวร์อื่นยังคงแก้ไขข้อบกพร่องในรหัสหรือไม่

4
ทำไมเนมสเปซมากมายเริ่มต้นด้วย com
ฉันสังเกตเห็นว่า บริษัท จำนวนมากใช้เนมสเปซ "ชื่อโดเมนย้อนกลับ" และฉันอยากรู้ว่าการฝึกฝนนั้นมาจากที่ใดและทำไมมันถึงดำเนินต่อไป มันเป็นเพียงการดำเนินการต่อเนื่องจากการฝึกท่องจำหรือมีแนวคิดสถาปัตยกรรมที่โดดเด่นที่ฉันอาจหายไปที่นี่หรือไม่? นอกจากนี้ยังทราบคำถามเช่น: https://stackoverflow.com/questions/189209/do-you-really-use-your-reverse-domain-for-package-naming-in-javaที่เรียงลำดับคำถามของฉัน แต่ไม่ใช่ 100 % (ถ้ามันทำให้คุณรู้สึกดีขึ้นฉันอยากรู้จริงๆว่าฉันควรจะใช้มันสำหรับความพยายามในการกำหนดชื่อ javascript ของฉัน แต่ฉันอยากรู้มากขึ้นเกี่ยวกับตอนนั้นและทำไมและนั่นคือสิ่งที่จะช่วยแนะนำฉันเกี่ยวกับคำตอบจาวาสคริปต์ คุณ: "หน้าต่าง") ตัวอย่างของการฝึกนี้ขยายไปถึงโฟลเดอร์และไฟล์:

8
สิ่งที่ควรได้รับอนุญาตภายในตัวต่อและผู้ตั้งค่า?
ฉันได้ข้อโต้แย้งอินเทอร์เน็ตที่น่าสนใจเกี่ยวกับวิธี getter และ setter และการห่อหุ้ม บางคนบอกว่าสิ่งที่พวกเขาควรทำคือมอบหมาย (setters) หรือตัวแปร access (getters) เพื่อให้พวกเขา "บริสุทธิ์" และทำให้แน่ใจว่าการห่อหุ้ม ฉันถูกต้องไหมที่สิ่งนี้จะเอาชนะจุดประสงค์ของการมีผู้ได้รับและผู้ตั้งถิ่นฐานในตอนแรกและการตรวจสอบความถูกต้องและตรรกะอื่น ๆ (โดยไม่มีผลข้างเคียงที่แปลกประหลาดของหลักสูตร) ​​ควรได้รับอนุญาตหรือไม่ การตรวจสอบควรเกิดขึ้นเมื่อใด เมื่อตั้งค่าภายใน setter (เพื่อป้องกันวัตถุจากการเข้าสู่สถานะที่ไม่ถูกต้อง - ความคิดเห็นของฉัน) ก่อนการตั้งค่านอกตัวตั้ง ภายในวัตถุก่อนทุกครั้งที่ใช้ค่า setter ได้รับอนุญาตให้เปลี่ยนค่าหรือไม่ (อาจแปลงค่าที่ถูกต้องเป็นตัวแทนภายในที่ยอมรับได้)

2
Common LISP ใดที่ใช้งาน? [ปิด]
ดูเหมือนว่าจะมีปัญหาในทันทีโดยเริ่มพัฒนาใน Common LISP: การเลือกใช้งาน เราควรคำนึงถึงอะไรบ้างและควรคำนึงถึงน้ำหนักเท่าใดเมื่อพิจารณาการนำ CL มาใช้ ควรเป็นไปตามมาตรฐาน ANSI หรือไม่ ควรได้รับการสนับสนุนโดย SLIME หรือไม่ การใช้งานบางอย่างไม่มีห้องสมุดที่ดีมีเอกสาร ฯลฯ

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

4
ทำไมระหว่างของ SQL รวมมากกว่าเปิดครึ่ง?
Semi-open (หรือ Half-Open, Half-Closed , Half-Bounded ) ช่วงเวลา ( [a,b)ซึ่งxเป็นของ iff ช่วงเวลาa <= x < b) เป็นเรื่องธรรมดาในการเขียนโปรแกรมเนื่องจากมีคุณสมบัติที่สะดวกมากมาย ใครสามารถเสนอเหตุผลที่อธิบายว่าทำไม SQL BETWEENใช้ช่วงปิด ( [a,b])? นี่คือ esp ไม่สะดวกสำหรับวันที่ ทำไมคุณถึงBETWEENทำตัวแบบนี้
45 sql 

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


16
โปรแกรมเมอร์ควรแก้ไขงานสร้างที่ล้มเหลวของคนอื่นหรือไม่? [ปิด]
โปรแกรมเมอร์คนหนึ่งมอบหมายงานบางอย่างให้กับที่เก็บ SVN จากนั้นกลับบ้าน หลังจากที่เขาจากไปการสร้างอัตโนมัติของฮัดสันล้มเหลว โปรแกรมเมอร์คนอื่นเห็นสิ่งนี้และหลังจากตรวจสอบการเปลี่ยนแปลงรหัสตรวจพบว่าปัญหาคือการขาดงานของหนึ่งไลบรารี เขาเพิ่มไลบรารีนี้ไปยัง SVN และการสร้างถัดไปเสร็จสมบูรณ์ โปรแกรมเมอร์คนที่สองทำสิ่งที่ถูกต้องหรือควรรอจนกระทั่งโปรแกรมเมอร์คนแรกแก้ไขปัญหาได้หรือไม่

6
จำเป็นหรือไม่ที่จะต้องปฏิบัติตามแนวทางการเขียนโปรแกรมเชิงป้องกันสำหรับโค้ดที่จะไม่เปิดเผยต่อสาธารณะ
ฉันกำลังเขียนการนำเกมจาวามาใช้ในเกมไพ่ดังนั้นฉันจึงสร้างคอลเลกชันชนิดพิเศษที่ฉันเรียกว่าโซน วิธีการปรับเปลี่ยนทั้งหมดของคอลเลกชันของ Java ไม่ได้รับการสนับสนุน แต่มีวิธีการใน Zone API move(Zone, Card)ซึ่งย้ายการ์ดจากโซนที่กำหนดไปยังตัวมันเอง (สำเร็จโดยเทคนิคแพคเกจส่วนตัว) ด้วยวิธีนี้ฉันสามารถมั่นใจได้ว่าไม่มีไพ่ถูกนำออกจากโซนและหายตัวไป สามารถย้ายไปยังโซนอื่นได้เท่านั้น คำถามของฉันคือการเข้ารหัสป้องกันแบบนี้มีความจำเป็นมากแค่ไหน? มัน "ถูกต้อง" และรู้สึกเหมือนถูกวิธี แต่ไม่ใช่ว่า Zone API จะเป็นส่วนหนึ่งของห้องสมุดสาธารณะ มันเป็นเพียงสำหรับฉันดังนั้นมันเหมือนกับว่าฉันกำลังปกป้องรหัสของฉันจากตัวเองเมื่อฉันอาจจะมีประสิทธิภาพมากขึ้นโดยเพียงแค่ใช้คอลเลกชันมาตรฐาน ฉันควรใช้ความคิดโซนนี้ไกลแค่ไหน ใครบ้างที่สามารถให้คำแนะนำกับฉันเกี่ยวกับการรักษาสัญญาในชั้นเรียนที่ฉันเขียนโดยเฉพาะอย่างยิ่งสำหรับคนที่ไม่ได้เผยแพร่สู่สาธารณะ

19
แบบสกรีนช็อตสำหรับหลักฐานทางกฎหมายในการคลิกหนึ่งในช่องทำเครื่องหมาย?
เราได้รับคำขอจากหนึ่งในลูกค้าของเราและเนื่องจากฉันไม่เคยพบคำขอดังกล่าวมาก่อนฉันจึงไม่รู้ด้วยซ้ำว่าจะเริ่มมองหาที่ใด ลูกค้าของเราเป็นเครือข่ายของวิทยาลัยและเรากำลังสร้างเว็บไซต์ให้พวกเขา บนเว็บไซต์นั้นจะเป็นแบบฟอร์มที่ผู้สมัครที่มีศักยภาพสามารถกรอกเพื่อรับข้อมูลเพิ่มเติมเกี่ยวกับการศึกษาในวิทยาลัยแห่งใดแห่งหนึ่ง หลังจากที่ผู้ใช้กรอกแบบฟอร์มนี้ - รวมถึงการให้อีเมลและ / หรือหมายเลขโทรศัพท์ - วิทยาลัยที่เกี่ยวข้องจะติดต่อกับข้อมูลที่เกี่ยวข้อง ตอนนี้ด้วยเหตุผลทางกฎหมายลูกค้าขอให้แบบฟอร์มนี้มีช่องทำเครื่องหมายที่ผู้สมัครที่มีศักยภาพตรวจสอบเพื่อระบุว่าพวกเขาตกลงที่จะรับสื่อส่งเสริมการขายจากวิทยาลัยเหล่านี้ แน่นอนว่าไม่มีปัญหา แต่นี่เป็นส่วนแปลก ๆ ของคำขอ: รายละเอียดของแต่ละแบบฟอร์มที่กรอกจะต้องได้รับการบันทึกในวิธีการที่เชื่อถือได้ เห็นได้ชัดว่าการบันทึกค่าฟอร์มในฐานข้อมูล - คอลัมน์ที่ระบุว่าผู้ใช้เห็นด้วยหรือไม่เห็นด้วย - ยังไม่เพียงพอเพราะอาจมีการเปลี่ยนแปลงฐานข้อมูลหลังจากที่ผู้ใช้ส่งแบบฟอร์มแล้ว ลูกค้าของเราอ้างว่าพอร์ทัลวิทยาลัยอื่น ๆ สร้างภาพหน้าจอของแบบฟอร์มกรอกข้อมูลและบันทึกไว้ที่ใดที่หนึ่งในโฟลเดอร์เฉพาะในลักษณะที่พบได้ง่ายเช่นให้ชื่อไฟล์ที่มีชื่อผู้ใช้และวันที่ และเวลา คำถามของฉันมีดังนี้: คุณเคยได้ยินการใช้ภาพหน้าจอเป็นวิธีการพิสูจน์ผู้ใช้กรอกแบบฟอร์มจริงหรือไม่? มีวิธีอื่น ๆ ที่ถือว่าเชื่อถือได้หรือไม่?
45 legal  forms 

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

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