Full Stack Development with MongoDB: Covers Backend, Frontend, APIs, and Mobile App Development using PHP, NodeJS, ExpressJS, Python and React Native
By Manu Sharma
()
About this ebook
Starting with the basics, the book will assist any programmer and developer and those who deal with NodeJS, PHP, Python and React Native in setting up their working environment with MongoDB. Various full-stack configurations of libraries and frameworks for mobile and web applications are covered in length in this book. REST API, CRUD operations are also explained in a detailed manner. The skills you learn to use PHP, ExpressJS, NodeJS, Python and React Native become increasingly solid as time goes on.
Everything in this book has been explained so that, once you begin working on the practical development while reading it, you will be more experienced in software development, both in web and mobile technologies, when you finish reading it.
Related to Full Stack Development with MongoDB
Related ebooks
JavaScript for Modern Web Development: Building a Web Application Using HTML, CSS, and JavaScript Rating: 0 out of 5 stars0 ratingsExpress Web Application Development Rating: 3 out of 5 stars3/5React Components Rating: 0 out of 5 stars0 ratingsWeb Development with MongoDB and Node.js Rating: 0 out of 5 stars0 ratingsASP.NET Core 3 and React: Hands-On full stack web development using ASP.NET Core, React, and TypeScript 3 Rating: 0 out of 5 stars0 ratingsNode Web Development, Second Edition Rating: 0 out of 5 stars0 ratingsMongoose for Application Development Rating: 5 out of 5 stars5/5Full Stack Development Explained: From Frontend to Backend Rating: 0 out of 5 stars0 ratingsMERN Stack Course Book Rating: 0 out of 5 stars0 ratingsAngular Services Rating: 0 out of 5 stars0 ratingsInstant MongoDB Rating: 0 out of 5 stars0 ratingsNode.js By Example Rating: 2 out of 5 stars2/5Wb Development full course : from zero to web hero Rating: 0 out of 5 stars0 ratingsLearning Single-page Web Application Development Rating: 0 out of 5 stars0 ratingsBuilding Scalable Apps with Redis and Node.js Rating: 0 out of 5 stars0 ratingsVue.js 2 Cookbook Rating: 0 out of 5 stars0 ratingsNext.js: Navigating the Future of Web Development Rating: 0 out of 5 stars0 ratingsSpring Boot 3.0 Cookbook: Proven recipes for building modern and robust Java web applications with Spring Boot Rating: 0 out of 5 stars0 ratingsJavaScript: Tips and Tricks to Programming Code with Javascript: JavaScript Computer Programming, #2 Rating: 0 out of 5 stars0 ratingsBuilding Scalable Web Apps with Node.js and Express Rating: 0 out of 5 stars0 ratingsReact Design Patterns and Best Practices Rating: 0 out of 5 stars0 ratingsRESTful Web API Design with Node.js - Second Edition Rating: 1 out of 5 stars1/5JavaScript and JSON Essentials Rating: 5 out of 5 stars5/5
Computers For You
Mastering ChatGPT: 21 Prompts Templates for Effortless Writing Rating: 4 out of 5 stars4/5The ChatGPT Millionaire Handbook: Make Money Online With the Power of AI Technology Rating: 4 out of 5 stars4/5Creating Online Courses with ChatGPT | A Step-by-Step Guide with Prompt Templates Rating: 4 out of 5 stars4/5Elon Musk Rating: 4 out of 5 stars4/5CompTIA Security+ Get Certified Get Ahead: SY0-701 Study Guide Rating: 5 out of 5 stars5/5CompTIA IT Fundamentals (ITF+) Study Guide: Exam FC0-U61 Rating: 0 out of 5 stars0 ratingsHow to Create Cpn Numbers the Right way: A Step by Step Guide to Creating cpn Numbers Legally Rating: 4 out of 5 stars4/5Deep Search: How to Explore the Internet More Effectively Rating: 5 out of 5 stars5/5Slenderman: Online Obsession, Mental Illness, and the Violent Crime of Two Midwestern Girls Rating: 4 out of 5 stars4/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5Computer Science I Essentials Rating: 5 out of 5 stars5/5Data Analytics for Beginners: Introduction to Data Analytics Rating: 4 out of 5 stars4/5Alan Turing: The Enigma: The Book That Inspired the Film The Imitation Game - Updated Edition Rating: 4 out of 5 stars4/5Technical Writing For Dummies Rating: 0 out of 5 stars0 ratingsStandard Deviations: Flawed Assumptions, Tortured Data, and Other Ways to Lie with Statistics Rating: 4 out of 5 stars4/5Excel 101: A Beginner's & Intermediate's Guide for Mastering the Quintessence of Microsoft Excel (2010-2019 & 365) in no time! Rating: 0 out of 5 stars0 ratingsThe Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution Rating: 4 out of 5 stars4/5Tor and the Dark Art of Anonymity Rating: 5 out of 5 stars5/5Learning the Chess Openings Rating: 5 out of 5 stars5/5Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are Rating: 4 out of 5 stars4/5The Professional Voiceover Handbook: Voiceover training, #1 Rating: 5 out of 5 stars5/5A Brief History of Artificial Intelligence: What It Is, Where We Are, and Where We Are Going Rating: 4 out of 5 stars4/5Get Into UX: A foolproof guide to getting your first user experience job Rating: 4 out of 5 stars4/5Fundamentals of Programming: Using Python Rating: 5 out of 5 stars5/5
Reviews for Full Stack Development with MongoDB
0 ratings0 reviews
Book preview
Full Stack Development with MongoDB - Manu Sharma
CHAPTER 1
Client and Server- Side Concepts and Introduction to MongoDB Drivers
In the real-world scenario, when we request any information over the network or internet, then the client and server interact with each other to pass the requested information. In this chapter, you will be learning the concepts related to client-side and server-side and how the interactions happen between them. In the later sections of this chapter, we will be covering these concepts in relation to the databases like MongoDB, and we will learn how the dynamic sites which use the databases like MongoDB work.
Structure
In this chapter, we will discuss the following topics:
Client and server-side concepts
Client and server-side DB concepts
Introduction to MongoDB drivers
Objectives
After studying this chapter, the reader will be able to understand the client-side and server-side concepts and learn the difference between the client and server. The reader will also learn the client- and server-side concepts in which a database like MongoDB is involved. This chapter will also cover the MongoDB drivers and their uses, the programming languages that are currently supported by MongoDB, and the MongoDB community availability of drivers.
Client and server-side concepts
Before we move on to the programming part of this chapter and the book, let us define a few concepts related to the client and server.
Clients are those who send the requests to the server to perform specific tasks. The server receives the commands sent by the clients and performs the tasks. Once the tasks are executed and completed, the server sends the results back to the client.
There are many different types of clients as well as servers. Each of them performs specific tasks. For example, there are Web servers and Web clients. A simple example of a Web server is Apache HTTP Web server, Microsoft IIS Web server, or NGINX Web server.
Similarly, we have Web clients, which we use every day on our PCs, laptops, mobiles, tablets, and so on. So, we might be able to realize that they are Web browsers such as Google Chrome, Microsoft Edge, Mozilla Firefox, Mac Safari, Opera, and many more.
So what happens here? You will type some URL of a website that you would like to visit, like "https://bpbonline.com", which is one of the best places to buy online IT and technology books. When you type the URL in the browser, the browser acts as a client and sends this request to the Web server on which the website of BPB Publication is running. The Web server accepts this request from the client and executes it at its end, and after that, it passes the request back as an HTML page that the browser understands easily, as shown in figure 1.1.
Figure 1.1: Client–server architecture
Now, let us understand this example in a more interesting manner.
So, you visit the BPB Publication Online website by typing the URL "https://bpbonline.com" on your browser. Now, you want to purchase a book, and you go to the shopping cart of the website, pay the amount, and you are done. During all these steps, your client (who is your browser) and the server (on which the BPB Publication Online website is hosted) have been communicating with each other. This is the one side of the coin.
Now, let us understand what could be happening on the server-side. As you know, e-commerce websites and portals like BPB Publication Online
run with some sophisticated technologies, and those websites are dynamic. Here, dynamic means that the content and the features on these websites keep changing as new book titles arrive every week or every day. These websites update their content instantly. You are lucky sometimes when you reach these websites during a discount period or promotional offer.
A few questions here are how do these dynamic things happen? Is something happening at only the Web server end?
The answer is No! The Web server cannot alone do such dynamic things without the help of other technologies. The internet consists of different types of technology. Each website is unique in terms of its technology stack.
To run these dynamic portals and websites, server-side programming languages such as PHP, Node JS (a server-side JavaScript environment), and Python are used. There are many other server-side programming languages available such as Java, C#, ASP.NET (.NET framework), and Ruby on Rails (RoR), but for this chapter and the upcoming chapters, we will be using examples from programming languages such as PHP, JavaScript (Node JS), and Python only.
Where was MongoDB until now? Few of us are now thinking about where MongoDB or any other database fits in the client-server picture.
Let us now understand the client and server concept in terms of database.
Client and server-side DB concepts
In the previous section, we have understood what client and server are in general terms. Now, let us move one step ahead and understand the concept of client and server where the database like MongoDB acts like a server.
MongoDB is a database server, as you all know. It also executes the requests that it receives from the clients. As a browser, it acts as a Web client for a Web server. We have MongoDB clients like MongoDB Compass, which is the official client for MongoDB, and a few others like Robo 3T that are helpful in connecting to the MongoDB server.
Whenever you install MongoDB on any OS, you need some client to connect and talk to the MongoDB Server. So, MongoDB client is a program that helps us to connect and perform various operations like the execution of the MongoDB queries and DB