On Mon, Aug 6, 2012 at 7:16 AM, Jonathan Vanasco <[email protected]> wrote:
> - A "framework" like Symfony, CakePHP, Rails, Django, etc will get you
> up & running very quickly -- but your ability to innovate and iterate
> quickly decreases as you start to code more for the framework ( and
> getting around it ) than for your app.
>
> - A "library" like Pyramid makes it a little harder to get off the
> ground, but once you're up and running you can generally iterate
> faster and faster -- slowly changing the model and request processing
> into something that works for your teams scaling and product needs.
Er, but we call Pyramid a web framework.
There has been much discussion about what a framework is, and I'd say
there isn't complete consensus. Pyramid is called a web framework
because it falls in a tradition of earlier products that were called
web frameworks.
The best distinction I've heard between a framework and a library is
that with a library, "You call it", while with a framework, "It calls
you". ("In Soviet Union, a job works you!") A framework provides a
structure to insert your code into. A library provides services you
can invoke. Pyramid's dual nature is that it can be used several
different ways. Django is a "high-level" framework, meaning it has
made a lot of decisions for you, and you just fill in the blanks. If
you use Pyramid out of the box, you'll end up using it in a similar
way, although Pyramid essentially forces you to make some decisions
that Django chooses for you. But there are two other levels of
Pyramid usage which are uncommon with Django. One is to use the
lower-level code and override the front-end features. The other is to
write a higher-level framework on top of Pyramid. That's where Pyramid
starts looking more like a library, or what we sometimes call a
"meta-framework" (tools to build a framework with).
--
Mike Orr <[email protected]>
--
You received this message because you are subscribed to the Google Groups
"pylons-discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/pylons-discuss?hl=en.