Full Stack Development Unit 1
Full Stack Development Unit 1
UNIT 1
BASICS OF FULL STACK
Syllabus
In addition to mastering HTML and CSS, he/she also knows how to:
The back end portion is built by using some libraries, frameworks, and
languages which are discussed below:
PHP: PHP is a server-side scripting language designed specifically
for web development. Since, PHP code executed on server side so
it is called server side scripting language.
C++ It is a general purpose programming language and widely
used now a days for competitive programming. It is also used as
backend language.
Java: Java is one of the most popular and widely used
programming language and platform. It is highly scalable. Java
components are easily available.
Python: Python is a programming language that lets you work
quickly and integrate systems more efficiently.
JavaScript: Javascript can be used as both (front end and back
end) programming languages.
Node.js: Node.js is an open source and cross-platform runtime
environment for executing JavaScript code outside of a browser.
Advantages of Frameworks:
Efficiency
Security
Expense
Support
Disadvantages of Frameworks :
You learn the framework, not the language
Restriction
Code is public
WEB USER :
Web User is a person with a user ID on the System who uses the Software
sporadically (by triggering twenty or fewer Invocations in each calendar month) and
who Customer identifies in advance in the System as a Web User. Activity by a Web
User will be counted as Invocations and not as a User. The number of Users and
Invocations will be measured each calendar month. A System tracks only actual use
of the Software, so a person who has a user id on the System but does not use the
Software in a month will not be counted as a User for that month
BROWSER :
Alternatively called a web browser or Internet browser, a browser is
a software program to present and explore content on the World Wide
Web. These pieces of content, including pictures, videos, and web pages,
are connected using hyperlinks and classified with URIs (Uniform
Resource Identifiers). This page is an example of a web page that can be
viewed using a browser.
WEB BROWSER :
A web server is software and hardware that uses HTTP (Hypertext Transfer
Protocol) and other protocols to respond to client requests made over the World
Wide Web. The main job of a web server is to display website content through
storing, processing and delivering webpages to users.
When a web browser, like Google Chrome or Firefox, needs a file that's
hosted on a web server, the browser will request the file by HTTP. When
the request is received by the web server, the HTTP server will accept the
request, find the content and send it back to the browser through HTTP.
\
Thus, you can consider external data as a service. Based on the underlying data, you
can categorize backend services as Web Services, Database Services, Java
Services and Security Services. Each service is converted to a RESTful service and is
consumed through their respective REST APIs.
What do these services include ?
Database management:
Hosting:
User authentication:
Cloud Storage :
Push notifications:
Remote updating
MVC Architecture :
Model
The Model component corresponds to all the data-related logic that the user works
with. This can represent either the data that is being transferred between the View and
Controller components or any other business logic-related data. For example, a
Customer object will retrieve the customer information from the database, manipulate
it and update it data back to the database or use it to render data.
View
The View component is used for all the UI logic of the application. For example, the
Customer view will include all the UI components such as text boxes, dropdowns, etc.
that the final user interacts with.
Controller
Controllers act as an interface between Model and View components to process all
the business logic and incoming requests, manipulate data using the Model
component and interact with the Views to render the final output. For example, the
Customer controller will handle all the interactions and inputs from the Customer View
and update the database using the Customer Model. The same controller will be used
to view the Customer data
ASP.NET MVC :
ASP.NET supports three major development models: Web Pages, Web Forms and
MVC (Model View Controller). ASP.NET MVC framework is a lightweight, highly
testable presentation framework that is integrated with the existing ASP.NET features,
such as master pages, authentication, etc. Within .NET, this framework is defined in
the System.Web.Mvc assembly. The latest version of the MVC Framework is 5.0. We
use Visual Studio to create ASP.NET MVC applications which can be added as a
template in Visual Studio.
Popular Stacks:
MEAN Stack: MongoDB, Express, AngularJS and Node.js.
MERN Stack: MongoDB, Express, ReactJS and Node.js
Django Stack: Django, python and MySQL as Database.
Rails or Ruby on Rails: Uses Ruby, PHP and MySQL.
LAMP Stack: Linux, Apache, MySQL and PHP.
Before the days of ubiquitous SaaS products and services, tech stacks were
relatively simple: there was LAMP (Linux, Apache, MySQL, PHP), an older
standard for building PHP-based web applications, and non-open source
alternatives like WAMP (for those that preferred Windows to Linux).
Here are the basic categories along with some popular options for each:
Express:
Express.js is a small framework that works on top of Node.js web server functionality
to simplify its APIs and add helpful new features. It makes it easier to organize your
application’s functionality with middleware and routing. It adds helpful utilities to
Node.js HTTP objects and facilitates the rendering of dynamic HTTP objects.
Angular :
Angular (also referred to as "Angular 2+")[4] is a TypeScript-based, free and open-source single-
page web application framework led by the Angular Team at Google and by a community of
individuals and corporations. Angular is a complete rewrite from the same team that
built AngularJS.
Node.js lets developers use JavaScript to write command line tools and for server-
side scripting. The ability to run JavaScript code on the server is often used to
generate dynamic web page content before the page is sent to the user's web
browser. Consequently, Node.js represents a "JavaScript everywhere"
paradigm,[6] unifying web-application development around a single programming
language, as opposed to using different languages for the server- versus client-side
programming.
Mongo DB :
React :
Written in JavaScript