para - phpstorm mac full
IDE PHP con la mejor terminación de código? (11)
Puedes probar Zend Studio.
A pesar de lo que algunos dirían , creo que la finalización del código (también conocido como Intellisense) es la segunda mejor invención en lo que respecta a los editores de código (la primera es la coloración de sintaxis). Realmente hace que la codificación sea más fácil porque no tengo que preocuparme de haber nombrado la función CalculateReportSums
, ReportSumsCalculate
o simplemente GetReportSums
.
Desafortunadamente, todavía no he encontrado un editor de código que implemente satisfactoriamente esta característica para PHP. Y por "satisfactorio" quiero decir "tan bueno como Visual Studio para C #".
Mi primera opción de editor de texto es Notepad ++, pero eso solo tiene una lista de las funciones integradas de PHP, y solo aparece después de presionar Ctrl + SPACE. También probé Eclipse + PDT, que es mejor, pero a menudo tiene hipo, a veces falla por completo sin razón aparente (no hay una lista disponible), y siempre aparece solo cuando paro el tipeo (establecer el tiempo de espera en un valor pequeño provoca el lista para no aparecer del todo).
Entonces, ¿hay algo mejor por ahí? ¿Algo que sea consciente de todas las variables en el alcance actual, que podría seguir include()
sy mostraría la lista en tiempo real mientras escribo?
Sé que PHP es un lenguaje dinámico y una finalización perfecta del código es imposible en principio (porque no se sabe qué variables estarán allí hasta el tiempo de ejecución), pero aún así debería ser posible implementarlo en bastante buen grado. mejor de lo que he visto hasta ahora.
Agregado: para agregar algunos puntos menores: quiero que el CC sea instantáneo, como en Visual Studio. Escribo un personaje y la lista aparece en el mismo instante. Escribo otro personaje y la lista se vuelve la mitad del tamaño antes de que siquiera pueda parpadear. Uso de CPU casi nulo, resultados instantáneos (¡todos saluden a los dioses del almacenamiento en caché!).
Además, estoy bien documentando mis funciones e incluso las variables de una manera especial. Prefiero la sintaxis de PHPLint (porque luego puedo consultar mi código con ella más adelante), pero también funcionarán otras sintaxis. Obligar a hacer esto también es bueno para su disciplina de comentarios. :)
Tienes razón en que intellisense es mucho más complicado en un lenguaje de tipado dinámico como php. Considera por ejemplo
function get_foo($x) {
return $x ? new abc() : new xyz();
}
get_foo(123)->... can your IDE autocomplete here?
No sé sobre PDT, pero Netbeans no puede manejar esto, y phped requiere que ''get_foo'' se anote de una manera especial.
Todavía no he probado el próximo WebIDE de Jetbrains ( http://www.jetbrains.com/webide/features/index.html ), pero parece prometedor en este sentido (ver captura de pantalla).
Uso PHPEd ( http://www.nusphere.com/ ) que tiene una versión viable de esta característica.
Nota : Tienen una oferta en la página principal. Ignora esto Ha estado terminando mañana por al menos 4 años.
Kimodo tiene un buen código de finalización, revelando no solo las funciones en PHP, sino las cosas que has declarado en el contexto actual. Además, si ha documentado adecuadamente su función o cualquiera, ¡también muestra esa documentación!
Sin duda, use NetBeans, es muy útil y tiene una buena intención (está bien, no es perfecto) pero es mejor que Eclipse, por ejemplo.
Supongo que estás en Windows. En Windows usualmente uso phpDesigner ( http://www.mpsoftware.dk/phpdesigner.php ) que tiene bastante buen CC. En Linux, utilizo geany ( http://www.geany.org/ ) o vim, ambos con CC, en el caso posterior, tendrá que configurarlo. Encontré Eclipse demasiado hinchado y me cansé de esperar a que se inicie. : /
Te recomiendo netbeans .es gratis. está disponible para todas las plataformas, y sobre todo es bueno para editar php, jsp, java, css, html, ... Bueno para SVN, mercurial, Plus puedes integrarlo fácilmente con kenai.com ...
ayuda con el tipo de ventana emergente IntelliSense.
Créeme, lo estoy usando para el desarrollo de php y es el ide mejor adaptado que puedo encontrar ...
Aún no he visto nada que supere la finalización automática que estaba en Zend Studio 5.x. He intentado versiones posteriores, que están basadas en Eclipse, y bien podría estar usando Aptana ...
Desafortunadamente, esto significa mantener las ventanas con el aspecto de XP o 2000 ya que la GUI de Java (en la que se construyó Zend Studio) se arruina en Win7 Look, pero para las características que tiene Zend 5, bien vale la pena.
No solo completará automáticamente las funciones conocidas, sino que también completará automáticamente las variables / funciones que realice, y no solo su archivo actual, sino cualquier archivo abierto (y creo que cualquier otro en proyecto abierto), y también sugerirá automáticamente elementos de Clase.
Además, poder ejecutar localmente dentro de Zend Studio para probar partes de código es excelente. Si solo le permite guardar fácilmente en el sistema de archivos local y subirlo al servidor al mismo tiempo .... (Dejo que un programa FTP se ejecute en segundo plano y cada 10 minutos descargará cualquier cambio en el servidor).
He descubierto que Netbeans tiene una mejor terminación de código que Aptana. Cuando estaba trabajando con codeigniter, Netbeans codificaría completo para mis métodos estáticos en modelos donde Aptana no lo haría.
Desde que posteé esto, JetBrains ha lanzado PHPStorm y tiene su intellisense de fuego rápido, así como una sugerencia de tipo aún mejor. Es absolutamente superior a todos los demás en mi humilde opinión. He estado usando EAP 2.0 durante varios meses ahora gratis.
Asistencia de código
Ayuda en la creación de HTML, CSS, JavaScript, PHP y Ruby. Admite las últimas especificaciones HTML5. Incluye información sobre el nivel de soporte para cada elemento en los principales navegadores web
empuje.
http://weierophinney.net/matthew/archives/123-Vim-7-code-completion.html
Además, mirando las preguntas similares recomendadas, noté que ya hay una buena pregunta sobre las diferentes formas de utilizar la finalización del código vim.