You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "M. Manna" <ma...@gmail.com> on 2019/12/08 22:10:17 UTC

Design Patterns in Tomcat

Hi All,

A numpty question as its best, but I was trying to summarise the design
patterns used for tomcat. So far I could see the following, but shouldn't
be limited to:

1) Mediator
2) Observer
3) Factory
4) Builder
4) Adapter

Perhaps I missed any confluence link or something that confirms it?

Thanks,

Re: Design Patterns in Tomcat

Posted by "M. Manna" <ma...@gmail.com>.
Chris,

On Mon, 9 Dec 2019 at 17:10, Christopher Schultz <
chris@christopherschultz.net> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> M,
>
> On 12/8/19 17:10, M. Manna wrote:
> > Hi All,
> >
> > A numpty question as its best, but I was trying to summarise the
> > design patterns used for tomcat. So far I could see the following,
> > but shouldn't be limited to:
> >
> > 1) Mediator 2) Observer 3) Factory 4) Builder 4) Adapter
> >
> > Perhaps I missed any confluence link or something that confirms
> > it?
>
> Don't forget iterator, interceptor, etc.
>
> We don't bother to track which design patterns are in use in Tomcat.
> Some of them are obvious due to their class names or behavior, but
> there is no documentation about what is being used where.
>
> There is also the problem of having a very large number of named
> design patterns, many of which are variations on a theme. You may see
> code that looks like publish/subscribe and others may call that
> observer/observable, etc. Some patterns are so obvious as to not
> require naming at all (e.g. "State").
>
> If you'd like to hunt through the code and find examples of carious
> patterns and document them -- e.g. in the Wiki -- that would be fine,
> but I don't think any committer is currently interested in such a task.

i guess it’s more or less what I was sexpecting. Let me work on the page
and perhaps I wi also provide 1/2 examples to support it. As long as folks
keep it correct, it should be a good source.

Thanks,

>
>
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/
>
> iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl3uf/oACgkQHPApP6U8
> pFgieQ/+LSNxlzLoM8XBtE/sNQlM+HXokdAAenakQb7jGHzKYGo7ElBL3+o0FORg
> /4HRQYO7sO9PkWDmBY8oAlxlXPdCwx6KSkK2ZFMi8kW4cOabqLXl0l7KpOI2TGNK
> u7aq7jJxN8k/OmcBdlIutYpKScB//kp9wDei6G2lEGdoQh2qMMgsWN7q9J9IGAO2
> CTB3JMVTy2LQGbXSPBGhNgRhpL4DykoHqpLCflsA9rhPGFVnN+cnCsFmiI3XREHD
> N/ap5ffXA2yOeOIuR5vhBolQJ2/3bGOQdIUrliGXMEv2hefslP+fQYudOAYzapju
> MO5VBVwOhtL0cZlVdOAgMJRL4V/Y91rSIXIS1gw/RKGV5cdEl+6VoyQhEVmRQa6u
> gHQ2HWrT+MyAV72YBulalPJy3c1vlr3Lna5kJFsxWB9rwdGZLv2xWIrWmINecdI1
> GAadRCzI0QOPA1leoq0ZdjtLvuk3W0m9+98V/uy9nrz6eyZ2hm2dFoTRvM2bbLda
> +aSwQssfaiq3QyoOxOmpeb3tWzQMXHeeoq6u5tnCwktNXUV78ZE4q6IiU9wcW8/L
> Z1/0VwhEWTF/cP8MSnqhMquEYoFVnFv2HBRE8eYIshKw2KrnlIzjYwGHCYqjRTNK
> DNSYvvuzf7s5pdzG7EtrrvOVNW7mH5Qtvs2hx1C55BijJRf3Rx0=
> =aczA
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: Design Patterns in Tomcat

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

M,

On 12/8/19 17:10, M. Manna wrote:
> Hi All,
> 
> A numpty question as its best, but I was trying to summarise the
> design patterns used for tomcat. So far I could see the following,
> but shouldn't be limited to:
> 
> 1) Mediator 2) Observer 3) Factory 4) Builder 4) Adapter
> 
> Perhaps I missed any confluence link or something that confirms
> it?

Don't forget iterator, interceptor, etc.

We don't bother to track which design patterns are in use in Tomcat.
Some of them are obvious due to their class names or behavior, but
there is no documentation about what is being used where.

There is also the problem of having a very large number of named
design patterns, many of which are variations on a theme. You may see
code that looks like publish/subscribe and others may call that
observer/observable, etc. Some patterns are so obvious as to not
require naming at all (e.g. "State").

If you'd like to hunt through the code and find examples of carious
patterns and document them -- e.g. in the Wiki -- that would be fine,
but I don't think any committer is currently interested in such a task.

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/

iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl3uf/oACgkQHPApP6U8
pFgieQ/+LSNxlzLoM8XBtE/sNQlM+HXokdAAenakQb7jGHzKYGo7ElBL3+o0FORg
/4HRQYO7sO9PkWDmBY8oAlxlXPdCwx6KSkK2ZFMi8kW4cOabqLXl0l7KpOI2TGNK
u7aq7jJxN8k/OmcBdlIutYpKScB//kp9wDei6G2lEGdoQh2qMMgsWN7q9J9IGAO2
CTB3JMVTy2LQGbXSPBGhNgRhpL4DykoHqpLCflsA9rhPGFVnN+cnCsFmiI3XREHD
N/ap5ffXA2yOeOIuR5vhBolQJ2/3bGOQdIUrliGXMEv2hefslP+fQYudOAYzapju
MO5VBVwOhtL0cZlVdOAgMJRL4V/Y91rSIXIS1gw/RKGV5cdEl+6VoyQhEVmRQa6u
gHQ2HWrT+MyAV72YBulalPJy3c1vlr3Lna5kJFsxWB9rwdGZLv2xWIrWmINecdI1
GAadRCzI0QOPA1leoq0ZdjtLvuk3W0m9+98V/uy9nrz6eyZ2hm2dFoTRvM2bbLda
+aSwQssfaiq3QyoOxOmpeb3tWzQMXHeeoq6u5tnCwktNXUV78ZE4q6IiU9wcW8/L
Z1/0VwhEWTF/cP8MSnqhMquEYoFVnFv2HBRE8eYIshKw2KrnlIzjYwGHCYqjRTNK
DNSYvvuzf7s5pdzG7EtrrvOVNW7mH5Qtvs2hx1C55BijJRf3Rx0=
=aczA
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org