阿里同学都在用的开发环境和工具

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本文主要介绍后端开发同学常用的工具以及开发环境搭建。

本文主要介绍后端开发同学常用的工具,以及开发环境搭建,以下内容有部分软件是针对 MacOS 操作系统,大部分软件各平台通用。


在线工具

白板工具:https://www.tldraw.com

在线画图:https://excalidraw.com & https://draw.io

钉钉文档:https://alidocs.dingtalk.com

语雀文档:https://www.yuque.com

IT Tools:https://it-tools.tech


输入法

程序员可定制的输入法 - RIME 输入法 https://rime.im/

可以通过 yaml 文件定制自己的诉求,上手成本稍微高一些。

image.png

一般同学推荐用Mac自带输入法 或者 搜狗之类的,除非你喜欢折腾。


截图软件

在 App Store 下载,超好用 Xnip,可以很方便地添加箭头,文本,编号,框选之类的。

https://www.xnipapp.com

image.png

免费版本的功能已经很强大了,如果喜欢也可以选择付费升级。


鼠标控制软件

MOS 一个用于在 macOS 上平滑你的鼠标滚动效果或单独设置滚动方向的小工具, 让你的滚轮爽如触控板。使用这个软件后,普通的鼠标也可以像 Apple鼠标那样平滑滚动。当然,如果你平时不用鼠标,只用触控板,这个软件就用不上啦。


下载地址:https://github.com/Caldis/Mos

image.png

AI / GPT

阿里内部有非常多的 AI 工具,但鉴于这个是推送给外网的同学的,这里列举一些外网可用的工具。


  1. ollama 本地跑大模型:https://ollama.com
  2. Bolt.New 通过描述需求就能创建并部署web应用:https://github.com/stackblitz/bolt.new
  3. DeepL翻译工具:https://www.deepl.com
  4. OpenAI ChatGPT:https://chat.openai.com/chat
  5. Google Gemini:https://gemini.google.com/app
  6. 通义千问:https://tongyi.aliyun.com
  7. 纳米搜索:https://n.cn
  8. 字节豆包:https://www.doubao.com


提示:部分工具使用可能需要魔法,使用请遵守法律法规。


Google Chrome

插件推荐:

沉浸工翻译插件:https://immersivetranslate.com

SiderAI 助手:https://sider.ai/apps/lp-chatgpt

JSON-Handle:方便展示和查看接口 json 响应


Microsoft Edge

使用魔法后,访问 New Bing

https://www.bing.com/search?q=Bing+AI&cc=us&mkt=us&showconv=1


Mac Brew

Mac 上的软件安装包管理工具,类似于 centos 的 yum 或者 ubuntu 上的 apt 工具。

image.png

官网地址:https://brew.sh

可以通过下面的命令快速安装:

export HOMEBREW_API_DOMAIN="https://mirrors.aliyun.com/homebrew-bottles/api"
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.aliyun.com/homebrew/homebrew-bottles"

/bin/bash -c "$(curl -fsSL https://mirrors.ustc.edu.cn/misc/brew-install.sh)"

使用国内镜像,如阿里云镜像(重要,要不特别慢,放到 .zshrc 或 .bashrc 中)

# brew
export PATH="/opt/homebrew/bin:$PATH"
export HOMEBREW_NO_ENV_HINTS=true
export HOMEBREW_NO_AUTO_UPDATE="true"
export HOMEBREW_INSTALL_FROM_API=1
export HOMEBREW_API_DOMAIN="https://mirrors.aliyun.com/homebrew-bottles/api"
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.aliyun.com/homebrew/homebrew-bottles"

安装一些常用软件特别方便(不是MacOS跳过)

brew install git wget tree mysql-client@8.4 python redis golangci-lint httpie protobuf

ln -s /opt/homebrew/opt/mysql-client@8.4 /opt/homebrew/opt/mysql-client
# mysql 环境变量配置见后面的 zsh 部分

安装一些常用软件
brew install --cask raycast visual-studio-code google-chrome postman


brew 常用命令(尤其是橙色和加粗的,建议熟练掌握)


brew update 更新 Homebrew

brew search package 搜索软件包

brew install package 安装软件包

brew uninstall package 卸载软件包

brew upgrade 升级所有软件包

brew upgrade package 升级指定软件包

brew list 列出已安装的软件包列表

brew services command package 管理 brew 安装软件包

brew services list 列出 brew 管理运行的服务

brew info package 查看软件包信息

brew deps package 列出软件包的依赖关系

brew help 查看帮助

brew cleanup 清除过时软件包

brew link package 创建软件包符号链接

brew unlink package 取消软件包符号链接

brew doctor 检查系统是否存在问题


iTerm2 + zsh

image.png

iterm2 更好用的终端,支持分屏(cmd + D 或 cmd + shift + D)

brew install iterm2

或者下载地址:https://iterm2.com


oh-my-zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

.zshrc 配置备份

# Path to your oh-my-zsh installation.
export ZSH="$HOME/.oh-my-zsh"
DISABLE_AUTO_UPDATE=true
ZSH_THEME="gentoo"
DISABLE_MAGIC_FUNCTIONS="true"
plugins=(git z)
source $ZSH/oh-my-zsh.sh

# odpscmd
export PATH="$PATH:/opt/odpscmd/bin"

# go env
export GOPATH="$HOME/go"
export PATH="$HOME/go/bin:$PATH"
export GOPROXY="http://goproxy.alibaba-inc.com"

# brew
export PATH="/opt/homebrew/bin:$PATH"
export HOMEBREW_NO_ENV_HINTS=true
export HOMEBREW_NO_AUTO_UPDATE="true"
export HOMEBREW_INSTALL_FROM_API=1
export HOMEBREW_API_DOMAIN="https://mirrors.aliyun.com/homebrew-bottles/api"
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.aliyun.com/homebrew/homebrew-bottles"

# java
export JAVA_HOME="/Library/Java/JavaVirtualMachines/openjdk-21/Contents/Home"
export PATH="$JAVA_HOME/bin:$PATH"
export CLASS_PATH="$JAVA_HOME/lib"

# python
export PATH="$HOME/.pyenv/bin:$PATH"

# mysql
export PATH="/opt/homebrew/opt/mysql-client/bin:$PATH"
export LDFLAGS="-L/opt/homebrew/opt/mysql-client/lib"
export CPPFLAGS="-I/opt/homebrew/opt/mysql-client/include"
export PKG_CONFIG_PATH="/opt/homebrew/opt/mysql-client/lib/pkgconfig"


zsh git 插件(推荐!建议背下来)

实现了非常多的简写,平时用起来比较方便,比如 :

简写

原命令

gst

git status

gp

git push

gl

git pull

gco

git checkout

grb

git rebase


详见:

Warp: 21 世纪的终端

AI时代的终端,自带AI能力 https://www.warp.dev/

image.png

Python 环境

平时写一些简单脚本什么的,很方便,这里用的是 Python 3.12(3.13 太新,有的包还不支持)。

brew install python@3.12

# 创建一个虚拟环境,方便安装包
python3.12 -m venv ~/.pyenv
source ~/.pyenv/bin/activate
# 建议放到 ~/.zshrc 或 ~/.bashrc 中,省得每次 source
export PATH="$HOME/.pyenv/bin:$PATH"

# 安装 ipython,简化成命令 py 方便日常使用
pip3 install ipython
ln -s ~/.pyenv/bin/ipython3 ~/.pyenv/bin/py

也可以根据需要,可以使用 python@3.9 - python@3.13 之间的任意一个,修改上面的版本号即可。


使用阿里云 pip 镜像

mkdir -p ~/.pip/

~/.pip/pip.conf

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host=mirrors.aliyun.com

Go开发环境


配置GOPROXY

go env -w GOPROXY="https://goproxy.cn,https://proxy.golang.com.cn,direct"

配置私有库GOPRIVATE

go env -w GOPRIVATE="*.alibaba-inc.com"

注意修改成自己公司的代码平台域名。

Git相关配置

会生成到 ~/.gitconfig 文件中

git config --global url."git@gitlab.alibaba-inc.com:".insteadOf "https://gitlab.alibaba-inc.com/"
git config --global url."git@gitlab.com:".insteadOf "https://gitlab.com/"
git config --global url."git@github.com:".insteadOf "https://github.com/"
git config --global url."git@bitbucket.org:".insteadOf "https://bitbucket.org/"

如果有私有的仓库,也可以像上面的 gitlab.alibaba-inc.com 地址一样,自己执行一下。


配置SSH KEY

如果之前配置过 SSH KEY,可以跳过,注意不要配置有密码的 key ,会比较麻烦。这里用 github 平台作为演示,一般代码管理平台类似,都有增加 SSH Key 功能。

image.png

配置好后,你执行下面的命令不需要输入密码(注意使用 SSH 进行测试

image.png

git clone git@github.com:apache/rocketmq-client-go.git

注意,将上面的仓库地址换成你自己的仓库地址,进行测试。


如果你克隆的时候,需要输入密码,请按上面的地址,重新生成一个不需要密码的密钥。


golangci-lint

brew install golangci-lint

https://golangci-lint.run/welcome/install/#local-installation


goimports

go install golang.org/x/tools/cmd/goimports@latest

JetBrains / VsCode 等IDE

根据自己喜好下载对应的 IDE

Goland/PyCharm/Idea:https://www.jetbrains.com/pycharm/download/

Visual Studio Code:https://code.visualstudio.com/


Postman

自动计算签名,调试接口等。

brew install postman

image.png

自动计算部分参数(比如签名参数等),代码示例:

var CryptoJS = require('crypto-js');

function gen_sign(sign_obj){
    var channel = pm.environment.get("channel");
    var key = pm.environment.get("key");
    var raw_info = channel;
    for (var x in sign_obj){
        raw_info = raw_info + sign_obj[x];
    }
    var sign = CryptoJS.MD5(raw_info+key).toString().toUpperCase();
    return sign;
}
var ts = 1692904788;
pm.variables.set("ts", ts);
pm.variables.set("uid", uid);

var sign_obj = {ts: ts, uid: uid};
var sign = gen_sign(sign_obj);
pm.variables.set("sign", sign);

另外,也可以试试,根据自己的喜好选择:

  1. RapidAPI:Mac API 测试工具 https://paw.cloud/
  2. httpie:https://httpie.io/download


OSS Browser

下载 1.17.0 以上的版本,或者命令安装。

brew install oss-browser

image.png

WireShark网络抓包

https://www.wireshark.org

学习各种中间件原理,本地调试,查询网络问题必备。

image.png

另外,也可以试试 Proxyman 抓包工具:https://proxyman.io/


RayCast/Alfred

推荐免费的 RayCasthttps://www.raycast.com

image.png

brew install --cask raycast

快速检索,应用卸载,窗口管理,剪切板全部都有了。


剪切板历史,比如我设置的快捷键 cmd + v + option/alt 快速调出历史复制的内容,还可以搜索。

image.png

窗口管理,我设置的是 Ctrl + Alt + 上下左右,分别将屏幕分成一半。

image.png


OrbStack / Docker / Podman / Colima

Docker 工具,快速环境搭建,不担心把mac电脑上安装的乱七八槽。


本地调试 mysql 各种版本,redis,使用 linux 环境(推荐 alpine)等。


MacOS 可以使用 OrbStack,更轻量级,比 Docker Desktop 更好用。


有一些同学喜欢 colima,根据自己的喜好选择即可。

brew install orbstack

配置内部的 mirror 加快镜像拉取速度。

{
  "registry-mirrors" : [
    "http://yum.tbsite.net/mirrors/"
  ],
  "insecure-registries" : [
    "yum.tbsite.net"
  ]
}

image.png

另外,OrbStack 还支持 Machines 可以当成虚拟机来使用,很方便。

image.png

下面是 Docker 一些使用示例:

# mysql 8.0
docker run -p 3306:3306 --name mysql8 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8

# redis 7.x
docker run -p 6379:6379 --name redis7 -d redis:7

# 再比如本地测试 nacos
docker run --name nacos -e MODE=standalone -p 8848:8848 -d nacos/nacos-server:latest

Docker入门资料:

https://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html


Sublime Text

image.png

轻量级的文本编辑器,可以看成是 notepad 的替代品。


可以搞个软链接,放到了 /usr/local/bin/ ,这样在命令行上,直接使用 subl 就可以了。

ln -sf /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

https://www.sublimetext.com/docs/command_line.html#mac

操作后在终端上,使用 subl project-name 或 subl file-name,就打开目录或文件了。


odpscmd

https://help.aliyun.com/document_detail/27971.html


内网 http://odps.alibaba-inc.com/official_downloads/odpscmd/


安全要求:需要下载 0.46 以上版本,可以用上面的链接下载最新的。


集团内部使用,配置参考(注意 end_point 和默认的不一样!):

project_name=amap_aos_gaea
access_id=x
access_key=x
end_point=http://service-corp.odps.aliyun-inc.com/api


数据库工具

Redis

除了 redis-cli 本地推荐 iredis https://github.com/laixintao/iredis

https://iredis.xbin.io

brew install iredis

image.png


MySQL

除了 mysql 命令行,本地推荐 mycli。

brew install mycli

https://www.mycli.net/

image.png


Mongo Client Compass


https://github.com/mongodb-js/compass/releases


如果使用的是 MongoDB 3.4.6 Community ,客户端可以使用 v1.25.0 版本。


https://github.com/mongodb-js/compass/releases/tag/v1.25.0


MacOS Rosetta(可选,不需要的话不安装)


ARM 电脑支持原来 Intel 软件,安装 rosetta:

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

如果你有什么好用的软件工具,也欢迎分享啊 👏~





来源  |  阿里云开发者公众号

者  |  伟忠

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9月前
|
小程序 JavaScript 开发者
小程序项目开发实战:从零到上线
小程序项目开发实战:从零到上线
141 0
|
9月前
|
Oracle Java 关系型数据库
搭建Java开发天堂:构建理想的开发环境
搭建Java开发天堂:构建理想的开发环境
108 1
搭建Java开发天堂:构建理想的开发环境
|
9月前
|
消息中间件 设计模式 架构师
开发同学的“做事情”&“想事情”&“谈事情”
作为一名后端偏业务向的一线开发,作者抛开技术栈和方案经验等这些具体的内容,从做事情、想事情、谈事情三个方面总结了自己的一些感悟。
|
9月前
|
消息中间件 前端开发 Java
从0到1参与开源项目——EFAK(本地开发环境搭建)
从0到1参与开源项目——EFAK(本地开发环境搭建)
142 0
|
9月前
|
SQL Java API
《Java开发手册灵魂13问》正式上线,带你剖析阿里巴巴的开发细节
一线大厂怎么用Java?看阿里技术专家给你分析!《〈Java开发手册(泰山版)〉灵魂13问》电子书正式上线带你剖析阿里巴巴一线团队开发思维。
|
JavaScript Shell 开发工具
使用vuepress从零开始搭建我的技术文档|已部署到线上
几天前为了深入学习JS我手写了一个JS工具库,并且发布到了npm上 我把具体步骤,从零搭建再到发布上线的全部细节都写在这这一片文章上了:手写了一个JS工具库并发布到npm 既然已经写了JS工具库,那必须要有文档呀,要不然谁知道怎么使用!!! 所以今天这篇文章就介绍一下怎么使用vuepress2.x搭建一个文档,内容不深,小白也能看懂,因为我只是小小的写了一下 ^_^嘿嘿 文档效果可以点击此处查看☞:LearnJTs文档
699 1
使用vuepress从零开始搭建我的技术文档|已部署到线上
|
存储 自然语言处理 前端开发
我用这些开源项目轻松搭建了一个在线文档平台
我用这些开源项目轻松搭建了一个在线文档平台
2308 0
我用这些开源项目轻松搭建了一个在线文档平台
|
JSON Java 测试技术
|
存储 缓存 文件存储
|
前端开发 JavaScript Java
项目的开发和部署 | 学习笔记
快速学习项目的开发和部署
167 0
项目的开发和部署 | 学习笔记

热门文章

最新文章