Dois-je apprendre le html et le javascript pour créer des applications web? [fermé]

10

Je suis un programmeur Java expérimenté et je veux créer une application web complexe nécessitant des pages dynamiques, des dessins, etc. (prenez SO comme exemple). Dois-je apprendre javascript / html pour créer une telle application?

Ce n'est pas que je ne veux pas apprendre une autre langue (je l'ai déjà fait), mais la technologie de l'environnement javascript semble changer si vite que lorsque vous avez fini d'apprendre un framework, il est déjà obsolète. J'ai vérifié un certain nombre de framework java pour le développement web (spring, play), mais pas profondément. Est-ce que ces frameworks (ou d'autres frameworks Java possibles que je ne connais pas) peuvent être utilisés sans apprendre le HTML / Javascript? J'ai également une certaine expérience en python. Donc, si je peux faire l'application en python, c'est aussi une option.

vainolo
la source
22
réponse courte: OUI! ...... réponse longue: OUI !!!!!!!!!!!
rlemon
1
Autres points: Vous n'avez pas besoin d'un framework, en fait, vous devez rester à l'écart d'eux et des bibliothèques d'abstraction tout en apprenant Javascript. Les bibliothèques d'abstraction (par définition) ne vous aideront pas à apprendre le langage ou les API. Entrez dans la salle Javascript et posez cette question à certains propriétaires / habitués de la salle.
rlemon
1
Pas 100% la même question, mais je trouve toujours cette réponse utile lorsque les gens posent des questions sur les "raccourcis". programmers.stackexchange.com/questions/122191/…
rlemon
3
non, vous pouvez payer les autres pour le faire
Jason Sebring
1
C'est comme demander "dois-je savoir Java pour écrire des applications Android" ou "dois-je apprendre Objective-C pour écrire des applications iOS" - vous pouvez l'éviter, mais ne pas écrire de code natif vous blessera.
TehShrike

Réponses:

35

Vous n'avez pas besoin d'apprendre JavaScript et HTML pour créer des applications Web.

Mais vous le ferez.

Si vous voulez vraiment écrire des webapps principalement en Java, jetez un œil au Google Web Toolkit , qui fait de grandes quantités de Java à JS, et peut satisfaire une bonne partie du code nécessaire pour une webapp. Django est un framework similaire pour Python.

Et si vous voulez vraiment éviter d'écrire du HTML, il existe de grandes quantités de modèles et d'éditeurs What-you-see-is-what-you-get.

Mais vous voyez, quel que soit le cadre d'abstraction et les modèles HMTL avec lesquels vous commencez, à un moment donné, vous ne serez pas satisfait de la présentation. Et donc vous aurez suffisamment de HTML / JS sur vos mains pour changer la toute petite chose que vous voulez. Et autre chose. Et un autre.

Et puis un jour vous vous réveillerez en sueur froide.

entrez la description de l'image ici

Et c'est ainsi que vous apprendrez. C'est ainsi que beaucoup d'entre nous ont appris, à l'époque des fabricants de sites Web pointer-cliquer comme Geocities. Après un certain temps, si vous êtes sérieux au sujet du Web, vous apprendrez les langues du Web, intentionnellement ou non.

Vous n'avez donc pas à apprendre le HTML et le JavaScript pour créer un site comme StackOverflow. Mais si vous essayez vraiment de créer un site comme StackOverflow, vous ne pourrez pas vous empêcher de les apprendre.

Simon Sarris
la source
1
Lorsque j'ai lu la question pour la première fois, mes pensées étaient exactement les mêmes que cette réponse. Mais comme chaque technologie a ses avantages et ses inconvénients, vous voudrez peut-être consulter programmers.stackexchange.com/questions/38441/… avant de vous décider. Bonne chance!
Si vous n'êtes pas en mesure de créer une belle présentation avec html / css uniquement, vous avez simplement raté le bus.
ott--
Il est beaucoup plus difficile d'utiliser tout ce que vous apprenez après avoir introduit une catastrophe sur votre front via un CMS ou une bibliothèque dominante vraiment merdique comme EXTJS.
Erik Reppen
+1 Vous n'avez pas besoin de connaître JS et même si vous résistez , vous soudainement un jour juste savoir il.
Spoike
16

Examinons quelques solutions possibles au scénario "J'ai besoin de faire quelques trucs web":

  1. Embaucher quelqu'un d'autre pour le faire
  2. Utilisez un cadre élaboré qui transforme comme par magie des éléments non frontaux en éléments frontaux (html, css, js)
  3. Fais le toi-même

Nous allons ignorer # 1 parce que nous sommes géniaux comme ça. Il nous reste deux choix. Lequel choisir, lequel choisir ...

# 2 est séduisant. Cela signifie que vous pouvez rester dans votre zone de confort, ce qui est assez confortable, surtout si vous avez ajouté une machine à barbotine et des canapés. Mais considérons ce qui arrive au framework que vous utilisez:

  1. Ça bogue
  2. Ça devient obsolète
  3. Il ne correspond pas entièrement à vos attentes
  4. Tout autre problème lié au logiciel.

Vous êtes un développeur, il ne doit donc pas être difficile d'envisager toutes les façons possibles dont un produit (en particulier une bibliothèque) peut se casser de nombreuses manières spectaculaires, déchirant vos canapés et renversant la machine slushy, peignant tout en magenta vif.

Dans l'un de ces scénarios, vous devrez revenir pour reconsidérer les options discutées au début de la réponse (seulement cette fois en remplaçant le cadre dans # 2), avec une 4ème option ajoutée: Essayez de le réparer au niveau micro . En d'autres termes, apprenez la pile Web de manière superficielle, uniquement nécessaire pour pirater ensemble une solution à ce problème spécifique.

Est-ce que ça vaut le coup? Dépend. Vous pouvez croire que le cadre ne vous fera jamais défaut et vous avez peut-être raison. Et vous vous trompez peut-être.

Je propose une solution hybride: apprenez d'abord la web-stack. Vous n'avez pas besoin de passer beaucoup de temps dessus, vous n'avez pas besoin d'être l33t h4x0rz comme ce jeune de 14 ans qui peut ajouter des paillettes aux pages MySpace, vous avez juste besoin d'avoir une connaissance de base de ce qui est passe. Ensuite, si vous voyez que c'est le meilleur scénario pour vous, choisissez un cadre.

Maintenant, votre zone de confort est un peu plus grande. Il pourrait même afficher fièrement un téléviseur ou un album d'ABBA: Greatest Hits. Maintenant, si quelque chose se casse, vous saurez comment y remédier. Vous avez maintenant le choix . Et avoir le choix est toujours mieux que de ne pas avoir le choix.

Zirak
la source
1
Voté juste pour m'avoir fait rire. C'est aussi un bon conseil.
Ed Hastings
1
A voté pour de bons conseils. Cela m'a aussi fait rire.
rlemon
2

Le devez-vous absolument ?

Non.

Mais si vous voulez une application web modérément moderne, vous devriez probablement le faire. Il existe des moyens de contourner cela, mais ce sont des abstractions de ce qui se passe réellement. Si vous êtes d'accord avec ça, alors allez-y. Sinon, vous devrez apprendre la langue.

Ryan Kinal
la source
1

une application web grande et complexe est très difficile et fastidieuse à développer seule, même si vous maîtrisez déjà le HTML et le Javascript.

mon conseil serait de chercher une possibilité de développer l'application web avec une équipe, ou au moins un développeur front-end.

comme ça, vous vous concentrez sur ce que vous savez déjà bien et laissez un spécialiste faire le front-end.
développer le front-end est beaucoup plus difficile qu'il n'y paraît initialement, par exemple du fait que le front-end doit fonctionner dans de nombreux navigateurs différents sur plusieurs systèmes d'exploitation.

kr1
la source
1

Je me joindrai au chœur pour dire que vous devrez très probablement apprendre HTML / CSS / Javascript à un moment donné.

Cependant, vous semblez demander des frameworks qui n'inventent pas l'écriture de code frontal. Je peux comprendre ce sentiment. Malheureusement, il y a très peu de technologies matures qui résument ce genre de choses (pour un certain nombre de bonnes raisons).

Jetez un œil à Wt et à la version Java JWt . C'est peut-être ce que vous recherchez.

En bref, ce cadre tente de rendre les applications Web centrées sur les widgets de sorte qu'au lieu d'écrire des modèles HTML, vous codiez l'interface utilisateur comme s'il s'agissait d'une application de bureau. Il utilise certaines nouvelles technologies comme les sockets Web, améliore progressivement et vous évite généralement d'avoir à faire beaucoup de front-end.

MrFox
la source
0

Des cadres tels que Spring et Play seront parfaits pour gérer la logique de votre application, mais même ils n'éliminent pas la nécessité d'avoir à créer un front-end pour votre application Web. Ce n'est pas fondamentalement différent de devoir créer un front-end pour votre application de bureau, juste une exécution différente.

Ce n'est pas quelque chose qui devrait vous faire trop peur. Votre processus de développement sera toujours en grande partie le même, sauf que vous devez habiller vos données avec HTML et CSS plutôt qu'avec des éléments GUI de bureau. Vous pouvez apprendre les bases du HTML et du CSS en un après-midi, et vous pouvez rendre votre interface aussi compliquée ou aussi simple que vous le souhaitez.

Mon conseil est de visiter des sites similaires à celui que vous avez l'intention de créer, puis d'afficher la source HTML - vous aurez une idée de la façon dont ces sites se déroulent en termes de conception HTML.

Orties de Jarrod
la source
0

Oui, pour créer n'importe quelle application Web moderne, vous devez avoir au moins une connaissance de base du HTML et être compétent en JavaScript. L'utilisation de frameworks pour un langage comme python ou Java est possible et vous pouvez créer la majorité des fonctionnalités de votre site en les utilisant, mais même pour un site de base, vous avez besoin d'un peu de HTML car c'est la seule chose qu'un navigateur comprend réellement pour afficher du contenu. Vous pouvez en quelque sorte vous en sortir sans connaître JavaScript, mais cela rendrait votre site beaucoup moins convivial car vous auriez besoin de recharger les pages chaque fois que vous souhaitez mettre à jour quoi que ce soit, vous perdriez également un outil très utile pour pirater un site ensemble et traiter les problèmes de compatibilité du navigateur et les lacunes CSS.

Vous êtes un peu inquiet de la façon dont les choses changent dans le développement Web, JavaScript n'a vraiment pas changé depuis sa mise en œuvre, il n'y a vraiment qu'un seul cadre JQuery à connaître, ce qui rend JavaScript beaucoup plus agréable à travailler. La plupart des autres choses qui changent rapidement sont vraiment la saveur du mois et ne sont pas vraiment nécessaires pour être connues

Ryathal
la source
0

Il existe des cadres d'application Web qui résument HTML et JavaScript, mais honnêtement, le remède est souvent pire que la maladie. (par exemple, Google Web Toolkit).

Faites-vous plaisir cependant et découvrez jQuery, CoffeeScript et / ou d'autres cadres javascript pour épargner certains des détails les plus fastidieux. De même, envisagez d'utiliser quelque chose comme Haml ou HamlPy pour travailler avec une version plus agréable de HTML.

Steve Bennett
la source
-2

Le HTML est le langage du Web, vous devrez donc le connaître un peu.

Javascript pas tellement ... vous pouvez aussi utiliser PHP, etc. Javascript n'est pas nécessaire à 100%.

Si vous créez un site Web entièrement, je recommanderais certainement Javascript, car il est pris en charge par pratiquement tous les navigateurs et conservera la compatibilité entre les différents programmes de navigation.

Mais si vous créez simplement des applications Web, cela s'applique beaucoup moins que si vous créez un site Web.

leslar Bonar
la source
-2

Connaître Javascript est un plus car il vous aide à créer des applications Web. Je pense que HTML est le meilleur pour avoir une bonne connaissance solide et HTML5 est agréable car il s'intègre bien avec CSS3 et JavaScript. Je recommanderais de parcourir les cours de Microsoft Virtual Academy.

Ils ont plus de 200 options de cours différentes et sont tous gratuits et dirigés par des experts. J'ai personnellement profité de leur cours sur la formation au développement d'applications avec HTML5. Bonne chance!

Jessie Jones
la source
-3

Dans une réponse courte OUI. Mais, voici pourquoi HTML est la structure de tout le Web et JS est l'interaction du Web. Je sais que vous avez probablement beaucoup entendu cela, mais il est très important de le savoir. Certains frameworks vous permettent de ne pas utiliser (ou de ne pas utiliser beaucoup) de HTML et JS mais, ce sont les bases du web. Si vous ne voulez pas apprendre le code, embauchez quelqu'un. Et je sais aussi que ce n'était pas dans votre question mais, j'ai fait cette erreur en essayant de faire les Twitters et les Gmail auxquels j'ai pensé sans connaître aucun code et juste googler un tutoriel.

Eh bien, bonne chance!

WebMaster
la source
1
Cette question a déjà 10 réponses, il n'en fallait pas une onzième énonçant les mêmes choses dans des mots différents. Veuillez ne pas ajouter de réponses à des questions auxquelles vous avez déjà répondu, à moins que vous n'ayez quelque chose de complètement nouveau à dire.
Martijn Pieters