我的简单vim配置:Go后端开发
为什么使用vim首先来说,其实不是很建议使用vim作为主力开发环境了,因为现在很好的ide(或者编辑器)有很多.对于go来讲,goland和vscode拥有太多无法替代的好特性.而且很多公司也基于他们开发了很多优秀的插件来帮助开发.比如在字节内部,可以安装bytesuite等优秀的工具来实现远程连接pod来单步调试等功能.但是开发过程中,还是觉得goland太重太复杂了,内存也占用的很多.本身功能太多,有时候写起来反而思路不是很连续.因此产生了回到VIM开发的念头. 简单但是可用的配置之前有尝试过spacevim, doom emacs等优秀的开源项目.但是发现他们其实也有着运行缓慢的问题,而且难以维护.所以最后还是采用最简单的VIM配置即可.在日常使用中,常用的功能如下: 函数,变量的定义跳转 简单的自动补全 单元测试的的执行 快捷的命令行操作 文件和文本的搜索 git记录的查询 文件的增删改查 plantuml的绘制和预览 0. 配置go开发环境1. 安装neovim和vim-plugapt安装neovim.如果是比较老的发行版,比如debian 9,最好还是编译安装ne...
代码大全:5-Design in Construction
在日常的编码活动中,“设计”是一个很容易被忽视的词。因此,作者在此强调了“设计”的重要性,即程序员需要意识到,“设计”是一种软件开发中很明确的活动。 设计中的挑战设计活动中面临着以下的挑战。 设计是一个“险恶”的问题 设计是一个“了无章法”的过程 设计就是确定取舍和调整顺序的过程 设计收到诸多限制 设计是不确定的 设计是一个启发式的过程 设计是自然而然的 总的来说,设计本身是一个需要“经验”的过程,这个经验可以来自于犯过的错误,或者来自于“设计名家”总结的法则。设计没有一个固定的章法,但是有一些已知的最佳实践。因此,要学会设计就得多多实践和阅读,见识越多,设计起来才是更加专业。 设计的关键概念 软件的首要技术使命:管理复杂度这里的复杂度指的是软件所解决问题的复杂度。作者从以下三个方面阐述了复杂度对于开发的影响以及如何应对复杂度。 偶然的难题和本质的难题 管理复杂度的重要性 如何应对复杂度 设计的理想特征设计本身虽然是“了无章法”的,但是一个设计却有一系列理想的特征。 最小的复杂度 易于维护 松散耦合 可拓展性 可重入性 高扇入 底扇出 可移植性 精简性 层次性 标准技...