2008-09-17 16 views
28

¿Qué es un buen punto de partida para aprender javascript? Yo soy una C versado y programador de Java y tengo un poco de experiencia decente en C++, por lo que estoy buscando algunas sugerencias:Inicio del desarrollo de javascript: ¿qué hacer?

  • ¿Qué es un buen material de referencia?
  • ¿Hay un IDE/editor en particular que valga la pena mirar? Utilizo vim para el desarrollo de C/C++ y utilicé IntelliJ Idea para Java. Estoy limitado a herramientas basadas en Linux o Mac.
  • ¿Cómo se depura el código de JavaScript? ¿Es solo una serie de alert()?
  • ¿Tengo que ejecutar un servidor web para probar javascript, o puedo cargar el archivo .js directamente? Si es así, ¿hay limitaciones para este enfoque?
  • ¿Algún otro consejo para un principiante de javascript?

Gracias

Respuesta

21

Creo que hay muchas buenas respuestas aquí con muchas buenas sugerencias, sin embargo, tampoco estoy de acuerdo con la mayoría de las respuestas que dicen "comenzar a aprender con jQuery". Soy apasionadamente contra el aprendizaje de un marco para un idioma antes de aprender el idioma en el que se implementa el marco. Estás creando automáticamente un nivel de abstracción para ti. Conocer el idioma antes de aprender jQuery o cualquier otro marco ayudará a mejorar su capacidad para comprender lo que hace el marco, cómo escribir un mejor código y cómo implementar una característica en el marco que desea que esté allí pero no lo es.

Dicho esto, aquí hay un conjunto de recursos que he encontrado para ser muy útil en el aprendizaje de JavaScript (algunas de ellas ya se han mencionado):

sitios web

Libros

  • Head First JavaScript. Este libro es realmente bueno para ponerte al día sobre la sintesis de JavaScript y de lo que es capaz sin que te empantanen las implementaciones técnicas del lenguaje. También ayuda a conectar los puntos entre JavaScript y el DOM.
  • JavaScript: The Good Parts Aproximadamente 150 páginas, esta es una lectura relativamente fácil que explica las partes buenas del lenguaje y las partes malas del idioma. Este libro lo convertirá en un mejor programador de JavaScript al mantenerse alejado de las "partes horribles" del idioma al mismo tiempo que le ayuda a atenerse a las partes buenas y escribir un código más claro, sostenible y expresivo.

Vídeos

Marcos

  • jQuery. Este parece ser el favorito en Stack Overflow. He trabajado con eso y realmente es una buena biblioteca.
  • Prototype. Esta es otra biblioteca que me gusta usar. Es bueno para la creación de clases y el soporte de herencia, así como su API.

IDE

  • Aptana Studio es el mejor IDE para JavaScript que he utilizado nunca. Tiene todas las características que esperarías de un poderoso IDE con respecto a JavaScript.
  • Bloc de notas. Realmente no necesita nada más que un navegador web y un editor de texto para escribir JavaScript, así que si esto hace flotar su embarcación, entonces hágalo.

Sí, hay más sitios web, libros y videos que pueden ayudarlo a comenzar, pero para alguien que tiene experiencia en programación, no me puedo imaginar que elegir JavaScript sea completamente difícil. Además, hay otros marcos disponibles, pero jQuery y Prototype son los que estoy más familiarizados y los he encontrado realmente útiles.

+0

¡Excelente respuesta!/bumped – roosteronacid

+0

Me gusta la serie de Head First, revisaré el libro, si encuentro que vale la pena, le daré su representante. – schwarz

6

inicio aprender jQuery. Es lo mejor para el desarrollo de JS, nunca.

  • No, no necesita un servidor web. JS está basado en navegador.
  • En cuanto a un IDE, cualquier editor de texto sería suficiente. Vim funcionaría bien.
  • Use Firebug en Firefox para la depuración de JS. Esto hace que sea mucho más fácil.
  • Nuevamente, use JQuery. Es genial.

Alex

+0

"# No, no necesita un servidor web. JS se basa en el navegador." No del todo cierto. Si está haciendo solicitudes AJAX, las restricciones de seguridad serán diferentes en un archivo local en comparación con un archivo remoto en un servidor. – ceejayoz

+1

Solo advertencia para usar cualquier JS takeit, incluido jQuery: tenga en cuenta que, por su propia naturaleza, por supuesto, ocultan muchos de los detalles subyacentes sobre JavaScript propiamente dicho: si desea aprender el * idioma *, es posible que desee omitir toolkits hasta que se dé cuenta de por qué querría usar uno. –

+0

Ah, y prueba Aptana: viene con un servidor web local llamado Jaxer. IDE muy útil. –

1
  1. http://www.gotapi.com es una buena referencia para la documentación
  2. Usted puede usar cualquier IDE que le gustaría - es principalmente texto
  3. Firebug es grande para depurar https://addons.mozilla.org/en-US/firefox/addon/1843
  4. Puede prueba localmente - JavaScript se ejecuta en el cliente de todos modos por lo que no hay limitaciones reales
  5. Onc Si tiene los conceptos básicos, puede consultar jQuery: realmente le permite hacer cosas fantásticas que ya han sido probadas, etc. por lo que no está reinventando la rueda.
2

Si está hablando de javascript en el navegador, solo puede cargar una página html que incluya su archivo .js.

Firefox es probablemente el mejor navegador para el desarrollo de JS. La consola de depuración es útil y querrás consultar un par de complementos: firebug (http://getfirebug.com/) y Venkman (http://www.mozilla.org/projects/venkman/).

Si está contento con vim, probablemente lo encuentre lo suficientemente bueno para el desarrollo de js. Textmate en la Mac también es agradable.

1

Recomiendo aprender Javascript usando jQuery. Aunque la mayoría de los lenguajes son mejores para aprender sin un marco, diría que javascript es la excepción a esa regla. jQuery está bien documented, y elimina muchos de los hacks que generalmente necesita para que su código funcione en todos los navegadores.

Para la depuración, no conozco ninguna herramienta específica, pero Firebug en Firefox es muy útil.

No hay necesidad de ejecutar un servidor web, pero tampoco desea cargar el archivo JS directamente, lo más probable. En general, configura una página HTML e incluye el archivo javascript desde allí.

0

** Lo siguiente no está actualizado, no siga estos consejos. Descargar Sublime Text e ir aprender Backbone.js :) **

Como usted ya tiene un fondo de Java, la forma más fácil de saltar en Javascript, probablemente sería de revisar un libro de O'Reilly. Obtendrá las preguntas de sintaxis respondidas fácilmente y podrá avanzar rápidamente.

En cuanto a un IDE, utilizo Dreamweaver o BBEdit en OS X o VIM. Aunque probablemente no estoy muy versado en lo que está disponible, tiendo a ser un viejo sombrero.

La mayoría de las depuraciones son alertas, lamentablemente. IE tiene el cuadro de "errores encontrados en esta página, haga clic aquí para más detalles" cuando se estropea algo, pero esto generalmente solo lo pondrá dentro de unas pocas líneas del problema (si tiene suerte!)

No webserver es necesario. Puede obtener una vista previa de todo en el navegador de su elección

Sugerencias: limítese a aprender lo que quiere saber. Hay varios marcos disponibles que pueden "facilitar las cosas", pero no te preocupes por entrar en ellos hasta que descubras los conceptos básicos. No es un lenguaje muy difícil, pero a veces puede ser muy frustrante. Solo aplica tus conocimientos previos y estarás bien.

10

Compruebe primero el código de Crockford articles.

+1

Es posible que desee corregir el nombre, Cockford! = Crockford :) –

+0

¡maldita sea! Perdí la clave, supongo ... – artificialidiot

1

Si está buscando un libro de referencia sobre el idioma, JavaScript: The Definitive Guide es el libro para obtener.

Visual Studio es de lejos el mejor entorno de depuración de Javascript, pero eso no es útil para usted si está limitado a Linux & Mac. En esa plataforma, estoy de acuerdo con las sugerencias para Firefox con Firebug y Venkman.

0

Manténgalo simple y pruebe todo en varios navegadores. En comparación con la compilación estrictamente controlada de Java, verá que Javascript es difuso e impredecible. Muchas cosas no se comportan bien.

Yo no uso jQuery, pero estoy empezando a desear haberlo hecho. Al igual que muchas de las mejores bibliotecas de JavaScript, documenta algunas de las grietas y hace que el lenguaje sea más regular.

0

Si ya usa InelliJ Idea, también tiene un soporte bastante bueno para el desarrollo de javascript. Resalta, autocompleta y algún nivel de validación de código. Para la depuración, la mejor herramienta que conozco es la extensión Firebug. Como material de referencia, sugiero el libro Javascript: The definitive guide, de O'Reilly.

2

Puede usar cualquier texto para escribir javascript. Me gusta Ultra Edit porque tiene resaltado de sintaxis y plegado de código y navegador sftp (casi todos los editores de texto avanzados), así que realmente no importa. notepad++ es bueno y gratuito con muchas funciones, incluyendo resaltado y plegado.

Para depurar javascript puede usar firebug que es complemento de firefox. No necesita usar alertas. Puede escribir console.log (somevar) y ver el valor en la consola Firebug. Ver más información sobre la consola de Firebug API.

Y no necesita el servidor web para ejecutar javascript. Simplemente escriba el archivo html con algunos javascript y ábralo con su navegador web favorito. También es posible que desee comprobar marcos de JavaScript como jquery, mootools o Javascript MVC. Todos ellos tienen buena documentación y tutoriales.

w3schools tiene Javascript tutorial básico para principiantes

2

usted podría funcionar a través Eloquent JavaScript, aunque algunos de ellos podrían ser un poco elemental si eres un programador experimentado. Llegar a enfrentarse con todas las rarezas extrañas de este lenguaje es probablemente el mayor desafío.

+0

+1 Encontré Eloquent JavaScript un gran recurso para volver a la programación de JavaScript después de estar lejos del desarrollo web por un tiempo. Fue un buen repaso sobre lo básico. – dthrasher

13

haz todo lo posible para aprenderlo sin depender de una biblioteca en primer lugar. Como tiene experiencia en C, va a ser un aprendizaje rápido para usted, por lo tanto, hágalo sin jQuery o Prototype. Aprende a construir una buena Solicitud XMLHTTP, manipula el DOM, construye tus propios objetos, etc. Una vez hecho esto, mira todas las bibliotecas y ve cuál se adapta mejor a tus necesidades.

siempre una prueba en los navegadores más recientes, y después trabajar su camino de regreso.

Si usted es un principiante muy visual, la serie Head First es bueno.

+0

Acepto, aprender javascript sin un marco de trabajo significará que realmente aprenderá el idioma y lo que puede hacer en lugar del marco y lo que hace. –

+0

de acuerdo ... El 90% de las preguntas en StackOverflow sobre jQuery están hechas por personas que no conocen ni siquiera los principios básicos de javascript. – Peter

0

Ah, por último, Aptana es un excelente IDE para JavaScript (y CSS). La versión gratuita es lo suficientemente buena para aprender.

3

Si quieres empezar desde el principio, entonces yo siempre sugiero comenzar aquí:

http://www.w3schools.com/js/default.asp

alguien ha mencionado elocuente JavaScript, que es un tutorial en línea maravillosamente con formato que hace un buen trabajo de la enseñanza lineal a través de los diversos conceptos.

A pesar de que usted es un programador experimentado, estos son simples referencias que le dará a conocer el 95% de las capacidades lingüísticas básicas. No es que tenga un problema con ninguno de ellos, pero por favor no comience su viaje con artículos de Crockford o JavaScript: The Definitive Guide. En mi experiencia, ese es el tipo de información que digieres después de que ya has usado JavaScript durante unos meses. Una vez que comienzas a utilizar métodos públicos y privados, sobrecarga y creación de clases, te gusta el "estilo" y no necesariamente el contenido.

gente no le gusta hacer referencia a w3schools porque no comienza con técnicas y tutoriales orientados a objetos, y tiene una apelación obsoleta. Es un gran error, porque antes de entrar en las cosas avanzadas te recomiendo que comiences con los fundamentos. Después de que los baje, le sugiero que busque el libro de John Resig Pro JavaScript Techniques. John hace un mejor trabajo al cubrir algunas de las técnicas avanzadas sin meterse en un montón de tripas académicas que obtienes en otro lado.

También escribí este post, que hizo sorprendentemente mejor de lo que pensaba:

http://blog.reindel.com/2007/10/16/mastering-javascript-concept-and-resource-guide/

0

Esta es una gran página para aprender Javascript.

http://www.hunlock.com/

Se cubre todo tipo de áreas sin depender de Bibliotecas. Cuál es la mejor manera de aprender Una vez que comprenda de qué se trata Javascript, siga adelante y elija una biblioteca de su agrado.

3

Douglas Crockford tiene varios videos en Javascript en YUI Developer Theatre que son muy buenos. Hay dos series recomendaría

La programación JavaScript Lenguaje

avanzada JavaScript

que se puede encontrar en este link.

1

Hay una buena JavaScript book de Marijn Haverbeke. Es una muy buena introducción para el principiante.

0

Prefiero trabajar con Textmate y el paquete jQuery. Es mi editor para todo, los mensajes de compromiso de SVN, los mensajes de commit de Git, html, css, javascript, python, tontear, escribir entradas de blog, lo que sea.

0

Dado que tiene competencia en C, C++ y Java, le aconsejo que anule la comparación de Javascript a estos. Javascript tiene una sintaxis similar, pero es fundamentalmente muy diferente. Es un lenguaje basado en prototipos. Tiene alcance léxico y tiene funciones de primera clase. Esos son todos los aspectos que son ajenos a dichos idiomas. No es sin razón que Javascript se ha llamado esquema con sintaxis Java.

0
  • El sitio web W3Schools es un buen lugar para aprender los conceptos básicos. También tiene una gran sección de referencia: http://www.w3schools.com/js/default.asp

  • El complemento de Firefox "Firebug" es ideal para la depuración.

  • No, no necesita un servidor web para ejecutar Javascript.

1

Depuración JavaScript; Si inserta la línea

 debugger; 

en su JavaScript, entonces su navegador usualmente activará un Depurador. Con IE y VS instalados (si está haciendo ASP.Net, por ejemplo), entonces puede depurar en VS. Con Firefox y Firebug instalados, esto iniciará el depurador Firebug, que es útil ya que la funcionalidad "establecer punto de interrupción" en Firebug parece no ser confiable, al menos en mi caso.

0

Dado que proviene de un entorno de idiomas imperativos, recomiendo encarecidamente que comprenda el poder de los cierres y las funciones como valores de primer orden. En mi experiencia, esto es algo que no viene naturalmente a los programadores de Java o C++.

Cuestiones relacionadas