Cómo comenzar a hacer una aplicación moderna

Su entorno de desarrollo no es un gran problema en estos días. Además, siempre puede usar máquinas virtuales para ejecutar Linux en su cuadro de Windows o configurar un servidor Linux en un proveedor de la nube como Amazon (Instalar una instancia ec2). Aunque como hace 10 años, probablemente alojarás la aplicación final en un servidor basado en Unix.

Bootstrap y marcos similares son enfoques frontales con elementos receptivos integrados. Incluya la biblioteca en su archivo html y está lista. Entonces, si crea un div con una clase de arranque predefinida, tendrá mucha funcionalidad lista en lugar de tener que codificar manualmente en la interfaz de usuario.

Ese div responderá, funcionará bien con sus otros elementos div, se ajustará automáticamente a las pantallas móviles o de escritorio, y la interactividad como las animaciones de desplazamiento se preestablecerá. No tiene que codificar sus propias pestañas o animaciones de clic de botón (a menos que lo desee), lo que ahorra tiempo y las cosas de la correa de arranque se ven decentes. Hacer una barra de navegación de ancho fijo que lo siga en la pantalla simplemente requeriría agregar algunas clases de navegación al div.

Estos difieren mucho de los marcos MVC como Meteor y Angular.js, que le permiten manipular / actualizar / vincular / interactuar mejor los elementos DOM con el back-end (entre muchas otras cosas). Por ejemplo, el enlace de datos bidireccional es fácil de hacer con unas pocas pulsaciones de tecla.

Es más fácil decir … Los marcos MVC son poderosos pero no son un requisito para cada proyecto. A casi todos los trabajos relacionados con la web les gusta ver algo de experiencia MVC.

Naturalmente, puede combinar MVC con marcos frontales como bootstrap.

Less / Sass, etc. son completamente opcionales. Admiten operaciones CSS avanzadas y una sintaxis más simple y rápida de escribir. Del mismo modo, hay jade / haml / etc. para html. Entonces, si quería hacer bucles en css / html o escribir etiquetas mucho más rápido, es bueno saberlo.

Las pilas MEAN difieren de sus pilas tradicionales (como LAMP) en que usan node.js + express.js para alojar la aplicación / sitio web (en lugar de nginx o apache), usan MongDB (JSON!) En lugar de mySQL, Angular.js con javascript para backend (adiós ruby ​​/ php) … y están diseñados para usar javascript como el único idioma … así que en lugar de tener 2-3 + idiomas en el proyecto (SQL, PHP, Javascript + Html / css) … … todo está en javascript … un lenguaje para gobernarlos a todos (¡incluso para cosas de la base de datos!).

GiT es para el control de versiones, GitHub es un control de versiones basado en la nube que le permite a usted (y a todos los demás) compartir / colaborar / trabajar en proyectos de código abierto mucho más fácilmente … también puede tener proyectos privados solo para su equipo de desarrollo.

¿En cuanto a los manillares ?:
AngularJS y manillar: ambos necesarios o no

También estará aquí sobre bibliotecas como JQuery. JQuery es una biblioteca que hace que trabajar con elementos dom en javascript sea mucho más fácil en cuanto a sintaxis. Tiene competidores pero de lejos es el líder. Los marcos angulares y otros pueden tener JQuery integrado en la caja … es tan popular.

Hay muchos … muchos … muchos marcos creados para los principales idiomas web. Idealmente, desea elegir uno que 1. disfrute usando regularmente 2. En realidad, será respaldado por los desarrolladores / patrocinadores corporativos.

Por ejemplo, Angular está desarrollado / respaldado por google. Node.js por joyent, etc., mientras que algunos marcos más pequeños pueden estar orientados hacia algún escenario / solución único y compatibles con los grandes (sí, puede usar múltiples marcos en un proyecto).

Automattic / socket.io, por ejemplo, está muy orientado a aplicaciones interactivas en tiempo real. Express.Js hace que sea mucho más fácil ejecutar node.js como servidor web / de aplicaciones fuera de la caja.

Gracias a github, un proyecto / marco muerto puede revivirse, bifurcarse o actualizarse fácilmente, incluso si el equipo del autor original ha avanzado.

Oh, hombre, tantas preguntas … escribir grandes respuestas largas en Quora no se leen, así que si quieres enviarme un mensaje, adelante. Tratemos de mantenerlo breve.

Ok, estás oxidado, pero no desactualizado … las cosas no cambian mucho. Hay una diferencia entre el cambio real y el simple reempaquetado de las cosas viejas: lo que está viendo es mucho reempaquetado. He estado en la industria s / w desde el ’85 … hagamos un trabajo … después de todo, eso es lo que quieren los CIO maduros.

1) Hay una enorme cantidad de moda en el espacio s / w que provoca grandes concursos de meadas. A menos que tengas 22 años y no tengas nada más que hacer, olvídate de intentar jugar con los ‘niños geniales’ … pasarás toda tu vida jugando con los juguetes y sin hacer nada. Entonces … por el momento, olvide Node, olvide IOS y Android. Necesitas concentrarte en lo esencial .

2) Sí, Microsoft gobernó el mundo y yo, como tú, lo usé durante 25 años. Sin embargo, hoy en día, en desarrollo web es Linux. Por lo tanto, a menos que desee ser un desarrollador de .NET, usted (como yo) tendrá que absorberlo y superarlo. Hice el cambio hace 6 meses. Yo uso Linux Mint, porque su interfaz es muy similar a Windows, y honesto, honesto, creo que es genial. No, no es una interfaz tan dulce como Windows, pero está bien. No te dejes atrapar por toda la moda de Apple … como una máquina de desarrollo, nada se ejecuta en FreeBSD y, de todos modos, tendrás que usar Linux Mint o Ubuntu en una máquina virtual. Por cierto, Mint es Ubuntu solo con una interfaz de usuario diferente.

3) IDE’s – Usa algo de Jetbrains. Construyen el No 1 PHP IDE (PHPStorm) y también los IDE GRANDES para Java y Javascript. Son una empresa sobresaliente con productos sobresalientes.

4) Idiomas: aquí hay un gran concurso de meadas. Soy parcial: quiero un lenguaje que sea omnipresente (lo siento, Scala and Go). Quiero OCEANS y OCEANS de herramientas, CMS, Frameworks, API, aplicaciones y documentos. Además, quiero crear aplicaciones empresariales habilitadas para la web, no estoy interesado en crear aplicaciones empresariales. Entonces … la elección ahora está entre .Net / C # o PHP. Yo uso PHP .. No quiero ser un técnico de Microsoft. En pocas palabras, todo se ejecuta en PHP. En este momento, todos los niños geniales están sufriendo un derrame cerebral, todos están enamorados de Python. Python no encaja en mi lista.

5) Marcos: SÍ, sí y sí. Si eliges PHP, mira a Laravel. Producto sobresaliente. Bootstrap: sí. Coffeescript / Meteor, Sass / Less … déjalo por el momento. Recuerde: enfoque y elementos esenciales. Una vez más, hay tantos frameworks por ahí que no podrá hacer nada.

buena suerte.

Respuesta corta: elige cualquier cosa con la que te sientas cómodo.

Largo: vea hoy que hay muchas opciones para crear aplicaciones modernas. Pero depende de tu definición de moderno. Si quiere decir escalable, multiplataforma, que requiere menos recursos y es fácil de desarrollar, entonces nodejs y meteor son las mejores opciones.

Node js le brinda total libertad para elegir un conjunto de herramientas para su aplicación, como mongo, postgresql y cualquier base de datos, reaccionar o angular, y muchas más. Pero si desea comenzar a crear aplicaciones rápidamente, le sugeriría meteorito, porque no es extraño escuchar 6 meses de desarrollo web realizados en 1-2 meses de meteorito. Es perfectamente adecuado para un nuevo comienzo. Luego puede elegir cualquier otro marco que le resulte cómodo. Echa un vistazo al curso completo de desarrollo web y meteoros en http://Coursera.org y estos son realmente buenos cursos.

More Interesting

¿Qué pasos adicionales tomaría para escalar con el tiempo una aplicación web (por ejemplo, comercio electrónico) de 10 visitas por día a 10,000,000?

¿Qué es la aplicación PCBA?

¿Qué debo hacer antes de crear una aplicación web de redes sociales?

¿Cuáles son los pros y los contras de crear carpetas individuales para cada usuario en lugar de lanzar todos los archivos cargados en una sola carpeta para una aplicación web?

¿Cuáles son las mejores agencias web utilizadas para crear aplicaciones web MVP de inicio, preferiblemente en Londres?

¿Cuáles son algunos de los excelentes ejemplos de aplicaciones de flujo de trabajo basadas en web?

¿Es posible integrar las características de una aplicación web PHP (que está fácilmente disponible) a una aplicación web existente escrita en Django?

¿Cuáles son las ventajas y desventajas de usar Sinatra vs Express para un servicio web API?

Cómo llamar la atención sobre tu nueva aplicación web

¿Por qué el servidor Tomcat no actualiza el contenido HTML en una aplicación web de servlet cuando se realizan cambios?

¿Qué herramientas debo usar para el desarrollo de aplicaciones web?

¿Me puede dar ejemplos de aplicaciones web basadas en datos?

¿Qué aplicaciones web usas más para la productividad personal?

¿Cuál es la ventaja de escribir una aplicación web con Node.js en EC2 frente a Python en Google App Engine?

¿Cuáles son los mejores sitios web donde podemos aprender ASP.NET y consejos para completar las certificaciones MCTS (formación certificada por microsoft especializada) usando C #?