TL;DR - Read only Bolded

The short answer, No. The long answer, Yes.

In your mind you should classify Armor and Resists as Damage Reduction. Block is a different kind of damage reduction and its value scales.

Dodge is not Damage reduction, but rather... Damage mitigation. I will try to explain below with an example.

Your enemy

Level 60 (mlvl)

Average Damage: 20,000

Assuming you have the following stats:

Level 60

Hit Points: 20,000

Armor: 750

Resist All: 75

Dodge: 16.7%

Block: 20%

Average amount blocked: 4,206 (3,706-4,706)

Formulas you need to know:

Damage reduction from armor: Armor / (mlvl * 50 + Armor)

Damage reduction from resist: Resist / (mlvl * 5 + Resist)

Calculate Dmg Red from Armor: 750 / (3,000 + 750) = 20%

Calculate Dmg Red from Resists: 75 / (300 + 75) = 20%

HOW DAMAGE YOU TAKE IS CALCULATED

Are you hit?

You dodge 16.7% = Take 0 Damage

You are hit 83.3% = Take Full Calculated Dmg

Calculated Damage:

Monster's Base Damage = 20,000

Damage you take after Armor Reduction = 20,000 * (1 - .2) = 16,000

Damage you take after Resist Reduction = 16,000 * (1 - .2) = 12,800

So the average you will take per hit is 12,800, before blocking is applied. Block happens after your resists are applied, which happens after dodge is calculated because the need for a damage calculation is nullified by dodge.

We established that after dodge, you are getting hit 83.3% of the time, of which you will block 20% of the time for an average of 4,206.

You are hit = 83.3%

Do you block?

20% yes = damage taken reduced by 4,206

80% no = take full calculated damage

Average Damage taken table:

Dodge = 16.7%, take 0 damage

Hit but block = 16.66%, take 8,594

Hit no block = 66.64%, take 12,800

If you were attacked 100 times, you could roughly expect to dodge 17 attacks, get hit 83 times, block 17 times, not block 67 times.

When hit you will take a weighted average of 11,959 instead of 12,800, due to blocking.

The total damage you will take from all 100 attacks is roughly 996,168 damage, or weighted average per attack of 9,962.

WHAT IS IMPORTANT TO NOTE FROM ALL THAT?

Instead of taking 20,000 damage per attack, you are taking 12,800 (36% damage reduction) from the combination of Armor and Resists.

Your shield only reduced effective incoming damage by 6.7%, and your dodge reduced incoming damage by 16.7% (for attacks you can dodge).

HOWEVER, you can not dodge all attacks. "Ground Based Attacks" like plague or desecrator can not be dodged.

Anyway, my recommendation (if you managed to read this far)

Get +Resist All on nearly all items if you are concerned about survival. It is an easy to overlook stat. It has the same benefits as armor, but you are forced into getting items with armor, resists are optional.

Shield becomes more useful as the amount of damage taken lowers (increasing armor & resists).

The above example gives you enough information to understand the basics of how the damage you take is calculated.

If you had instead had 7,000 Armor and 700 resist all, the damage reduction would be 70% from each and the average damage taken per unblocked hit would be 1,800 (reduced by 4,206 when blocked... to zero).

In this case, the shield reduces the effective damage taken by a full 20% on most hits (the monsters damage is actually a range and could roll maximum while the block amount rolls minimum, resulting in possibly taking damage).

In scenario's like the later, items like Justice Lantern, Helm of Command (Unique Ring / Helm with +% block) become very effective, as well as shields having +% block.