8
คลาสที่ไม่ได้เป็นตัวแทนอะไร - ถูกต้องหรือไม่?
ฉันเพิ่งออกแบบแอปพลิเคชันของฉันและฉันไม่แน่ใจว่าฉันเข้าใจ SOLID และ OOP ถูกต้องหรือไม่ คลาสควรทำ 1 สิ่งและทำได้ดี แต่ในทางกลับกันพวกเขาควรเป็นตัวแทนวัตถุจริงที่เราทำงานด้วย ในกรณีของฉันฉันทำการแยกฟีเจอร์บนชุดข้อมูลจากนั้นฉันทำการวิเคราะห์การเรียนรู้ของเครื่อง ฉันคิดว่าฉันสามารถสร้างสามคลาส FeatureExtractor ชุดข้อมูล วิเคราะห์ แต่คลาส FeatureExtractor ไม่ได้แสดงอะไรเลยมันทำสิ่งที่ทำให้มันเป็นกิจวัตรมากกว่าคลาส มันจะมีเพียงหนึ่งฟังก์ชั่นที่จะใช้: extract_features () ถูกต้องหรือไม่ที่จะสร้างคลาสที่ไม่ได้เป็นตัวแทนของสิ่งหนึ่ง แต่ทำสิ่งใดสิ่งหนึ่ง แก้ไข: ไม่แน่ใจว่ามันสำคัญ แต่ฉันใช้ Python และถ้า extract_features () จะมีลักษณะเช่นนั้น: มันคุ้มค่าไหมที่จะสร้างคลาสพิเศษเพื่อเก็บเมธอดนั้น def extract_features(df): extr = PhrasesExtractor() extr.build_vocabulary(df["Text"].tolist()) sent = SentimentAnalyser() sent.load() df = add_features(df, extr.features) df = mark_features(df, extr.extract_features) df …