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

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

5
มีผู้นำที่ชัดเจนในภาษาที่ใช้ JVM หรือไม่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา สถานะปัจจุบันของโครงการเหล่านี้คืออะไรและมีหนึ่ง (หรือสอง) ปรากฏเป็นผู้นำที่ชัดเจน? เพื่อแสดงให้เห็นถึงแรงจูงใจของฉันในการถามคำถามนี้ลองนึกย้อนกลับไปหลายปี ต้นแบบและ jQuery กำลังเผชิญหน้ากับผู้เล่นอื่นเช่น MooTools ที่ต่อสู้เพื่อเอาชีวิตรอดเช่นกัน กรอไปข้างหน้าอย่างรวดเร็วจนถึงทุกวันนี้และฉันทามติทั่วไปก็คือ jQuery เป็นไลบรารี JavaScript สำหรับวัตถุประสงค์ทั่วไปที่ดีที่สุด ในช่วงหลายปีที่ผ่านมามีสิ่งที่คล้ายกันเกิดขึ้นกับภาษาที่ใช้ JVM หรือไม่ มีบางภาษาตกอยู่ในสภาพทรุดโทรมและถูกทอดทิ้งหรือไม่? จากสิ่งที่ฉันได้อ่านดูเหมือนว่าสกาล่าจะได้รับการเตรียมให้เป็นที่ชื่นชอบอย่างแน่นอน แต่จากนั้นอีกครั้งเกือบทุกอย่างที่ฉันอ่านมานั้นเป็นเวลาหลายปี ฉันได้ทำ bit การวิจัยมากขึ้น - ฉันมีความคิดที่จะตรวจสอบปริมาณการค้นหาปีที่ผ่านมาโดยใช้ Google Trends ดูเหมือนว่า Jython และ JRuby มีความสนใจค่อนข้างน้อยในขณะที่ปริมาณของ Groovy ลดลงและปริมาณของ Scala นั้นคงที่ (แย่ที่สุด) หรือเพิ่มขึ้นเล็กน้อย (ดีที่สุด) นี่เป็นการประเมินที่ถูกต้องหรือไม่? และใช่ฉันหมายถึงภาษาที่ไม่ใช่ Java บน …
9 java  scala  jvm  groovy  jruby 

5
ใช้ C ++ / Java เพื่อพัฒนาซอฟต์แวร์เพื่อวัตถุประสงค์ทางการค้า
ฉันวางแผนที่จะพัฒนาโปรแกรมที่ฉันตั้งใจจะขายในภายหลัง ฉันกำลังพยายามตัดสินใจใช้ภาษาเพื่อเขียนโค้ดด้วยและแคบลงเหลือ C ++ หรือ Java ฉันเคยผ่านใบอนุญาต GPL v2 และ v3 ที่ใช้สำหรับ GCC และ OpenJDK ของ GNU (ใช่ฉันเข้าใจสิ่งที่ถูกกฎหมายบางอย่าง แต่ชัดเจนไม่ใช่ทั้งหมด) แต่มีจุดหนึ่งที่ทุกคนไม่ชัดเจน (นี่ควรเป็นหนึ่งในสิ่งแรกที่ตอบว่า IMO): ถ้าฉันพัฒนาโปรแกรมโดยใช้ C ++ / Java และคอมไพล์โดยใช้ GCC คอมไพเลอร์หรือคอมไพเลอร์ของ OpenJDK ฉันสามารถขายได้โดยไม่ต้อง วางโปรแกรมของฉันภายใต้ GPL เช่นกัน? เท่าที่ฉันสามารถทำได้ฉันมีสิทธิ์เต็มที่ที่จะโอนสิทธิการใช้งานให้กับโปรแกรมของฉัน แต่มันมีข้อผิดพลาด: มันระบุไว้ในใบอนุญาตที่ฉันไม่ควรเชื่อมโยงไปยังห้องสมุดใด ๆ ที่อยู่ภายใต้ GPL ถ้าเป็นเช่นนั้นฉันจะต้องเผยแพร่โปรแกรมของฉันภายใต้ GPL ตอนนี้ฉันไม่รู้ว่าอะไรใน C ++ / Java ถือเป็นไลบรารีดังนั้นถ้าฉันใช้สิ่งปกติใน C …
9 licensing  gpl 

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

3
อะไรคือ“ ประสบการณ์” กับภาษาหนึ่ง ๆ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ตอนนี้ฉันเป็นนักเรียน CS กำลังมองหาการฝึกงานภาคฤดูร้อนโดยเฉพาะเพราะฉันต้องการพัฒนาแอพสำหรับ Android และ / หรือ iOS เมื่อมองถึงข้อกำหนดสำหรับโอกาสต่าง ๆ (โอกาสในการพัฒนาซอฟต์แวร์ใด ๆ ไม่ใช่เฉพาะที่ฉันแยกออก) มันจะแสดงรายการ "ประสบการณ์กับ x, y, z .... " คำถามของฉัน: สิ่งที่นับเป็นประสบการณ์กับภาษาหรือเทคโนโลยีเฉพาะ? ฉันรู้สึกโชคดีที่ฉันมีโอกาสใช้ภาษาหลายภาษาในการศึกษาในมหาวิทยาลัยของฉันทุกอย่างตั้งแต่ VB จนถึงการประชุม MIPS แต่โดยส่วนตัวแล้วมีข้อยกเว้นบางประการฉันไม่คิดว่าตัวเองมีความรู้เพียงพอในภาษาส่วนใหญ่ที่ฉันเคยตกหลุมรักและบอกให้เขียนรหัส x ตามวันที่ y ฉันอาจรู้พื้นฐานของภาษา หากต้องการใช้ตัวอย่างเฉพาะที่ฉันต้องเผชิญในตอนนี้: การฝึกงานที่ฉันสนใจแสดงประสบการณ์กับ C และ / หรือ C ++ เป็นข้อกำหนด ฉันทำงานกับ C ฉันรู้ว่าคุณสามารถทำได้และไม่สามารถทำได้ฉันเป็นเจ้าของและได้อ่าน …

11
ผลสะท้อนใดที่ผู้พัฒนาคาดหวังหลังจากแจ้งให้นายจ้างปัจจุบันทราบว่าเขาทำงานอยู่ในตลาดงาน [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน9 ปีที่ผ่านมา นักพัฒนาจำนวนมากโดยเฉพาะผู้ที่อยู่กับ บริษัท เดียวกันมาหลายปีและโดยเฉพาะผู้ที่ทำงานให้กับ บริษัท ขนาดใหญ่ที่มีทรัพยากรบุคคลที่มีสุขภาพดีมากอาจจบลงด้วยสถานการณ์นี้ในคราวเดียว เมื่อเวลาผ่านไปคุณเรียนรู้มากขึ้นได้รับทักษะใหม่ ๆ และจบลงด้วยความรับผิดชอบที่มากขึ้นแม้กระทั่งอาจเริ่มนำทีมพัฒนาชั้นนำและคุณเริ่มถามตัวเองว่าทำไมฉันจึงถือกรรมสิทธิ์เดิมและได้รับค่าตอบแทนเท่าเดิม สำหรับอัตราเงินเฟ้อ) ที่ฉันได้รับเมื่อฉันได้รับการว่าจ้าง? คุณถามหัวหน้างานของคุณว่าคุณต้องทำอะไรอีกมากมายเพื่อเลื่อนระดับเป็นตำแหน่งถัดไปและหัวหน้างานของคุณตกลงว่าเวลาผ่านไปนานแล้ว แต่หลังจากที่คุณได้รับการเลื่อนตำแหน่งการจ่ายเงินที่เพิ่มขึ้นของคุณยังคงเป็น "HR-capped" และคุณรู้ว่าคุณกำลังทำเงินได้ต่ำกว่า 10-15k ที่คุณคิดว่าราคาตลาดเป็นทักษะของคุณ คุณมีไพ่สองใบที่คุณยังสามารถเล่นได้: 1) หางานใหม่ สัมภาษณ์ในสถานที่ต่างๆแล้วออกจาก บริษัท ปัจจุบันของคุณหรือดูว่าพวกเขาสามารถจับคู่ค่าจ้างได้หรือไม่ (ส่วนตัวถ้า บริษัท ต้องการให้คุณหางานที่แตกต่างก่อนที่พวกเขาจะให้คุณค่าที่เป็นธรรมแก่คุณ บริษัท ณ จุดนั้น) หรือ 2) แจ้งให้นายจ้างปัจจุบันของคุณทราบว่ามีการโพสต์ประวัติย่อของคุณและคุณกำลังมองหาข้อเสนออย่างกระตือรือร้น คุณอาจมีความสุขกับการจัดการงานคนที่คุณทำงานด้วย แต่ความแตกต่างของเงินเดือน 10k เป็นสิ่งสำคัญและวิธีเดียวที่จะได้รับมูลค่าตลาดที่แท้จริงของคุณคือการทำให้ตัวเองอยู่ในตลาด ดังนั้นนี่เป็นโอกาสของพวกเขาที่จะจับคู่เงินเดือนของคุณก่อนที่คุณจะหาของฝาก ผลกระทบที่น่าจะเกิดจากการเล่นไพ่ # 2 …

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

3
ทำอย่างไรจึงจะเป็นตัวแทนโครงการความคล่องตัวให้กับผู้ที่มุ่งเน้นไปที่น้ำตก [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ทีมงานของเราถูกขอให้เป็นตัวแทนของความพยายามในการพัฒนาของเราในแผนโครงการ ไม่มีใครไม่พอใจกับงานของเราหรือตั้งคำถามกับความสามารถในการส่งมอบของเราเราเพียงแค่เข้าร่วมในการเรียกร้องให้มีการวางแผนโครงการ ปัญหาคือเราเป็นทีมที่คล่องตัวและไม่ได้คิดเกี่ยวกับงานของเราในแง่ของแผนโครงการที่เป็นทางการ ในขณะที่เรามีความคิดทั่วไปเกี่ยวกับสิ่งที่เรากำลังดำเนินการต่อไปเราไม่แน่ใจ 100% จนกว่าเราจะวางแผนการทำซ้ำ จนถึงขณะนี้ทีมงานของเราส่วนใหญ่ทำงานในสุญญากาศและไม่จำเป็นต้องนำเสนอวิธีการหรือตัวชี้วัดของเราแก่บุคคลภายนอก เราปฏิบัติตามมากที่สุดของการปฏิบัติดำเนินการในการเขียนโปรแกรมมาก เราจัดการประชุมวางแผนรายไตรมาสเพื่อให้มีความคิดทั่วไปเกี่ยวกับเรื่องราวที่เรากำลังจะทำในไตรมาส ที่กล่าวว่าเรื่องราวของเรามีการบันทึกไว้ในการ์ด 3x5 และได้รับการประเมินเฉพาะตอนเริ่มต้นของการทำซ้ำที่จะใช้งานได้ หลังจากการประมาณค่าที่เราเอกสารเรื่องราวในทีมมูลนิธิ Sever ในระหว่างการทำซ้ำเราจะแนบโค้ดกับเรื่องราวและทำเครื่องหมายเรื่องราวว่าเสร็จสมบูรณ์เมื่อเสร็จแล้ว จากข้อมูลนี้เราสามารถสร้างแผนภูมิเบิร์นดาวน์และความเร็ว สิ่งสำคัญที่สุดคือเรารู้ความเร็วเฉลี่ยของเราในการวนซ้ำทำให้เราไม่สามารถกัดได้มากกว่าที่เราเคี้ยว ฉันไม่ต้องการปรับเปลี่ยนวิธีการพัฒนา แต่ต้องการนำเสนอกิจกรรมการพัฒนาของเราในรายงานที่มีคนคุ้นเคยกับน้ำตกเท่านั้นที่จะเข้าใจ ในแผนโครงการ Agile ที่มีหน้าตาเป็นอย่างไรเคนแมคโดนัลด์ทำหน้าที่ได้ดีในการวางความแตกต่างระหว่างแผนโครงการความคล่องตัวและน้ำตก เขาระบุความแตกต่างในกระสุนบริโภค: แผนโครงการเปรียวขึ้นอยู่กับคุณสมบัติ จัดทำแผนโครงการ Agile เป็นซ้ำ แผนโครงการ Agile มีรายละเอียดในระดับที่แตกต่างกันขึ้นอยู่กับกรอบเวลา ทีมงานโครงการแผนเปรียวเป็นเจ้าของ ความสามารถในการอธิบายความแตกต่างนั้นยอดเยี่ยม แต่วิธีที่ดีที่สุดในการนำเสนอข้อมูล

6
ฉันควรพยายามฝึกปัญหาในการชุมนุมหรือไม่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันกำลังดูปัญหาโครงการออยเลอร์ 48 : ชุดนี้ 1 1 + 2 2 + 3 3 + ... + 10 10 = 10405071317 ค้นหาหลักสิบสุดท้ายของซีรีส์ 1 1 + 2 2 + 3 3 + ... + 1000 1000 ใน Python ฉันสามารถทำได้ด้วยบรรทัดเดียว: sum((x**x for x in xrange(1,1001)) แต่การประกอบของสิ่งนี้จะเท่ากับ 100 …

3
เมื่อคิดถึงวันที่และเวลา - เที่ยงคืนของวันนี้ในอดีตหรืออนาคต
นี่เป็นปริศนาสำหรับฉันเสมอและฉันตระหนักดีว่าไม่ใช่ปัญหาในการเขียนโปรแกรมหรือการพัฒนาซอฟต์แวร์ แต่ก็ดูเหมือนจะเป็นเรื่องธรรมดาที่สมเหตุสมผลในสาขาของเรา ตัวอย่างเช่นหากฉันต้องตั้งค่าวันหมดอายุเป็น 2011-04-08 00:00:00 - และเวลาท้องถิ่นปัจจุบันของฉันคือ 10:45 ในวันที่ 8 - ฉันหมดอายุไปแล้วหรือยัง หรือฉันยังเหลือครึ่งวันหรือมากกว่านั้น? มีมาตรฐานสากลที่จุดสิ้นสุดของเที่ยงคืนของวันหรือไม่ หรือฉันควรจะออกจากกองทัพอังกฤษและบอกว่าวันนั้นจะสิ้นสุดในเวลา 23:59:59 น. และเริ่มเวลา 00:00:01 และไม่มีเที่ยงคืน?

5
เราจะรู้ได้อย่างไรว่าองค์ประกอบที่สนับสนุนการวางนัยทั่วไปเป็นตัวเลือกที่ถูกต้องเสมอ
ไม่ว่าวัตถุจะมีอยู่จริงหรือไม่ก็ตามเราสามารถเลือกที่จะสร้างแบบจำลองด้วยวิธีที่แตกต่างกัน เราสามารถใช้การวางนัยทั่วไปหรือการจัดองค์ประกอบตามอำเภอใจในหลายกรณี อย่างไรก็ตามหลักการ GoF ของ "การจัดองค์ประกอบที่โปรดปรานเหนือการวางนัยทั่วไป [sic]" แนะนำให้เราใช้การจัดวาง ดังนั้นเมื่อเราสร้างแบบจำลองตัวอย่างหนึ่งบรรทัดจากนั้นเราสร้างคลาสที่มีสมาชิกสองคน PointA และ PointB ของประเภท Point (องค์ประกอบ) แทนการขยายจุด (ลักษณะทั่วไป) นี่เป็นเพียงตัวอย่างที่เรียบง่ายของวิธีที่เราสามารถเลือกการจัดองค์ประกอบหรือการสืบทอดให้กับโมเดลโดยพลการแม้ว่าวัตถุนั้นจะมีความซับซ้อนมากขึ้น เราจะรู้ได้อย่างไรว่านี่เป็นตัวเลือกที่ถูกต้อง? อย่างน้อยก็สำคัญเพราะอาจมีการปรับโครงสร้างอีกหลายครั้งหากทำผิด

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

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

4
ผู้ใช้สามารถรับ LGPL เป็น GPL หรือ GPL เป็น AGPL ได้หรือไม่
LGPL (เราจะถือว่ารุ่น 3 สำหรับการสนทนาทั้งหมดเพื่อความสะดวก) เป็นรุ่นที่ จำกัด น้อยกว่าของ GPL เช่นเดียวกัน AGPL เป็น GPL รุ่นที่ จำกัด มากขึ้น แต่เป็นไปได้ที่จะใช้รหัส LGPL ทำการเพิ่มเติม (หรือไม่) และเพิ่มความน่าเชื่อถือให้เป็น GPL หรือ AGPL รหัส GPL สามารถแก้ไขและ relicensed เป็น AGPL ได้อย่างไร
9 licensing  gpl  lgpl 

6
กรอบการทำงานจำเป็นใน PHP หรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา เฟรมเวิร์กจำเป็นจริงๆใน PHP หรือไม่? ข้อดีและข้อเสียของการใช้มีอะไรบ้าง
9 php  frameworks 

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

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