Rozdil je v tom, ze jsi nemusel Foo psat dvakrat, typ foo za tebe odvodil (inferoval) prekladac.
Osobně dávám přednost uvedení typu proměnné, vidím ji na první pohled, narozdíl např. při přiřazení vrácené hodnoty metody.
Proměnnou včetně typu i přiřazení vyrobí IDE jednou klávesovou zkratkou, jen následně uvedu její název, přičemž mi často rovnou nabídne ten správný. Přijde mi, že na to má Idea nějakou heuristiku učící se z mého stylu pojmenování proměnných, protože se často trefuje hned první nabídkou.
Ukecanost javy při použití slušného IDE nijak nezdržuje.