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

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

4
สกีมาฐานข้อมูลมีการโยกย้ายปัญหาในสภาพแวดล้อมการผลิตหรือไม่
ในการอภิปรายเกี่ยวกับฐานข้อมูล NoSQL vs SQL บางครั้งฉันได้ยินว่า บริษัท ต้องการใช้ฐานข้อมูลแบบไม่มี schema ของ schemaless เนื่องจากเป็นปัญหาในการโยกย้ายสคีมาเป็นเวอร์ชันใหม่ แต่นั่นเป็นปัญหาใหญ่จริง ๆ เมื่อทำการอัพเกรด ฐานข้อมูลเชิงสัมพันธ์นั้นแย่สำหรับการดำเนินการดังกล่าวหรือไม่? ฉันอ่านโพสต์บล็อกนี้ในบล็อก MongoDB: ทำไมต้อง Schemaless

3
แนะนำรูปแบบการออกแบบ / แนวทางในการเปิดเผย / ยอมรับ / กู้คืนจากข้อผิดพลาดของระบบการจัดการข้อยกเว้น (egs ใน Java, C ++, Perl, PHP)
คุณสามารถแนะนำรูปแบบการออกแบบ / แนวทางในการเปิดเผย / ยอมรับ / กู้คืนจากข้อผิดพลาดของระบบการจัดการข้อยกเว้น (Java, C ++, Perl, PHP) หรือไม่ จำเป็นต้องรายงานข้อผิดพลาดบางอย่าง ข้อผิดพลาดบางอย่างสามารถจัดการภายใน (โดยลองใหม่หรือไม่สำคัญ (สามารถเพิกเฉย) คุณจัดโครงสร้างรหัสเพื่อจับพวกเขาอย่างไร แต่จะต้องมีการบันทึกข้อผิดพลาดทั้งหมด มีแนวทางปฏิบัติที่ดีที่สุดอะไรบ้าง และสำหรับการจำลองพวกเขาเพื่อให้สามารถทดสอบส่วนประกอบที่ได้รับผลกระทบโดยสมบูรณ์ได้ คำถามเฉพาะที่ไม่ใช่ภาษาโปรแกรมทั่วไปที่ใช้กับภาษาการเขียนโปรแกรมสมัยใหม่หลายภาษา แต่ยินดีต้อนรับตัวอย่างภาพประกอบของรูปแบบวิธีการและปรัชญาใน Java, C ++, PHP และ Perl (ถามด้วยใน stackoverflow: /programming/7432596/recommend-a-design-pattern-approach-to-exposing-tolerating-recovering-from-system) แต่ฉันคิดว่ามันควรถามโปรแกรมเมอร์เช่นกัน ฉันคิดว่าโปรแกรมเมอร์ถาม - ตอบครอบคลุมถึงซอฟต์แวร์ / ปัญหาการเขียนโปรแกรมที่กว้างขึ้น

7
เราไปจาก Binary / Hex ไปยังชุดคำสั่งประกอบได้อย่างไร?
ดังนั้นฉันจึงพยายามเรียนรู้การเขียนโปรแกรม Embedded / Assembly บางส่วนในระยะหลัง ๆ นี้รวมถึงการพยายามเรียนรู้ระดับต่ำสุด (ประตูและสิ่งอื่น ๆ ) สิ่งหนึ่งที่ทำให้ฉันเข้าใจว่า .... คือชุดคำสั่ง "รับ" ของเรา ฉันค่อนข้างเข้าใจว่าเกต / TTL และงานดังกล่าวเป็นอย่างไร แต่ฉันไม่เห็นว่าเราได้รับจากวิธีนั้นไปยัง mov เพิ่มเพิ่ม clr ฯลฯ ... ? อาจเป็นคำถามที่งี่เง่า .... แต่ฉันหมายถึงฉันคิดว่ากลับไปที่ตัวประมวลผลไมโครคอนโทรลเลอร์ / คอนโทรลเลอร์ตัวแรกและคิดว่า .... พวกเขาออกแบบชุดคำสั่งและทำงานได้อย่างไร แก้ไข: ฉันเดาว่าสำหรับความชัดเจนแกล้งฉันพูดคุยเกี่ยวกับไมโครโปรเซสเซอร์แรกพวกเขาไปจากไบนารีเพื่อสร้างชุดคำสั่งได้อย่างไร

2
อะไรคือความแตกต่างระหว่าง CRM, CMS และ ERP [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน8 ปีที่ผ่านมา ฉันรู้ว่า CRM ย่อมาจาก Customer Relationship Management, CMS ย่อมาจาก Content Management System และ ERP หมายถึง Enterprise Resource Planner ฉันอยากจะรู้ว่าแต่ละสิ่งจะดีที่สุดและใช้ในสถานการณ์ใดดังนั้นความเข้าใจพื้นฐานของทั้งสามจึงมีความแตกต่างระหว่างพวกเขาและสภาพแวดล้อมที่พวกเขาใช้ แก้ไข: ฉันอ่านวิกิพีเดียมากขึ้นและตอนนี้ฉันเข้าใจตามวิกิ ERPว่า CRM เป็นส่วนหนึ่งของ ERP คำถามของฉันจะเจาะจงมากขึ้นคือ: ทำไมต้องมี CRM แยกต่างหากถ้ามันเป็นส่วนหนึ่งของ ERP อยู่แล้ว? นามธรรม? ในการเข้าสู่ระบบและจัดเก็บข้อมูลของศูนย์บริการข้อมูลที่เรียกคนหลายร้อยคนให้ได้รับข้อมูลซึ่งดีกว่าที่จะบรรลุภารกิจต่อไปนี้ CRM หรือ ERP : เก็บข้อมูลทั้งหมดเกี่ยวกับคนทั้งหมดที่เราได้รับเรียก จัดเก็บข้อมูลเกี่ยวกับบุคคลที่โทรมาและจำนวนชั่วโมงที่บุคคลทำงาน ค้นหาว่าพนักงานคนใดมีประสิทธิผลมากกว่ากันใช่ไหม …
13 cms  erp  crm 

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

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

6
เคล็ดลับในการวางแผนเขียนโครงการ PHP ขนาดใหญ่ใหม่
ฉันตัดสินใจที่จะเขียนกรอบ PHP ใหม่ทั้งหมด (โดยใช้ MVC) ที่ฉันได้ทำงานทั้งเปิดและปิดเป็นเวลาหลายปี ปัญหาของฉันจนถึงตอนนี้คือฉันเพิ่งจะคิดไอเดียโยนมันเข้าไปใน Trac เพื่อเป็นตั๋วและเพิ่มพวกมันในภายหลัง - โดยไม่ต้องกังวลเกี่ยวกับการออกแบบของเฟรมเวิร์ก เมื่อเวลาผ่านไปสิ่งนี้ทำให้เกิดปัญหาและฉันคิดว่าการเขียนใหม่จะมีประโยชน์ แต่ฉันไม่แน่ใจว่าจะเริ่มต้นด้วยการวางแผนได้อย่างไร - ฉันรู้ว่าฉันไม่ต้องการใช้ Trac และฉันรู้ว่าฉันต้องการมากกว่าแค่ ตั๋วและเหตุการณ์สำคัญ - แต่ฉันจะต้องการอะไรอีก ฉันต้องการวางแผนการเขียนใหม่นี้อย่างละเอียดถี่ถ้วนฉันต้องการรายละเอียดทุกคุณลักษณะที่ฉันต้องการจะไปที่ไหนและจะเชื่อมต่อกับส่วนอื่น ๆ ได้อย่างไร - แต่ฉันไม่มีประสบการณ์กับการวางแผนระดับนี้ คำแนะนำใด ๆ? โปรแกรมใดบ้างที่จะช่วย? ฉันเริ่มเบื่อกับ Trac ฉันไม่เคยชอบมันเลย ฉันรู้ว่าฉันต้องการเอกสารการออกแบบ แต่มีเลย์เอาต์บางอย่างที่ฉันควรทำตามหรือไม่? ฉันจะต้องติดตามข้อผิดพลาดตั๋วเหตุการณ์สำคัญ ฯลฯ แต่นอกเหนือจาก Trac ฉันไม่รู้ว่าอะไรดีสำหรับสิ่งนั้น ฉันแน่ใจว่าฉันต้องการมากกว่านี้ แต่ฉันไม่รู้ว่าอะไรดังนั้นความช่วยเหลือจะได้รับการชื่นชม

3
ฉันควรรวมอะไรไว้ในความคิดเห็นเอกสาร XML
ฉันพยายามทำให้จุดรหัสของฉันดีขึ้นโดยเฉพาะอย่างยิ่งเมื่อมันมาถึงความเห็น XML ในสมาชิกชั้นเรียน แต่บ่อยครั้งที่มันรู้สึกโง่ ในกรณีของตัวจัดการเหตุการณ์การตั้งชื่อและพารามิเตอร์เป็นมาตรฐานและชัดเจน: /// <summary> /// Handler for myCollection's CollectionChanged Event. /// </summary> /// <param name="sender">Event Sender</param> /// <param name="e">Event Arguments</param> private void myCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { // actual code here... } ฉันมักจะมีคุณสมบัติง่าย ๆ ที่มีชื่อ (IMO) อย่างชัดเจนเพื่อให้การสรุปซ้ำซ้อน: /// <summary> /// Indicates if an item is selected. /// …
13 c#  coding-style 

7
ในฐานะวัยรุ่นฉันจะหา "เพื่อน" สำหรับการเขียนโปรแกรมได้อย่างไร
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเป็นวัยรุ่นที่เขียนโปรแกรมมาประมาณ 3 ปีฉันสามารถทำซอฟต์แวร์พื้นฐานได้ แต่ฉันรู้สึกว่าฉันไม่สามารถทำได้ด้วยตัวเอง ฉันจะทำอย่างไรเพื่อหาคนที่สนใจในการเขียนโปรแกรม ไม่มีเพื่อนของฉันเลยฉันมีลูกพี่ลูกน้องซึ่งกำลังศึกษาวิศวกรรมซอฟต์แวร์อยู่ แต่เขาอยู่ในประเทศอื่น ฉันอาศัยอยู่ในสเปนดังนั้นมันจึงยากกว่าในสหรัฐอเมริกา
13 learning 

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

2
ทำไมรูปแบบพื้นที่เก็บข้อมูลจำเป็นใน NHibernate?
ฉันอ่านอย่างเป็นทางการของแอพลิเคชัน NHibernate ตามแรกของคุณ ในขณะที่การสอนนั้นดีและง่ายต่อการติดตามฉันสงสัยว่าทำไมรูปแบบ Repository จึงถูกใช้ ในต่างๆAdd, Update, RemoveวิธีการในProductRepositoryการดำเนินงานรหัสเกือบจะเหมือนกับ - พวกเขาทั้งหมดใช้การทำธุรกรรมและความแตกต่างที่อยู่ใน "เนื้อ" คือโทรsession.Saveint Addวิธีการsession.Deleteในremoveวิธีการ ( หน้าขาดเบรก HTML, แต่คุณสามารถค้นหาหน้าสำหรับรหัสที่เกี่ยวข้องเช่นpublic void Remove,public void Add ) รหัสนั้น "รู้สึกผิด" เหตุใดผู้เขียนจึงใช้รูปแบบ Repository - เป็นเพียงการสาธิตการใช้ NHibernate หรือว่าจำเป็นหรือเหตุผลอื่น ๆ ps พื้นหลังของฉันมาจาก Ruby on Rails โดยใช้ ActiveRecord ดังนั้นฉันจึงพยายามเข้าใจว่า NHibernate ทำงานอย่างไร / ใช้งานอย่างไร
13 c#  .net  nhibernate 

2
คุณจะเปลี่ยนวิธีการจัดรูปแบบอัตโนมัติของรหัส Intellij ได้อย่างไร [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว IntelliJ ทำการจัดรูปแบบแปลก ๆ ด้วยโค้ด Javascript และฉันพยายามหาวิธีหยุดการฟอร์แมตด้วยวิธีนี้ เมื่อใดก็ตามที่ฉันเชื่อมโยง jQuery เข้าด้วยกันมันจะเยื้องรหัสอัตโนมัติที่สร้างขึ้นเช่นนี้ $('#something').focus(function() { /* Do some stuff */ }).blur(function() { /* this is where the cursor and closing braces end up */ }) ฉันอยากให้มันเป็นแบบนี้: $('#something').focus(function() { /* Do some stuff */ …

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

2
วิธีจัดการกับ“ ความหยิ่งยโส”
ฉันออกจากงาน (เพื่อย้ายไปยังประเทศอื่น) ซึ่งฉันตั้งโปรแกรมใน Javascript และ Haskell (บางไพ ธ อน) ส่วนใหญ่แล้ว ฉันชอบมันมากเพราะผู้คนมีจุดประสงค์ในเชิงบวกทางคณิตศาสตร์และยังได้ทำสิ่งต่างๆมากมาย นี่เป็นร้านค้ามืออาชีพอย่างแท้จริง ตอนนี้ฉันทำงานที่ร้าน Agile / XP ในขณะนี้เป็นสิ่งที่ดีและทั้งหมดที่ฉันรู้สึกว่าบางทีเราไม่เป็นมืออาชีพเมื่อมันมาถึงการเลือกเทคโนโลยีและห้องสมุด ฉันรู้สึกว่าวิธีการเขียนซอฟต์แวร์ของเรานั้นค่อนข้างอ่อนและไม่มีโครงสร้าง ฉันพยายามอ่านหนังสือที่ฉันได้รับการเสนอและดูเหมือนว่าพวกเขาจะสนับสนุนสไตล์นี้ ( ฮึ ) หลายครั้งที่เราเพิ่งเลือก libs จากฮับ git และใช้มันโดยไม่มีการตรวจสอบใด ๆ ฉันถูกบังคับให้ทำงานกับใครบางคนตลอดเวลาแม้ว่ามันจะเป็นงานเล็ก ๆ สำหรับคนคนหนึ่ง ดูเหมือนว่าจะมีกฎ "เร็ว ๆ " เล็กน้อยสำหรับทุกสิ่งแม้ว่ากฎนั้นอาจถูกทำลายโดยตัวอย่างเคาน์เตอร์เล็กน้อย (ครั้งหนึ่งฉันทำผิดพลาดจากการให้ตัวอย่างเคาน์เตอร์นั้นและฉันถูกโจมตีด้วยวาจา) นี่เป็นเรื่องปกติในอเมริกาหรือไม่ ฉันจะจัดการกับความหยิ่งยโสนี้ได้อย่างไร
13 ruby  haskell  agile 

3
การประยุกต์ใช้หลักการ SOLID
ฉันค่อนข้างใหม่กับหลักการออกแบบSOLID ฉันเข้าใจถึงสาเหตุและผลประโยชน์ของพวกเขา แต่ยังไม่สามารถนำไปใช้กับโครงการขนาดเล็กที่ฉันต้องการสร้างโครงสร้างใหม่ให้เป็นการฝึกปฏิบัติเพื่อใช้หลักการ SOLID ฉันรู้ว่าไม่จำเป็นต้องเปลี่ยนแอปพลิเคชันที่ทำงานได้อย่างสมบูรณ์แบบ แต่ฉันต้องการปรับโครงสร้างใหม่เพื่อให้ได้รับประสบการณ์การออกแบบสำหรับโครงการในอนาคต แอปพลิเคชั่นมีงานดังต่อไปนี้ (จริง ๆ แล้วมากกว่านั้น แต่ให้ง่าย): มันต้องอ่านไฟล์ XML ซึ่งมีฐานข้อมูลตาราง / คอลัมน์ / ดูคำนิยาม ฯลฯ และสร้างไฟล์ SQL ที่สามารถใช้เพื่อสร้าง สกีมาฐานข้อมูล ORACLE (หมายเหตุ: โปรดอย่าอภิปรายว่าทำไมฉันถึงต้องการหรือทำไมฉันถึงไม่ใช้ XSLT และอื่น ๆ มีเหตุผลหลายประการ แต่มันไม่ใช่หัวข้อ) เป็นการเริ่มต้นฉันเลือกดูเฉพาะตารางและข้อ จำกัด หากคุณไม่สนใจคอลัมน์คุณสามารถระบุวิธีต่อไปนี้: ข้อ จำกัด เป็นส่วนหนึ่งของตาราง (หรือมากกว่าอย่างแม่นยำส่วนหนึ่งของคำสั่ง CREATE TABLE) และข้อ จำกัด อาจอ้างอิงตารางอื่น ก่อนอื่นฉันจะอธิบายว่าแอปพลิเคชันมีลักษณะอย่างไรในตอนนี้ (ไม่ได้ใช้ SOLID): ในขณะนี้แอปพลิเคชันมีคลาส "ตาราง" ซึ่งมีรายการตัวชี้ถึงข้อ จำกัด …

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