依存関係についての質問です。

AクラスからBクラスのプロパティ(Cクラスとして宣言)にアクセスする場合、
AクラスとCクラスの間に依存関係にあるのでしょうか?
例えば、Bクラス内にてCというプロパティがCクラスの方として宣言されていて、
Cクラス内にはtest1,test2をstring型のプロパティとして宣言している状態で、
AクラスからB.C.test1と記述しA内のフィールドに代入する場合です。

また、よく複雑な依存関係は良い設計ではないといいますが、
具体的にどのような設計が複雑な依存関係と言えるのでしょうか?

依存関係などに詳しい書籍、Webサイトなど教えていただけたら幸いです。
よろしくお願いします。