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

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

3
ฉันจะกำหนดเป้าหมายทั้ง Windows 10 UWP และ Windows Phone 8.1 ในแอพเดียวกันได้อย่างไร
พื้นหลัง จากมุมมองของนักพัฒนาจุดขายหลักของ Windows 10 คือUniversal * Windows Platform (UWP)ใหม่ * ที่ "สากล" จริงๆหมายถึง "สากลไปยังอุปกรณ์ทั้งหมดที่เรียกใช้ Windows 10" และไม่ "สากลไปยังอุปกรณ์ที่ทำงานไม่เพียง แต่วินโดวส์ 10 แต่ยังใช้ Windows 8.1 และบางที Windows 7" ดังนั้นถ้าคุณสร้างแอพ UWP คุณก็แค่สร้าง "แอพ Windows 10" แอพ UWP จะไม่ทำงานแม้กระทั่งบนอุปกรณ์ Windows 8.1 และ Windows Phone 8.1 นั่นคือมันไม่สามารถใช้งานร่วมกับรุ่นเก่าได้ ขณะที่ไตรมาสที่ 3 ปี 2015 ของ Windows 10 สามารถใช้ได้สำหรับเครื่องคอมพิวเตอร์และอุปกรณ์ …

3
การควบคุมเวอร์ชันการอ่านของผู้จัดการยอมรับ
ผู้จัดการของเรากำลังติดตามความมุ่งมั่นของGitในทุกโครงการของเรา ปกติแล้วนี่ไม่ใช่ปัญหาและฉันชอบความจริงที่ว่าการควบคุมเวอร์ชันให้บันทึกการทำงานทั้งหมดที่เกิดขึ้นโดยเฉพาะอย่างยิ่งสำหรับการตรวจสอบและวิเคราะห์ในภายหลัง (ในกรณีที่มีอะไรผิดพลาด) อย่างไรก็ตามผู้จัดการได้แสดงความคิดเห็นเล็กน้อยเพื่อถามว่าผู้คนทำงานอะไรเมื่อเขาเห็นการกระทำที่อ่าน "การแก้ไขสไตล์" หรือข้อความการกระทำใด ๆ ที่ไม่ได้อ้างอิงหมายเลขตั๋วในระบบการจัดการงานของเรา มีวิธีแก้ปัญหาทางสังคมหรือทางเทคนิคหรือไม่? ข้อมูลเพิ่มเติม: นี่คือโครงการบำรุงรักษาดังนั้นจึงมีกลุ่มของ "ต้องทำ A แล้ว B แล้ว C และจากนั้น D และในที่สุดก็ต้องใช้ X" งานที่เกิดขึ้น ข้อมูลเพิ่มเติม: ข้อความการส่งข้อความพิเศษที่ยกธงกับผู้จัดการนั้นอยู่ใกล้กับ "รวมวิธีที่ดีกว่าในการ X, Y และ Z" ซึ่งเป็นข้อความการปรับโครงสร้างมากกว่าการแก้ไขโวหารง่าย ๆ

3
ชนิดของข้อมูลเกี่ยวกับพีชคณิตแก้ปัญหาอะไร?
คำเตือนอย่างเป็นธรรมฉันยังใหม่กับการเขียนโปรแกรมที่ใช้งานได้ดังนั้นฉันอาจมีข้อสันนิษฐานที่ไม่ดีมากมาย ฉันได้เรียนรู้เกี่ยวกับประเภทพีชคณิต ดูเหมือนว่าจะมีภาษาที่ใช้งานได้หลายภาษาและเป็นประโยชน์อย่างมากเมื่อใช้ร่วมกับการจับคู่รูปแบบ อย่างไรก็ตามพวกเขาแก้ปัญหาอะไรได้จริง? ฉันสามารถใช้ประเภทพีชคณิตที่ดูเหมือน (เรียงลำดับของ) ใน C # เช่นนี้ public abstract class Option { } public class None : Option { } public class Some<T> : Option { public T Value { get; set; } } var result = GetSomeValue(); if(result is None) { } else { } แต่ฉันคิดว่าส่วนใหญ่จะเห็นด้วยว่านี่เป็นความผิดพลาดของการเขียนโปรแกรมเชิงวัตถุและคุณไม่ควรทำเช่นนั้น …

2
มีกลยุทธ์บางอย่างที่เป็นระบบสำหรับการออกแบบและการใช้ GUI หรือไม่?
ฉันใช้ Visual Studio เพื่อสร้างแอปพลิเคชัน GUI ใน C # กล่องเครื่องมือทำหน้าที่เป็นพาเล็ตส่วนประกอบที่ดีที่ทำให้ฉันสามารถลากและวางปุ่มและองค์ประกอบอื่น ๆ (เพื่อความชัดเจนฉันจะพูดว่าปุ่มเมื่อใดก็ตามที่ฉันหมายถึง "การควบคุม") บนแบบฟอร์มของฉันซึ่งทำให้รูปแบบคงที่ค่อนข้างง่าย อย่างไรก็ตามฉันพบปัญหาสองประการ: การสร้างปุ่มในตอนแรกนั้นเป็นการทำงานมากมาย เมื่อฉันมีรูปแบบที่ไม่คงที่ (เช่นปุ่มหรือตัวควบคุมอื่น ๆ จะถูกสร้างขึ้นในเวลาทำงานตามสิ่งที่ผู้ใช้ทำ) ฉันไม่สามารถใช้จานสีได้เลย แต่ฉันต้องสร้างแต่ละปุ่มด้วยตนเองโดยการเรียกตัวสร้างในวิธีการใด ๆ ที่ฉันใช้แล้วเริ่มต้นด้วยตนเองโดยการระบุความสูงของปุ่มความกว้างตำแหน่งป้ายชื่อตัวจัดการเหตุการณ์และอื่น ๆ นี่เป็นเรื่องน่าเบื่ออย่างยิ่งเพราะฉันต้องเดาพารามิเตอร์เครื่องสำอางเหล่านี้โดยไม่สามารถดูว่าแบบฟอร์มจะเป็นอย่างไรและมันยังสร้างรหัสซ้ำ ๆ กันหลายบรรทัดสำหรับแต่ละปุ่ม การทำให้ปุ่มทำบางสิ่งก็เป็นเรื่องที่ต้องทำเยอะ การรับมือกับเหตุการณ์ในแอปพลิเคชั่นเต็มรูปแบบเป็นความเจ็บปวดอย่างมาก วิธีเดียวที่ฉันรู้วิธีการทำเช่นนี้คือการเลือกปุ่มไปที่แท็บกิจกรรมในคุณสมบัติคลิกOnClickเหตุการณ์เพื่อสร้างเหตุการณ์ในFormรหัสของจากนั้นกรอกเนื้อหาของเหตุการณ์ เนื่องจากฉันต้องการแยกลอจิกและการนำเสนอตัวจัดการเหตุการณ์ของฉันทั้งหมดจึงกลายเป็นการเรียกใช้บรรทัดเดียวไปยังฟังก์ชันตรรกะทางธุรกิจที่เหมาะสม แต่การใช้ปุ่มนี้สำหรับปุ่มจำนวนมาก (เช่นลองนึกภาพจำนวนปุ่มที่มีอยู่ในแอปพลิเคชั่นเช่น MS Word) ทำให้รหัสของฉันสกปรกFormด้วยวิธีการจัดการเหตุการณ์สำเร็จรูปจำนวนมากและยากที่จะรักษาสิ่งนี้ เนื่องจากสิ่งเหล่านี้โปรแกรม GUI ใด ๆ ที่ซับซ้อนกว่า Hello World จึงทำไม่ได้จริง ๆ สำหรับฉัน เพื่อความชัดเจนฉันไม่มีปัญหาใด ๆ ที่เกี่ยวข้องกับความซับซ้อนในโปรแกรมที่ฉันเขียนซึ่งมี UI …
18 c#  gui  visual-studio 

4
ชื่อแพคเกจที่เหมาะสมมีความหมายมากกว่า `ใช้ 'สำหรับสิ่งต่อไปนี้?
ในฐานะชาวฟางพิจารณาแพคเกจjava.utilมันเป็นพื้นทิ้งสำหรับชั้นเรียนต่างๆที่ในกรณีส่วนใหญ่ไม่แบ่งปันอะไรกันมากกว่าคนที่ทำให้พวกเขามีขี้เกียจหรือไม่มีปฏิภาณที่จะเกิดขึ้นกับชื่อแพคเกจที่ถูกต้องเชิงความหมายสำหรับชั้นเรียนของพวกเขา เป็นตัวอย่างหนึ่ง แต่ให้ชั้นเรียนUUIDชื่อแพคเกจที่ถูกต้องทางความหมายสำหรับคลาสนั้นคืออะไร? ฉันกำลังทำงานUUIDเพื่อทำให้ชั้นเรียนของฉันมีน้ำหนักเบาขึ้น ฉันไม่ต้องการใช้me.myproject.util.UUIDสำหรับชื่อแพ็คเกจ ผมถือว่าแต่ที่ไม่ได้หมายความความหมายของการใช้me.myproject.rfc4122.UUIDUUID ฉันก็คิดเช่นกันme.myproject.uuid.UUIDแต่ฉันไม่ชอบคำซ้ำซากในที่นั้นแม้ว่าจะเป็นวิธีที่นิยมใน Python ที่จะนำคลาสในโมดูลที่มีชื่อเดียวกันและpackagesใน Java นั้นไม่เทียบเท่ากับmodulesใน Python ฉันยังพิจารณาme.myproject.UUIDแต่ปฏิเสธเพราะฉันไม่ต้องการสร้างมลภาวะเป็นส่วนหนึ่งของเนมสเปซกับสิ่งที่ไม่เกี่ยวข้อง นี่แค่ยกระดับปัญหาขึ้น ฉันพิจารณาด้วยเช่นกันme.myproject.lib.UUIDแต่นี่ไม่มีความหมายเชิงความหมายมากไปกว่า.utilและเพียงแค่เปลี่ยนชื่อปัญหา semanticsสาขาวิชาภาษาศาสตร์และตรรกะที่เกี่ยวข้องกับความหมาย

5
ความได้เปรียบในการเป็นคนแรกที่จัดการกับอัลกอริทึมใหม่หรือไม่? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัพเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว สมมติว่าฉันได้สร้างอัลกอริทึม (DSP) ใหม่ ฉันจะมีข้อได้เปรียบบ้างหรือไม่ถ้าฉันเปิดแหล่งข้อมูลอัลกอริทึมภายใต้ลิขสิทธิ์ของ copyleft (GPL เป็นต้น) จากสิ่งที่ฉันรู้เกี่ยวกับการให้สิทธิ์ใช้งานนี้ควรปิดกั้นผู้ใช้ไม่ให้ใช้รหัสเดียวกันกับแหล่งข้อมูลปิด แต่พวกเขาจะสามารถ "เขียน" อัลกอริทึมเป็นแหล่งข้อมูลปิดได้หรือไม่ หมายเหตุ: ฉันไม่รู้จริงๆว่าอัลกอริทึมนั้นใหม่ แต่ยังไม่ได้เปิดเป็นโอเพนซอร์ส เนื่องจากฉันมาจากสหภาพยุโรปฉันจำเป็นต้องค้นหาสิทธิบัตรซอฟต์แวร์หากฉันต้องการลอกเลียนแบบหรือไม่

7
คุณทดสอบโค้ดหน่วยโดยใช้โครงสร้างกราฟได้อย่างไร
ฉันกำลังเขียนโค้ด (เรียกซ้ำ) ที่ใช้การนำทางกราฟการขึ้นต่อกันเพื่อค้นหารอบหรือความขัดแย้งในการอ้างอิง อย่างไรก็ตามฉันไม่แน่ใจว่าจะทดสอบหน่วยนี้ได้อย่างไร ปัญหาคือหนึ่งในข้อกังวลหลักของเราคือการจัดการโค้ดบนโครงสร้างกราฟที่น่าสนใจทั้งหมดที่สามารถเกิดขึ้นได้และทำให้แน่ใจว่าโหนดทั้งหมดจะได้รับการจัดการอย่างเหมาะสม ในขณะที่โดยปกติแล้วจะครอบคลุม 100% line หรือ branch ก็เพียงพอที่จะมั่นใจได้ว่าโค้ดบางตัวทำงานได้ดี แต่ก็ให้ความรู้สึกเหมือนมี 100% path path ที่คุณยังมีข้อสงสัยอยู่ ดังนั้นวิธีการเกี่ยวกับการเลือกโครงสร้างกราฟสำหรับกรณีทดสอบมีความมั่นใจว่ารหัสของพวกเขาสามารถจัดการกับพีชคณิตที่เป็นไปได้ทั้งหมดที่คุณจะพบในข้อมูลโลกแห่งความเป็นจริง ป.ล. -ถ้ามันสำคัญขอบทั้งหมดในกราฟของฉันจะมีป้ายกำกับว่า "ต้องมี" xor "ไม่สามารถมี" และไม่มีวัฏจักรเล็กน้อยและมีเพียงขอบเดียวระหว่างสองโหนด PPS-คำสั่งปัญหาเพิ่มเติมนี้เดิมถูกโพสต์โดยผู้เขียนคำถามในความคิดเห็นด้านล่าง: For all vertices N in forest F, for all vertices M, in F, such that if there are any walks between N and M they all …

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

6
การเขียนโปรแกรมเชิงฟังก์ชั่นช่วยเพิ่มช่องว่างระหว่างปัญหาและแนวทางแก้ไขหรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว เนื่องจากภาษาเครื่อง (เช่น0110101000110101) ภาษาคอมพิวเตอร์มีวิวัฒนาการโดยทั่วไปในรูปแบบที่เป็นนามธรรมสูงกว่าโดยทั่วไปทำให้ง่ายต่อการเข้าใจรหัสเมื่อมันถูกนำไปใช้กับปัญหา แอสเซมเบลอร์เป็นนามธรรมผ่านรหัสเครื่อง C เป็นนามธรรมเหนือแอสเซมเบลอร์ ฯลฯ การออกแบบเชิงวัตถุดูเหมือนว่าจะดีมากที่ช่วยให้เราสามารถจำลองปัญหาในแง่ของวัตถุเช่นปัญหาของระบบการลงทะเบียนหลักสูตรมหาวิทยาลัยสามารถทำแบบจำลองกับCourseชั้นStudentเรียนคลาส ฯลฯ จากนั้นเมื่อเราเขียนวิธีการแก้ปัญหา ในภาษา OO เรามีคลาสที่คล้ายกันซึ่งได้รับความรับผิดชอบและโดยทั่วไปมีประโยชน์สำหรับการออกแบบโดยเฉพาะอย่างยิ่งสำหรับการทำให้โค้ดเป็นโมดูล ถ้าฉันให้ปัญหานี้แก่ทีมอิสระ 10 คนที่แก้ปัญหาด้วยวิธี OO โดยทั่วไป 10 วิธีแก้ปัญหาจะมีชั้นเรียนที่เกี่ยวข้องกับปัญหาที่เหมือนกัน อาจมีความแตกต่างมากมายเมื่อคุณเริ่มมีเพศสัมพันธ์และการโต้ตอบของคลาสเหล่านั้นดังนั้นจึงไม่มีสิ่งเช่น "ศูนย์ช่องว่างการเป็นตัวแทน" ประสบการณ์การใช้งานฟังก์ชั่นการเขียนโปรแกรมของฉันมี จำกัด มาก (ไม่มีการใช้งานจริงในโลกมีเพียงโปรแกรมประเภท Hello World) ฉันล้มเหลวในการดูว่าภาษาดังกล่าวอนุญาตให้ทำแผนที่โซลูชั่น FP ได้อย่างง่ายดายเพื่อแก้ไขปัญหา (ด้วยช่องว่างที่เป็นตัวแทนต่ำ) ในแบบที่ภาษา OO ทำอย่างไร ฉันเข้าใจถึงข้อดีของ FP ที่เกี่ยวกับการเขียนโปรแกรมพร้อมกัน แต่ฉันขาดอะไรไปหรือ FP ไม่ได้ลดช่องว่างในการเป็นตัวแทน (ทำให้การแก้ปัญหาเข้าใจง่ายขึ้น)? อีกวิธีที่จะถามสิ่งนี้: …

8
คุณจะออกแบบฐานข้อมูลผู้ใช้ด้วยฟิลด์ที่กำหนดเองได้อย่างไร
คำถามนี้เกี่ยวกับวิธีที่ฉันควรออกแบบฐานข้อมูลมันอาจเป็นฐานข้อมูลเชิงสัมพันธ์ / nosql ขึ้นอยู่กับสิ่งที่จะเป็นทางออกที่ดีกว่า กำหนดข้อกำหนดที่คุณจะต้องสร้างระบบที่จะเกี่ยวข้องกับฐานข้อมูลเพื่อติดตาม "บริษัท " และ "ผู้ใช้" ผู้ใช้คนเดียวเป็นของ บริษัท เดียวเสมอ ผู้ใช้สามารถเป็นของ บริษัท เดียวเท่านั้น บริษัท สามารถมีผู้ใช้หลายคน การออกแบบสำหรับตาราง "บริษัท " ค่อนข้างตรงไปตรงมา บริษัท จะมีคุณสมบัติ / คอลัมน์ต่อไปนี้: (ขอให้ง่าย) ID, COMPANY_NAME, CREATED_ON สถานการณ์แรก เรียบง่ายและตรงไปตรงมาผู้ใช้ทุกคนมีคุณลักษณะเดียวกันดังนั้นสิ่งนี้สามารถทำได้อย่างง่ายดายในลักษณะสัมพันธ์ตารางผู้ใช้: ID, COMPANY_ID, FIRST_NAME, LAST_NAME, EMAIL, CREATED_ON สถานการณ์ที่สอง จะเกิดอะไรขึ้นหาก บริษัท ต่าง ๆ ต้องการจัดเก็บแอตทริบิวต์โปรไฟล์ที่แตกต่างกันสำหรับผู้ใช้ แต่ละ บริษัท จะมีชุดแอตทริบิวต์ที่กำหนดไว้ซึ่งจะใช้กับผู้ใช้ทั้งหมดของ บริษัท นั้น ตัวอย่างเช่น: บริษัท …

1
เวิร์กโฟลว์ Gitlab บังคับให้ตรวจสอบโค้ดหรือรวมคำขอเข้ากับสาขา
ฉันทำงานเพื่อนำ Gitlab ไปใช้ใน บริษัท ของฉันด้วยกลยุทธ์เวิร์กโฟลว์ ความคิดของฉันคือผู้พัฒนาจะได้รับสิทธิ์เข้าถึงที่เก็บ แต่ทุกครั้งที่พวกเขาพยายามส่งรหัสของพวกเขาจะต้องได้รับการตรวจสอบ ฉันรู้ว่าฉันสามารถให้พวกเขาสร้างสาขาก่อนที่จะส่งมอบและสร้างคำขอรวมหลังจากที่ถูกผลักไปที่ repo ฉันยังไม่ชัดเจนเกี่ยวกับบางสิ่งบางอย่าง ... ความคิดที่ว่าเราต้องพึ่งพาผู้คนในการสร้างสาขาและจากนั้นคำขอผสานดูเหมือนผิดพลาดมีวิธีแก้ปัญหาที่บังคับให้มีนโยบายบางอย่างที่สาขาหลักสามารถรักษาความสะอาดได้ยกเว้น " ผู้ดูแลระบบ "อนุมัติรหัสที่กำลังจะรวมเข้าด้วยกัน ฉันได้อ่าน"เวิร์กโฟลว์ GitHub ทีม"แต่ดูเหมือนจะไม่ได้มีทางออกที่ทำงานได้ คำแนะนำใด ๆ เกี่ยวกับกระบวนการหรือแนวปฏิบัติที่ดีที่สุดของคุณเองนั้นเป็นที่นิยม ขอบคุณ!

5
มันเป็นการปฏิบัติที่ไม่ถูกต้องหรือไม่ที่จะให้ไฟล์สองไฟล์ที่แตกต่างกันมากโดยมีจุดประสงค์ทั่วไปเหมือนกันในชื่อเดียวกัน
มันเป็นวิธีปฏิบัติที่ไม่ถูกต้องหรือไม่ที่จะให้สองไฟล์ที่แตกต่างกันมากโดยมีจุดประสงค์ทั่วไปเหมือนกันในชื่อเดียวกัน <script src="client_scripts/app/player_stats/generator.js"></script> <script src="client_scripts/app/coach_settings/generator.js"></script> ฉันต้องการทำให้ชื่อไฟล์ของฉันสั้นและไฟล์ทั้งสองมีวัตถุประสงค์ทั่วไปเหมือนกันโดยไม่เหมือนกัน ฉันไม่แน่ใจว่าสิ่งนี้จะถือเป็นแนวปฏิบัติที่ไม่ดีในสภาพแวดล้อมการเขียนโปรแกรมมืออาชีพหรือไม่ ฉันต้องการทราบว่าวิธีปฏิบัติที่ดีที่สุดคืออะไรในสถานการณ์นี้ อีกทางหนึ่งด้วยค่าใช้จ่ายของชื่อสั้นฉันสามารถใช้: <script src="client_scripts/app/player_stats/player_stats_generator.js"></script> <script src="client_scripts/app/coach_settings/coach_settings_generator.js"></script>

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

1
เหตุใด Microsoft จึงปล่อยรุ่น RESX สำหรับ RESW ในแอปพลิเคชัน Windows Store
เหตุใด Microsoft จึงเลือกเปลี่ยนระบบการจัดการทรัพยากรจากไฟล์ RESX ของ. NET RESX มีการสร้างโค้ดที่มีประโยชน์ช่วยให้นักพัฒนาสามารถเติมชื่อทรัพยากรและแสดงผลโค้ดที่อ่านง่ายมากของ IMHO รูปแบบ RESW ใหม่เท่าที่ฉันรู้ไฟล์ XML ที่เหมือนกัน แต่ไม่มีการสร้างรหัสใด ๆ บังคับให้นักพัฒนาเขียนรหัสเพิ่มเติมและกีดกันการตรวจหาข้อผิดพลาดในการคอมไพล์เวลา
18 c#  .net  winrt 

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

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