在粗粗浏览过《构建之法》这本书后,发现作者带着我们把软件工程相关梳理了一遍。从软件工程是什么,如何提升个人代码能力,团队合作的技巧和流程,产品有需求到软件实现,后期的软件测试和质量等等。书里有很多的问答题,实际上当我看到一个概念,对这个概念的疑问和茫然也在这些提问与回答中得到了解释。
1.关于代码互审,形式有自我复审、同伴互审和团队互审这三种,如何确定程序员需要的互审形式是什么呢?
书上对于代码互审有详细的解释,也向我们展示了它的各种好处,但是程序员敲代码时遇到的情况是多种多样的,多变的需求不同的软件甚至有时用到多种编程语言,水平不相当如何互审?
2.有时候会想,我只是很简单的学习了软件,只是会编写很简单的代码,而且我们是不相关的专业,以后出去找工作真的能找到一份相关的好工作吗?尽管第三章讲解了如何成为一名“软件工程师”,如何检测自己是否为合格的工程师。书中的第45页详细的介绍了“初级工程师的成长”,我也在反思自己有没有做到书上的其中一点,怎么才能做到。
3. 软件的产生需要的是一个团队,一个人是可以写代码,但写出来的都是一些功能相对简单,含有较多bug的代码,但是团队不仅可以避免这种情况,团队不仅有一致的目标,而且分工明确,互相依赖合作共同完成任务,这样可以大大提高软件的生产时间和软件利用率,这也是为什么要有团队的原因。第五章85页开始介绍了几种软件团队模式,看起来每一种都有自己的优势。对于没有团队合作经验的我来说,应该怎么去选择合理有效的模式呢?
4.当团队分工的时候,每个人写自己的代码,有时候代码的融合与交互可能花的时间比个人的完成的时间还多,那该如何判定是否进行分工?
5.第七章的7.2.3的充分授权和信任(P125)中曾说过MSF的团队模型是网状而不是层次结构,虽然一问一答中解释了网状模型的好处,但我还是有一点不明白,就是我可以不可以这样理解网状模型,一是指团队间每个成员的平等性,就是不存在约束性,大家都是为了共同的前景努力的,那会不会出现这样一种情况,既然大家的目标一样,要是存在一些打酱油的怎么办呢?是不是意味着这个就需要一个上级来约束这些成员呢?而层次结构恰好有这个功能,可不可以将网状模型和层次模型相结合,这样就可以避免这种情况出现,而且又能将团队利益最大化。
完成以下Git基本操作
1. 下载安装配置用户名和邮箱。
(1)下载安装Github配置
(2)配置用户名命令:$git config --global user.name "Ava"
(3)配置邮箱命令:$git config --global user.email "1942728887@qq.com"
(4)查看用户名命令:$git config --global user.name
(5)查看邮箱命令:$git config --global user.email
2. 创建工作目录并通过git init命令把这个目录变成Git可以管理的仓库。
(1)进入F盘命令:$cd f:/Git/code
(2)将当前目录变成Git可以管理的仓库的命令:$git init
3. 在工作目录下准备文本文件
4. 组合用git addgit、 commit、git status 把文件提交到仓库。
(1)查看当前文件状态命令:$git status
(2)将文件添加到仓库命令:$git add "hello.txt"
(3)将文件提交到仓库并且添加文件信息命令:$git commit -m "welcome!"
5. 练习提交三个或以上的版本。
6. 组合使用git diff、git log、git reset命令进行版本管理与回退,观察文件变化。
(1)查看具体修好了什么内容命令:$git diff (注意:需要在修改之后提交之前使用)
2)显示从时间从最近到最远的提交日记命令:$git log
(3)单行显示版本信息命令:$git log --pretty=oneline
(4)回退到前面某一版本命令:$git reset --hard 60b5
从第四版本回退到第二版本,再回到第四版本
7. 将Git仓库托管到GitHub网站上。
(1)创建SSH Key命令:$ssh-keygen -t rsa -C "1942728887@qq.com"
(2)登录Github,打开"Setting","SSH and GPG Keys"页面,点"New SSH Key",自定义填写“title”,在"Key"文本框里粘贴id_rsa.pub文件的内容:
8. 把本地仓库的内容推送到GitHub仓库。
(1)在Github右上角,点击“+",然后点"New repostory",在"Repostory name"填写仓库名称,最后点击"Creat repostory"
(2)刷新页面,获取远程仓库"Test20180922"的链接
(3)建立本地仓库与远程仓库相连命令:$git remote add origin git@github.com/AvaSiam/Test20180911.git
(4)将本地仓库的内容推送到Github仓库命令:$git push -u origin master
(5)查看本地推送至远程仓库的内容:
原文:https://www.cnblogs.com/siams16/p/9690986.html