new batches info - quality thought · deploying django to a production server j. deploying django...

12
Python Course Content QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected] START DATE : TIMINGS : DURATION : TYPE OF BATCH : FEE : FACULTY NAME : We are ready to serve Latest Testing Trends, Are you ready to learn. New Batches Info Web Development with Django Unit Testing with Python (pytest) Design Patterns

Upload: others

Post on 28-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

START DATE :

TIMINGS :

DURATION :

TYPE OF BATCH :

FEE :

FACULTY NAME :

We are ready to serve Latest Testing Trends, Are you ready to learn.

New Batches Info

Web Development with Django

Unit Testing with Python

(pytest)

Design Patterns

Page 2: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

Web Development with Django

1. Getting Started

a. Introducing Django

i. Installing Django

ii. Installing a Python Virtual Environment

iii. Setting up a database

iv. Starting a project

v. The Model-View-Controller design pattern

2. Views and URLconfs

a. Sample Django-Powered Page: Hello World

i. Your first view

ii. Your first URLconf

iii. Regular expressions

iv. A quick note about 404 errors

v. A quick note about the site root

vi. How Django processes a request

b. Dynamic Content

c. Dynamic URLs

d. Django’s pretty error pages

3. Templates

a. Template System Basics

b. Using the template system

c. Dictionaries and contexts

d. Basic template-tags and filters

e. Philosophies and limitations

f. Using templates in views

g. Template loading

h. render()

i. Template subdirectories

j. The include template tag

k. Template inheritance

4. Models

a. The "dumb" way to do database queries in views

b. Configuring the database

c. Your first app

d. Defining Models in Python

e. Basic data access

5. The Django Admin Site

a. Using the admin site

i. Start the development server

Page 3: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

ii. Enter the admin site

b. Adding your models to the admin site

c. Making fields optional

d. Customizing field labels

e. Custom model admin classes

f. Users, groups, and permissions

g. When and why to use the admin interface-and when not to

6. Forms

a. Getting data from the Request Object

i. Information about the URL

ii. Other information about the Request

iii. Information about submitted data

b. A simple form-handling example

i. Query string parameters

c. Improving our simple form-handling example

d. Simple validation

e. Making a contact form

f. Tying form objects into views

g. Changing how fields are rendered

h. Setting a maximum length

i. Setting initial values

j. Custom validation rules

k. Specifying labels

l. Customizing form design

7. Advanced Views and URL confs

a. URLconf Tips and Tricks

i. Streamlining function imports

ii. Special-Casing URLs in debug mode

iii. Named groups Preview

1. The matching/grouping algorithm

iv. What the URLconf searches against

v. Captured arguments are always strings

vi. Specifying defaults for view arguments

b. Performance

c. Error handling

d. Including other URLconfs

i. Captured parameters

e. Passing extra options to view functions

i. Passing extra options to include()

f. Reverse resolution of URLs

Page 4: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

g. Naming URL patterns

h. URL namespaces

i. Reversing namespaced URLs

ii. URL namespaces and included URLconfs

8. Advanced Templates

a. Template language review

b. Requestcontext and context processors

i. auth

ii. DEBUG

iii. i18n

iv. MEDIA

v. static

vi. csrf

vii. Request

viii. messages

c. Guidelines for writing our own context processors

d. Automatic HTML escaping

i. How to turn it off

ii. For individual variables

iii. For template blocks

iv. Automatic escaping of string literals in filter arguments

e. Inside Template loading

i. The DIRS option

ii. Loader types

1. Filesystem loader

2. App directories loader

3. Other loaders

f. Extending the template system

i. Code layout

ii. Creating a template library

g. Custom template tags and filters

i. Writing custom template filters

1. Registering custom filters

2. Template filters that expect strings

3. Filters and auto-escaping

4. Filters and time zones

ii. Writing custom template tags

1. Simple tags

2. Inclusion tags

3. Assignment tags

Page 5: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

h. Advanced custom template tags

i. A quick overview

ii. Writing the compilation function

iii. Writing the renderer

iv. Auto-escaping Considerations

v. Thread-safety Considerations

vi. Registering the tag

vii. Passing template variables to The Tag

viii. Setting a variable in the context

1. Variable scope in context

ix. Parsing until another block tag

x. Parsing until another block tag, and saving contents

9. Advanced Models

a. Related objects

i. Accessing ForeignKey values

ii. Accessing many-to-many values

b. Managers

i. Adding extra manager methods

ii. Modifying initial manager QuerySets

c. Model methods

i. Overriding predefined model methods

d. Executing raw SQL queries

e. Performing raw queries

i. Model table names

ii. Mapping query fields to model fields

iii. Index lookups

iv. Deferring model fields

v. Adding annotations

vi. Passing parameters into raw()

f. Executing custom SQL directly

i. Connections and cursors

ii. Adding extra Manager methods

10. Generic Views

a. Generic views of objects

b. Making "friendly" template contexts

c. Adding extra context

d. Viewing subsets of objects

e. Dynamic filtering

f. Performing extra work

11. User Authentication in Django

Page 6: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

a. Overview

b. Using the Django authentication system

c. User objects

i. Creating superusers

ii. Creating users

iii. Changing passwords

d. Permissions and authorization

i. Default permissions

ii. Groups

iii. Programmatically creating permissions

iv. Permission caching

e. Authentication in web requests

i. How to log a user in

ii. How to log a user out

iii. Limiting access to logged-in users

1. The raw way

2. The login_required decorator

3. Limiting access to logged-in users that pass a test

4. The permission_required() decorator

5. Session invalidation on password change

f. Authentication views

i. Login

ii. Logout

iii. Logout_then_login

iv. Password_change

v. Password_change_done

vi. Password_reset

vii. Password_reset_done

viii. Password_reset_confirm

ix. Password_reset_complete

x. The redirect_to_login helper function

xi. Built-in forms

g. Authenticating data in templates

i. Users

ii. Permissions

h. Managing users in the admin

i. Creating users

ii. Changing passwords

i. Password management in Django

i. How Django stores passwords

Page 7: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

ii. Using Bcrypt with Django

iii. Password upgrading

iv. Manually managing a user's password

j. Customizing authentication in Django

i. Other authentication sources

ii. Specifying authentication backends

iii. Writing an authentication backend

iv. Handling authorization in custom backends

v. Authorization for anonymous users

vi. Authorization for inactive users

vii. Handling object permissions

k. Custom permissions

l. Extending the existing user model

m. Substituting a custom user model

12. Testing in Django

a. Introduction to testing

b. Introducing automated testing

i. What are automated tests?

ii. So why create tests?

c. Basic testing strategies

d. Writing a test

e. Creating a test

f. Running tests

g. Testing Tools

h. The test database

i. Using different testing frameworks

13. Deploying Django

a. Preparing your codebase for production

b. Critical settings

c. Environment-specific settings

d. HTTPS

i. CSRF_COOKIE_SECURE

ii. SESSION_COOKIE_SECURE

e. Performance optimizations

f. Error reporting

i. LOGGING

ii. ADMINS and MANAGERS

iii. Customize the default error views

g. Using a virtualenv

h. Using different settings for production

Page 8: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

i. Deploying Django to a production server

j. Deploying Django with Apache and mod_wsgi

k. Serving static files in production

l. Scaling

i. Running on a single server

ii. Separating out the database server

iii. Running a separate media server

iv. Implementing load balancing and redundancy

v. Going big

m. Performance tuning

14. Generating Non-Html Content

a. The basics: views and MIME types

b. Producing CSV

c. Using the template system

d. Other text-based formats

e. Generating PDF

f. Install ReportLab

g. Write your view

h. Complex PDF's

i. Other possibilities

j. The syndication feed framework

k. The Sitemap framework

15. Django Sessions

a. Enabling sessions

b. Configuring the session engine

c. Using Sessions in Views

d. flush()

e. Session object guidelines

f. Session serialization

g. Setting test cookies

h. Using sessions out of views

i. When sessions are saved

j. Browser-length sessions vs. persistent sessions

k. Clearing the session store

16. Django Cache Framework

a. Setting up the cache

i. Memcached

ii. Database caching

iii. Filesystem caching

iv. Local-memory caching

Page 9: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

v. Dummy caching (for development)

vi. Using a custom cache backend

vii. Cache arguments

b. The per-site cache

c. The per-view cache

d. Template fragment caching

e. The low-level cache API

f. Downstream caches

g. Using vary headers

h. Controlling cache: using other headers

17. Django Middleware

a. Activating middleware

b. Hooks and application order

c. Writing your own middleware

d. Available middleware

e. Middleware ordering

18. Security in Django

a. Django's built in security features

i. Cross Site Scripting (XSS) protection

ii. Cross Site Request Forgery (CSRF) protection

b. SOL injection protection

c. Clickjacking protection

d. SSL/HTTPS

e. Host header validation

f. Session security

g. Additional Security tips

19. Sample Site Building on Django

Page 10: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

Unit Testing with Python (pytest)

1. Getting Started

a. What is pytest?

b. Getting pytest

c. Running pytest

d. Running Only One Test

e. Using Options

2. Writing Test Functions

a. Testing a Package

b. Using assert Statements

c. Expecting Exceptions

d. Marking Test Functions

e. Skipping Testing

f. Marking Tests as Expecting to Fail

g. Running Subset of Tests

h. Parametrized Testing

3. Pytest Fixtures

a. Sharing Fixtures Through conftest.py

b. Using Fixtures for Setup and Teardown

c. Tracing Fixture Execution with –setup-show

d. Using Fixtures for Test Data

e. Using Multiple Fixtures

f. Specifying Fixture Scope

g. Specifying Fixtures with usefixtures

h. Using autouse for Fixtures That Always Get Used

i. Renaming Fixtures

j. Parametrizing Fixtures

4. Built-in Fixtures

a. Using tmpdir and tmpdir_factory

b. Using pytestconfig

c. Using cache

d. Using capsys

e. Using monkeypatch

f. Using doctest_namespace

g. Using recwarn

5. Plugins

a. Finding Plugins

b. Installing Plugins

c. Writing Your Own Plugins

d. Creating an Installable Plugin

Page 11: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

e. Testing Plugins

f. Creating a Distribution

6. Configuration

a. Understanding pytest Configuration Files

b. Changing the Default Command-Line Options

c. Registering Markers to Avoid Marker Typos

d. Requiring a Minimum pytest Version

e. Stopping pytest from Looking in the Wrong Places

f. Specifying Test Directory Locations

g. Changing Test Discovery Rules

h. Disallowing XPASS

i. Avoiding Filename Collisions

7. Using Pytest with Other Tools

a. pdb: Debugging Test Failures

b. Coverage.py: Determining How Much Code Is Tested

c. mock: Swapping Out Part of the System

d. tox: Testing Multiple Configurations

e. Jenkins CI: Automating Your Automated Tests

f. Unit Test: Running Legacy Tests with pytest

Page 12: New Batches Info - Quality Thought · Deploying Django to a production server j. Deploying Django with Apache and mod_wsgi k. Serving static files in production l. Scaling i. Running

Python Course Content

QUALITY THOUGHT * www.facebook.com/qtworld * www.qualitythought.in PH: 9963799240, 8142193750 * Location: Ameerpet * Email: [email protected]

Design Patterns

1. The Factory Pattern

2. The Builder Pattern

3. Other Creational Patterns

a. Prototype Pattern

b. Singleton Pattern

4. The Adapter Pattern

5. The Decorator Pattern

6. The Bridge Pattern

7. The Facade Pattern

8. Other Structural Patterns

a. The flyweight Pattern

b. Model View Controller Pattern

c. Proxy Pattern

9. The Chain of Responsibility Pattern

10. The Command Pattern

11. The Observer Pattern

12. The State Pattern

13. Other Behavioral Patterns

a. Interpreter Pattern

b. Strategy Pattern

c. Memento Pattern

d. Iterator Pattern

e. Template Pattern

14. Microservices and the Pattern for the Cloud

a. The Microservices Pattern

b. The Retry Pattern

c. The Circuit Breaker Pattern

d. The Cache-Aside Pattern

e. Throttling