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

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

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

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

5
ความสามารถส่วนบุคคลควรได้รับการพิจารณาในประเด็นหรือไม่
ความเข้าใจของฉันเกี่ยวกับการประมาณเนื้อเรื่องนั้นเป็นสิ่งที่เราควรจะประเมินขนาดของเรื่องที่มันควรจะเป็นสำหรับนักพัฒนาที่มีจินตนาการและเป็นนักพัฒนาโดยเฉลี่ย - เช่นแนวคิดทางกฎหมาย นั่นคือคุณไม่ควรประเมินขนาดของเรื่องสมมติว่าคุณต้องทำมัน เพื่อยกตัวอย่าง: ในงานก่อนหน้าของฉันฉันเป็นส่วนหนึ่งของทีมที่ฉันอยู่ไกลและเป็นนักพัฒนาทับทิมที่มั่นใจที่สุด เพื่อนร่วมทีมของฉันจะประเมินเรื่องราวที่เกี่ยวข้องกับทับทิมเป็นประจำมากกว่าที่ฉันคาดไว้โดยมีข้อโต้แย้งว่า "ฉันไม่รู้ว่า X ทำงานอย่างไรในทับทิมดังนั้นนี่จะทำให้ฉันต้องอายุมากขึ้น" ข้อโต้แย้งของฉันต่อสิ่งนี้มาจากความจริงที่ว่าการวางแผนการวิ่งเป็นจุดที่ความสามารถของทีมเข้ามาเล่น นั่นคือฟอรัมที่ถูกต้องที่จะพูดว่า "ความสามารถของเราการวิ่งนี้จะต่ำกว่าปกติเล็กน้อยเพราะงานส่วนใหญ่เป็นงานจากทับทิมและเรามีนักพัฒนาทับทิมที่แข็งแกร่งเพียงคนเดียว" การแยกตัวประกอบนี้ในระหว่างการประมาณค่าจะเพิ่มมุมมองนี้เป็นสองเท่า ฉันขอขอบคุณที่อ้างอิงอย่างเป็นทางการในคำตอบ แต่ความคิดเห็นธรรมดา ๆ ก็ดีเช่นกัน
11 agile  estimation 

5
วิธีการออกแบบข้อยกเว้น
ฉันกำลังดิ้นรนกับคำถามง่าย ๆ : ตอนนี้ฉันกำลังทำงานกับแอปพลิเคชันเซิร์ฟเวอร์และฉันต้องคิดค้นลำดับชั้นสำหรับข้อยกเว้น (มีข้อยกเว้นบางอย่างอยู่แล้ว แต่จำเป็นต้องใช้กรอบงานทั่วไป) ฉันจะเริ่มทำสิ่งนี้ได้อย่างไร ฉันกำลังคิดว่าจะทำตามกลยุทธ์นี้: 1) เกิดอะไรขึ้น? มีบางสิ่งถามซึ่งไม่ได้รับอนุญาต มีการถามอะไรบางอย่างอนุญาต แต่ไม่ทำงานเนื่องจากพารามิเตอร์ผิด มีการถามบางสิ่งอนุญาต แต่ไม่ทำงานเนื่องจากข้อผิดพลาดภายใน 2) ใครเป็นผู้เปิดตัวคำขอ? แอปพลิเคชันไคลเอนต์ แอปพลิเคชันเซิร์ฟเวอร์อื่น 3) การส่งข้อความ: เนื่องจากเรากำลังติดต่อกับแอปพลิเคชันเซิร์ฟเวอร์ทุกอย่างเกี่ยวกับการรับและส่งข้อความ แล้วถ้าเกิดว่าการส่งข้อความผิดพลาดล่ะ ดังนั้นเราอาจได้รับประเภทข้อยกเว้นดังต่อไปนี้: ServerNotAllowedException ClientNotAllowedException ServerParameterException ClientParameterException InternalException (ในกรณีที่เซิร์ฟเวอร์ไม่รู้ว่าคำขอมาจากไหน) ServerInternalException ClientInternalException MessageHandlingException นี่เป็นวิธีการทั่วไปในการกำหนดลำดับชั้นของข้อยกเว้น แต่ฉันกลัวว่าฉันอาจจะขาดบางกรณีที่ชัดเจน คุณมีความคิดเห็นเกี่ยวกับประเด็นที่ฉันไม่ครอบคลุมหรือไม่คุณทราบถึงข้อเสียของวิธีการนี้หรือมีวิธีการทั่วไปในการถามคำถามประเภทนี้ (ในกรณีหลังฉันจะหาได้ที่ไหน) ขอบคุณล่วงหน้า
11 design  c++  exceptions  stl 

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

1
เหตุใด CharSequence จึงไม่ประกอบด้วย (CharSequence)
สิ่งนี้ใช้กับทั้ง Java SE และ Android เนื่องจากสัญญาเหมือนกัน เอกสาร CharSequence สำหรับ Java SE CharSequence เอกสารประกอบสำหรับ Android CharSequenceไม่ได้กำหนดcontains(CharSequence)วิธีการ ฉันไม่สามารถหาเหตุผลว่าทำไมและรวมถึงมันจะมีประโยชน์มากทำให้ไม่ต้องโทรCharSequence#toString()เพื่อตรวจสอบลำดับของอักขระ ยกตัวอย่างเช่นใน Android ของผู้ใช้ที่ถูกบังคับให้โทรEditable#toString()เพื่อดูว่าจะมีลำดับของอักขระแม้ว่าEditableการดำเนินการCharSequenceซึ่งสามารถหลีกเลี่ยงได้ถ้ากำหนดไว้CharSequencecontains(CharSequence) แนวคิดเบื้องหลังตัวเลือกการออกแบบนี้คืออะไร มันเป็นการกำกับดูแลที่มีศักยภาพหรือมีเหตุผลในการออกแบบสำหรับเรื่องนี้?

5
รูปแบบการนับการอ้างอิงสำหรับภาษาที่มีการจัดการหน่วยความจำ?
Java และ. NET มีตัวรวบรวมขยะที่ยอดเยี่ยมที่จัดการหน่วยความจำสำหรับคุณและรูปแบบที่สะดวกสำหรับการปล่อยวัตถุภายนอก ( Closeable, IDisposable) ได้อย่างรวดเร็วแต่เฉพาะในกรณีที่พวกเขาเป็นเจ้าของวัตถุเดียว ในบางระบบทรัพยากรอาจจำเป็นต้องใช้อย่างอิสระโดยสององค์ประกอบและจะได้รับการปล่อยตัวก็ต่อเมื่อทั้งสององค์ประกอบปล่อยทรัพยากร ใน C ++ ยุคใหม่คุณจะแก้ปัญหานี้ด้วย a shared_ptrซึ่งจะปล่อยทรัพยากรอย่างแน่นอนเมื่อทุกอย่างshared_ptrถูกทำลาย มีรูปแบบเอกสารที่ผ่านการพิสูจน์แล้วสำหรับการจัดการและปล่อยทรัพยากรที่มีราคาแพงซึ่งไม่มีเจ้าของคนเดียวในระบบที่รวบรวมขยะแบบไม่มุ่งเน้นวัตถุหรือไม่?

1
อะไรคือสัญชาติญาณที่สนับสนุนการเรียกตัวสร้างบางทีใน Haskell“ Just”?
สัญชาตญาณของประเภทที่เป็นตัวเลือกเช่นเดียวกับMaybe Intที่ไม่มี Int (เช่นนั้นNothingมี) หรือว่ามีInt บางตัว มีบางสิ่งที่นั่น มันทำให้ฉันรู้สึกว่าเราเรียก constructor ชนิดสำหรับ "เชิงลบ" กรณีNothingเพราะมันหมายความว่าที่ - ว่าไม่มีIntมี แต่ใช้คำว่าทำไมเพียงแค่ในกรณีที่เน้นอยู่ในสิ่งที่เป็นจริงมี ? สำหรับฉันคำว่า "เพิ่ง" มีความหมายแฝงอยู่ว่าสิ่งที่อธิบายนั้นน้อยกว่าทางเลือก ตรงกันข้ามกับสิ่งที่อยู่ที่นั่นจริง ๆ ; ตัวอย่างเช่น, ตอบ: คุณกำลังทำอะไรคืนนี้ B: ไม่; ฉันแค่จะอยู่ในและดูทีวี ตอบ: คุณตรวจสอบเสียงผีที่น่าขนลุกรอบ ๆ บ้านของคุณหรือไม่? B: ใช่ปรากฎว่ามันเป็นแค่นกฮูก เห็นได้ชัดว่าฉันขาดสัญชาตญาณสิ่งที่ตัวเลือกการตั้งชื่อนี้มีพื้นฐานมาจาก มันคืออะไร? เพราะให้ฉันคำเพียงหมายถึงตรงข้ามของวิธีการที่จะนำมาใช้ในที่Maybeประเภท

2
การรวมกลุ่มอย่างต่อเนื่องเป็นอย่างไรใน บริษัท ขนาดใหญ่
ใน บริษัท ของฉันเป็นเรื่องปกติที่จะไม่ทำบิลด์ขั้นกลางใด ๆ เพื่อตรวจสอบว่าแต่ละฟีเจอร์ / สาขาแก้ไขข้อผิดพลาดรวมอยู่ใน dev มีบิลด์รายวันเท่านั้นซึ่งจะทำให้การทดสอบล้มเหลวและสร้างข้อผิดพลาดได้เสมอ ฉันได้รับการบอกว่ามันไม่สมเหตุสมผลที่จะสร้างสำหรับการผสานแต่ละครั้งสำหรับนักพัฒนามากกว่า 1,000 คน ดังนั้นฉันจึงค้นหาวิธีการจัดระเบียบ CI ใน บริษัท ที่มีนักพัฒนาจำนวนมากหรือมากกว่านั้น (Microsoft, Facebook) และไม่พบอะไรเลย บางทีคนวงในสามารถบอกฉันได้?

7
เป็นวิธีปฏิบัติที่ดีหรือไม่ที่จะมีค่าพิเศษ“ ALL” ใน enum
ฉันกำลังพัฒนาบริการใหม่ในสภาพแวดล้อมแบบไมโครเซอร์วิส นี่คือบริการ REST เพื่อความง่ายสมมติว่าเส้นทางคือ: / historyBooks และวิธีการ POST สำหรับเส้นทางนี้สร้างหนังสือประวัติศาสตร์ใหม่ สมมติว่าหนังสือประวัติศาสตร์ครอบคลุมยุคหนึ่งในประวัติศาสตร์ เพื่อความกระชับลองสมมุติว่าเรามีเพียงประวัติศาสตร์ยุคต่อไปนี้: โบราณ โพสต์คลาสสิก ทันสมัย enumในรหัสของฉันฉันต้องการที่จะเป็นตัวแทนของพวกเขาใน ร่างกายวิธีของ (น้ำหนักบรรทุก) อยู่ในรูปแบบ JSON erasและควรรวมถึงชื่อสนาม ฟิลด์นี้เป็นรายการeraค่าที่หนังสือเล่มนี้ครอบคลุม ร่างกายอาจมีลักษณะ: { "name": "From the cave to Einstein - a brief history review", "author": "Foo Bar", "eras": ["Ancient", "Post Classical", "Modern"] } ในบริการเฉพาะนี้ตรรกะทางธุรกิจคือ: หากไม่มียุคที่ระบุไว้ในข้อมูลเข้าดังนั้นหนังสือเล่มนี้จะถือว่าครอบคลุมทุกยุคทุกสมัย ในการตรวจสอบ API มีข้อเสนอแนะ: รวมค่าอื่นALLสำหรับยุค enum …
11 rest  api  json  enum 

4
ฉันจะทดสอบแนวคิดผลิตภัณฑ์ได้อย่างมีประสิทธิภาพก่อนสร้างได้อย่างไร
ฉันได้อ่านแหล่งข้อมูลออนไลน์เกี่ยวกับเรื่องนี้ แต่สงสัยว่ามีวิธีที่ดีกว่าในการทดสอบแนวคิดสำหรับผลิตภัณฑ์ก่อนที่จะใช้เวลานับไม่ถ้วนในการสร้างสิ่งที่น่ารังเกียจ? ฉันได้อ่านเกี่ยวกับสิ่งต่างๆเช่นValidate.techที่ทดสอบแนวคิดผลิตภัณฑ์ภายในไม่ถึงหนึ่งวัน แต่ดูเหมือนผิดที่จะหลอกล่อผู้คนด้วยหน้า Landing Page และไม่มีอะไรอื่น ฉันรู้ว่ามันค่อนข้างเป็นนามธรรม แต่ก็ชอบที่จะได้ยินความคิดของคุณในทางใดทางหนึ่ง
11 product 

8
การรวมโปรแกรมมิงและเคียวรีฐานข้อมูล [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา พิจารณาบทช่วยสอนทั่วไปสำหรับภาษาการเขียนโปรแกรมเชิงวัตถุเช่น C ++ หรือ Java: สร้างระบบการประมวลผลคำสั่งง่ายๆด้วยวัตถุที่แสดงถึงบัญชีคำสั่งซื้อรายการอื่น ๆ (หรือสิ่งที่เทียบเท่าหรือมากกว่านั้น) ทำให้ความรู้สึกเป็นธรรมชาติสมบูรณ์แบบ แต่ช้างที่โต๊ะอาหารคือมันไม่จริงเพราะสิ่งเหล่านี้เป็นวัตถุในหน่วยความจำ ในระบบจริงบัญชีคำสั่งซื้อและอื่น ๆไม่ได้อยู่ในหน่วยความจำจริง ๆพวกเขาอาศัยอยู่ในฐานข้อมูลด้วยการเป็นตัวแทนของหน่วยความจำเพียงกระจกที่มีอายุสั้น คุณสามารถเขียนโค้ดจำนวนมากด้วยตัวคุณเองเพื่ออ่านและเขียนจากฐานข้อมูล แต่นั่นเป็นเรื่องที่น่าเบื่อและมีข้อผิดพลาดที่ไม่มีใครทำจริง ทุกคนลงเอยด้วยการใช้ ORM แต่สิ่งเหล่านี้มีปัญหาในสิทธิของตนเองที่มีชื่อเสียงเรียกว่า 'เวียดนามของอุตสาหกรรมของเรา' ฉันไม่คิดว่าที่ไม่ตรงกันระหว่างวัตถุและความสัมพันธ์ให้มากที่สุดเท่าที่ไม่ตรงกันระหว่างการเขียนโปรแกรมภาษาและฐานข้อมูลเป็นสิ่งที่แยกต่างหากที่ไม่ทราบเกี่ยวกับแต่ละอื่น ๆ การคาดเดา: การแก้ปัญหาคือการมีภาษาเดียวที่เป็นทั้งภาษาโปรแกรมและฐานข้อมูลแบบสอบถามซึ่งจะต้องใช้ภาษารันไทม์ยังเป็นฐานข้อมูลและคอมไพเลอร์ JIT ยังเป็นเครื่องมือเพิ่มประสิทธิภาพแบบสอบถาม นั่นคือบทสรุปของปัญหาที่ฉันเห็น คำถามของฉันคือมีใครเลย สร้างขึ้นจริงเช่นระบบแบบครบวงจร พยายาม แต่ล้มเหลวในการสร้างระบบแบบครบวงจร เขียนสิ่งสำคัญในหัวข้อว่าคุณจะสร้างสิ่งนั้นได้อย่างไรหรือเพราะเหตุใด หาทางเลือกอื่นในการแก้ปัญหาหรือไม่

1
ฉันจะใช้รูปแบบ MVC กับแอปพลิเคชัน C # WinForms ได้อย่างไร
ฉันเป็นนักพัฒนา C ++ ที่ใช้รูปแบบ MVC ในการออกแบบ GUI นับตั้งแต่นั้นมา เมื่อเร็ว ๆ นี้ฉันต้องการกลับสู่ C # และฉันตั้งค่าแอปพลิเคชัน Windows Forms แต่ตอนนี้ฉันหลงทางเล็กน้อยเกี่ยวกับวิธีการผลักดันมันไปยังโครงสร้างที่สอดคล้องกับ MVC สิ่งที่ฉันกำลังพยายามทำคือ "ประกาศ" คลาสที่ฉันได้รับสำหรับ WinForms เป็นมุมมองและเพิ่มคลาสสำหรับโมเดลและตัวควบคุมในพื้นหลัง อย่างไรก็ตามฉันไม่แน่ใจว่าจะโต้ตอบกับเหตุการณ์ได้อย่างไรเช่นคลิกปุ่ม โดยปกติฉันจะเปลี่ยนเส้นทางเหตุการณ์เหล่านี้ไปยังตัวควบคุมและดำเนินการกับมุมมองเมื่อฉันทำเสร็จแล้ว สิ่งนี้ทำให้รู้สึกไม่พอใจในกลุ่มดาวนี้ ตัวอย่างเช่นถ้าฉันต้องการใช้ปุ่ม "ออกจาก" ฉันจะต้องเปลี่ยนเส้นทางเหตุการณ์จากมุมมองไปยังตัวควบคุมรวมทั้งใช้วิธีสาธารณะเพิ่มเติมในมุมมองของฉันซึ่งสามารถเรียกได้จากตัวควบคุมในขณะที่ฉัน สามารถเรียก Close () จากมุมมองในตัวอย่างแรกได้ คุณมีคำแนะนำใด ๆ สำหรับฉัน ความเข้าใจของฉันเกี่ยวกับ Windows Forms ใน C # นั้นยังไม่ดีพอที่จะลองใช้งาน MVC หรือไม่? ฉันให้แบบฟอร์มในชั้นเรียนมีบทบาทที่ไม่ถูกต้องหรือไม่? MVC เป็นเพียงสถาปัตยกรรมที่ไม่เหมาะสมสำหรับกรณีการใช้งานนี้หรือไม่?
11 c#  mvc  winforms 

2
หากมีสองวิธีในการเข้าใกล้งานวิธีหนึ่งควรเลือกระหว่างพวกเขา?
ฉันมีกรณีการใช้งานเฉพาะและพบ 3 วิธีในการทำผ่านอินเทอร์เน็ตซึ่งกำหนดไว้สำหรับกรณีการใช้งานที่คลุมเครือ ฉันกำลังจ้องมองที่สามคนนี้สงสัยว่าจะใช้ ฉันมักจะนั่งที่นั่นไม่รู้จะทำอะไร - แล้วไม่ทำอะไรเลย ... มีวิธีเลือกอย่างดีไหม? ฉันควรลองพวกเขาทั้งหมดหรือไม่ เพื่อให้มีความเฉพาะเจาะจงมากขึ้นสำหรับบริบทฉันพยายามสร้างเกมกระดานที่มีน้ำหนักเบามากซึ่งฉันต้องการส่วนของหน้าจอที่ฉันสามารถหมุนตารางเกมกระดานซูมเข้าไปในตารางและย้ายชิ้นส่วนบนตารางนี้ ฉันไม่รู้ว่าจะทำอย่างไร แต่ฉันพบสิ่งต่าง ๆ ออนไลน์เช่น Core Animation, Core Graphics, Sprite Kit และฉันเห็นข้อโต้แย้งและต่อต้านพวกเขา - ตัวอย่างเช่น Sprite kit อยู่ในระดับสูง แต่รักษาอัตราเฟรมไว้ที่ 60 ซึ่ง สิ้นเปลืองแบตเตอรี่เมื่อไม่มีอะไรเคลื่อนไหวในหน้าจอ Core Animation เป็น API ระดับต่ำกว่าซึ่งคัดค้านแนวทางของ Apple ในการ "ใช้ระดับสูงสุดของนามธรรม" ฉันไม่ต้องการเรียนรู้ 3 สิ่งที่ต้องใช้ 1 มีวิธีที่ฉันสามารถเลือกและรับ unstuck ได้หรือไม่ ฉันทิ้งคำถามนี้ไว้ค่อนข้างคลุมเครือเพราะฉันคิดว่ามันใช้ได้กับทุกด้านของซอฟต์แวร์

3
ทำไม Python จึงไม่ได้รับการปรับให้เหมาะกับการใช้งาน Javascript สมัยใหม่?
การใช้งานจาวาสคริปต์สมัยใหม่เช่น V8 (Chrome), SpiderMonkey (Firefox) และ Chakra (IE / Edge) ล้วนมีการรวบรวม JIT และการเพิ่มประสิทธิภาพอื่น ๆ จำนวนมากเพื่อปรับปรุงประสิทธิภาพ ทำไมหลามจึงไม่มีสิ่งเหล่านี้ ฉันดู PyPy และ IronPython ซึ่งทั้งคู่อ้างว่าความเร็วเพิ่มขึ้น PyPy ฉันไม่เข้าใจว่าการใช้งาน Python ในภาษาไพ ธ อนเป็นภาษาที่ตีความจะเร็วกว่าการนำไปใช้อ้างอิงใน C. IronPython แนวคิดเดียวกัน แต่ฉันไม่เห็นว่า. NET Framework จะเพิ่มความเร็วอย่างไร
11 python-3.x  jit 

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