由于XDebug集成,我最近对我的php工作非常喜欢netbeans。这让我完全忘记了textmate(这个小东西仍然打败了netbeans)
您认为我应该了解的一个很棒的netbeans功能是什么,更重要的是我为什么以及如何使用它?
我要求这样做以优化我在使用IDE方面的技能,并基于这样的想法,即对其他人有效的方法可能对我有用(并希望其他人)。
答案 0 :(得分:42)
我发现了另一个我想分享的天才:
你可以做自定义代码折叠(与php无关,只是netbeans)
将其放入代码文件中:
// <editor-fold defaultstate="collapsed" desc="getters and setters">
some boring code you don't need to see every time here
// </editor-fold>
它的行为类似于visual studio中的#region
或xcode中的pragma mark
s。但与region
不同,它不会搞砸你的代码的工作,它只是一个评论!
答案 1 :(得分:26)
直接在IDE上的Subversion Integration和Local History是我必须使用的,最喜欢的功能。
答案 2 :(得分:19)
我发现Netbeans for PHP工作中最有用的一个特性就是它理解PHPDoc(与它理解Javadoc的方式相同),并将其用于类型提示。
在函数定义之前键入/**
,点击return,它将创建一个PHPDoc模板。
/** <-- I typed this one line
* @param <type> $otherObj <-- Netbeans added these 3 lines
* @return <type> <--
*/ <--
public function exampleFunction($otherObj)
{
$myObj = new MyClass($otherObj);
return $myObj;
}
将<type>
个地方标记替换为适当的类型:
/**
* @param OtherClass $otherObj
* @return MyClass
*/
public function exampleFunction($otherObj)
{
$myObj = new MyClass($otherObj);
return $myObj;
}
瞧,你会用Ctrl-space获得类型完成(和弹出文档)。
答案 3 :(得分:17)
通过jVi plugin进行令人敬畏的Vi绑定。
答案 4 :(得分:13)
if ($x instanceof SomeClass) {
$x->.... // now it has code completion with SomeClass' methods.
}
答案 5 :(得分:11)
答案 6 :(得分:9)
This link有很多键盘快捷方式可以派上用场。我打印出来的副本并固定在我电脑旁边的墙上。遗憾的是,我没有看到任何特殊的PHP快捷方式。
更新:http://netbeans.org/project_downloads/usersguide/shortcuts60.pdf UPDATE2:http://netbeans.org/project_downloads/www/shortcuts.pdf(7.0)
答案 7 :(得分:8)
我会添加任务集成。没时间敲定一些东西?添加NetBeans将为您跟踪的简单任务。您可以在Options -> Miscellaneous -> Tasks
中自定义在“任务”中跟踪的内容,但我发现下面的格式最有用,因为它与PHPDoc注释很好地对齐(请参阅 wherehere 的注释):
/**
* @todo Create public setters and __toString() for this class.
*/
答案 8 :(得分:6)
Ctrl + Space是我在java中编程时最喜欢和最常用的功能,我认为它也支持PHP。但是如果你喜欢net beans,你很可能已经知道它了,如果没有尝试,可以发现它的作用。
还可以通过Ctrl +导航到相关的源代码。点击从变量,方法调用到类引用的任何内容都是一个不错的功能。
此外,右键单击源代码时显示的弹出菜单包含许多有用的工具,可用于从重构到代码生成的所有内容。
答案 9 :(得分:6)
这听起来很荒谬,但我在Netbeans做的一件事就是代码格式化。它的代码格式(源 - >格式)摇滚。
它的SVN集成也很棒,但已经说过了。
答案 10 :(得分:5)
能够快速创建快速宏。
例如,这里有一个在当前行的末尾放置一个分号并将光标放回宏开始之前的位置。
“;” delete-previous caret-end-line“;” jump-list-last-edit jump-list-last-edit (我知道默认情况下它存在于其他语言实现中。但它在PHP Netbeans中默认不起作用。)
作为一个长期坚持使用IDE的人,我喜欢能够自定义小东西以提高我的效率。
答案 11 :(得分:5)
如果您考虑使用Netbeans 6.7,它有一个像Dreamweaver一样的同步功能
在您添加自定义ftp的方式中,将其导入项目,当您在本地保存文件时,它们也会上传到服务器,因此您可以使用半备份系统。
(相信我这比直接在ftp树上工作并且意识到当前tmp文件和服务器文件之间的传输失败更好,因为你关闭了文件窗口而丢失了你的工作:))
答案 12 :(得分:4)
NetBeans还允许您完全取消停靠个人窗口。
如何:
右键单击要移动的窗口的工具栏,然后选择Undock window
。所选窗口变为浮动窗口,允许您将其移动到NetBeans主窗口之外。
亮点:
如果您有第二台显示器,这是非常有用的,因为它允许您通过将任何补充窗口(文件浏览器,单元测试结果等)移离主屏幕来最大化可用于源代码的空间。好处是NetBeans可以解决大多数烦恼,这些烦恼通常存在于多窗口应用程序中(例如,覆盖GIMP中各个工具栏的不同应用程序)。
注意:也许这是众所周知的功能,但我设法在今天发现它。它还没有在列表中,所以我添加了它,尽管我已经在不久前回答了一个不同的功能。
答案 13 :(得分:3)
在未使用的私人班级成员之下徘徊。
答案 14 :(得分:2)
TextMate是一个很棒的小编辑器,我一直在Mac上使用,但不是IDE。我并不喜欢Mac上的Netbeans非常非原生,但在Windows或Linux上我更喜欢它而不是Eclipse。
答案 15 :(得分:2)
有些功能绝对值得关注,包括上面提到的功能:
答案 16 :(得分:2)
也许是搜索框,在源代码中找到任何内容?
答案 17 :(得分:2)
令人惊讶的是,没人谈过这个很酷的插件。
http://code.google.com/p/zen-coding/
我发现它对html非常有用。 PHP开发人员确实需要它。它添加了很多像这样的模板。
下载zen-coding for netbeans并导入工具中的zip文件&gt;选项&gt;代码模板&gt;导入。
答案 18 :(得分:2)
我最喜欢这个:phpunit +代码覆盖率
答案 19 :(得分:1)
我几年前曾亲自使用Eclipse进行Java开发,自从我知道Netbeans版本为3.5以来,它已经非常适合将服务器技术集成为TomCat for J2EE应用程序部署,颠覆,uml和大量的插件适用于不同的技术,而不仅仅是Java。
答案 20 :(得分:1)
Netbeans一直以提供对实验(尚未发布)技术的支持而闻名,例如Java 6 EE预览,JDK7支持,......
并且,颠覆支持开箱即用。这与Eclipse有很大不同,Eclipse必须使用插件。使用Eclipse,我在Linux下只遇到了问题(JavaHL问题,blabla ......)。我不记得是谁说的,或者写的是什么,但“开箱即用的支持与用户相比,与使用某些插件的能力相关”。