姓名 | 身份 | github用户名 |
---|---|---|
戢凯文 | 队长 | jikaiwen |
滕思洁 | 队员 | yunmoxyz |
赵皓宇 | 队员 | PB15111605 |
项目链接: https://github.com/2017-CompilerH-a3/Teamwork-Traits
Traits是一种语言特征,表示一组方法可以用于扩展一个类的功能。
单继承的语言中类无法同时从两个基类继承属性或方法。于是,Traits被提出,通过在类中声明要组合的Trait名称,来达到从其他地方获得代码进行复用的目的。
本项目将研究Traits的特点,优点缺陷,并与其他相似的语言特性,比如mixin还有接口,进行比较;同时建立一些Traits相关的demo,以理解与体会。
已有进展的:
- 与Mixin对比
- 接口:目前整理了再python,c++,php这3种语言中的特性和用法
- demo:给出了一些traits用法的示例代码
- 增加了对c++type_traits.h中代码的分析
- 阅读了部分python traits的代码实现
还在进行的:
- 和stl的关系(在整理)
- python trait代码的分析
- c++的代码分析
具体进展可见项目链接。
- traits和c++ stl是否有关联?
我们感觉traits和c++ stl有所关联,但是在网上没有找到相关资料,目前有了一些进展正在整理。
- python trait的代码量过大,同时网上没有相应的代码分析资料,看得进度极慢且没有头绪
- 缺少有关php的trait资料
讨论方式为qq讨论组讨论。目前我们只在遇到问题时在讨论组进行讨论。
分工见项目中每个人提交的branch。