login
Holden Web
What you'll need to know tomorrow

Comments on Working Together on the Web (Kevin Dangoor)

I think Kevin's last name is Dangoor, not Djangoor...

PJE · 2006-07-17T15:25:00

I think Kevin's last name is Dangoor, not Djangoor. Though that wouldn't be a bad name to have if he was the creator of Django, rather than TurboGears. :)

Regarding entry points, the whole idea of an entry point is just that it's a way for a package to provide a well-defined reference point that other packages can hook into, without knowing in advance where to import something from.

For example, Turbogears can support any Python templating language to generate web pages. You just have to create a package that registers an entry point saying basically "if the template type is 'kid', use this class to implement it".

This isn't a new idea for Python, but the part that *is* new is that just *installing* the package that offers the entry point is enough. If you create a package that implements the TurboGears templating interface for language foo, then installing the package's egg on your system automatically makes that template type available, without needing to first import the package. Instead, it allows TurboGears to ask, "is there any package installed that supports template type foo?" And it will automatically get back the right class to handle that type of template.

So, it's a very simple concept, but it's well-integrated into the installation process for eggs, and it makes extensible applications and frameworks a lot easier to develop.

But if you are one person writing a Python program and you don't expect to collaborate with other teams or third-party developers, you may not ever feel a need for it, or even see what the point is (no pun intended).

Thanks for the enlightenment (both on Kevin's name...

Steve · 2006-07-17T15:51:00

Thanks for the enlightenment (both on Kevin's name and on entry points). I've corrected the post title.

Page 1 of 1

Back to post