IntelliJ IDEA 复杂的重构技巧】的更多相关文章

IntelliJ IDEA 复杂的重构技巧(二) 转载 上次我说了一些 "复杂的重构技巧" ,讲的是一些使用 IntelliJ 的简单功能实现复杂的重构需求的技巧. 看到大家的反响之后我就感觉那个可能不大亲民,因为很多人连 inline 这功能都不知道(那岂不是把 IntelliJ 用成了记事本), 于是我决定再写一篇讲讲 IntelliJ 已经提供好了的一些复杂的重构功能. 这就不再是需要自己进行奇奇怪怪的操作的教程了,就会亲民得多. 从方法中提取方法 这是用来快速复用一段代码的功能…
常见重构技巧 - 去除不必要的!= 项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?@pdai 常见重构技巧 - 去除不必要的!= 场景一:null无意义之常规判断空 场景二:null无意义之使用断言Assert 场景三:写util类是否都需要逐级判断空 场景四:让null变的有意义 场景五:Java8中使用Optional 场景一:null无意义之常规判断空 通常是这样的 private void xxxMethod(String key){ if(key!=n…
常见重构技巧 - 去除多余的if else 最为常见的是代码中使用很多的if/else,或者switch/case:如何重构呢?方法特别多,本文带你学习其中的技巧. 常见重构技巧 - 去除多余的if else 出现if/else和switch/case的场景 重构思路 方式一 - 工厂类 方式二 - 枚举 方法三 - 命令模式 方法四 - 规则引擎 方法五 - 策略模式 一些反思 参考文章 出现if/else和switch/case的场景 通常业务代码会包含这样的逻辑:每种条件下会有不同的处理逻…
整理自 RefactoringGuru 代码异味 --什么?代码如何"闻味道"?? --它没有鼻子...但它肯定会发臭! 代码膨胀 [代码膨胀]是代码.方法和类,它们的规模已经增加到了难以处理的地步.通常,这些异味不会立即出现,而是随着程序的演化而积累(尤其是当没有人努力根除它们的时候). 过长方法 方法包含的代码行太多.一般来说,任何超过十行的方法都会让你产生疑问. 过大的类 一个类包含许多字段/方法/代码行. 基本类型偏执 在简单任务中使用基本类型而不是小对象(例如货币.范围.电话…
https://segmentfault.com/a/1190000002488608(重命名文件) http://www.jianshu.com/p/ab298b46bf50(快速生成方法) https://github.com/judasn/IntelliJ-IDEA-Tutorial/blob/master/hotkey-alt-enter-introduce.md(Alt+Enter技巧) http://blog.csdn.net/lynn_kun/article/details/766…
Intellij IDEA快捷键 Ctrl+Shift + Enter,语句完成 "!",否定完成,输入表达式时按 "!"键 Ctrl+E,最近的文件 Ctrl+Shift+E,最近更改的文件 Shift+Click,可以关闭文件 Ctrl+[ OR ],可以跑到大括号的开头与结尾 Ctrl+F12,可以显示当前文件的结构 Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择 Ctrl+N,可以快速打开类 Ctrl+Shift+N,可以快速打开…
IntelliJ Idea 常用快捷键列表 Alt+回车 导入包,自动修正Ctrl+N  查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L  格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C  最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ctrl+空格 代码提示Ctrl+Alt+Space 类名或接口名提示Ctrl+P 方…
本文均为项目实战经验,要求兼容至IE8,所以以下内容均为兼容代码,欢迎各位小伙伴批评指教.其实重构页面是一门学问,看似简单,却暗藏很多学问.实际项目中页面的重构有以下几点最基本需求: 1.需要使用合理的标签进行语义化: 2.可扩展性,在页面的某个标签内增加新的内容(文字或标签),不会对原有内容造成影响. 3.当页面接受后台数据时,标签内容替换后,页面布局与样式不会受到影响. 4.兼容性(根据项目需要) 页面重构基本思想: 1.渐进增强思想(以兼容要求的最低版本为基础,主键向高层次的浏览器靠拢):…
目录 1. 使用技巧 1. 跳转小工具 2. 无处不在的跳转 3. 精准搜索 4. 列操作: 5. live template 6. postfix 7. ALT+ENTER智能提示,代码优化 8. 重构 9. 抽取 10. git的集成 11. local history 12. 与spring的关联:配置facts 13. 与数据库的关联:使用idea创建数据库视图 14. 断点调试 15. 运行程序 16. 文件操作 17. 文本操作 18. 结构图 2. 常用快捷键 2.1 查找相关 2…
Intellij 是个功能强大的IDE,这里只讲window下社区版的Intellij. 1. 常用快捷: Alt+回车 导入包,自动修正Ctrl+N   查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L  格式化代码 Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C  最近更改的代码Ctrl+R 替换文本 Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ctrl+空格…
描述:有两个类,学生类和导师类,学生的导师类可能不存在,因此在获取学生导师名字等信息时都要先判断导师名字是否为空.重构后通过一个空导师类来处理导师为空的相应逻辑. Before # introduce null object class Master: def __init__(self): pass def setValue(self, name, major, age): self.name = name self.major = major self.age = age def getNa…
通过面向对象三大特性:封装.继承.多态的学习,可以说我们已经掌握了面向对象的核心.接下来的学习就是如何让我们的代码更优雅.更高效.更易读.更易维护.当然了,这也是从一个普通程序员到一个高级程序员的必由之路.就看病一样,普通医生只能治标,高级医生不但看好病,还能除病根. 1.什么时重构? 重构(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量.性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性. 目的:是提高其可理解性,降低其修改成本. 通俗的…
一.常用快捷键 搜索 double shift 全文搜索内容 ctrl + shift + f 搜索文件 Ctrl + shift + n 打开项目窗口  Alt + 1 智能代码补全 Ctrl+Shift+Space 设置 Ctrl + Alt + S 格式化代码 ctrl + alt + l 自动生成getter和setter  alt + insert 向上移动代码行  Ctrl+Shift+up 向下移动代码行  Ctrl+Shift+down 新建 alter + insert  查看…
1. Rerun . 这个就是结束debug模式,直接以run的方式重新跑某个程序.2. 直接跑完. 到下一个断点停下. 没有就直接跑完程序.3. 停止项目或者程序.要是自己的main呢. 点一下就停下了. 要是Java web项目. 则点2下. 就把服务器给停了.4. 查看所有的断点设置情况.具体详情. 下面有示意图. 再细细解释.5. 直接取消所有断点. 让所有断点无效.6. 要是你一不小心把这个下面的布局给弄乱了. 你点这个. 就把下面的布局给还原咯.7. 跳转到当前代码所执行的地方. 也…
源:https://jingyan.baidu.com/article/c45ad29c64f7e7051653e27d.html 重命名类,打开 Refactor -> Rename 或 Shift+F6,输入新类名,如果需要修改变量名,则勾上 要修改的代码,如下图所示: 2 重命名文件,打开 Refactor -> Rename File,输入新文件名,如下图所示: 3 修改方法签名(参数.方法名.返回值等),打开 Refactor -> Change Signature,如下图所示…
一 分支管理 1. 新建分支 在master的基础上创建新分支dev 2. 推送分支 将新建的分支dev推送到远程 3. 切换分支 4. 合并分支 当我们在dev分支完成代码修改并测试通过后 需要将dev分支合并到master分支 首先把dev分支代码全部提交(Commit+Push) 然后切换到master分支 再将dev分支合并到master分支 最后更新master分支代码并提交(Commit+Push) 5. 分支回滚(2种方式) 先说说Git操作文件的颜色变化 红色 暂未加入版本控制…
十大Intellij IDEA快捷键(附IDEA快捷键详细列表及使用技巧) Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧. 十大Intellij IDEA快捷键 1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space…
重构(Refactoring)技巧读书笔记 之一 General Refactoring Tips, Part 1 本文简要整理重构方法的读书笔记及个人在做Code Review过程中,对程序代码常用的一些重构策略.通过适当的重构代码,的确可以显著提高代码的质量,令人赏心悦目.毫无疑问,这些重构策略均来自于Martin Fowler的<重构-改善既有代码的设计>,只是如何在实际项目中灵活运用而已.(注:本文重构策略的名称及其大部分内容来自<重构-改善既有代码的设计>一书,Marti…
IntelliJ IDEA 2018 for Mac是一个综合性的Java编程环境,被许多开发人员和行业专家誉为市场上最好的IDE,它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2EE,Ant,JUnit和CVS集成.本文针对已熟悉其基本功能并希望了解更多信息的IntelliJ IDEA用户. ➡️下载IntelliJ IDEA 2018 for Mac破解版 编码协助 输入信息如果您想了解有关插入符号的更多信息,例如它来自哪里或类型是什么, 快速文档 就是您的朋友.按 F1…
1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for(User user : users)只需输入user.for+Tab 再比如,要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab即可.代码标签输入完成后,按Tab,生成代码. Ctrl+Alt+O 优化导入的类和包…
1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有更智能地按类型信息提示Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所以很多时候都不会手动敲这两个快捷键(除非提示框消失了).用F2/ Shift+F2移动到有错误的代码,Alt+Enter快速修复(即Eclipse中的Quick Fix功能).当智能提示为我们自动补全方法名时,我们通常要自己补上行尾的反括号和分号,当括号嵌套很多层时会很麻…
转载:http://blog.csdn.net/dc_726/article/details/42784275 Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧. 1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,…
IntelliJ Idea 常用快捷键 列表(实战终极总结!!!!) ntelliJ Idea 常用快捷键 列表(实战终极总结!!!!) 1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for(User user : users)只需输入user.for+Tab 再比如,要输入Date birthday = user.getBirthday();只需输入u…
IntelliJ Idea 常用快捷键 列表(实战终极总结!!!!) 1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for(User user : users)只需输入user.for+Tab 再比如,要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab即可.代码标签输入…
注:本文转自:http://blog.csdn.net/dc_726/article/details/42784275 Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧. 1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Sp…
忽然发现intellij尽然可以自动导入 框架所需的包,而且可以选择jar包版本,瞬间发现Maven,gradle管理jar包还得写配置文件弱爆了. 以Hibernate为例: 1.ProjectStructure下点击“+”…
转载:http://my.oschina.NET/dyyweb/blog/494504 http://blog.csdn.net/tanlon_0308/article/details/50854738 和谐地址:http://idea.lanyus.com/ 1.复制JetbrainsCrack.jar 到 ${InstallDir}/bin2.编辑 "${product}${64}.vmoptions" 文件. 添加一行 "-javaagent:JetbrainsCrac…
Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧. 1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有更智能地按类型信息提示Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所…
常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for(User user : users)只需输入user.for+Tab 再比如,要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab即可.代码标签输入完成后,按Tab,生成代码. Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,…
转载注明:https://blog.csdn.net/WantFlyDaCheng/article/details/100078777 自动代码 查询快捷键 其他快捷键 调试快捷键 重构 十大Intellij IDEA快捷键 1 智能提示 2 重构 3 代码生成 4 编辑 5 查找打开 6 其他辅助 太难割舍,前三名并列吧! 本文有点长,建议收藏 + 分享给基友. 厮大说,独乐乐,不如重基基 自动代码 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等…