Skip to content

TDPS-Mihotel/teamwork

Repository files navigation

teamwork

  1. 开发规范
    1. 文件命名
    2. 标点符号
    3. 文件编码格式
    4. 代码
      1. 语言及版本
      2. 虚拟环境管理器
      3. 代码风格
      4. 结对编程
      5. 调试信息
      6. 各组应给出原理图
  2. 学习资料
    1. markdown
    2. git和GitHub
    3. 文档驱动开发
    4. 项目管理
      1. Zenhub使用及理解
    5. VSC使用及设置
    6. ssh
    7. Python
    8. 效率工具

开发规范

文件命名

文件名只应包含数字, 字母, 汉字, 下划线 ( _ ), 连字符 ( - ), 句点 ( . )

💡 空格以下划线代替, 其他字符以连字符代替.

文件名包含其他字符容易导致程序出错. 为避免麻烦我们以这样的形式规范命名文件. 文件名包含其他字符可能造成的问题举例:

  • 文件名里 有空格.jpg 这样的文件名很可能让程序以为要处理的文件的名字是文件名里, 因而找不到文件或者处理了错误的文件. 而有空格.jpg会被当成无效参数, 多余字符.
  • 文件名里/有左斜杠.avi 这样的文件名在很多程序里会被认为是一个名为文件名里的文件夹下的有左斜杠.avi文件, 因此可能得到没有"文件名里"这个文件夹的报错
  • 文件名里(有)括号.gif 比如在markdown文档中用![](文件名里(有)括号.gif)来引用这个gif, 在有的markdown渲染器会被渲染为)括号.gif. 因为前一个)被认为是markdown引用图片的![]()语法的结束符了.

标点符号

我们统一使用英文标点符号 (半角标点符号), 不要使用全角标点符号. 一个是为了统一, 一个是避免出现很低级的错误.

❗️ 即便在文档中也只使用英文标点, 避免切换来切换去忘记是不是在使用英文标点. 通过在,, ., ), ?等标点后加一个空格, (前加一个空格来让文档不会显得太紧凑, 更加美观.

💡 如果你使用的是微软自带简体中文输入法, 通过按Ctrl.能够切换使用中文标点符号 (全角标点符号) 还是英文标点符号 (半角标点符号)

文件编码格式

请使用UTF-8作为程序, 文档文件的编码格式

如果你用的是系统语言为简体中文的Win10系统, 那么你的系统默认编码格式是cp936, 也称GBK (不过大部分编程软件默认使用UTF-8作为文件编码格式). 如果用UTF-8编码格式打开实际编码格式为cp936的文件就会出现下图效果.

image-20200227090637990

上图文字内容与上一段话一样.

image-20200227091026869

如果你使用Visual Studio Code, 在状态栏里可以看到当前文件是以什么编码格式打开的. 点击它可以更改当前文件保存/读取时使用的编码格式.

🔗 了解更多关于cp936

代码

语言及版本

因为以树莓派4为主板, 相关Python生态很好, 另外Python语法较为直观, 开发迅速, 除底盘组内容我们先统一以Python3.7为开发语言验证原型, 如果有必要后期再用C 重写需要算力部分.

虚拟环境管理器

为避免大家环境冲突, 统一使用conda作为Python虚拟环境管理器.

代码风格

建议统一使用pycodestyle (旧称pep8)作为Python代码样式检查器, autopep8作为Python代码自动格式化工具.

结对编程

为利于结对编程请大家一定要写尽量详尽的代码注释, 同时要写文档, 方便其他组同学快速了解你们部分的原理及如何配合.

调试信息

在关键处一定要打印彩色调试信息. 🔗 参考

各组应给出原理图

建议各组给出原理图/框架图, 方便debug, 组间交流, 展示.

学习资料

为方便大家了解各自在做什么, 相互学习, 方便后期报告写作, 我们把看到的好的相关资料整理到这里吧.

markdown

你目前看到的这份文档就是一个markdown文件😏

因此markdown算是我们沟通的一大关键, 请大家学习一下🙏

🔗 markdown教程

git和GitHub

详情

文档驱动开发

🔗 Readme Driven Development

项目管理

🔗 如何使用 Issue 管理软件项目

Zenhub使用及理解

详情

VSC使用及设置

详情

ssh

小车在线调试前期远程连接小车的方式. 因为主板打算采用树莓派4, 因此只需要让树莓派和电脑在同一个WiFi下就可以通过访问树莓派ip来ssh连接. (树莓派自身开启热点/手机热点)

详情

Python

🔗 python速成-python图像处理体验 👈 Anaconda是什么&Anaconda安装教程&一些Python处理图像的内容

💡 这篇文章的内容稍有过时, 清华镜像源已恢复且因为版权问题国内目前只有这一个Anaconda源

💡 如果即便你给Anaconda换了国内源用conda下载东西速度还是很慢, 或者你更喜欢用pip安装python包, 也可以给pip换清华源 (速度很快). ⚠️ 减少conda与pip混用.

🔗 Python语法速成

💡 这个网站的表格是熊猫色, 没设置好, 白底白字看不大清可以选中来看清. 大家将就一下😅

🌟 Python Tutor 是一个强烈推荐的可视化你的Python代码运行具体过程的网页工具

效率工具

鉴于大家用的都是Windows系统我们就只讨论Windows系统的好工具吧.

详情

About

Development Standard & Shared Learning Materials

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published