【问题标题】:advice for how to improve implementation skills of "clean" c++ code [closed]关于如何提高“干净”C++ 代码实现技能的建议 [关闭]
【发布时间】:2021-03-20 15:55:57
【问题描述】:

我是一名软件专业的学生,​​我的第一本编程书籍是 Robert C Martin 的“Clean Code”。所以我知道干净代码的重要性并尝试将其应用到我的代码中。

但是,如果我尝试实现我从大学学到的算法,那就搞砸了。我可以通过我的双手解决问题,但用电脑很难做到。甚至我通过c++编写了一类算法,它通常违反干净的代码原则(最严重的是方法的参数太多。)

最近,为了提高我的技能,我正在尝试在线法官,但这对我的代码清理没有多大帮助......

你能根据你的经验给我建议吗?我真的想让我的代码干净而且设计得很好。我会很感激你的!

+我有一个用回溯法制作的背包问题的算法代码。如果你愿意,我可以发布它,但可能很混乱,很难理解...... T_T

【问题讨论】:

  • 这真的没有捷径可走。通过实践学习。接受你一生中写的大部分代码都是垃圾,当你写出非常漂亮的东西时,你会感觉更好。

标签: c++ architecture coding-style


【解决方案1】:

代码测试的问题在于它们通常是人为的,不能反映真实世界的示例。

当我设计程序时,通常会以反映他们打算计算机化的现有纸质系统的方式列出要求。这是传达“问题域”的一个公平起点,但还远远不够。要将其带到下一步,您需要能够分析具有用例、场景和“故事”的系统所需的内容。从那时起,您可以在顶层确定您的系统应该如何工作。

同时,您还需要通过编写小段代码来“自下而上”地工作,每段代码完成一个任务。

通过以这种方式分解问题,它使您能够在高级和低级同时关注系统的单个部分。通过识别参与者、用例和场景,您就可以合理地了解如何构建代码并适当地委托。

我可以推荐一本书,它极大地帮助我重新思考如何处理问题解决部分 - “设计模式解释”:https://www.amazon.co.uk/Design-Patterns-Explained-Perspective-Object-Oriented/dp/0321247140/ref=sr_1_1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-27
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多