朋友刚刚组建技术团队,吃饭时聊到了我在使用哪些服务 / 工具,把聊天内容简要整理了一下,希望能帮到其他有需要的朋友。
1. 邮箱和即时通讯
1.1. 企业邮箱
使用 QQ 企业邮箱免费版本就够了,后续还可以绑定微信。
1.2. 企业微信
和「钉钉」类似,有 PC 端和手机端,推荐使用。
QQ 建群聊天、传文件也很方便,但是,当团队有新成员进入时,无法查看历史的聊天记录,不方便沟通。
2. 服务器、网络和域名
2.1. ECS 服务器
使用 Ubunut Linux 操作系统,开发环境以下配置就够用了
- 按月购买
- 网络 按照流量付费 ,上限设置成 10M
- CPU 1 核
- 内存 4G
- 硬盘使用默认大小(20G / 40G)
2.2. RDS 数据库
使用 MySQL 5.6 版本,注意事项:
- 按月购买
- 禁止外网访问,一是安全,二是省流量费
- 设置访问白名单
- 生产环境设置每天备份
2.3. 安全
云盾免费版基本就够用了。
2.4. 域名注册
阿里云整合了万网,直接在这儿购买就行了。
2.5. 域名备案
按照流程一步步操作就可以了。
3. 域名解析
使用 DNSPod 做域名解析,未来追加二级域名生效只是分分钟的事。
4. 代码管理
4.1. 服务端
使用 Gitlab Community 版本,自己搭建服务器。
4.2. 客户端
https://www.sourcetreeapp.com/
SourceTree 免费版,支持 Windows 和 Mac。
4.3. Git Flow
http://blog.jobbole.com/76867/
- 通过 Branch 来管理不同版本的并行开发
- 通过 Tag 记录每个版本
4.4. gitignore 文件
https://git-scm.com/docs/gitignore
https://github.com/github/gitignore A collection of useful .gitignore templates
禁止上传二进制文件,根据使用的编程语言,在开发根目录添加 .gitignore
文件
4.5. Wiki 文档管理
项目文档建议使用 Wiki 管理,Gitlab 提供了对应的模块,使用 Markdown 语法编写,多人协作很方便。避免使用 Word / Excel 的版本不同步等问题。
4.6. Issue 任务 / 缺陷管理
Task / Bug 也可以记录在这儿。
5. 产品 / 项目管理
5.1. UI 原型
5.1.1. 线框图
前期只有你一个人设计原型,使用免费版就够了;后期如果有专职产品经理、UI 设计师,购买 999 元标准版就够了。
墨刀支持多人协作,复杂 UI 可以多人共同设计。页面间可以添加「热区」,客户们可以直接在墨刀体验。
5.1.2. 效果图
PC 网站使用 Photoshop 设计比较多。如果是手机端,建议使用 Sketch,要求 Mac 电脑。
https://www.sketchapp.com/ Sketch 建议付费,值得!
5.2. 进度
办公室搞个物理「看板」,把主要的任务列在上面每天「站会」沟通工作进度。和传统的 Project 或甘特图相比更高效。
5.3. Bug
Gitlab 提供了 Issue 模块,可以用来记录 Bug
免费版基本也够用了,Web 开发在 Chrome 安装插件后提交 Bug 很方便,手机 App 就更方便,下面的流程 BugTags 都帮忙实现了。
- 截图
- 标注
- 提交
如果是 App 提交 Bug,BugTags 还会自动附加手机的设备信息,便于排查问题。
5.4. 数据分析
App 和 Web 分析都有了,Web 端就是 CNZZ。
https://www.talkingdata.com/ Talking Data
如果只是 App 推荐使用 Talking Data。
6. 技术选型
建议前后端分离模式,使用 REST 接口。
6.1. 数据库
- MySQL 5.6
6.2. 后端
如果是 Java,可以使用简单的技术快速开发。
- myBatis
- Jersey
- Spring
- Maven
- Tomcat
- Nginx
6.3. 前端
传统技术
- Bootstrap
- jQuery
新技术
- Vue.js
6.4. 存储
图片、文件等直接用七牛吧,一定不要让后端开发直接保存在磁盘上。
6.5. 开发工具
- Eclipse
- WebStorm
- VS Code