快来熟练使用 Mac 编程

熟练使用工具,可以提高一个人的做事效率~

1. iTerm2快捷键使用

  ⌘ + d: 垂直分屏,⌘ + shift + d: 水平分屏。

  ⌘ + ]和⌘ + [在最近使用的分屏直接切换.而⌘ + opt + 方向键切换到指定位置的分屏。

  ⌘ + w :关闭当前标签页。

  ⌘ + enter: 最小化最大化切换。

  ⌘ + ;:自动补全历史命令。

  ⌘ + f: 当前窗口中查找。

  ⌘ + r:清屏,其实是滚到新的一屏,并没有清空,相当于clear命令。

  ctrl + u: 清空当前行。

  ctrl + a: 到行首;ctrl + e: 到行末。

2. mac酷炫屏保

  mac系统的屏保,优先推荐Fliqlo,黑色翻页钟,优美宁静。再配合使用FractalClock,简直美翻了。

// 截取屏幕所选区域到粘贴板
Command + Shift + Control + 4

// 强制退出应用程序
Command + Option + Esc

// 退出应用程序
Command + q

//滚页
FN + 上箭头/下箭头/左箭头/右箭头

3. 外接屏幕分辨率调整

  外接屏幕的分辨率跟mac本身的分辨率是独立的,可以分别设置。一直按住option键,在正常和缩放间切换,同时校准屏幕,让mac系统识别外接屏幕的分辨率。(切记,一定要常按option键)。

4. Git的熟练使用

  git在mac下写代码必备工具,首先需要生成SSH公私钥。

# 生成ssh公钥 私钥命令
ssh-keygen -t rsa

# 公私钥默认目录 /home/当前用户/.ssh目录下找到id_rsa(私钥)和id_rsa.pub(公钥)
cd ~/.ssh/

  我项目中必备的git命令,如下:

// 检索master代码到本地
git clone git@git.*****-**.com:owner/Data-Migration.git

// 初始化仓库
git init

// 提交代码
git add .
git commit -m "fix big problem"
git push origin master || git push origin feature/issue#125

// 当前git仓库状态
git status

// 查看提交日志
git log

// 查看全局配置信息
git config -l

// 比较文件
git diff pom.xml

// 检索指定分支,本地还没有该分支
git checkout -b feature/realCredit origin/feature/realCredit

// 本地创建分支 并提交远程
 
git branch feature/issue/677
git push origin feature/issue/677
git branch -r (看下远程服务器上是否有该分支)
git checkout feature/issue/677 (切换到刚才到分支)

// 获取最新代码
git pull

// 合并分支(在当前本地分支上,合并远程分支)
git merge origin/master

// 查看当前项目的分支
git branch -r

// 切换分支(直接加分支名称)
git checkout master || git checkout feature/realCredit

// 删除远程分支
git push origin --delete feature/issue/677

// 显示当前本地文件的修改
git diff

5. 相关技术栈

  jdk8,swagger,mock测试数据,markdown,git,scala,nodejs,nginx,springboot,kafka,动态数据源,灰度发布,跳板机,

  mac,idea,webstorm,

6. 公司所用Ngix负载均衡策略

  默认配置:轮询策略(每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除);

  IP_hash策略:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。

  使用场景:cas的单点部署和集群部署的时候,需要考虑集群环境下session共享的事情;

7.跳板机使用

// 登录跳板机
ssh owner@term.*****-**.com

// 在跳板机去访问线上资源
curl "http://api.resource.com/rest" // 粘贴自己私钥 vi ~/.ssh/id_rsa 粘贴私钥 // 修改该私钥文件权限 chmod 600 id_rsa // 登录服务器 ssh appweb@10.1.9.23 // 启动服务 cd /data/program/com.*****.loan/data-migration/0.0.1/bin cd .. sh bin/start.sh // 查看日志 cd /data/program/logs/com.*****.loan/data-migration/app_log tail -200f app.log
 

8.常用命令

// 日志中关键字搜索
grep 'test' a*

// 查看日志
tail -f -n 200 app.log || tail -200f app.log

// 本地上传dict字典到服务器&&从服务器dump堆镜像到本地环境
cat a.txt
scp a.txt huaming@term.******-inc.com:/xiaoshan_jumper/slef/home/owner/
cat a.txt // on xiaoshan_jumper
scp a.txt appweb@ip:/data/program

9. idea快捷键

// 引入import包
option + Enter

// 断点调试
keyMap选择Eclipse风格 -> F6下一步;

// JDK中有编译工具,JRE中无编译工具
项目中import进来的jar包,无法被正确识别,是由于idea或者eclipse中无法识别jar包,将其中的编译由原来的jre换成jdk就好了。

// 如果在pom.xml文件中集成了tomcat插件,就可以使用命令:tomcat7:run 来运行项目到tomcat7容器中。

10.maven的使用

// 更新maven依赖
source ~/.bash_profile
mvn install idea -> maven projects -> Reimport all maven projects
 

// 初始化并跳过测试
mvn clean install -Dmaven.test.skip=true

// 如果maven安装好之后,每次启动maven都需要执行命令 source ~/.bash_profile 的解决办法
vim ~/.zshrc
找到没有注释的语句:source $ZSH/oh-my-zsh.sh 紧紧跟在下一行;加一句 source ~/.bash_profile

11.Sequel Pro

// 运行SQL
Command + R 

// 保存执行过的SQL
select database => query => query Favorited => Edit Favorited => click '+' => save => OK!

12.Alfred3

// 快捷键习惯配置,双击Command,打开Alfred
Command + Command 

13.Linux命令

// 清空文件内容命令
echo "" > app.log 

附:业务关键字

1.贷款的还款方式,包括有等额本息;等额本金;一次性还本付息;按期付息还本。

  等额本息,借款人每月以相等的金额偿还贷款本息,即把贷款的本金总额与利息总额相加,然后平均分摊到还款期限的每个月中。采用这种还款方式,每月还相同的数额,操作方便,每月承担相同的款项也方便安排收支。这种还款方式适合收入稳定的借款人,它的缺点是由于利息不会随本金数额归还而减少,银行资金占用时间长,还款总利息相对较高。

  等额本金,这也是目前银行较为普遍的还款方式。借款人将本金分摊到每个月内,同时付清上一交易日至本次还款日之间的利息。这种还款方式总的利息支出较低,但是前期支付的本金和利息较多,还款负担逐月递减。这种还贷方式适合目前收入较高,但是已经预计到将来收入会减少的人群。

  一次性还本付息,银行对这种还款方式的规定是,贷款期限在一年(含一年)以下的,实行到期一次还本付息,利随本清。但选择这种还款方式银行审批会更严格,一般只对小额短期贷款开放。这种还款方式,操作很简单,但是适用性不强。

  按期付息还本,按期付息还本是指借款人通过和银行协商,为贷款本金和利息归还制订不同还款时间单位。即自主决定按月、季度或年等时间间隔还款。实际上,就是借款人按照不同财务状况,把每个月要还的钱凑成几个月一起还。不是所有银行都有这种还贷方式,这个方式适用于收入不稳定人群。

2.相关解释。

  Hbase的学习,先把它当作黑盒,会熟练使用;再去了解黑盒内部的原理。

3.面试题整理。

  HashMap不用锁,如何做到线程安全?HashMap的put操作的时间复杂度?

  熟悉HttpClient的Java网络编程么?

  常用三种锁Synchronized ReentrantLock Atomic的使用场景

  SpringBoot和SpringCloud熟悉么?如何自定义注解?

  Java中的Pattern类如何使用正则表达式?

  手写单例模式 三种工厂模式 静态/动态代理模式?

  淘宝的秒杀抢红包是如何做到的?

  IDCM项目中的幂等性是如何做到的?

  Java的字节码增强技术?mybatis生成mapper命令,及其配置文件?  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值