PHPDevelopmentPlan

PHP Development Plan

This document contains a compilation of features, which will be available in the PHP support. The features are split in the main three categories according, when they could be done. The first important mile stone is a technical preview for Java One 2008. The second category contains features, which will be implemented for version 1.0 and the third category contains a list of features, which can be added in the future.


Contents



JavaOne 2008

There is a list of features which will be available in a technical preview for JavaOne 2008.

Editor

All editor features are targeted for supporting PHP 5. We are not going to support PHP 4.

Feature Priority (1-3) Document Owner Current State Comment
PHP Parser 1 Petr Pisl Many features in editor depends on this feature
Coloring Lexer 1 Petr Pisl done in M1
AST builder 1 Petr Pisl done in M1
Coloring
Syntactic coloring 1 Petr Pisl done in M1 QA can test opening php files, editing and a right coloring of php language
Semantic coloring 2 Petr Pisl in progress QA can test the coloring of class name and method name,
Mark Occurrences PHPMarkOccurrences Jan Lahoda 90%
Code Completion PHPCodeCompletion
CC in local context 1 Tomasz Slota done in M1
CC in global context 1 Tomasz Slota done in M1
CC for PHP platform 1 Tomasz Slota done in M1
CC in include/require Jan Lahoda done in M1
Dynamic Help 2 PHPCodeCompletion Tomasz Slota done in M1 needs to be improve for M2#133837
Code Folding 2 Petr Pisl done in M1 It folds code blocks of classes, methods in classes, functions, phpdoc and php multiline comment
Bracket Matching 3 Vita Stejskal done in M1
Navigation
Go to Declaration PHPGoToDeclaration Jan Lahoda done in M1
Go to Type Jan Lahoda done in M1 PHP elements should appear in the Go to Type dialog - has troubles with case (in)sensitivity
PHP Palette 3 Petr Pisl done in M1 HTML palette is enabled and associated with the PHP editor. No PHP items are planed.


Infrastructure

Feature Priority (1-3) Document Owner Current State Comment
Project infrastructure
New Project wizard 1 UI Specification Tomas Mysik done in M1 possibly will be changed for M2. The changes will be based on the UI study.
Project Customizer 1 UI Specification Tomas Mysik 75%
PHP Include Path API 2 Tomas Mysik done in M1
Project actions 1 Tomas Mysik, Radek Matous done in M1
PHP Options 2 Mockup Tomas Mysik done in M1
New PHP file wizards 1 Tomas Mysik done in M1 possibly there will be needed a changes to allow choose extension
Logical project view 1 Tomas Mysik done in M1
Local development support 1 done in M1
Basic Remote development support 3 UI Specification Tomas Mysik in progress Contains mainly downloading and uploading files from a FTP server
Out of the box experience 3 in progress Mainly dialogs with help/links how to set up servers, debugger etc.
Sample PHP projects 3 done in M1 Bundle sample projects and provide a wizard to create them


Debugger

Feature Priority (1-3) Document Owner Current State Comment
xDebug integration 2 Radek Matous done in M1 QA can test basic debugger functionality toggle breakpoints, starting/stopping session, step into/over/out, run to cursor, adding watches, watching local variables and so on. Needs to be done UI and integration improvements.
Web server debugging 2 done in M1 Local PHP web page debugging should work and can be tested


Refactoring

In the preview it would be good to have a preview of refactoring like renaming php files and folders.

Feature Priority (1-3) Document Owner Current State Comment
Local variable rename not staffed Jan Lahoda done in M1
PHP File Find Usages not staffed Jan Lahoda done in M1
PHP file and folders rename not staffed Jan Lahoda done in M1



Version 1.0

There are features, which will be available in the version 1.0 of PHP support.

Editor

Feature Priority (1-3) Document Owner Current State Comment
Code Completion PHPCodeCompletion
CC for known attributes 2 Tomasz Slota in progress Like cc in include ("") etc.
CC in comments (PHP Doc) 2 Tomasz Slota done in M1
PHP Hyperlink / Goto source 2 Jan Lahoda done in M1
Navigator 2 Petr Pisl done in M1
Code Templates in CC 3 Vita Stejskal done in M1
Code abbreviation 3 Vita Stejskal done in M1
Indentation 2 Tomasz Slota in progress
Formatting 3 Tomasz Slota in progress
Error Annotations 2 Petr Pisl in progress
Code snippets / palette 3 Petr Pisl not started yet
PHP Font and Colors in Editor Options 2 Petr Pisl not started yet
Comment / Uncomment PHP code 3 Tomasz Slota done in M1
Automatic Insertion (brackets, braces, PHPDoc) 3 Tomasz Slota done in M1


Infrastructure

Feature Priority (1-3) Document Owner Current State Comment
Encoding of PHP files and project 2 Tomas Mysik done in M1
Remote development support 2 UI Specification Tomas Mysik in progress
Out of the box experience 3 not started yet Auto configuration on some platforms, installer, etc.
Sample PHP Projects 3 done in M1
Wizard for generating new php class / interface 3 not started yet
Goto File Support 3 done in M1
Goto Type Support 3 done in M1
PHP Manual Integration 2 not started yet
Providing data for NB statistics 3 Tomas Mysik done in M1 The goal of this feature is find out, how many people really use the php support in NetBeans


Debugger

Feature Priority (1-3) Document Owner Current State Comment
Local debugging 3 Radek Matous done in M1 Basically it means to support debugging local scripts


Remote file transfer protocol support

This is not connected to the php support directly. So there should be a project independent support fro remote systems. Such support should contains a viewer of the remote file systems with possibility to use the connection information in NetBeans projects.

Feature Priority (1-3) Document Owner Current State Comment
Regular FTP support (passive/active) 2 Tomas Mysik in progress
Secure FTP support 2 not started yet
FTP over SLL 3 not started yet


Refactoring

Feature Priority (1-3) Document Owner Current State Comment
PHP Elements Find Usages 2 Radek Matous done in M1 Like Class, functions, global constants.
PHP Elements Rename 2 canceled
Code Generation support 3 canceled Getters and setters, override and implements function



Future

There is a compilation of features, which can be a part of PHP support in the future. It's also includes improvements in the features, which will be available in the version 1.0.

Editor

Feature Priority (1-3) Document Owner Current State Comment
Formatting 3 This is about real reformatting code, not only about re-indentation.
PHP Hints 3 PHPVerification Tomasz Slota


Infrastructure

Feature Priority (1-3) Document Owner Current State Comment
PHPDocumentor support 3
PHP Unit testing support 3
__Displaying data at http://statistics.netbeans.org 3
Tasks support 3


Refactoring

Feature Priority (1-3) Document Owner Current State Comment
PHP File Safe delete 3
PHP Elements Save delete 3
PHP File Move 3
PHP Elements Move 3 Like move a php file to another file, etc.


Remote file transfer protocol support

Feature Priority (1-3) Document Owner Current State Comment
Tunneling Support 3
Support for other Remote FS 3 SCP, Windows FS, Linux FS, Samba ...


Other possible futures

  • PHP code analyzer
  • PHP Profiller
  • PHP Code coverage
  • Integration with Web Services
  • Java Bridge integration
  • PHP Frameworks support
  • SQL DB support integration
  • More snippets

Competition

There is a table that compares list of features with competition.

Feature NetBeans 6.7 ZendStudio 7.0 PDT Comment
Editor support
PHP 4 support N Y Y There is decision that we are not going to support PHP 4
PHP 5 support Y Y Y
Syntax Coloring, Code Completion Y Y Y
Code Folding Y Y Y
Error detection Y Y Y
Bookmarks Y Y Y
Goto Source Y Y Y
Automatic Insertion (brackets, braces, PHPDoc) Y Y Y
Matching Bracket Y Y Y
Comment / Uncomment PHP code Y Y Y
Basic Code Formatting Y Y Y
Advanced Code Formatting N Y N
Code Generation support Y Y Y Getters,Setters,override,implement
DnD From Open Explorer Files N Y Y
JavaScript support in PHP files
jsDoc N Y N
Syntax Coloring Y Y Y
Code Completion Y Y Y
Navigator Y Y N Zend Studio has html/php/javascript in one outline. We will have separate outline for all embedded languages
Code Folding Y N N
HTML support in PHP files
Syntax Coloring Y Y Y
Code Completion Y Y Y
Navigator Y Y N Zend Studio has html/php/javascript in one outline. We will have separate outline for all embedded languages
Code Folding Y Y Y
Drag and Drop HTML Components Y Y Y
Design (WYSIWYG) editing N Y N
Infrastructure
PHP Project infrastructure Y Y Y
New file wizards Y Y Y
Goto File Y Y Y
Goto PHP Element Y Y Y
PHP Manual Integration Y Y Y
File Navigator Y Y Y
Project Navigator N Y Y
Tasks support N Y Y
Problems View N Y Y
Project Include Path definition Y Y Y
Encoding Support Y Y Y
Deployment
Local Deployment Y Y Y
File Content Transfer Y Y N
FTP Y Y N
SFTP Y Y N
SSL communication N Y N
Tunneling Support N Y N
Refactoring
Rename of files, folders Y Y N
Rename of php elements(class, function, global variable) Y Y N
Debugging
Web Server Debugging Y Y N
Local Debugging Y Y N
PHP Executable Profiler N Y N
Web Server Profiler N Y N
Code Coverage N Y N
Source control
Local History Y Y Y
CVS Y Y Y
Subversion Y Y N
Mercurial Y N N
Miscellaneous
PHP Unit testing support Y Y N
PHP code analyzer N Y N
RSS Reader N Y N
Web Services support N Y N
PHPDocumentor Support N Y N
Java Bridge N Y N
PHP Zend Frameworks integration N Y N
PHP Frameworks integration N N N
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo