SlideShare a Scribd company logo
1 of 24
Python: introduction
First release in 1991
Based on C and Java
Stable releases are: (2.7.x, 3.5.x)
Cross-platform
Object-oriented, imperative, functional programming, and
procedural styles
Python: advantages
Simple
Easy to study
Free and open source
High-level programming language
Portability
Expansibility
Embedability
Large and comprehensive standard libraries
Canonical code
Python: syntax and semantics
Use whitespace indentation to delimit blocks
if, else and elif
for, while
try, except, finally
class
def (function and method)
with
pass
assert
yield (generator)
import
print, print()
self, this
Python: typing
str Character string 'Wikipedia'
"Wikipedia"
"""Spanning
multiple
lines"""
Bytearray, bytes Sequence of bytes bytearray(b'Some ASCII')
bytearray([119, 105, 107, 105])
b"Some ASCII"
bytes([119, 105, 107, 105])
list List, can contain mixed types [4.0, 'string', True]
tuple Can contain mixed types (4.0, 'string', True)
set Unordered set {4.0, 'string', True}
frozenset Unordered set frozenset([4.0, 'string', True])
dict Associative array {'key1': 1.0, 3: False}
complex Complex number 3+2.7j
Python: code sample
1 # Function definition is here
2 def printme(str):
3 """This prints a passed string into this function"""
4 print str
5 return
6
7
8 # Now you can call printme function
9 printme("I'm first call to user defined function!")
10
Files
- .py, .pyc, .pyd, .pyo (prior to 3.5),
.pyw, .pyz (since 3.5)
Packages
- __init__.py
Python: class sample
1 class Person:
2
3 def __init__(self, name):
4 self.name = name
5
6 def say_hello(self):
7 print "Hello, my name is", self.name
8
9 def __del__(self):
10 print '%s says bye' % self.name
11
12 p = Person('David Sanchez')
13 p.say_hello()
14
This example includes class definition, constructor function, destructor
function, attributes and methods definition and object definition.
"""
This code sample will return:
Hello, my name is David Sanchez
David Sanchez says bye
Process finished with exit code 0
"""
Python: inheritance sample
1 class Person:
2 def speak(self):
3 print 'I can speak'
4
5
6 class Man(Person):
7 def wear(self):
8 print 'I wear shirt'
9
10
11 class Woman(Person):
12 def wear(self):
13 print 'I wear skirt'
14
15 man = Man()
16 man.wear()
17 man.speak()
18
19 woman = Woman()
20 woman.wear()
21 woman.speak()
22
"""
This code sample will return:
I wear shirt
I can speak
I wear skirt
I can speak
Process finished with exit code 0
"""
Just like JAVA, subclass can invoke Attributes
and methods in superclass.
Supports multiple inheritance.
1 class Alien(Person, Man, Woman):
2 pass
PyCharm: overview
IDE for Python language by JetBrains
Cross-platform
Web development frameworks (Django, Flask, ...)
Cross-technology development (JavaScript, SQL, HTML, CSS, ...)
Profiler, Code generation, refactoring
Database integration
PyCharm: IDE
Django: overview
Initial release: 2005
Free, open-source, ModelTemplateView web framework
Include optional C.R.U.D. interface
Caching and internationalization system
Database (PostgreSQL, MySQL, SQLite) easy integration and migration
Easy forms creation and manipulation
Django: process
Django: process
Django: process
Python Tools: overview
pip:
- Package management system (like composer)
- Install and manage software packages written in Python
virtualenv:
- Isolate pip install in a python project
setuptools:
- build and distribute a python app with dependencies on other packages
wheel:
- setuptools extension for creating wheel distributions
Tools by Kaliop
Manage servers
- Add
- Edit
- Remove
Manage databases
- Add
- Edit
- Remove
Copy link to backup file
- Copy last backup SQL file
- Copy available backup SQL
file
Project key
Project name
Project type
- Maintenance
- Project
Timesheet activities
- Spécifications
- Gestion de projet
- Administration Système
- Formations
- Avant-vente
- Développement Backend
- Développement Frontend
- Contrôle qualité
- Direction Artistique
- Web Design
nginx: used as a delivery
server for static (JS, CSS,
images) files.
gunicorn: WSGI HTTP
Server
RabbitMQ: open source
message broker software
Celery: asynchronous task
queue manager
Celery is useful for background
task processing and deferred
execution in Django. Task queues
are used to distribute work
across workers.
Celery's components:
- message broker - component for
exchange messages and tasks
distribution between workers:
RabbitMQ;
- worker - calculation unit, which
execute task;
DockerStack
Overview
An utility to Dockerize your
applications and generate minimal
docker requires files:
➔Dockerfile
➔docker-compose.yml
➔php.ini
Projects stored at:
/home/{user}/DockerStackProjects/
https://github.com/emulienfou/dockerstack
Available commands
● start: Build and start a new project
● stop: Stop docker container(s) for the current project
● build: Build a new or existing project
● rm: Remove one or more projects
● ps: List all created projects
● updb: Update database, providing an SQL file (!!! not yet available !!!)
Future features
➔Improve docker-stack.yml file format
➔Add support platform for framework & CMS
➔Login to a Docker Hub account
➔Graphic Interface (user-friendly)

More Related Content

What's hot

Get started python programming part 1
Get started python programming   part 1Get started python programming   part 1
Get started python programming part 1Nicholas I
 
Python Seminar PPT
Python Seminar PPTPython Seminar PPT
Python Seminar PPTShivam Gupta
 
Introduction to Python for Security Professionals
Introduction to Python for Security ProfessionalsIntroduction to Python for Security Professionals
Introduction to Python for Security ProfessionalsAndrew McNicol
 
Learn python – for beginners
Learn python – for beginnersLearn python – for beginners
Learn python – for beginnersRajKumar Rampelli
 
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...Edureka!
 
Introduction about Python by JanBask Training
Introduction about Python by JanBask TrainingIntroduction about Python by JanBask Training
Introduction about Python by JanBask TrainingJanBask Training
 
Introduction to python programming
Introduction to python programmingIntroduction to python programming
Introduction to python programmingSrinivas Narasegouda
 
Introduction to programming with python
Introduction to programming with pythonIntroduction to programming with python
Introduction to programming with pythonPorimol Chandro
 
File handling & regular expressions in python programming
File handling & regular expressions in python programmingFile handling & regular expressions in python programming
File handling & regular expressions in python programmingSrinivas Narasegouda
 
Socket Programming In Python
Socket Programming In PythonSocket Programming In Python
Socket Programming In Pythondidip
 
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYA
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYAChapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYA
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYAMaulik Borsaniya
 
Programming with Python - Basic
Programming with Python - BasicProgramming with Python - Basic
Programming with Python - BasicMosky Liu
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to pythonJaya Kumari
 

What's hot (20)

Get started python programming part 1
Get started python programming   part 1Get started python programming   part 1
Get started python programming part 1
 
Python Seminar PPT
Python Seminar PPTPython Seminar PPT
Python Seminar PPT
 
Beginning Python Programming
Beginning Python ProgrammingBeginning Python Programming
Beginning Python Programming
 
Introduction to Python for Security Professionals
Introduction to Python for Security ProfessionalsIntroduction to Python for Security Professionals
Introduction to Python for Security Professionals
 
Python final ppt
Python final pptPython final ppt
Python final ppt
 
Intro to Python
Intro to PythonIntro to Python
Intro to Python
 
Python Tutorial Part 2
Python Tutorial Part 2Python Tutorial Part 2
Python Tutorial Part 2
 
Learn python – for beginners
Learn python – for beginnersLearn python – for beginners
Learn python – for beginners
 
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...
Advanced Python Tutorial | Learn Advanced Python Concepts | Python Programmin...
 
Introduction about Python by JanBask Training
Introduction about Python by JanBask TrainingIntroduction about Python by JanBask Training
Introduction about Python by JanBask Training
 
Introduction to python programming
Introduction to python programmingIntroduction to python programming
Introduction to python programming
 
Introduction to programming with python
Introduction to programming with pythonIntroduction to programming with python
Introduction to programming with python
 
File handling & regular expressions in python programming
File handling & regular expressions in python programmingFile handling & regular expressions in python programming
File handling & regular expressions in python programming
 
Socket Programming In Python
Socket Programming In PythonSocket Programming In Python
Socket Programming In Python
 
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYA
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYAChapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYA
Chapter 1 - INTRODUCTION TO PYTHON -MAULIK BORSANIYA
 
Programming with Python - Basic
Programming with Python - BasicProgramming with Python - Basic
Programming with Python - Basic
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to python
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to python
 
Python - the basics
Python - the basicsPython - the basics
Python - the basics
 
Python programming
Python programmingPython programming
Python programming
 

Viewers also liked

What is A Cloud Stack in 2017
What is A Cloud Stack in 2017What is A Cloud Stack in 2017
What is A Cloud Stack in 2017Gaurav Roy
 
Design in Tech Report 2017
Design in Tech Report 2017Design in Tech Report 2017
Design in Tech Report 2017John Maeda
 
A new way to develop with WordPress!
A new way to develop with WordPress!A new way to develop with WordPress!
A new way to develop with WordPress!David Sanchez
 
Khalil khan (it engineer resume)
Khalil khan (it engineer resume)Khalil khan (it engineer resume)
Khalil khan (it engineer resume)Khalil Khan
 
AgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSqlAgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSqlKisung Kim
 
Mobile Finance: 2017 Trends and Innovations
Mobile Finance: 2017 Trends and InnovationsMobile Finance: 2017 Trends and Innovations
Mobile Finance: 2017 Trends and InnovationsCorporate Insight
 
Europe ai scaleups report 2016
Europe ai scaleups report 2016Europe ai scaleups report 2016
Europe ai scaleups report 2016Omar Mohout
 
Empleo en IT 2017. Profesiones con futuro
Empleo en IT 2017. Profesiones con futuroEmpleo en IT 2017. Profesiones con futuro
Empleo en IT 2017. Profesiones con futuroMayte Guillén
 
Europa AI startup scaleups report 2016
Europa AI startup scaleups report 2016 Europa AI startup scaleups report 2016
Europa AI startup scaleups report 2016 Ian Beckett
 
Comparing 30 MongoDB operations with Oracle SQL statements
Comparing 30 MongoDB operations with Oracle SQL statementsComparing 30 MongoDB operations with Oracle SQL statements
Comparing 30 MongoDB operations with Oracle SQL statementsLucas Jellema
 
A Brief Look at Serverless Architecture
A Brief Look at Serverless ArchitectureA Brief Look at Serverless Architecture
A Brief Look at Serverless ArchitectureAmazon Web Services
 
Hesperia council districting 2017
Hesperia council districting 2017Hesperia council districting 2017
Hesperia council districting 2017dsousa88
 
Ines pasos de seleccion personal
Ines pasos de seleccion personalInes pasos de seleccion personal
Ines pasos de seleccion personalines gonzalez
 
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULAS
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULASAPOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULAS
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULASLOGUS APOSTILAS
 

Viewers also liked (20)

What is A Cloud Stack in 2017
What is A Cloud Stack in 2017What is A Cloud Stack in 2017
What is A Cloud Stack in 2017
 
Design in Tech Report 2017
Design in Tech Report 2017Design in Tech Report 2017
Design in Tech Report 2017
 
The Benefits of Cloud Computing
The Benefits of Cloud ComputingThe Benefits of Cloud Computing
The Benefits of Cloud Computing
 
A new way to develop with WordPress!
A new way to develop with WordPress!A new way to develop with WordPress!
A new way to develop with WordPress!
 
Khalil khan (it engineer resume)
Khalil khan (it engineer resume)Khalil khan (it engineer resume)
Khalil khan (it engineer resume)
 
AgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSqlAgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSql
 
Mobile Finance: 2017 Trends and Innovations
Mobile Finance: 2017 Trends and InnovationsMobile Finance: 2017 Trends and Innovations
Mobile Finance: 2017 Trends and Innovations
 
Europe ai scaleups report 2016
Europe ai scaleups report 2016Europe ai scaleups report 2016
Europe ai scaleups report 2016
 
Empleo en IT 2017. Profesiones con futuro
Empleo en IT 2017. Profesiones con futuroEmpleo en IT 2017. Profesiones con futuro
Empleo en IT 2017. Profesiones con futuro
 
PHP7 Presentation
PHP7 PresentationPHP7 Presentation
PHP7 Presentation
 
Ensamble de un computador
Ensamble de un computadorEnsamble de un computador
Ensamble de un computador
 
Europa AI startup scaleups report 2016
Europa AI startup scaleups report 2016 Europa AI startup scaleups report 2016
Europa AI startup scaleups report 2016
 
Databases
DatabasesDatabases
Databases
 
Comparing 30 MongoDB operations with Oracle SQL statements
Comparing 30 MongoDB operations with Oracle SQL statementsComparing 30 MongoDB operations with Oracle SQL statements
Comparing 30 MongoDB operations with Oracle SQL statements
 
A Brief Look at Serverless Architecture
A Brief Look at Serverless ArchitectureA Brief Look at Serverless Architecture
A Brief Look at Serverless Architecture
 
Hesperia council districting 2017
Hesperia council districting 2017Hesperia council districting 2017
Hesperia council districting 2017
 
Semana de Comércio Exterior e Logística - Discussão sobre a TPP nas relações ...
Semana de Comércio Exterior e Logística - Discussão sobre a TPP nas relações ...Semana de Comércio Exterior e Logística - Discussão sobre a TPP nas relações ...
Semana de Comércio Exterior e Logística - Discussão sobre a TPP nas relações ...
 
Ines pasos de seleccion personal
Ines pasos de seleccion personalInes pasos de seleccion personal
Ines pasos de seleccion personal
 
My Life Philosophy
My Life PhilosophyMy Life Philosophy
My Life Philosophy
 
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULAS
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULASAPOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULAS
APOSTILA TERRACAP 2017 TÉCNICO EM COMUNICAÇÃO SOCIAL PUBLICITÁRIO + VÍDEO AULAS
 

Similar to Presentation of Python, Django, DockerStack

Introduction to clojure
Introduction to clojureIntroduction to clojure
Introduction to clojureAbbas Raza
 
Getting started with Clojure
Getting started with ClojureGetting started with Clojure
Getting started with ClojureJohn Stevenson
 
Python and Oracle : allies for best of data management
Python and Oracle : allies for best of data managementPython and Oracle : allies for best of data management
Python and Oracle : allies for best of data managementLaurent Leturgez
 
Topic2JavaBasics.ppt
Topic2JavaBasics.pptTopic2JavaBasics.ppt
Topic2JavaBasics.pptMENACE4
 
hallleuah_java.ppt
hallleuah_java.ppthallleuah_java.ppt
hallleuah_java.pptRahul201258
 
Influx db talk-20150415
Influx db talk-20150415Influx db talk-20150415
Influx db talk-20150415Richard Elling
 
Java Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECJava Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECSreedhar Chowdam
 
Framework engineering JCO 2011
Framework engineering JCO 2011Framework engineering JCO 2011
Framework engineering JCO 2011YoungSu Son
 
Node.js - async for the rest of us.
Node.js - async for the rest of us.Node.js - async for the rest of us.
Node.js - async for the rest of us.Mike Brevoort
 
PenTest using Python By Purna Chander
PenTest using Python By Purna ChanderPenTest using Python By Purna Chander
PenTest using Python By Purna Chandernforceit
 
C, C++ Training Institute in Chennai , Adyar
C, C++ Training Institute in Chennai , AdyarC, C++ Training Institute in Chennai , Adyar
C, C++ Training Institute in Chennai , AdyarsasikalaD3
 
TorqueBox: The beauty of Ruby with the power of JBoss. Presented at Devnexus...
TorqueBox: The beauty of Ruby with the power of JBoss.  Presented at Devnexus...TorqueBox: The beauty of Ruby with the power of JBoss.  Presented at Devnexus...
TorqueBox: The beauty of Ruby with the power of JBoss. Presented at Devnexus...bobmcwhirter
 
Java-Intro.pptx
Java-Intro.pptxJava-Intro.pptx
Java-Intro.pptxVijalJain3
 
Python for Linux System Administration
Python for Linux System AdministrationPython for Linux System Administration
Python for Linux System Administrationvceder
 

Similar to Presentation of Python, Django, DockerStack (20)

Introduction to clojure
Introduction to clojureIntroduction to clojure
Introduction to clojure
 
Getting started with Clojure
Getting started with ClojureGetting started with Clojure
Getting started with Clojure
 
Python1
Python1Python1
Python1
 
Python and Oracle : allies for best of data management
Python and Oracle : allies for best of data managementPython and Oracle : allies for best of data management
Python and Oracle : allies for best of data management
 
Topic2JavaBasics.ppt
Topic2JavaBasics.pptTopic2JavaBasics.ppt
Topic2JavaBasics.ppt
 
hallleuah_java.ppt
hallleuah_java.ppthallleuah_java.ppt
hallleuah_java.ppt
 
2.ppt
2.ppt2.ppt
2.ppt
 
Influx db talk-20150415
Influx db talk-20150415Influx db talk-20150415
Influx db talk-20150415
 
JAVA BASICS
JAVA BASICSJAVA BASICS
JAVA BASICS
 
Java Notes
Java Notes Java Notes
Java Notes
 
Java Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPRECJava Notes by C. Sreedhar, GPREC
Java Notes by C. Sreedhar, GPREC
 
Framework engineering JCO 2011
Framework engineering JCO 2011Framework engineering JCO 2011
Framework engineering JCO 2011
 
Node.js - async for the rest of us.
Node.js - async for the rest of us.Node.js - async for the rest of us.
Node.js - async for the rest of us.
 
PenTest using Python By Purna Chander
PenTest using Python By Purna ChanderPenTest using Python By Purna Chander
PenTest using Python By Purna Chander
 
C, C++ Training Institute in Chennai , Adyar
C, C++ Training Institute in Chennai , AdyarC, C++ Training Institute in Chennai , Adyar
C, C++ Training Institute in Chennai , Adyar
 
Next .NET and C#
Next .NET and C#Next .NET and C#
Next .NET and C#
 
TorqueBox: The beauty of Ruby with the power of JBoss. Presented at Devnexus...
TorqueBox: The beauty of Ruby with the power of JBoss.  Presented at Devnexus...TorqueBox: The beauty of Ruby with the power of JBoss.  Presented at Devnexus...
TorqueBox: The beauty of Ruby with the power of JBoss. Presented at Devnexus...
 
Java-Intro.pptx
Java-Intro.pptxJava-Intro.pptx
Java-Intro.pptx
 
basic_java.ppt
basic_java.pptbasic_java.ppt
basic_java.ppt
 
Python for Linux System Administration
Python for Linux System AdministrationPython for Linux System Administration
Python for Linux System Administration
 

Recently uploaded

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 

Recently uploaded (20)

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 

Presentation of Python, Django, DockerStack

  • 1.
  • 2. Python: introduction First release in 1991 Based on C and Java Stable releases are: (2.7.x, 3.5.x) Cross-platform Object-oriented, imperative, functional programming, and procedural styles
  • 3. Python: advantages Simple Easy to study Free and open source High-level programming language Portability Expansibility Embedability Large and comprehensive standard libraries Canonical code
  • 4. Python: syntax and semantics Use whitespace indentation to delimit blocks if, else and elif for, while try, except, finally class def (function and method) with pass assert yield (generator) import print, print() self, this
  • 5. Python: typing str Character string 'Wikipedia' "Wikipedia" """Spanning multiple lines""" Bytearray, bytes Sequence of bytes bytearray(b'Some ASCII') bytearray([119, 105, 107, 105]) b"Some ASCII" bytes([119, 105, 107, 105]) list List, can contain mixed types [4.0, 'string', True] tuple Can contain mixed types (4.0, 'string', True) set Unordered set {4.0, 'string', True} frozenset Unordered set frozenset([4.0, 'string', True]) dict Associative array {'key1': 1.0, 3: False} complex Complex number 3+2.7j
  • 6. Python: code sample 1 # Function definition is here 2 def printme(str): 3 """This prints a passed string into this function""" 4 print str 5 return 6 7 8 # Now you can call printme function 9 printme("I'm first call to user defined function!") 10 Files - .py, .pyc, .pyd, .pyo (prior to 3.5), .pyw, .pyz (since 3.5) Packages - __init__.py
  • 7. Python: class sample 1 class Person: 2 3 def __init__(self, name): 4 self.name = name 5 6 def say_hello(self): 7 print "Hello, my name is", self.name 8 9 def __del__(self): 10 print '%s says bye' % self.name 11 12 p = Person('David Sanchez') 13 p.say_hello() 14 This example includes class definition, constructor function, destructor function, attributes and methods definition and object definition. """ This code sample will return: Hello, my name is David Sanchez David Sanchez says bye Process finished with exit code 0 """
  • 8. Python: inheritance sample 1 class Person: 2 def speak(self): 3 print 'I can speak' 4 5 6 class Man(Person): 7 def wear(self): 8 print 'I wear shirt' 9 10 11 class Woman(Person): 12 def wear(self): 13 print 'I wear skirt' 14 15 man = Man() 16 man.wear() 17 man.speak() 18 19 woman = Woman() 20 woman.wear() 21 woman.speak() 22 """ This code sample will return: I wear shirt I can speak I wear skirt I can speak Process finished with exit code 0 """ Just like JAVA, subclass can invoke Attributes and methods in superclass. Supports multiple inheritance. 1 class Alien(Person, Man, Woman): 2 pass
  • 9. PyCharm: overview IDE for Python language by JetBrains Cross-platform Web development frameworks (Django, Flask, ...) Cross-technology development (JavaScript, SQL, HTML, CSS, ...) Profiler, Code generation, refactoring Database integration
  • 11. Django: overview Initial release: 2005 Free, open-source, ModelTemplateView web framework Include optional C.R.U.D. interface Caching and internationalization system Database (PostgreSQL, MySQL, SQLite) easy integration and migration Easy forms creation and manipulation
  • 15. Python Tools: overview pip: - Package management system (like composer) - Install and manage software packages written in Python virtualenv: - Isolate pip install in a python project setuptools: - build and distribute a python app with dependencies on other packages wheel: - setuptools extension for creating wheel distributions
  • 17. Manage servers - Add - Edit - Remove Manage databases - Add - Edit - Remove Copy link to backup file - Copy last backup SQL file - Copy available backup SQL file
  • 18. Project key Project name Project type - Maintenance - Project Timesheet activities - Spécifications - Gestion de projet - Administration Système - Formations - Avant-vente - Développement Backend - Développement Frontend - Contrôle qualité - Direction Artistique - Web Design
  • 19. nginx: used as a delivery server for static (JS, CSS, images) files. gunicorn: WSGI HTTP Server RabbitMQ: open source message broker software Celery: asynchronous task queue manager
  • 20. Celery is useful for background task processing and deferred execution in Django. Task queues are used to distribute work across workers. Celery's components: - message broker - component for exchange messages and tasks distribution between workers: RabbitMQ; - worker - calculation unit, which execute task;
  • 22. Overview An utility to Dockerize your applications and generate minimal docker requires files: ➔Dockerfile ➔docker-compose.yml ➔php.ini Projects stored at: /home/{user}/DockerStackProjects/ https://github.com/emulienfou/dockerstack
  • 23. Available commands ● start: Build and start a new project ● stop: Stop docker container(s) for the current project ● build: Build a new or existing project ● rm: Remove one or more projects ● ps: List all created projects ● updb: Update database, providing an SQL file (!!! not yet available !!!)
  • 24. Future features ➔Improve docker-stack.yml file format ➔Add support platform for framework & CMS ➔Login to a Docker Hub account ➔Graphic Interface (user-friendly)

Editor's Notes

  1. https://www.syncano.io/blog/configuring-running-django-celery-docker-containers-pt-1/