Difference between strong type and weak type

Strong types are type checked which is done at the time of compiling and on the other hand Weak types is done at run time. If we have a big programs then we will use strong type. And at the time of we are doing Scripting we uses the weak type.