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

รูปแบบพื้นฐานของการเขียนโปรแกรมคอมพิวเตอร์

5
อะไรคือทางเลือกในการตั้งโปรแกรมการทำงานของอินเตอร์เฟส?
หากฉันต้องการตั้งโปรแกรมในรูปแบบ "ฟังก์ชั่น" ฉันจะใช้อะไรแทนอินเตอร์เฟสได้บ้าง? interface IFace { string Name { get; set; } int Id { get; } } class Foo : IFace { ... } อาจจะTuple<>? Tuple<Func<string> /*get_Name*/, Action<String> /*set_Name*/, Func<int> /*get_Id*/> Foo; เหตุผลเดียวที่ฉันใช้อินเทอร์เฟซตั้งแต่แรกก็เพราะฉันต้องการให้มีคุณสมบัติ / วิธีการบางอย่างอยู่เสมอ แก้ไข:รายละเอียดเพิ่มเติมบางอย่างเกี่ยวกับสิ่งที่ฉันคิด / พยายาม บอกว่าฉันมีวิธีที่ใช้สามฟังก์ชั่น: static class Blarf { public static void DoSomething(Func<string> getName, Action<string> …

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

6
ฟีเจอร์ของฟังก์ชั่นอะไรที่คุ้มค่ากับความสับสน OOP เล็กน้อยเพื่อประโยชน์ที่พวกเขานำมา?
หลังจากเรียนรู้การเขียนโปรแกรมที่ใช้งานได้ใน Haskell และ F # กระบวนทัศน์ OOP ดูเหมือนว่าจะย้อนกลับไปพร้อมกับคลาสอินเทอร์เฟซวัตถุ FP ด้านใดที่ฉันสามารถนำไปใช้ในการทำงานที่เพื่อนร่วมงานของฉันสามารถเข้าใจได้ สไตล์ FP ใด ๆ ที่ควรค่าแก่การพูดคุยกับเจ้านายของฉันเกี่ยวกับการฝึกสอนทีมของฉันใหม่ ลักษณะที่เป็นไปได้ของ FP: การเปลี่ยนไม่ได้ การประยุกต์ใช้บางส่วนและการแกง ฟังก์ชั่นชั้นหนึ่ง (ตัวชี้ฟังก์ชั่น / วัตถุการทำงาน / รูปแบบกลยุทธ์) การประเมินผลขี้เกียจ (และ Monads) ฟังก์ชั่นบริสุทธิ์ (ไม่มีผลข้างเคียง) นิพจน์ (เทียบกับข้อความ - แต่ละบรรทัดของโค้ดจะสร้างค่าแทนหรือนอกเหนือจากการทำให้เกิดผลข้างเคียง) recursion การจับคู่รูปแบบ มันเป็นฟรีสำหรับทุกสิ่งที่เราสามารถทำอะไรก็ได้ที่ภาษาโปรแกรมรองรับจนถึงขีด จำกัด ที่ภาษานั้นรองรับหรือไม่ หรือมีแนวทางที่ดีกว่า

2
คำอธิบายของฉันเกี่ยวกับนางแบบนักแสดงถูกต้องหรือไม่?
ถ้าฉันเข้าใจโมเดลนักแสดงก็เหมือนโมเดลวัตถุ แต่มีความแตกต่างเล็กน้อย: วัตถุทุกตัวมีเธรดแยกต่างหากและไม่มีปัญหาแม้ว่าคุณจะมีวัตถุนับพัน นักแสดงไม่ได้มีปฏิสัมพันธ์โดยการเรียกฟังก์ชั่นและรับค่าตอบแทน แต่เป็นการส่งและรับข้อความแทน หากคุณไม่ละเมิดรูปแบบดังกล่าวแอปของคุณจะใช้การทำงานพร้อมกันให้เต็มกำลังโดยไม่มีความเสี่ยงจากสภาพการแข่งขัน ทุกสิ่งที่คุณสามารถทำได้ใน OO คุณสามารถใช้นักแสดง แต่ดีกว่าปัญหาที่ว่าทุกอย่างที่เราเขียนในปีที่ผ่านมาเป็น OO แต่การเปลี่ยนแปลงนั้นใกล้เข้ามาแล้ว ตัวอย่างเช่นสมมติว่าฉันต้องกำหนดคลาสเวกเตอร์ 3d / นักแสดงสร้างอินสแตนซ์ที่สองและเรียกใช้การดำเนินการรวมกับพวกเขา วัตถุที่มุ่งเน้น: class V3d { constructor V3d(x,y,z) //bla float x,y,z; function sum(V3d b) { return V3d(x+b.x,y+b.y,z+b.z); } } //using: mySum = V3d(1,2,3).sum(V3d(3,2,1)) //creates 2 instances, sum, returns instantly drawPoint(mySum) //uses the result รุ่นนักแสดง: actor V3d …


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

20
นักเรียนวิทยาศาสตร์คอมพิวเตอร์ทุกคนควรสอนภาษาการเขียนโปรแกรมอะไร
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ภาษาใด (หรือคลาส (ในกระบวนทัศน์) ของภาษาการเขียนโปรแกรมรวมถึงภาษาที่แนะนำของคลาสนั้น) นักเรียนวิทยาศาสตร์คอมพิวเตอร์ทุกคนควรได้รับการสอนในวิทยาลัยตามที่คุณต้องการหรือไม่ กระตุ้นคำตอบของคุณ ทำไมภาษานั้น จะใช้อะไรได้จากมัน แนวคิดอะไรสอน (ดีกว่าภาษา X) หมายเหตุ / การทำให้กระจ่าง : คำถามนี้เกี่ยวกับวิทยาศาสตร์คอมพิวเตอร์โดยเน้นหนักไปที่วิศวกรรมซอฟต์แวร์ไม่ใช่วิทยาศาสตร์คอมพิวเตอร์บริสุทธิ์ ยังคงเป็นการศึกษาด้านวิทยาการคอมพิวเตอร์และไม่ใช่การศึกษาด้านวิศวกรรมซอฟต์แวร์ซึ่งเป็นจุดสนใจ

4
FP และ OO orthogonal?
ฉันเคยได้ยินครั้งนี้และอีกครั้งและฉันพยายามที่จะเข้าใจและตรวจสอบความคิดที่ว่า FP และ OO เป็นมุมฉาก ประการแรกมันหมายความว่าอย่างไรสำหรับ 2 แนวคิดที่จะเป็นมุมฉาก FP ส่งเสริมการไม่เปลี่ยนรูปและความบริสุทธิ์ให้มากที่สุด และ OO ดูเหมือนสิ่งที่สร้างขึ้นสำหรับรัฐและการกลายพันธุ์ และฉันรู้ว่าวัตถุนั้นไม่สามารถเปลี่ยนแปลงได้ แต่ OO ดูเหมือนจะบอกเป็นนัยถึงการเปลี่ยนแปลงของฉัน พวกเขาดูเหมือนตรงกันข้าม นั่นหมายความว่าพวกเขาเป็นมุมฉาก? ภาษาอย่างสกาล่าทำให้ง่ายต่อการทำ OO และ FP ทั้งสองสิ่งนี้ส่งผลกระทบต่อความตั้งฉากของทั้งสองวิธีหรือไม่?

1
ฟังก์ชั่นการโต้ตอบ / การเขียนโปรแกรมเชิงสัมพันธ์ - มีความแตกต่างหรือไม่?
ฉันใช้Reactive Cocoa (โดย GitHub) ซึ่งเป็นAPI การเขียนโปรแกรมเชิงโต้ตอบสำหรับใช้กับห้องสมุด Cocoa มาระยะหนึ่งแล้ว แต่เพิ่งอ่าน"Out of the Tar Pit"กระดาษที่นำเสนอแนวคิดเบื้องหลัง และฉันก็สับสนเล็กน้อย บทความนำเสนอ (ตามที่ฉันเข้าใจ) การเขียนโปรแกรมเชิงสัมพันธ์เชิงหน้าที่ซึ่งความสัมพันธ์ระหว่างข้อมูลถูกสร้างขึ้นด้วยเงื่อนไขที่ควรมีการบังคับใช้โดยระบบ FRP เพื่อลดจำนวนตรรกะและสถานะ 'อุบัติเหตุ' ที่จำเป็น คำถามของฉันคือแนวคิดทั้งสองนี้คือ FR (eactive) P และ FR (elational) P โดยพื้นฐานแล้วเป็นสิ่งเดียวกัน (โดยที่ก่อนหน้านี้เพิ่งจะนำไปใช้หลัง) หรือมีความแตกต่างที่สำคัญระหว่างทั้งสองหรือไม่ น่าเสียดายที่ในขณะนี้ความรู้เกี่ยวกับพื้นที่ของฉันไม่ดีพอสำหรับฉันที่จะแยกแยะพวกเขาให้มากพอ หากมีความแตกต่างดูเหมือนว่าจะเป็นสิ่งที่ต้องทำด้วยชื่อแนะนำเพื่อตอบสนองต่อการเปลี่ยนแปลงของข้อมูล แน่นอนว่า Reactive Cocoa (และ Rx ใน C #) มีแนวคิดในการสร้างสัญญาณที่ถูกกระตุ้นจากการเปลี่ยนแปลงข้อมูลและสามารถใช้ในการปรับเปลี่ยนค่าอย่างต่อเนื่องตลอดเวลา นี่คือความแตกต่าง? ถ้าไม่เป็นอะไร (โปรดแก้ตัวการติดแท็กที่ไม่ดีฉันไม่สามารถหาแท็กที่เกี่ยวข้องและยังไม่สามารถสร้างได้ - โปรดอัปเดตแท็กเป็นสิ่งที่เหมาะสมกว่าถ้าคุณสามารถทำได้)

2
ฟังก์ชั่นการเขียนโปรแกรมปฏิกิริยา - เฟย์แสดงออกได้เพียงพอหรือไม่?
ดังนั้นฉันจึงทำไคลเอนต์ javascript / html ที่เกี่ยวข้องอย่างเป็นธรรมด้วยการโทร ajax จำนวนมากและการโทรกลับ -mem ฉันสนุกสนานกับความคิดที่จะใช้ Fay เพื่อจุดประสงค์นี้ ฉันรู้เรื่อง Elm แล้ว พยายามและชอบองค์ประกอบ FRP ตอนนี้ฉันต้องการทราบว่าโครงสร้างที่คล้ายกันเป็นไปได้ใน Fay หรือไม่ มีตัวอย่างที่เป็นรูปธรรมของ FRP ในเรื่องนี้บ้างไหม ณ จุดนี้? เทคโนโลยีบางอย่างที่เกี่ยวข้อง: Arrowlets , arrowised FRP ใน javascript FlapJaxอีกทางเลือกหนึ่งของจาวาสคริปต์ Bacon.js , FRP ใน javascript ทางออกหนึ่งที่เป็นไปได้โดยใช้เบคอน ด้วยการสาธิต

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

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

4
เหตุใดเราจึงยังใช้ DOM ในเบราว์เซอร์มากกว่ากระบวนทัศน์เดสก์ท็อป
จากความเข้าใจของฉันเว็บอินเตอร์เฟสได้รับการพัฒนาให้ใช้ HTML เพราะในเวลานั้นมันเป็นไปไม่ได้ที่จะจำลองแอปพลิเคชันสไตล์เดสก์ท็อปในเบราว์เซอร์เช่นวิธีการทำงานของ Silverlight และ Flash เนื่องจากข้อ จำกัด แบนด์วิดท์ ทำไมไม่เคยมีในอดีตและปัจจุบันได้รับการยอมรับมากขึ้นและผลักดันให้เทคโนโลยีเช่น Flash / Silverlight? จากประสบการณ์ของฉันพวกเขายินดีที่จะพัฒนาด้วย (แน่นอนความคิดเห็นของฉัน) และคุณไม่ต้องจัดการกับการปฏิบัติตามเบราว์เซอร์ข้ามและเบราว์เซอร์รุ่นเก่า (ส่วนใหญ่) การจัดการกับ postbacks, AJAX และอื่น ๆ ดูเหมือนจะเป็นความพยายามที่ไม่จำเป็นเป็นพิเศษเมื่อเทียบกับกระบวนทัศน์การพัฒนาของแอปพลิเคชันบนเดสก์ท็อป เทคโนโลยี DOM และคำชมเชยยังคงเติบโตอย่างต่อเนื่องโดยเฉพาะอย่างยิ่งในความจริงที่ว่า Silverlight / Flash ต้องการการติดตั้งปลั๊กอินและโทรศัพท์มือถือบางรุ่นไม่รองรับปลั๊กอินหรือไม่

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

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

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