/contents/problem.tex

https://gitlab.com/horance/robot-cleaner-latex · LaTeX · 56 lines · 36 code · 20 blank · 0 comment · 0 complexity · 3d84ae2e708ecc242ad6cc3658c7d328 MD5 · raw file

  1. \begin{savequote}[45mm]
  2. \ascii{Do the simplest thing that could possibly work.}
  3. \qauthor{\ascii{- Kent Beck}}
  4. \end{savequote}
  5. \chapter{Background}
  6. \label{ch:background}
  7. \section{问题提出}
  8. \begin{content}
  9. 扫地机器人\ascii{(robot cleaner)}又称自动打扫机智能吸尘器等能凭借一定的人工智能自动在房间内完成地板清理工作
  10. \ascii{Bosch}公司是领先的扫地机器人制造商\ascii{Bosch}的工程师研发了一款机器人它接受远端遥感指令并完成一些简单的动作
  11. 为了方便控制机器人的导航工程师使用三元组\ascii{(x, y, d)}来表示机器人的位置信息其中\ascii{(x,y)}表示机器人的坐标位置\ascii{d}表示机器人的方向(包括\ascii{East, South, West, North}四个方向)
  12. 假设机器人初始位置为\ascii{(0, 0, N)}表示机器人处在原点坐标并朝向北
  13. \end{content}
  14. \section{技能要求}
  15. \begin{content}
  16. 在实现需求的前提下增加如下一些技能要求
  17. \begin{enum}
  18. \eitem{每个迭代\ascii{45}分钟}
  19. \eitem{结对编程}
  20. \eitem{不允许使用鼠标}
  21. \eitem{不允许使用\ascii{IDE}}
  22. \eitem{坚持使用\ascii{TDD}开发}
  23. \eitem{持续重构代码}
  24. \eitem{坚持良好的代码提交习惯}
  25. \eitem{教练点评的坏味道下一迭代必须纠正}
  26. \eitem{参与互相点评的环节}
  27. \eitem{互相重构不同\ascii{pair}的代码}
  28. \end{enum}
  29. \end{content}
  30. \section{参考实现}
  31. \begin{content}
  32. 本文所使用的代码读者可以从\ascii{Gitlab}上自由下载修改和传播
  33. 软件设计是一门艺术因作者的经验能力都非常有限此实现仅作供参考如果大家发现了问题或者有更加简单漂亮的设计请及时反馈给我我将感激不尽
  34. \ascii{Git}地址\href{https://gitlab.com/horance/robot-cleaner-cpp}{git clone https://gitlab.com/horance/robot-cleaner-cpp.git}
  35. \ascii{Email}地址\href{mailto:horance@outlook.com}{horance@outlook.com}
  36. \end{content}