  We present a general framework for TQFT and related constructions using the
language of monoidal categories. We construct a topological category C and an
algebraic category D, both monoidal, and a TQFT functor is then defined as a
certain type of monoidal functor from C to D. In contrast with the cobordism
approach, this formulation of TQFT is closer in spirit to the classical
functors of algebraic topology, like homology. The fundamental operation of
gluing is incorporated at the level of the morphisms in the topological
category through the notion of a gluing morphism, which we define. It allows
not only the gluing together of two separate objects, but also the self-gluing
of a single object to be treated in the same fashion. As an example of our
framework we describe TQFT's for oriented 2D-manifolds, and classify a family
of them in terms of a pair of tensors satisfying some relations.
