What I think Python and Ruby (and languages whose types are not specified) are dung

When I'm reading the source and come across the following code

class BaseRequestHandler:

    """Base class for request handler classes.
    This class is instantiated for each request to be handled.  The
    constructor sets the instance variables request, client_address
    and server, and then calls the handle() method.  To implement a
    specific service, all you need to do is to derive a class which
    defines a handle() method.
    The handle() method can find the request as self.request, the
    client address as self.client_address, and the server (in case it
    needs access to per-server information) as self.server.  Since a
    separate instance is created for each request, the handle() method
    can define other arbitrary instance variables.
    """

    def __init__(self, request, client_address, server):
        self.request = request
        self.client_address = client_address
        self.server = server
        self.setup()
        try:
            self.handle()
        finally:
            self.finish()

What are request, client_address, and server? I think the person who wrote this code expects an object of a certain type to be stuck here. But I don't know what it is because the type is not specified. You have to find the caller and see what it is. This is because the type information in the brain of the person writing the code is omitted in the source code.

Recommended Posts

What I think Python and Ruby (and languages whose types are not specified) are dung
[Python] What are @classmethods and decorators?
Eating and comparing programming languages: Python and Ruby
What are you comparing with Python is and ==?
What are python tuples and * args after all?
Ruby, Python and map
Python and Ruby split
Python and pip commands are not available on CentOS (RHEL) 8
[Python3] "A // B" and "math.floor (A / B)" are not always the same! ??