学习从拥有一支好笔开始
有段时间没有更新内容,思前想后还是觉得应该整理分类文章,决定了接下来的文章思路。语文一直是比较差的,上学期间也都是勉强及格,所以可能可读性较差,但会尽量通过一些别的方式提高可读性,在漫长的文章路上提高自己的文笔。
工欲善其事,必先利其器。
作为一个合格的程序员,必须会使用一些工具,来使自己学习工作变得舒服流畅,从而给自己一个正反馈的效果。
程序员必会工具、插件系列:
- 代码编辑器;
- 命令行命令;
- 版本控制工具;
- 浏览器调试知识;
- Markdown编辑器;
- ...
所以该系列的文章主要是一些工具之类,让自己码的舒服。同时也希望读者(主要是萌新小白)会有良好的编码习惯,久而久之,敲代码将会变成一件令人愉悦的事情。
代码编辑器
现在流行的代码编辑器有很多,我们应当是根据业务需求选择语言,根据语言选择编译器。按道理来讲,只要可以输入文本就可以写代码,起初人们就是使用记事本来写代码的。但是不同编译器的出现就是为了解决各种不方便的事情,使写代码变得方便更高效,所以我们应当选择合适的代码编辑器。
我使用的是VScode+vim插件,所以放在第一个介绍,官网:https://code.visualstudio.com/。VScode功能很丰富,可以自定义配置,同时下载不同的语言插件,就可以使用不同的语言编程。
左侧有文件目录,插件,github连接,远程编程,docker等功能,功能齐全。由于是自己使用,所以会再专门写一篇文章介绍一些插件及其使用。
Vim和Emacs是类Vi文本编辑器的两个派系。Vim最大的优势是它最常用的命令都是简单的字符,比起组合控制键要快很多,极大程度减少了鼠标的使用时间。Emacs也是著名的集成开发环境和文本编辑器,它的快捷键也很方便。
jetbrains全家桶,地址:https://www.jetbrains.com/zh-cn/。不同的语言可以选择不同的软件,如最常用的java使用IDEA,Python使用PC(PyChram),go使用GoLand等。这里就不得不diss一下某种用PyChram写nodejs项目的行为。
Visual Studio,微软集成开发环境,包括了整个软件生命周期中所需要的大部分工具,如UML工具,代码管控工具等等。
还有其他很多的代码编辑器,如sublime,Notepad等,不多介绍,其他编辑器可以查阅文档资料使用。
命令行命令
命令行命令有各种用途的,除了系统自带的,还有很多项目通过命令行命令启动,数据库SQL语句等。
生活中Windows系统较多,开发中项目多在Linux系统中运行。不同操作系统的命令行命令也有差别。
我的电脑是win10系统,服务器是Linux系统,而且在云服务器没有界面,只有命令行,查看服务器性能空间等,全都需要使用命令行。
在Github添加work flow也需要使用Github Actions,在yaml文件中添加命令行。
项目启动命令如,npm run dev
或者是scrapy crawl
等。
版本控制工具
版本控制工具的目的是为了记录和跟踪项目中各文件内容的修改变化。使用版本控制工具,可以做数据备份,提高代码质量,提高多人开发时的效率,明确分工责任等。
最常用的版本控制工具是Git。Git是一个免费的开源分布式版本控制系统,旨在高效快速的处理从小型到大型项目的所有事务。使用GIt,可以将代码托管到远程Github代码仓库,十分的方便,这是一个程序员必须掌握的内容,同时也可以根据Github中的代码量来衡量一个人的工作经验。
TortoiseSVN是一款集中式版本控制工具,采用分支管理系统的高效管理,简而言之就是用于多个人共同开发一个项目,实现共享资源,实现最终集中式的管理。
浏览器调试知识
浏览器调试针对web端应用,在浏览器中的开发者工具中。我使用的是Chrome浏览器,使用Ctrl+Shift+i
进入开发者调试面板。
开发者调试有多个面板,如Element、Console、Network等,对应不同的内容。该部分内容有一篇专门的文章。
Markdown
Markdown是一种轻量级标记语言,应用场景也很多,最主要的就是项目的README文件和博文。
Markdown有自己的语法格式,对图片,图表,表达式等都有支持,所以得到各种网站的广泛使用。
md文件的编辑器也有很多,也可以在记事本操作,使用md语法写完文本,更改文件后缀。
我使用的是Typora,地址:typora.io。这是一款免费的、支持实时预览的Markdown文本编辑器。Typora界面简洁,是我最喜欢它的一点,同时在偏好设置中可以增加自己编辑体验,有多种主题可以选择。
选择打字机模式,使得自己正在编辑的一行永远处在屏幕正中间;选择专注模式,使得自己编辑的一行保留颜色,其他行全部为灰色。
在插入图片时,可以在本地保存一份备份,将文章push到Github时,图片也会一起push。
Typora还支持emoji表情,可以使用:emoji:
的方式加入emoji表情:joy:。
- 使用Qt installer framework制作安装包
- Qt Style Sheet实践(三):QCheckBox和QRadioButton
- 堆排序
- 剑指OFFER之旋转数组的最小数字(九度OJ1386)
- Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
- 剑指OFFER之旋转数组的最小数字(九度OJ1386)
- Qt Style Sheet实践(二):组合框QComboBox的定制
- Python基础07 函数
- 剑指OFFER之旋转数组的最小数字(九度OJ1386)
- 5 云安全解决方案的注意事项
- Qt Style Sheet实践(一):按钮及关联菜单
- Python基础06 循环
- js也可以有自定义事件 注入就是这么爽
- Python基础05 缩进和选择
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 用Gaussian 16做二分量赝势自旋轨道DFT(SODFT)计算
- 214专属,C语言实现跳动的心!
- 这道题有“圈套" 基础不好很容易上套!
- 靶机闯关 DC-8
- 在Java虚拟机上班是一种怎样的体验?
- Linux下远程工作防掉线的一个办法
- Centos安装最新版本cmake
- 【实战】提权某找小姐网站服务器
- 激发态计算中的溶剂效应
- 不会吧,有人用了两年Spring, 居然不知道包扫描是怎么实现的
- 不会吧!都 0202 年了,不会还有不知道 axios 的吧
- 全栈的自我修养: 002使用@vue/cli进行vue环境搭建 (使用Vue,SpringBoot,Flask完成前后端分离)
- JAVA | Java 解决跨域问题 花式解决跨域问题
- 深入理解Java泛型(二)通配符与嵌套
- 用高斯计算磷光发射能