Django history

quaggahooliganInternet and Web Development

Feb 5, 2013 (4 years and 5 months ago)

165 views

Abstraction Event


feb,1 2012


Web Programming

outline


web programming (what , why, how)

web frameworks (what , why, how)

sample apps by Django

outline


web programming (what , why, how)

web frameworks (what , why, how)

sample app by Django

what is web programming ?

























what is web programming ?



it's










web










+







programming

programming








is the art of telling your computer what
to do


web

showing your code


to over than


2,095,006,005


all over the world

How



a server and a browser (client) talk to each
others thought http(s) protocol


browser sent request to the server asking
for a certain page or function


sever handle the request and send the
results to he browser

just like this




web programming

server side


PHP

python

ASP.NET

Ruby on Rails

Perl

JSP
(java static pages)


client side


HTML


CSS

java script


outline


web programming (what , why, how)

web frameworks (what , why, how)

sample app by Django

the framework






it is a software trying to make a difficult
task

more and more easy

web framework






it is a software trying to make web
development

more and more easy

(
this is what they said
)

why web frameworks






it take care of many and many things




Session handling



Authentication


Security


Database access and mapping



URL mapping



Web APIs (web services)


today it is not a choice

frameworks make sure that you :



saving time


don't reinvent the wheel



fix bugs



use templates



follow test driven development



become a better programmer

famous web langoages


php















-----
>

Python










-----
>


Ruby













-----
>


perl















-----
>





ASP.NET






-----
>

phpcake , zend
,symfony



Django , web2py


Ruby on rails , camping



catalyst , Dancer

IMOH

which ?



Common ground

Both PHP and Python :

1.
are interpreted, high level languages

2.
are open source projects


3.
are supported by large developer communities

4.
are easy to learn

5.
are extremely portable. They run on almost all
platforms in existence without recompilation.

in python & not in php

1.
a small core

2.
very clear, concise, and orthogonal syntax

3.
keyword arguments

to functions and methods

4.
easy support for default arguments

5.
multiple inheritance

6.
one 'del' statement for all data types

7.
consistent case sensitivity

8.
a simple array slicing syntax

9.
tends to lead to much more scalable
applications

python in one

sentence





everything in python is easy

which framework ?



as expected



why Django


why Django


1.
best debagging feedback

why Django


1.
best debagging feedback

2.
very stable

why Django


1.
best debagging feedback

2.
very stable

3.
large contributing community

why Django


1.
best debagging feedback

2.
very stable

3.
large contributing community

4.
well documented



outline


web programming (what , why, how)

web frameworks (what , why, how)

sample app by Django

Django



What : web framework over python


Why

: fast , clean , easy to learn
,


























reusable apps

How

:

urls.py
--
> views.py
--
>
































models.py

Django history



the Web programmers at
the

Lawrence Journal
-
World

newspaper, Adrian
Holovaty and Simon Willison.


Simon and Adrian developed a
time
-
saving Web development
framework.




It was born in the fall of 2003.

Django history


the team, which now included Jacob Kaplan
-
Moss, decided to release the framework as
open source software.


They released it in July 2005 and named it
Django, after the jazz guitarist Django
Reinhardt.


Django is a well
-
established open source
project with tens of thousands of users and
contributors spread across the planet.

Django history

history is important

because it helps to
explain 2 key things :


Django is

“sweet spot" .


Django was extracted from real
-
world code, rather than being an
academic exercise or commercial
product

.

Django learning

Django is simply a collection of
libraries written in the Python
programming language


django

= python + how
django

libraries


















work




first app






Poll_application


philosophy



DRY

Do not repeat yourself




use others code to speed up
your

development


write to contribute


philosophy


MVC


model
--
> view
--
> controller


the separation of data access logic,
business logic and presentation logic



--

“Model” refers to the data access layer.

--

“View” refers to the part of the system
that













selects what to display and
how to display it

--

“Controller” refers to the part of the
system that decides which view to use,
depending on user input, accessing the
model as needed.

Resources


www.djangoproject.com


www.bitbucket.org

www.code.google.com

www.python.microcommunity.org

www.djangopackages.com


































***********

www.djangobook.com


book : Practical Django Projects


book : Pro Django


your best


friend is