Search code examples
webstructureserverfrontendbackend

web development concepts frontend backend


I am quiet new developing.... and I'm not quiet understanding everything.

So, for web development you have:

*STRUCTURE:

  -HTML
  -CSS
  -XML
   -For the structure we can use frameworks as bootstrap, foundation...

*FRONT-END LANGUAGES (client-side):

   -javascript
   -jquery
   -ajax
   -flash
   -angularJS

*FRONT-END LANGUAGES (server-side):

   -ASP.net
   -Perl
   -PHP
   -Java
   -Python
   -Ruby

*SERVER (where we host our databases):

    -Apache

*DATABASES:

  -Oracle
  -MySQL
  -Firebird

*CMS (to publish the web): - Wordpress - Joomla

Is it alright? So then..... where should I include DOM....and SEO..?

I don't have this clear at all, so if anyone can explain it to me please.... in a logic way though, because I read a lot about all this concepts but I don't know how to structure them around web development.

Thank you guys!!!!!


Solution

  • For a client-server architecture, you need to have a client side app (frontend, usually a browser), a server side app (backend), and you also need to have a way for them to communicate.

    The backend can also connect to a database (dbms) for data storage.

    The database server can reside in the same machine as the server side app, or in another machine. In short, the frontend communicates with the backend, and the backend communicates with the dbms.

    Html, css & javascript is what you'll be using to program the frontend (web browser).

    java/php/asp/javascript are what you could be using to program the backend (apache+php / tomcat) (you can even use javascript if you're using node.js as the backend), html querystring/html form/xml/json is the way for both sides to communicate, oracle/postgresql/mysql is the dbms.

    Ajax is just a technique of using javascript & xml (or json for AJAJ) to perform an async request from the frontend to the backend.

    Frameworks & libraries exist for frontend & backend which help to simplify the programming of each end. Angular is one of the frontend frameworks, and jquery is one of the frontend libraries.

    DOM is a way for javascript to access & modify your html document at the front end, but note that some frameworks such as react use an internal DOM.

    While the above are what you need to create a web app, CMS itself is a kind of web app, so if all you need is just publishing some content in the web, you don't need to go through the trouble of learning all the stuffs above, and just instead learn how to use a CMS. Note however, that many CMS require programming or plugins to provide extra functionality.

    SEO is a collection of techniques to increase the chance of your website showing up at the first page of a search result, which is applicable regardless of whether you build your own web app or using a CMS.

    Hope that helps :)