• 第二次结对编程作业


    第二次结对编程作业


    链接

    结对同学的博客链接:
    本作业博客的链接: https://www.cnblogs.com/Sugar-Chl/p/11726670.html
    Github项目地址:https://github.com/SugarChl/ThirteenWater

    具体分工

    PSP表格

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 30 20
    Estimate 估计这个任务需要多少时间 20 30
    Development 开发 600 600
    Analysis 需求分析 (包括学习新技术) 120 200
    Design Spec 生成设计文档 20 20
    Design Review 设计复审 30 30
    Design 具体设计 60 100
    Coding 具体编码
    Code Review 代码复审 20 20
    Test 测试(自我测试,修改代码,提交修改)
    Reporting 报告 60 60
    Test Repor 测试报告
    Size Measurement 计算工作量 20 20
    Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 50 45
    		|				| 合计|1030|1145
    

    解题思路描述与设计实现说明

    网络接口:

    无网络接口的使用

    代码组织与内部实现设计:

    算法的关键与关键实现部分流程图:

    关键代码解释

    def trans_cards(cards):
        F, N = [], []
        for card in cards:
            if card[1] == "J":
                N.append(11)
            elif card[1] == "Q":
                N.append(12)
            elif card[1] == "K":
                N.append(13)
            elif card[1] == "A":
                N.append(14)
            elif card[1:] == "10":
                N.append(10)
            else:
                N.append(int(card[1]))
            F.append(card[0])
        return F, N
    

    该代码将牌型的列表,转化为花色,数字两个列表,有利于后续的操作。

    性能分析与改进

    改进的思路:

    对于分牌的算法还有比较大的缺陷,可能会出现相公。然后对于各个牌型的匹配是按顺序从大到小进行的,性能上还有改进的空间。
    后续可以把串行的牌型匹配改成并行的。这样就大大加快的分牌算法的性能。
    同时还有对可能出现相公的情况进行规避

    性能分析图和程序中消耗最大的函数:

    单元测试

    测试代码:

    测试的函数:

    构造测试数据的思路:

    遇到的困难及解决方法

    困难描述

    对于界面设计没有经验

    解决尝试

    通过百度、视频来学习相关知识,加深对界面设计的了解

    是否解决

    有何收获

    碰到新知识时不要畏惧,要勇于挑战

    评价队友

    值得学习的地方:

    队友非常负责任,认真完成了任务

    值得改进的地方

    学习进度条

    第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
    2|0|0|12|12|学习了墨刀的使用方法,十三水的规则
  • 相关阅读:
    DLL编写中extern “C”和__stdcall的作用
    spring mvc controller中的异常封装
    springMVC 【@response 返回对象自动变成json并且防止乱码】 & 【配置支持实体类中的@DateTimeFormat注解】
    Eclipse中修改SVN用户名和密码方法
    Maven
    j2ee、mvn、eclipse、Tomcat等中文乱码问题解决方法
    maven生成jar包
    windows超过最大连接数解决命令
    spring 国际化-i18n
    springMVC 前后台日期格式传值解决方式之二(共二) @InitBinder的使用
  • 原文地址:https://www.cnblogs.com/Sugar-Chl/p/11726670.html
Copyright © 2020-2023  润新知