0% found this document useful (0 votes)
5 views13 pages

Python Fullstack 2023

The document outlines a comprehensive curriculum for a Python Full Stack development course, covering essential topics such as HTML, CSS, JavaScript, React, and Django. It includes detailed sections on web development fundamentals, JavaScript programming, React component management, and Django framework functionalities. The course also emphasizes practical projects and exercises to reinforce learning and application of concepts.

Uploaded by

naresh maddu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views13 pages

Python Fullstack 2023

The document outlines a comprehensive curriculum for a Python Full Stack development course, covering essential topics such as HTML, CSS, JavaScript, React, and Django. It includes detailed sections on web development fundamentals, JavaScript programming, React component management, and Django framework functionalities. The course also emphasizes practical projects and exercises to reinforce learning and application of concepts.

Uploaded by

naresh maddu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

PYTHON FULL STACK

HTML & CSS


What is HTML
HTML Document Structure
Basic HTML Tags
Basic HTML Attributes & usage
Introduction to CSS
What is CSS and why is it important?
CSS Syntax:
CSS rule structure (selector, property, value)
CSS Selectors:
Element selectors
Class selectors
ID selectors
CSS Properties:
Common properties for text (e.g., color, font-size)
Properties for backgrounds (e.g., background-color, background-image)
Box model properties (e.g., margin, padding, border)
CSS Box Model:
Understanding the box model (content, padding, border, margin)
CSS Layout:
Block-level vs. inline elements
Controlling element positioning (e.g., display, position, float)
Styling Text:
Changing font properties (e.g., font-family, font-size, font-weight)
Setting text color and alignment
Styling Links:
Styling link states (e.g., :hover, :visited)
Removing default link underlines
Backgrounds and Borders:
Adding background colors and images
Styling borders
Basic Layout Techniques:
Centering elements horizontally and vertically
Creating simple two-column layouts
Responsive Design Basics:
Setting viewport meta tag
Using relative units (e.g., %, em, rem)
Introduction to CSS Comments

Java Script
Introduction to JavaScript
History and evolution
Role in web development

Basics of JavaScript
Variables, data types, and operators
Control structures: if statements, loops

Functions and Scope

Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
Declaring and invoking functions
Function parameters and return values
Lexical scope and closures

Arrays and Objects


Creating and manipulating arrays
Working with objects and key-value pairs
Iteration and array/object methods

DOM Manipulation and Events


Understanding the Document Object Model (DOM)
Selecting and modifying DOM elements
Changing CSS and attributes
Handling events and event delegation

Intermediate JavaScript:
Asynchronous JavaScript
Callback functions
Promises and async/await
Handling errors in asynchronous code
ES6+ Features

React
Introduction
Why Do Front-End Frameworks Exist?
React vs vanilla JavaScript
What is React?
Setting Up Our Development Environment
Pure React
A Quick Look at React's Official Documentation
Setting up a New React Project: The Options
Setting Up a Project with Create-React-App

Working with Components, propsand JSX


Rendering the Root Component and Strict Mode
Before We Start Coding: Debugging
Components as Building Blocks
What is JSX?
Creating More Components
JavaScript Logic in Components
Separation of Concerns
Styling React Applications
Passing and Receiving Props
Props, Immutability, and One-Way Data Flow
The Rules of JSX
Rendering Lists
Conditional Rendering With &&
Conditional Rendering with Ternaries
Conditional Rendering with Multiple Returns
Extracting JSX into a New Component
DE structuring Props
React Fragments
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
Setting Classes and Text Conditionally

State, Events and Forms


Handling Events the React Way
What is State in React?
Creating a State Variable With useState
Don't Set State Manually!
The Mechanics of State
Adding another Piece of State
React Developer Tools
Updating State Based on Current State
More Thoughts about State + State Guidelines
A Vanilla JavaScript Implementation
Starting a New Project: The "Far Away" Travel List
Building the Layout
Rendering the Items List
Building a Form and Handling Submissions
Controlled Elements
State vs. Props

Thinking in React: State Management


What is "Thinking in React"?
Fundamentals of State Management
Thinking About State and Lifting State Up
Reviewing "Lifting Up State"
Deleting an Item: More Child-to-Parent Communication!
Updating an Item: Complex Immutable Data Operation
Derived State
Calculating Statistics as Derived State
Sorting Items
Clearing the List
Moving Components into Separate Files
The "children" Prop: Making a Reusable Button
More Reusability With the "children" Prop

Practice Project
Project Setup
Building the Static App: List of Friends
Building the Static App: Forms
Displaying the New Friend Form
Adding a New Friend
Selecting a Friend
Creating Controlled Elements
Splitting a Bill

Components, Composition and Reusability


Setting Up the "use Popcorn" Project
How to Split a UI into Components
Splitting Components in Practice
Component Categories
Prop Drilling
Component Composition
Fixing Prop Drilling With Composition (And Building a Layout)

Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
Using Composition to Make a Reusable Box
Passing Elements as Props (Alternative to children)
Building a Reusable Star Rating Component
Creating the Stars
Handling Hover Events
Props as a Component API
Improving Reusability with Props
Prop Types

Http & Observable


Methods in Http Client Module
Integrating Backend REST API Call

Middleware- Server Side Programming-Python

Core Python
Setting up and running Python
• Distributions-python.org, anaconda python
• Shells-python, Jupyter,
• IDES-Pycharm, spyder
• Python 3 syntax
• First program-'HelloWorld!'
• Interpretation and .pyc, .pyo files

Introduction
Values and variables
Python data types
type(), id(), sys. getsizeof()
Python labeling system
Object pooling
Conversion functions
Console input, output
Operators in python
Arithmetic operators
Relational operators
Logical operators
Assignment operators
Bitwise operators
Membership operators
Identity operators
Ternary Operator

Strings
Define a string - Multiple quotes and Multiple lines
String functions
String slicing - start, end & step
Negative indexing
Built-in functions
Type conversions
int()
float()
bool()
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
str()
complex()
Interview questions
Exercise Programs
Summary

Control structures:
• if statement
• if - else statement
• if - elif statement
• Nest if-else
• Multiple if
• Which control structure to choose?
• Looping statements
o while loop
o for loop
■ range()
■ Iterator and generator Introduction
o for - else
o When to use for-else ? Interview Questions
• Exercise Programs
• Summary

Data structures
• List
o Introduction to List
o Purpose of a List
o Iterating through a List
o List slicing, -ve indexing
o Internals of list
o List Operations
o Searching for an element
■ In and count()
o Adding an element
■ append()
■ insert()
o Removing an element
■ remove()
■ pop()
o Merging two lists
■ + operator
■ extend()
o Ordering a list
■ sort()
■ reverse()
o Finding index of an element -index()
o List of lists
o Comparing lists
• Tuple
o Introduction of Tuple
o Tuple Slicing
o -ve indexing
o Iterating through a Tuple

Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
o List of tuples Vs Tuple of Lists
o Purpose of a tuple

• List Vs Tuple- Aninter viewer's question


• Set
o Introduction of set
o How to remove duplicates in list?
o How set removes duplicates?
o Set functions
■ Searching for an element
■ In - The fastest
■ Adding an element
■ add()
■ Removing an element
■ remove()
■ discard()
■ pop()
o Relation between two sets
■ intersection()
■ union()
■ difference()
■ isdisjoint()
■ issubset()
■ issuperset()
o Merging two sets
■ update()
• Sets are hashable but Lists or unhashable
• Set Use-Cases
• Dictionary
o Introduction of Dictionary -Associative data structure
o Creating a Dictionary
o Adding elements to Dictionary
o Deleting key value pair
o Updating / extending a Dictionary
o Iterating through a Dictionary
o Tuple unpacking method
o Converting list/tuples of tuples/lists into Dictionary
o Converting Dictionary to List of tuples
o Lambda introduction
o Sorting List of tuples and dictionaries
o Finding max(), min() in a dict
o Wherever you go, dictionary follows you!
o Iterator using iter() and next()
• Packing and Unpacking
o Swapping two values
o List packing and Unpacking
o Tuple packing and Unpacking
o String packing and Unpacking
Set and Unpacking

Functions
• Purpose of a function
• Defining a function
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
• Calling a function
• Function parameter passing
o Formal arguments
o Actual arguments
o Positional arguments
o Keyword arguments
o Variable arguments
o Variable keyword arguments
o Use-Case *args, **kwargs
• Function call stack
o locals()
o globals()
o Stackframe
• Call-by-object-reference
o Shallow copy - copy.copy()
o Deep copy - copy.deepcopy()

Decorators and Generators


• Passing one function to another function
• Defining one function within another function
• Returning a function from another function
• Passing a function to another function along with its arguments
• Call-back functions and delegation
• Decorators
o Creating decorators
o Multiple decorators
o Use case - TimeIt
• Generator
o Creating custom generators
o Use Case - lazy evaluation

Modules
• Python Code Files
• Importing functions from another file
• name: Preventing unwanted code execution
• Importing from a folder
• Folders Vs Packages
• init.py
• Namespace
• all
• Import *
• Private global variables and functions
• butiltins
• Recursive imports
• Use Case: Project Structure
Comprehensions
• List comprehension
• Dictionary comprehension
• enumerate
• Zip and unzip

Functional programming
• Procedural vs Functional
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
• Pure functions
• Map()
• Reduce()
• Filter()
• Lambdas
• Loop vs Comprehension vs Map

File - IO
• Creating file
• File reading
• File writing
• File modes
• Line by line file reading
• Writing multiple lines
• seek()
• tell()
• Binary files
o Pickling
• Use Case - Cleaning text

Exception Handling
• Purpose of Exception Handling
• try block
• except block
• Else block
• finally block
• Built-in exceptions
• Order of' except statements
• Exception - mother of all exceptions
• Writing Custom exceptions
• Stack Unwinding
• Use Case - finally
• Interview Questions
• Summary

Useful modules
• datetime
• time
• pytz
• sys
• os
• random

Serialization JSON
• Introduction to Serialization
• json parsing and construction - json, simple json
• Interview Questions
• Exercise Programs
• Summary

• Introduction to Django
• - What is Django?
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
• - MVC and MVT architectural patterns
• - Setting up a development environment
• - Creating a new Django project
• - Understanding project structure

• Django Models and Databases


• - Introduction to Django models
• - Defining models and fields
• - Creating database tables using migrations
• - Querying the database using the Django ORM
• - Model relationships (OneToOne, ForeignKey, ManyToMany)
• - Database schema management

• Views and Templates


• - Views and URL routing
• - Writing view functions and class-based views
• - Mapping URLs to views
• - Introduction to templates
• - Using template tags and filters
• - Rendering dynamic content with templates

• Forms and User Input


• - Creating HTML forms using Django forms
• - Handling form submissions
• - Form validation and error handling
• - Model forms vs. regular forms
• - Uploading files with forms
• - Customizing form behavior and appearance

• User Authentication and Authorization


• - User authentication and the built-in User model
• - User registration and login
• - Password management and security
• - Permissions and user authorization
• - Implementing user roles and groups

• Django REST Framework


• - Introduction to RESTful APIs
• - Setting up Django REST Framework
• - Creating API views and serializers
• - Handling CRUD operations through APIs
• - Authentication and permissions for APIs
• - Versioning and documentation of APIs

• Frontend Integration
• - Integrating Django with frontend frameworks (e.g., React, Vue)
• - Using Django's built-in template engine with frontend
• - REST API consumption from frontend
• - Building dynamic web applications
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
• - Managing static files (CSS, JS, images)

• Advanced Topics
• - Middleware and request/response processing
• - Signals and event-driven programming
• - Caching to improve performance
• - Background tasks with Celery
• - Internationalization and localization
• - Testing Django applications
• - Security best practices

• Deployment and Scaling


• - Preparing for deployment: configuration and settings
• - Deploying Django on various hosting platforms (e.g., Heroku, AWS, DigitalOcean)
• - Setting up production database and media storage
• - Scaling strategies for high-traffic applications
• - Continuous integration and continuous deployment (CI/CD)
• - Monitoring, logging, and error tracking

• Django ORM and Database Management


• Review of Django ORM concepts
• Advanced querying and filtering
• Aggregation and annotation
• Working with model relationships in-depth
• Handling complex queries
• Using raw SQL queries with the ORM (when needed)
• Performance optimization techniques for databases

• Project Work
• - Guided project development to apply concepts learned
• - Students build a real-world Django application
• - Focus on best practices, code structure, and collaboration
• - Instructor-led code reviews and feedback sessions

Unit testing
• Purpose of Unit testing
• Unittest2 module
• Test case
• Test Suit
• assert()-using Assertions
• Coverage module -Code coverage
• Mocking-faking
• Profiling
• Interview Questions
• Exercise Programs
• Summary

Logging
• Purpose of logging
• Logging levels
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
• Types of logging
• Logging format
• Logging Handlers
• Disadvantages of excessive logging
• Custom loggers
• Interview Questions
• Exercise Programs
• Summary

Backend Programming-SQL

Introduction to Relational Databases


Understanding Relational Databases
Overview of SQL and Its Role
Common Relational Database Management Systems (RDBMS)
Primary Keys, Foreign Keys, and Relationships

SQL Basics
SQL Syntax and Structure
Retrieving Data with SELECT Statements
Filtering Data with WHERE Clause
Sorting Data with ORDER BY
Limiting Results with LIMIT and OFFSET
Using DISTINCT to Eliminate Duplicates

Data Manipulation
Inserting Data with INSERT INTO
Modifying Data with UPDATE
Deleting Data with DELETE
Using Transactions for Data Consistency

Creating and Modifying Database Tables


Creating Databases and Tables
Specifying Data Types
Adding, Modifying, and Deleting Columns
Setting Constraints (e.g., NOT NULL, UNIQUE)

Querying Multiple Tables


Understanding Joins (INNER, LEFT, RIGHT, FULL)
Writing JOIN Queries to Combine Data
Working with Subqueries for Complex Queries
Using UNION and UNION ALL for Combining Results
Employing EXISTS and NOT EXISTS for Conditional Logic

Aggregating Data
Using Aggregate Functions (e.g., COUNT, SUM, AVG, MAX, MIN)
Grouping Data with GROUP BY
Filtering Groups with HAVING Clause
Working with Date and Time Functions
Calculating Derived Metrics

Database Design Principles


Normalization and Denormalization
Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
Primary Key and Indexing Strategies
Referential Integrity and Constraints
Data Modeling Best Practices
Handling Database Schema Changes

Advanced SQL Topics (Optional)


Window Functions for Analytical Queries
Common Table Expressions (CTEs)
Stored Procedures and Triggers
Views for Data Abstraction
Performance Optimization and Indexing
Securing SQL Databases (Permissions and Roles)

Security Protocols- Authentication & Authorisation- OAUTH2.0


What is Authentication?
What is Authorisation?
What is Oauth?

Resource
Owner/User Client
Authorization
Server Resource
Server Oauth 2.0 Flow

Client
ID Client Secret
Authorization server
URLAccess token
URL Resource server URL
OAauth 2.0 Implementation with Python
SecurityProtocols-Authentication&Authorisation-OAUTH2.0

Cloud-Containers & Orchestrators-Docker &Kubernities


Why use Docker?
What is Docker?
Docker for Windows
Installing Docker on Windows
What is Container?
Container Life cycle

Starting, Stopping & Restarting Containers


Executing commands in running containers
Allocating Infra to Containers - CPU, Memory etc
Creating a Docker Image
Docker base image

Build Images for Application and Deploy


Orchestration
Deploy to Kubernetes
PODS
Replication Controllers

Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789
PYTHON FULL STACK
Site Reliability Engineering-SRE- Prometheus & Grafana
What is SRE?
What are SRE principles?
What is Error budget?
What is Throughput?
Wha tis SLI, SLO, SLA?
What is RPS?
What is Monitoring?
What is Tracing?
What is time series data?
How to store time series data on prometheus?
What are Metrics, Spans & Traces?
How to visualize Metrics & Traces on Grafana?

DevOps
Continuous Deployment and Continuous Integration {CI/CD} pipelines
What is Jenkins?
Jenkins Architecture
Understanding Jenkins Pipeline
Parameterized Jenkisfile
What is Groovy?Groovy basics
Creating Jenkins jobsRunning Jenkins jobs
Build deployments using Jenkins
Checkout project from Bitbucket from Jenkins

Artifactory
What is Artifactory?
What is nexus?
Installing and configuration
Integration with Jenkins

Cloud Repository
What is repository?
What is Git?
What is Bit bucket
How to create repo in Bitbucket
How to create and manage Branches in Bitbucket
How to checkout source code from bitbucket using Git bash
How to Clone bitbucket repoHow to commit to bitbucket
How to perform git operations on bitbucket

JIRA
What is JIRA?
What is Agile?
How to use JIRA as a Agile tool
How to use JIRA for Issue tracking

Flat No: 212, 2nd Floor, Annapurna Block, Aditya Enclave, Ameerpet, Hyd And #101, Sree Swathi Anukar.
E-mail: [email protected] www.kellytechno.com Ph & Whatsapp: +91 998 570 6789, Online: 001 973 780 6789

You might also like