Defining derivatives in Real/Complex Analysis? When studying Real Analysis, I was given the following definition for derivatives:

Let $f:D \rightarrow \mathbb{R}$, where $D$ is some subset of $\mathbb{R}$ and $a \in D$ be a cluster point of $D$ (For each $\epsilon > 0$ there is an $x \in D$ with $0<|x-a|<\epsilon$). Then $f$ is differentiable at $a$ if $\lim_{x\rightarrow a} \frac{f(x)-f(a)}{x-a}$ exists and in this case we denote the limit $f'(a)$

And then in Complex Analysis, I have the following definition:

Take $U \subseteq \mathbb{C}$ open, a function $f:U \rightarrow \mathbb{C}$ and $c \in U$. Then $f$ is complex differentiable at $c$ if $\lim_{z\rightarrow c} \frac{f(z)-f(c)}{z-c}$ exists and we write $f'(c)$ for this limit

My question is, why is $U$ required to be open in the complex case, but $D$ is not required to be open in the real case? I can see that if $U$ is an open set, then each $c \in U$ is a cluster point of $U$, but it seems that having the domain $U$ be an open set in the complex case is a much stricter condition than in the real case where you only require that the individual point in question $a \in D$ is a cluster point of $D$. Why is this condition necessary in the complex case?
 A: Complex analysis is about holomorphic functions, and that are functions which are complex differentiable in every point of an open set in $\Bbb C$ (or $\Bbb C^n$). From that Wikipedia article (emphasis mine):

The existence of a complex derivative in a neighbourhood is a very strong condition: it implies that a holomorphic function is infinitely differentiable and locally equal to its own Taylor series (analytic). Holomorphic functions are the central objects of study in complex analysis.

Cauchy's integral theorem makes use of the differentiability in open sets. Cauchy's integral formula is a consequence of that theorem, and implies the infinite differentiability of holomorphic functions:

The integral formula has broad applications. First, it implies that a function which is holomorphic in an open set is in fact infinitely differentiable there. Furthermore, it is an analytic function, meaning that it can be represented as a power series.

So while it would be possible to define the complex derivative at a cluster point of a (not necessarily open) domain, it is not useful. One cannot build a theory on that definition.
A simple example: The function $f: \Bbb R \to \Bbb R$, $f(x) = |x|^3$ is differentiable. If we consider $D = \Bbb R$ as a subset of $\Bbb C$ then every $a\in D$ is a cluster point of $D$,   and $\lim_{x\to a} \frac{f(x)-f(a)}{x-a}$ exists for every point $a \in D$. But $f$ is not analytic at the origin, it cannot be developed into a Taylor series, and it is not infinitely often differentiable.
A: 
Why is this condition necessary in the complex case?

As Martin R pointed out in another answer, it's not necessary. I think the real question is "why is the definition phrased this way in many complex analysis texts", and I think the answer is primarily a pedagogical one.
In a first course on complex analysis, it's often not assumed that students have studied real analysis or significant topology. It's simpler and more accessible to give a definition of derivative that doesn't require students to engage with questions about multivariable real limits when there is not an entire disk around the point in the domain, especially when introductory calculus texts are a bit inconsistent about whether or not such limits exist.
