Skip to content

Commit dad4b56

Browse files
committed
tweaking web frameworks page
1 parent f1fb749 commit dad4b56

File tree

6 files changed

+86
-76
lines changed

6 files changed

+86
-76
lines changed

all.html

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1103,7 +1103,7 @@ <h2>Why are web frameworks necessary?</h2>
11031103
<p>Web frameworks encapsulate what developers have learned over the past twenty
11041104
years while programming sites and applications for the web. Frameworks make
11051105
it easier to reuse code for common HTTP operations and to structure projects
1106-
so developers with knowledge of the framework can more quickly build and
1106+
so other developers with knowledge of the framework can quickly build and
11071107
maintain the application.</p>
11081108
<h2>Common web framework functionality</h2>
11091109
<p>Frameworks provide functionality in their code or through extensions to
@@ -1114,53 +1114,55 @@ <h2>Common web framework functionality</h2>
11141114
<li>HTML, XML, JSON, and other output format templating</li>
11151115
<li>Database manipulation</li>
11161116
<li>Security against Cross-site request forgery (CSRF) and other attacks</li>
1117+
<li>Session storage and retrieval</li>
11171118
</ol>
1118-
<p>Not all web frameworks include code for all of the above
1119-
functionality. Frameworks fall somewhere between simply executing a
1120-
single use case and attempting to be everything to every developer with
1121-
increased complexity. Some frameworks take the "batteries-included" approach
1122-
where everything possible comes bundled with the framework while others
1123-
have a minimal code library that plays well with extensions.</p>
1124-
<p>For example, the Django web application framework includes an
1119+
<p>Not all web frameworks include code for all of the above functionality.
1120+
Frameworks fall on the spectrum from executing a single use case to providing
1121+
every known web framework feature to every developer. Some frameworks take
1122+
the "batteries-included" approach where everything possible comes bundled
1123+
with the framework while others have a minimal core package that is amenable
1124+
to extensions provided by other packages.</p>
1125+
<p>For example, the <a href="/django.html">Django web application framework</a> includes an
11251126
Object-Relational Mapping (ORM) layer that abstracts relational database
11261127
read, write, query, and delete operations. However, Django's ORM
1127-
cannot work without significant modification on non-relational databases such as
1128-
<a href="http://www.mongodb.org/">MongoDB</a>.
1129-
Some other web frameworks such as Flask and Pyramid are easier to
1128+
cannot work without significant modification on non-relational databases
1129+
such as <a href="http://www.mongodb.org/">MongoDB</a>.</p>
1130+
<p>Some other web frameworks such as <a href="/flask.html">Flask</a> and
1131+
<a href="/pyramid.html">Pyramid</a> are easier to
11301132
use with non-relational databases by incorporating external Python libraries.
1131-
There is a spectrum between minimal functionality with easy extensibility and
1132-
including everything in the framework with tight integration.</p>
1133+
There is a spectrum between minimal functionality with easy extensibility on
1134+
one end and including everything in the framework with tight integration on
1135+
the other end.</p>
11331136
<div class="well see-also">
11341137
While you're learning about web frameworks you should also study
11351138
<a href="/deployment.html">web application deployment</a> and
11361139
<a href="/application-programming-interfaces.html">web APIs</a>.
11371140
</div>
11381141

11391142
<h2>Do I have to use a web framework?</h2>
1140-
<p>Whether or not you have to use a web framework depends on your experience
1141-
with web development and what you're trying to accomplish. If you are
1142-
a beginner programmer and just want to work on a web application as a
1143+
<p>Whether or not you use a web framework in your project depends on your
1144+
experience with web development and what you're trying to accomplish. If you
1145+
are a beginner programmer and just want to work on a web application as a
11431146
learning project then a framework can help you understand the concepts listed
11441147
above, such as URL routing, data manipulation and authentication that are
11451148
common to the majority of web applications.</p>
11461149
<p>On the other hand if you're an experienced programmer with significant
11471150
web development experience you may feel like the existing frameworks do not
1148-
match your project's requirements. In that case, you can either mix and match
1151+
match your project's requirements. In that case, you can mix and match
11491152
open source libraries such as <a href="http://werkzeug.pocoo.org/">Werkzeug</a> for
11501153
WSGI plumbing with your own code to create your own framework. There's
1151-
certainly a lot of room for new frameworks to satisfy the needs of Python
1152-
web developers that are unmet by <a href="/django.html">Django</a>, <a href="/flask.html">Flask</a>,
1153-
<a href="/pyramid.html">Pyramid</a>, <a href="/bottle.html">Bottle</a> and
1154+
still plenty of room in the Python ecosystem for new frameworks to satisfy
1155+
the needs of web developers that are unmet by <a href="/django.html">Django</a>,
1156+
<a href="/flask.html">Flask</a>, <a href="/pyramid.html">Pyramid</a>, <a href="/bottle.html">Bottle</a> and
11541157
<a href="/other-web-frameworks.html">many others</a>.</p>
1155-
<p>In short, whether or not you need to use a web framework depends on your
1156-
experience and what you're trying to accomplish. Using a web framework to
1157-
build a web application certainly isn't required, but it'll make most
1158-
developers' lives easier in many cases.</p>
1158+
<p>In short, whether or not you need to use a web framework to build a web
1159+
application depends on your experience and what you're trying to accomplish.
1160+
Using a web framework to build a web application certainly isn't required,
1161+
but it'll make most developers' lives easier in many cases.</p>
11591162
<h2>Web framework resources</h2>
11601163
<ul>
11611164
<li>
11621165
<p>"<a href="http://www.jeffknupp.com/blog/2014/03/03/what-is-a-web-framework/">What is a web framework?</a>"
1163-
by <a href="https://twitter.com/jeffknupp">Jeff Knupp</a>
11641166
is an in-depth explanation of what web frameworks are and their relation
11651167
to web servers.</p>
11661168
</li>
@@ -6106,6 +6108,7 @@ <h1>Change Log</h1>
61066108
<h2>2015</h2>
61076109
<h3>June</h3>
61086110
<ul>
6111+
<li>Proofread and tweaked the <a href="/web-frameworks.html">web frameworks</a> page.</li>
61096112
<li>Added a new section entitled "Do I have to use a web framework?" to the
61106113
<a href="/web-frameworks.html">web frameworks</a> page.</li>
61116114
<li>Reviewed and updated the <a href="/introduction.html">introduction</a> with slight

change-log.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ <h1>Change Log</h1>
4242
<h2>2015</h2>
4343
<h3>June</h3>
4444
<ul>
45+
<li>Proofread and tweaked the <a href="/web-frameworks.html">web frameworks</a> page.</li>
4546
<li>Added a new section entitled "Do I have to use a web framework?" to the
4647
<a href="/web-frameworks.html">web frameworks</a> page.</li>
4748
<li>Reviewed and updated the <a href="/introduction.html">introduction</a> with slight

feeds/all.atom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<feed xmlns="http://www.w3.org/2005/Atom"><title>Matt Makai</title><link href="http://www.fullstackpython.com/" rel="alternate"></link><link href="http://www.fullstackpython.com/feeds/all.atom.xml" rel="self"></link><id>http://www.fullstackpython.com/</id><updated>2015-06-09T17:54:39Z</updated></feed>
2+
<feed xmlns="http://www.w3.org/2005/Atom"><title>Matt Makai</title><link href="http://www.fullstackpython.com/" rel="alternate"></link><link href="http://www.fullstackpython.com/feeds/all.atom.xml" rel="self"></link><id>http://www.fullstackpython.com/</id><updated>2015-06-10T07:28:39Z</updated></feed>

source/content/pages/04-web-development/01-web-frameworks.markdown

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ building reliable, scalable and maintainable web applications.
1414
Web frameworks encapsulate what developers have learned over the past twenty
1515
years while programming sites and applications for the web. Frameworks make
1616
it easier to reuse code for common HTTP operations and to structure projects
17-
so developers with knowledge of the framework can more quickly build and
17+
so other developers with knowledge of the framework can quickly build and
1818
maintain the application.
1919

2020

@@ -27,23 +27,27 @@ operations include:
2727
2. HTML, XML, JSON, and other output format templating
2828
3. Database manipulation
2929
4. Security against Cross-site request forgery (CSRF) and other attacks
30+
5. Session storage and retrieval
3031

31-
Not all web frameworks include code for all of the above
32-
functionality. Frameworks fall somewhere between simply executing a
33-
single use case and attempting to be everything to every developer with
34-
increased complexity. Some frameworks take the "batteries-included" approach
35-
where everything possible comes bundled with the framework while others
36-
have a minimal code library that plays well with extensions.
32+
Not all web frameworks include code for all of the above functionality.
33+
Frameworks fall on the spectrum from executing a single use case to providing
34+
every known web framework feature to every developer. Some frameworks take
35+
the "batteries-included" approach where everything possible comes bundled
36+
with the framework while others have a minimal core package that is amenable
37+
to extensions provided by other packages.
3738

38-
For example, the Django web application framework includes an
39+
For example, the [Django web application framework](/django.html) includes an
3940
Object-Relational Mapping (ORM) layer that abstracts relational database
4041
read, write, query, and delete operations. However, Django's ORM
41-
cannot work without significant modification on non-relational databases such as
42-
[MongoDB](http://www.mongodb.org/).
43-
Some other web frameworks such as Flask and Pyramid are easier to
42+
cannot work without significant modification on non-relational databases
43+
such as [MongoDB](http://www.mongodb.org/).
44+
45+
Some other web frameworks such as [Flask](/flask.html) and
46+
[Pyramid](/pyramid.html) are easier to
4447
use with non-relational databases by incorporating external Python libraries.
45-
There is a spectrum between minimal functionality with easy extensibility and
46-
including everything in the framework with tight integration.
48+
There is a spectrum between minimal functionality with easy extensibility on
49+
one end and including everything in the framework with tight integration on
50+
the other end.
4751

4852

4953
<div class="well see-also">
@@ -54,32 +58,31 @@ While you're learning about web frameworks you should also study
5458

5559

5660
## Do I have to use a web framework?
57-
Whether or not you have to use a web framework depends on your experience
58-
with web development and what you're trying to accomplish. If you are
59-
a beginner programmer and just want to work on a web application as a
61+
Whether or not you use a web framework in your project depends on your
62+
experience with web development and what you're trying to accomplish. If you
63+
are a beginner programmer and just want to work on a web application as a
6064
learning project then a framework can help you understand the concepts listed
6165
above, such as URL routing, data manipulation and authentication that are
6266
common to the majority of web applications.
6367

6468
On the other hand if you're an experienced programmer with significant
6569
web development experience you may feel like the existing frameworks do not
66-
match your project's requirements. In that case, you can either mix and match
70+
match your project's requirements. In that case, you can mix and match
6771
open source libraries such as [Werkzeug](http://werkzeug.pocoo.org/) for
6872
WSGI plumbing with your own code to create your own framework. There's
69-
certainly a lot of room for new frameworks to satisfy the needs of Python
70-
web developers that are unmet by [Django](/django.html), [Flask](/flask.html),
71-
[Pyramid](/pyramid.html), [Bottle](/bottle.html) and
73+
still plenty of room in the Python ecosystem for new frameworks to satisfy
74+
the needs of web developers that are unmet by [Django](/django.html),
75+
[Flask](/flask.html), [Pyramid](/pyramid.html), [Bottle](/bottle.html) and
7276
[many others](/other-web-frameworks.html).
7377

74-
In short, whether or not you need to use a web framework depends on your
75-
experience and what you're trying to accomplish. Using a web framework to
76-
build a web application certainly isn't required, but it'll make most
77-
developers' lives easier in many cases.
78+
In short, whether or not you need to use a web framework to build a web
79+
application depends on your experience and what you're trying to accomplish.
80+
Using a web framework to build a web application certainly isn't required,
81+
but it'll make most developers' lives easier in many cases.
7882

7983

8084
## Web framework resources
8185
* "[What is a web framework?](http://www.jeffknupp.com/blog/2014/03/03/what-is-a-web-framework/)"
82-
by [Jeff Knupp](https://twitter.com/jeffknupp)
8386
is an in-depth explanation of what web frameworks are and their relation
8487
to web servers.
8588

source/content/pages/13-meta/02-change-log.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ the
1414

1515
## 2015
1616
### June
17+
* Proofread and tweaked the [web frameworks](/web-frameworks.html) page.
1718
* Added a new section entitled "Do I have to use a web framework?" to the
1819
[web frameworks](/web-frameworks.html) page.
1920
* Reviewed and updated the [introduction](/introduction.html) with slight

web-frameworks.html

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ <h2>Why are web frameworks necessary?</h2>
4141
<p>Web frameworks encapsulate what developers have learned over the past twenty
4242
years while programming sites and applications for the web. Frameworks make
4343
it easier to reuse code for common HTTP operations and to structure projects
44-
so developers with knowledge of the framework can more quickly build and
44+
so other developers with knowledge of the framework can quickly build and
4545
maintain the application.</p>
4646
<h2>Common web framework functionality</h2>
4747
<p>Frameworks provide functionality in their code or through extensions to
@@ -52,53 +52,55 @@ <h2>Common web framework functionality</h2>
5252
<li>HTML, XML, JSON, and other output format templating</li>
5353
<li>Database manipulation</li>
5454
<li>Security against Cross-site request forgery (CSRF) and other attacks</li>
55+
<li>Session storage and retrieval</li>
5556
</ol>
56-
<p>Not all web frameworks include code for all of the above
57-
functionality. Frameworks fall somewhere between simply executing a
58-
single use case and attempting to be everything to every developer with
59-
increased complexity. Some frameworks take the "batteries-included" approach
60-
where everything possible comes bundled with the framework while others
61-
have a minimal code library that plays well with extensions.</p>
62-
<p>For example, the Django web application framework includes an
57+
<p>Not all web frameworks include code for all of the above functionality.
58+
Frameworks fall on the spectrum from executing a single use case to providing
59+
every known web framework feature to every developer. Some frameworks take
60+
the "batteries-included" approach where everything possible comes bundled
61+
with the framework while others have a minimal core package that is amenable
62+
to extensions provided by other packages.</p>
63+
<p>For example, the <a href="/django.html">Django web application framework</a> includes an
6364
Object-Relational Mapping (ORM) layer that abstracts relational database
6465
read, write, query, and delete operations. However, Django's ORM
65-
cannot work without significant modification on non-relational databases such as
66-
<a href="http://www.mongodb.org/">MongoDB</a>.
67-
Some other web frameworks such as Flask and Pyramid are easier to
66+
cannot work without significant modification on non-relational databases
67+
such as <a href="http://www.mongodb.org/">MongoDB</a>.</p>
68+
<p>Some other web frameworks such as <a href="/flask.html">Flask</a> and
69+
<a href="/pyramid.html">Pyramid</a> are easier to
6870
use with non-relational databases by incorporating external Python libraries.
69-
There is a spectrum between minimal functionality with easy extensibility and
70-
including everything in the framework with tight integration.</p>
71+
There is a spectrum between minimal functionality with easy extensibility on
72+
one end and including everything in the framework with tight integration on
73+
the other end.</p>
7174
<div class="well see-also">
7275
While you're learning about web frameworks you should also study
7376
<a href="/deployment.html">web application deployment</a> and
7477
<a href="/application-programming-interfaces.html">web APIs</a>.
7578
</div>
7679

7780
<h2>Do I have to use a web framework?</h2>
78-
<p>Whether or not you have to use a web framework depends on your experience
79-
with web development and what you're trying to accomplish. If you are
80-
a beginner programmer and just want to work on a web application as a
81+
<p>Whether or not you use a web framework in your project depends on your
82+
experience with web development and what you're trying to accomplish. If you
83+
are a beginner programmer and just want to work on a web application as a
8184
learning project then a framework can help you understand the concepts listed
8285
above, such as URL routing, data manipulation and authentication that are
8386
common to the majority of web applications.</p>
8487
<p>On the other hand if you're an experienced programmer with significant
8588
web development experience you may feel like the existing frameworks do not
86-
match your project's requirements. In that case, you can either mix and match
89+
match your project's requirements. In that case, you can mix and match
8790
open source libraries such as <a href="http://werkzeug.pocoo.org/">Werkzeug</a> for
8891
WSGI plumbing with your own code to create your own framework. There's
89-
certainly a lot of room for new frameworks to satisfy the needs of Python
90-
web developers that are unmet by <a href="/django.html">Django</a>, <a href="/flask.html">Flask</a>,
91-
<a href="/pyramid.html">Pyramid</a>, <a href="/bottle.html">Bottle</a> and
92+
still plenty of room in the Python ecosystem for new frameworks to satisfy
93+
the needs of web developers that are unmet by <a href="/django.html">Django</a>,
94+
<a href="/flask.html">Flask</a>, <a href="/pyramid.html">Pyramid</a>, <a href="/bottle.html">Bottle</a> and
9295
<a href="/other-web-frameworks.html">many others</a>.</p>
93-
<p>In short, whether or not you need to use a web framework depends on your
94-
experience and what you're trying to accomplish. Using a web framework to
95-
build a web application certainly isn't required, but it'll make most
96-
developers' lives easier in many cases.</p>
96+
<p>In short, whether or not you need to use a web framework to build a web
97+
application depends on your experience and what you're trying to accomplish.
98+
Using a web framework to build a web application certainly isn't required,
99+
but it'll make most developers' lives easier in many cases.</p>
97100
<h2>Web framework resources</h2>
98101
<ul>
99102
<li>
100103
<p>"<a href="http://www.jeffknupp.com/blog/2014/03/03/what-is-a-web-framework/">What is a web framework?</a>"
101-
by <a href="https://twitter.com/jeffknupp">Jeff Knupp</a>
102104
is an in-depth explanation of what web frameworks are and their relation
103105
to web servers.</p>
104106
</li>

0 commit comments

Comments
 (0)