คำถามติดแท็ก language-agnostic

แท็กนี้มีไว้สำหรับคำถามที่ไม่เฉพาะกับภาษาการเขียนโปรแกรมหรือสภาพแวดล้อม

14
ภาษาสคริปต์มีผลอย่างไรต่อโปรแกรมเมอร์จูเนียร์ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันได้พูดคุยกับอาจารย์คนหนึ่งของฉันเมื่อวันก่อน เราได้อภิปรายถึงผลกระทบที่ภาษาสคริปต์ที่ง่ายกว่า(เช่น Python หรือ Ruby) ที่มีต่อโปรแกรมเมอร์ผู้น้อย เขาแย้งว่าภาษาสคริปต์ทำให้เกิดเทคนิคการเขียนโค้ดที่เลอะเทอะเพราะผู้เริ่มต้นไม่เข้าใจสิ่งที่เกิดขึ้น "ภายใต้ประทุน" นอกจากนี้เขายังอ้างถึงตัวอย่างอื่น ๆ ว่าภาษาสคริปต์มักทำให้โปรแกรมเมอร์ละเลยความกังวลเกี่ยวกับประสิทธิภาพการจัดการหน่วยความจำความซับซ้อนในการปฏิบัติงานเป็นต้น ฉันเป็นที่ถกเถียงกันว่าภาษาระดับต่ำกว่าอาจจะมากเกินไปสำหรับบางคนและพวกเขาอาจยอมแพ้ก่อนที่พวกเขาจะพัฒนาความหลงใหลในการเขียนโปรแกรม เมื่อฉันเริ่มเรียนรู้การเขียนโปรแกรมภาษาแรกของฉัน (C) ฉันไปถึงพอยน์เตอร์และเลิกเพราะแนวคิดยากเกินไป (ในการป้องกันตัวฉันอายุแค่ 14 ปี) หากไม่ใช่สำหรับ Java ฉันอาจไม่ได้เป็นโปรแกรมเมอร์! ถ้าฉันเริ่มต้นด้วยภาษาที่เรียบง่ายขึ้นแล้วขุดลึกฉันรู้สึกว่าฉันจะไม่ยอมแพ้และฉันจะได้เรียนรู้มากพอ ๆ กับที่ฉันเริ่มต้นด้วย C. ชั้นเรียนจบลงก่อนที่ทั้งสองฝ่ายจะได้รับการสำรวจอย่างเต็มที่ มาถึงจุดนี้ฉันได้เทศนาว่าผู้เริ่มต้นควรเริ่มต้นด้วยภาษาสคริปต์แล้วขุดลึกลงไป แต่หลังจากการสนทนาฉันเริ่มสงสัยว่านี่เป็นความคิดที่ผิดพลาดหรือไม่ ดังนั้นภาษาสคริปต์มีผลกระทบอะไรกับโปรแกรมเมอร์รุ่นเยาว์

14
ประสิทธิภาพของภาษาการเขียนโปรแกรมช้าลงหรือไม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน6 ปีที่ผ่านมา นี่คือวิธีที่ฉันเห็น มีรหัสเครื่องและทุกอย่างที่คอมพิวเตอร์ต้องการเพื่อใช้งานบางอย่าง คอมพิวเตอร์ไม่สนใจภาษาการเขียนโปรแกรม ไม่สำคัญว่ารหัสเครื่องมาจาก Perl, Python หรือ PHP ภาษาการเขียนโปรแกรมไม่ได้ให้บริการคอมพิวเตอร์ พวกเขาให้บริการโปรแกรมเมอร์ ภาษาการเขียนโปรแกรมบางภาษาทำงานช้ากว่าภาษาอื่น แต่ก็ไม่จำเป็นเพราะมีบางอย่างผิดปกติ ในหลายกรณีมันเป็นเพราะพวกเขาทำสิ่งต่าง ๆ ที่โปรแกรมเมอร์จะต้องทำ (เช่นการจัดการหน่วยความจำ) และการทำสิ่งเหล่านี้พวกเขาดีกว่าในสิ่งที่พวกเขาควรจะทำ - ให้บริการโปรแกรมเมอร์ ดังนั้นประสิทธิภาพการทำงานที่ช้าลงของภาษาการเขียนโปรแกรมจริงๆเป็นสิ่งที่ไม่ดี?

1
ความคิดในการ 'เรียก' ฟังก์ชั่นมาจากไหน?
ฉันสงสัยอยู่เสมอว่าเพราะเหตุใดคนหนึ่งจึงเรียกใช้ฟังก์ชั่นซึ่งตรงข้ามกับการใช้งานมัน การค้นหาของ Google สำหรับการfunction call etymologyและเงื่อนไขที่คล้ายกันผลัดกันขึ้นไม่มีอะไรที่มีประโยชน์, วิกิพีเดียไม่ได้พูดถึงมันพจนานุกรมออนไลน์มีทั้งรายการที่ทุกคนหรือไม่ส่วนนิรุกติศาสตร์ ความคิดในการ 'เรียก' ฟังก์ชั่นมาจากไหน?

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

9
ภาษาที่พิมพ์แบบคงที่รองรับประเภทจุดตัดสำหรับค่าที่ส่งคืนของฟังก์ชันหรือไม่
หมายเหตุเริ่มต้น: คำถามนี้ถูกปิดหลังจากการแก้ไขหลายครั้งเพราะฉันไม่มีคำศัพท์ที่เหมาะสมในการระบุสิ่งที่ฉันกำลังมองหาอย่างถูกต้อง Sam Tobin-Hochstadt จากนั้นโพสต์ความคิดเห็นซึ่งทำให้ฉันรู้ว่ามันคืออะไร: ภาษาการเขียนโปรแกรมที่สนับสนุนประเภทจุดตัดสำหรับค่าส่งคืนของฟังก์ชัน ตอนนี้คำถามได้ถูกเปิดอีกครั้งฉันตัดสินใจที่จะปรับปรุงโดยการเขียนใหม่อีกครั้ง (หวังว่า) จะแม่นยำยิ่งขึ้น ดังนั้นคำตอบและความคิดเห็นบางอย่างด้านล่างอาจไม่เหมาะสมอีกต่อไปเพราะอ้างถึงการแก้ไขก่อนหน้า (โปรดดูประวัติการแก้ไขคำถามในกรณีเช่นนี้) มีภาษาการเขียนโปรแกรมที่ได้รับความนิยมและคงที่หรือไม่ (เช่น Haskell, Java ทั่วไป, C #, F # และอื่น ๆ ) ที่รองรับประเภทจุดตัดสำหรับค่าส่งคืนฟังก์ชันหรือไม่ ถ้าเป็นเช่นนั้นจะทำอะไรและอย่างไร (ถ้าฉันซื่อสัตย์ฉันชอบที่จะเห็นใครบางคนสาธิตวิธีการแยกประเภทในภาษาหลักเช่น C # หรือ Java) ฉันจะให้ตัวอย่างรวดเร็วของประเภทจุดตัดที่อาจมีลักษณะโดยใช้บาง pseudocode คล้ายกับ C #: interface IX { … } interface IY { … } interface IB { … } …

3
การลดการกระแทกซ้ำและการทำความสะอาดโค้ดของเลอะเทอะขณะรอความต้องการ
ฉันสืบทอดฐานรหัสที่มีอยู่สำหรับผลิตภัณฑ์ที่เลอะเทอะอย่างน่ากลัว การออกแบบขั้นพื้นฐานไม่เพียงพอพอสมควรซึ่งน่าเสียดายที่ฉันสามารถทำได้เพียงเล็กน้อยโดยไม่มี refactor ที่สมบูรณ์ (การเชื่อมต่อสูงการทำงานร่วมกันต่ำการทำซ้ำรหัสอาละวาดไม่มีเอกสารการออกแบบทางเทคนิคการทดสอบบูรณาการแทนการทดสอบหน่วย) ผลิตภัณฑ์มีประวัติการสัมผัสกับลูกค้าที่สำคัญ "เงินสดวัว" ที่มีความอดทนน้อยที่สุดสำหรับความเสี่ยงหนี้ทางเทคนิคที่จะทำให้ชาวกรีกหน้าแดงรหัสฐานขนาดใหญ่และความซับซ้อนมากและวิธีการพ่ายแพ้การสู้รบเหนื่อยล้าทีมก่อน ฉัน. ทีมเก่ากระโดดเรือไปยังอีกแผนกหนึ่งเพื่อให้พวกเขามีโอกาสทำลายโครงการอื่น เป็นเรื่องยากมากที่ฉันประสบกับความล้มเหลวทางเทคนิคของโครงการเมื่อเทียบกับความล้มเหลวในการจัดการโครงการ แต่นี่เป็นหนึ่งในกรณีเหล่านั้น สำหรับช่วงเวลาที่ฉันอยู่คนเดียว แต่ฉันมีเวลามากอิสระในการตัดสินใจและทิศทางในอนาคตและความสามารถในการสร้างทีมตั้งแต่เริ่มต้นเพื่อช่วยฉัน คำถามของฉันคือการรวบรวมความคิดเห็นเกี่ยวกับการรีแฟคเจอริ่งผลกระทบต่ำในโครงการเช่นนี้เมื่อคุณมีเวลาว่างระหว่างขั้นตอนการรวบรวมข้อกำหนดการทำงาน มีคำเตือนของคอมไพเลอร์หลายพันคำซึ่งเกือบทั้งหมดเป็นการอิมพอร์ตที่ไม่ได้ใช้ตัวแปรที่ไม่ได้อ่านที่ยังไม่อ่านการตรวจสอบชนิดและการส่งแบบไม่ปลอดภัย การจัดรูปแบบโค้ดนั้นอ่านไม่ได้และเลอะเทอะมากจนดูเหมือนว่า coder ได้รับความทุกข์จากโรค Parkinsons และไม่สามารถควบคุมจำนวนครั้งที่แถบพื้นที่ถูกกดบนบรรทัดที่กำหนด ฐานข้อมูลและทรัพยากรไฟล์เพิ่มเติมมักจะเปิดและไม่เคยปิดอย่างปลอดภัย อาร์กิวเมนต์วิธีที่ไม่มีจุดหมายวิธีการที่ซ้ำกันที่ทำสิ่งเดียวกัน ฯลฯ ในขณะที่ฉันกำลังรอข้อกำหนดสำหรับคุณสมบัติถัดไปฉันทำความสะอาดสิ่งที่มีความเสี่ยงต่ำที่มีผลกระทบต่ำเมื่อฉันไปและสงสัยว่าฉันกำลังเสียเวลาหรือทำสิ่งที่ถูกต้อง จะเกิดอะไรขึ้นถ้าคุณสมบัติใหม่หมายถึงการริปโค้ดที่ฉันใช้ไปก่อนหน้านี้? ฉันจะเริ่มต้นวิธีการแบบ Agile และฉันเข้าใจว่าสิ่งนี้เป็นที่ยอมรับและเป็นเรื่องปกติที่จะมีการปรับโครงสร้างอย่างต่อเนื่องในระหว่างการพัฒนาแบบ Agile คุณสามารถนึกถึงผลกระทบเชิงบวกหรือเชิงลบของฉันที่ทำสิ่งนี้ที่คุณต้องการเพิ่มหรือไม่?

8
“ คุณไม่ต้องการมัน” และ“ ตอนนี้ดีกว่าที่ไม่เคยเล่นมาด้วยกัน”
ฉันมักจะพบว่าตัวเองกอด "ตอนนี้ดีกว่าไม่เคย" เมื่อฉันก้าวเข้าสู่ความแห้งแล้งของการออกแบบ โดยปกติแล้วฉันพบว่าฉันจำเป็นต้องปลูกฝังความเข้าใจเกี่ยวกับตำแหน่งที่มีสิทธิ์เพียงแห่งเดียวสำหรับความรู้ในบริบทของระบบความรู้ชิ้นอื่น ๆ ดังนั้นฉันมักจะออกแบบระบบ 'ตอนนี้' ในทางกลับกันการฝึกฝนนี้ทำให้ฉันต้องสร้างล่วงหน้าค่อนข้างไกลถึงแม้จะมีโอกาสพอสมควรที่ฉันไม่ต้องการมัน รูปแบบทั้งสองนี้มีวิธีการอย่างไร คุณใช้วิธีปฏิบัติแบบใดเพื่อให้แน่ใจว่าพวกเขาเล่นได้ดี? คุณจะสอนพวกเขาด้วยกันโดยไม่สร้างความสับสนได้อย่างไร

2
จะเขียนเซิร์ฟเวอร์ HTTP ได้อย่างไร?
ตามที่ชื่อบอกว่าฉันต้องการเขียนเซิร์ฟเวอร์ HTTP คำถามของฉันคือสิ่งนี้ฉันจะทำสิ่งนี้ได้อย่างไร ฉันรู้ว่ามันฟังดูธรรมดามากและ "ระดับสูง" ด้วย แต่ก็มีวิธีหนึ่งสำหรับความบ้าคลั่งของฉัน ฉันเชื่อว่าคำตอบของคำถามนี้คือฉันไม่เชื่อเรื่องพระเจ้า ความหมายไม่ว่าฉันจะใช้ภาษาใด (เช่น C, C ++, Java ฯลฯ ) คำตอบควรเหมือนกัน ฉันมีความคิดทั่วไปว่ามันควรจะทำงานอย่างไร: เปิดซ็อกเก็ตที่พอร์ต 80 รอให้ลูกค้าทำการร้องขอ อ่านคำขอ (เช่นบุคคลนี้ต้องการหน้า "contact-us.html") ค้นหาและอ่าน "contact-us.html" ส่งส่วนหัว html จากนั้นส่งเนื้อหาของ "contact-us.html" เสร็จสิ้น อย่างที่ฉันพูดฉันเชื่อว่านี่เป็นกระบวนการ แต่ฉันไม่แน่ใจ 100% สิ่งนี้ทำให้ฉันเป็นหัวใจของคำถาม บุคคลค้นหาข้อมูลนี้ได้อย่างไรหรือที่ไหน? ถ้าฉันไม่ต้องการเขียนเฉพาะเซิร์ฟเวอร์ HTTP จะเกิดอะไรขึ้นถ้าฉันต้องการเขียนเซิร์ฟเวอร์ FTP เซิร์ฟเวอร์แชทโปรแกรมดูรูปภาพ ฯลฯ บุคคลค้นหาขั้นตอน / กระบวนการที่แน่นอนที่จำเป็นในการสร้างเซิร์ฟเวอร์ HTTP ที่ใช้งานได้อย่างไร เพื่อนร่วมงานคนหนึ่งบอกฉันเกี่ยวกับส่วนหัว html ดังนั้นฉันจะไม่มีทางรู้เรื่องนี้เลยถ้าไม่มีเขา …

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

5
ทำไมค่าคงที่จึงมีความสำคัญในวิทยาศาสตร์คอมพิวเตอร์
ฉันเข้าใจ 'คงที่' ในความหมายที่แท้จริง ฉันจำได้เมื่อพิมพ์รหัส แต่ฉันไม่คิดว่าฉันเข้าใจความสำคัญของคำนี้ในบริบทของวิทยาศาสตร์คอมพิวเตอร์ เมื่อใดก็ตามที่ฉันอ่านบทสนทนา \ white paper เกี่ยวกับการออกแบบภาษาจากโปรแกรมเมอร์ที่มีชื่อเสียง \ นักวิทยาศาสตร์คอมพิวเตอร์คำว่า 'invariant' ยังคงปรากฏขึ้นอย่างต่อเนื่องเป็นศัพท์แสง และนั่นคือส่วนที่ฉันไม่เข้าใจ มีอะไรพิเศษเกี่ยวกับมัน?

8
Chromebook - เป็นที่น่าสนใจสำหรับโปรแกรมเมอร์หรือไม่ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา Google ประกาศchromebookเมื่อวานนี้ (11 พฤษภาคม 2011) ในขณะที่นี่เป็นสิ่งที่ดีฉันไม่มีเงื่อนงำว่ามันน่าสนใจที่จะซื้อหนึ่งสำหรับ (ไม่ใช่จาวาสคริปต์) - โปรแกรม คุณคิดอย่างไร? จะมีตัวอย่างเช่น Java IDE ในคลาวด์หรือไม่ บรรทัดคำสั่งแม้

8
การทำงานในทีมการเขียนโปรแกรมขนาดใหญ่เป็นอย่างไร
ฉันรู้สึกโชคดีที่ได้ทำงานเป็นทีมเล็ก ๆ ฉันคิดว่าสิ่งที่ฉันทำงานด้วยมากที่สุดคือโปรแกรมเมอร์ 11 คน การทำงานกับโครงการที่มีนักพัฒนาหลายร้อยคนเป็นอย่างไร พัน? ขนาดและสิ่งที่ไม่อะไร แก้ไข: ขอบคุณสำหรับคำตอบทั้งหมด! ดูเหมือนจะมีผลบวกน้อยมาก: เป็นไปได้ที่จะทำงานบนรหัสฐานขนาดใหญ่ การพัฒนาอาชีพภายในที่ดีขึ้น การคุ้มครองพนักงานจากการจัดการที่ไม่เหมาะสม มีประโยชน์อื่นใดอีกหรือไม่สำหรับทีมใหญ่?

5
ถ้าอื่น ๆ - ตรรกะของรหัสซ้ำแล้วซ้ำอีก
เจ้านายของฉันให้โครงการฉันด้วยตรรกะเฉพาะ ฉันต้องพัฒนาเว็บเพจที่มีการนำทางผ่านหลาย ๆ กรณีจนกว่าเขา / เธอจะมาถึงผลิตภัณฑ์ นี่คือรูปแบบเส้นทางของการนำทางในไซต์: สำคัญ! ในหน้าผลิตภัณฑ์เนวิเกเตอร์สามารถเลือกตัวกรองที่ต้องการ ถ้า A เขา / เธอต้องผ่าน B (และแน่นอน C) หรือ C และถึงผลิตภัณฑ์ ถ้า B เขา / เธอจะต้องผ่าน C และเข้าถึงผลิตภัณฑ์ ถ้า C เขา / เธอเข้าถึงผลิตภัณฑ์โดยตรง แน่นอนว่าถ้าฉันเริ่มต้นจาก AI กำลังติดตามเส้นทางที่ยาวที่สุดและเมื่อฉันไปถึงผลิตภัณฑ์ฉันมีตัวกรองที่ใช้งานอยู่ 3 ตัว จนถึงตอนนี้ฉันพัฒนาโค้ดต่อไปนี้ซึ่งใช้งานได้ดี if filter_A if filter_B filter_C() .. else .. else filter_C .. else …

2
ไหนดีกว่า: กลุ่ม getters หรือ 1 เมธอดที่มีพารามิเตอร์สตริงการเลือก?
โดเมนความรู้ของเราเกี่ยวข้องกับคนที่เดินข้ามแผ่นบันทึกความกดดันด้วยเท้าเปล่า เราทำการจดจำรูปภาพซึ่งส่งผลให้วัตถุของคลาส 'เท้า' หากเท้ามนุษย์ถูกจดจำในข้อมูลเซ็นเซอร์ มีการคำนวณหลายอย่างที่ต้องดำเนินการกับข้อมูลของเท้า ตอนนี้ API ตัวไหนจะดีกว่า: class Foot : public RecognizedObject { MaxPressureFrame getMaxPressureFrame(); FootAxis getFootAxis(); AnatomicalZones getAnatomicalZones(); // + similar getters for other calculations // ... } หรือ: class Foot : public RecognizedObject { virtual CalculationBase getCalculation(QString aName); // ... } ตอนนี้มีโปรและคอนแสตนท์จำนวนมากที่ฉันสามารถหาได้ แต่ฉันก็ไม่สามารถตัดสินใจได้ว่าอะไรคือสิ่งที่สำคัญที่สุด หมายเหตุนี่เป็นแอปพลิเคชั่นสำหรับผู้ใช้ไม่ใช่ไลบรารี่ซอฟต์แวร์ที่เราขาย คำแนะนำใด ๆ? โปรบางตัวสำหรับวิธีแรกอาจเป็น: …

1
การเรียนรู้ของเครื่องรวมอยู่ในการออกแบบเครื่องมือค้นหาอย่างไร
ขณะนี้ฉันกำลังสร้างเครื่องมือค้นหาภายในองค์กรขนาดเล็กโดยใช้ Apache Lucene จุดประสงค์ของมันคือเรียบง่าย - จากคำหลักบางคำมันจะแนะนำบทความที่เขียนภายใน บริษัท ของเรา ฉันใช้การให้คะแนน TF-IDF ที่ค่อนข้างเป็นมาตรฐานในฐานะตัวชี้วัดพื้นฐานและสร้างกลไกการให้คะแนนของฉันเองอยู่ด้านบน สิ่งเหล่านี้ดูเหมือนจะทำงานได้อย่างยอดเยี่ยมยกเว้นในบางกรณีที่การจัดอันดับดูยุ่งเหยิง ดังนั้นสิ่งที่ฉันวางแผนจะทำคือการเพิ่มลิงค์ที่เกี่ยวข้อง / ไม่เกี่ยวข้องขนาดเล็กลงในหน้าผลการค้นหาเพื่อให้ผู้ใช้สามารถคลิกที่ลิงค์ใดลิงก์หนึ่งขึ้นอยู่กับการรับรู้ของพวกเขาว่าควรรวมผลลัพธ์นั้นไว้ด้วยหรือไม่ ความคิดของฉัน ปฏิบัติต่อป้ายกำกับที่เกี่ยวข้อง / ไม่เกี่ยวข้องเหล่านี้และสร้างข้อมูลการฝึกอบรม ใช้ข้อมูลนี้เพื่อฝึกฝนลักษณนาม (เช่น SVM) รวมโมเดลนี้ลงในเครื่องมือค้นหาเช่นผลลัพธ์ใหม่ทุกรายการจะผ่านตัวแยกประเภทและจะได้รับการกำหนดป้ายกำกับว่าเกี่ยวข้องหรือไม่ วิธีนี้ดูเหมือนง่ายสำหรับฉัน แต่ฉันไม่แน่ใจว่าจะใช้งานได้จริงหรือไม่ ฉันมีคำถามสองข้อ: คุณสมบัติทั้งหมดที่ฉันควรแยกคืออะไร มีวิธีที่ดีกว่าในการรวมส่วนประกอบการเรียนรู้ของเครื่องเข้ากับเครื่องมือค้นหาหรือไม่ เป้าหมายสุดท้ายของฉันคือ "เรียนรู้" ฟังก์ชั่นการจัดอันดับตามตรรกะทางธุรกิจเช่นเดียวกับความคิดเห็นของผู้ใช้

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