V
V
Vladimir Dabarov2017-11-01 11:05:37
Backend
Vladimir Dabarov, 2017-11-01 11:05:37

What do you need to learn to develop modern web applications?

Short to the point. They offered to develop web applications and the first thing that is required is hosting screenshots for one program. The frontend should presumably be in Angular (or whatever). There is a fairly large experience in C ++ and knowledge of most common programming languages. In this regard, the question is - what else do you need to know?
Now more.
I have been programming in C++ for about eight years, before that I was in Delphi, I developed both regular applications and libraries, as well as network ones. I also studied other programming languages ​​and used them in some cases: Java, Perl, Php, Ruby, JavaScript, etc., as well as html, css and sql. I even wrote simple sites in php, and one more serious site in Perl. But these are sites with static pages, i.e. each time a new page is loaded from the server. Did some work with jQuery and ajax. Tried to learn Angular and Vue.js, even wrote something working. Now I can’t put it all together and get off the ground to create a full-fledged application.
If I understand correctly, Angular, Vue and other frameworks are just frontend. Wherever you go, everywhere they talk about web development as the development of the frontend, and it is certainly connected with Node.js (in order to write something in angular, there is no way without it). How the frontend is connected with Node.js - I don’t understand, because Node.js is essentially a way to run JS outside of the browser. If I want to run an application in a browser, then why do I need a node? It all puts me in a stupor, I see only contradictions. Examples, incl. on the angular site and on the vue site (react also considered) include only the frontend, again.
If you look at the back-end, then it is not given attention either on the Vue site, or on the Angular site, or on others where their functionality is described. On what to write it and how to dock with the client part? Here I can only assume that the server, instead of html, should communicate with the application via json or something else. After all, the server is the basis of any network application, and first of all, you need to develop the server part. To be honest, I don’t really like JS, so I would like to limit it to a minimum and not use it on the server. I have not studied TS, but judging by the examples with Angular, you can learn it in no more than an evening. I would like to use Ruby, I really liked it.
It was not quite coherent to write, I will try to formulate the questions to which I would like to get an answer:

  1. What else needs to be studied? Or is the above knowledge sufficient?
  2. Is it possible not to use Node.js and, accordingly, npm, if JS (TS) is required only in the browser? However, testing is also necessary.
  3. What is the server in this case, how can it be implemented and can we use, for example, Ruby? How to dock it with the frontend?

And additionally: I will be grateful for links, or better books, which describe the principle of operation of modern web applications, including the client, server and protocols that connect them.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
V
Vitaly Khomenko, 2017-11-02
@dvhex

In this regard, the question is - what else do you need to know?

You need a backend anyway.
All right.
Most likely, you read articles about the front-end, because there is nothing about the back-end in them. As you know, the frontend is written in JS and many are captivated by the fact that you can raise NodeJS on the backend and create websites using one language .
You do not confuse. There are technologies that are used in the application process and there are technologies that are used in the application development process . All these Gulp, Grunt, Babel, Webpack and others are development tools. They speed up, simplify, improve the quality of work. At that time, jQuery, Angular, React are the libraries and frameworks with which the application will work.
If earlier sites were created using a couple of technologies, then modern applications can use dozens, or even hundreds of the latter. At what it can be different programming languages, libraries, frameworks, services, etc. All this is often called the "zoo" of technology.
Yes, JSON as the most common one. You need a backend framework on which you can deploy a REST API. As far as I know, most modern frameworks of modern programming languages ​​that are used for web development can do this. I can not say for sure, I work within the same language.
Definitely. Modern single page applications (SPA) consist of two separate parts - front-end and back-end. They can be created completely separately by different developers, the main thing is to agree on the data transfer format and all the nuances.
The whole beauty of the SPA is in the separation of these parts. Any of them can be replaced by another without any special consequences. One backend can serve websites, mobile applications, provide data access for third-party partner applications, all through a single API.
I don't think it's enough. You will accurately determine the tasks that your project should solve and select technologies for them. You need to focus on one thing, you won’t be able to study everything modern, there won’t be enough time.
Yes, it is quite. On the client side, for example, JS + Angular. And on the backend side, for example, PHP+Laravel. Now there are a lot of languages ​​and even more frameworks for them. Choose what is easier for you.

K
Kirill Gorelov, 2017-11-01
@Kirill-Gorelov

If you look at the back-end, then it is not given attention either on the Vue site, or on the Angular site, or on others where their functionality is described. On what to write it and how to dock with the client part?

Dude, it feels like you're confusing backend and frontend.
Backend - php, python - server side
frontend - Angular, Vue - client side
You still have a blurry idea of ​​web development. At least that's how it seemed to me. Or not blurry, but confused!)
Keep the link - https://github.com/zualex/devmap just what you love!

D
denismaster, 2017-11-01
@denismaster

Backend - ASP.NET Core \ NodeJS
Frontend - Angular 4, Vue
Node.JS on the frontend is needed to use modules and assemble everything together. The result is a set of files that is not tied to Node, intended for the browser.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question