多项选择题

软构件理解意味着三个因素:理解它的()以及理解如何修改它使其以一点不同方式完成。

A.功能
B.编程语言
C.结构
D.工作方式