āĻāĻŽāĻŋ āĻ
āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻļāĻŋāĻ°ā§āĻ¨āĻžāĻŽ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻŦāĨ¤ āĻŽā§āĻ˛ āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻžāĻāĻŋ āĻāĻŋāĻ˛ āĻāĻāĻāĻŋ āĻ¸āĻšāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻ¸āĻŽā§āĻŽāĻ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĻā§āĻ°ā§āĻ¤ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻžāĻ˛, āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¯ā§āĻā§āĻ¯ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§āĻāĻ¯āĻŧāĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻāĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĻā§āĻāĻž āĻā§āĻ˛ āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻ¤āĻ¤āĻāĻž āĻ§ā§āĻ° āĻ¨āĻ¯āĻŧ āĻ¯āĻ¤āĻāĻž āĻāĻŽāĻŋ āĻā§āĻŦā§āĻāĻŋāĻ˛āĻžāĻŽ, LINQ āĻāĻŽāĻžāĻ° āĻĻā§āĻāĻ¸ā§āĻŦāĻĒā§āĻ¨ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ§ā§āĻ°āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻĻā§āĻāĻž āĻā§āĻ˛ āĻ¯ā§ āĻāĻŽāĻŋāĻ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§ āĻā§āĻ˛ āĻāĻ°ā§āĻāĻŋ... āĻāĻ āĻā§āĻŦāĻ¨ āĻāĻžāĻšāĻŋāĻ¨ā§āĻ° āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻāĻžāĻ° āĻ¨āĻŋāĻā§ āĻāĻŦāĻ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻŦā§āĻļ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻŦāĻ āĻ¨ā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻŦā§āĻļ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻšāĻ¯āĻŧā§ āĻāĻ ā§āĻā§, āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻŽāĻ¨ā§ āĻšāĻ¯āĻŧ, āĻā§āĻŦāĻ¨ā§āĻ° āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨: āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻŽā§āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧā§āĻ° āĻāĻ¤āĻŋāĻ° āĻāĻĒāĻ° āĻĒā§āĻ°āĻāĻžāĻŦ āĻāĻŋāĻ˛ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻāĻžāĻ°āĻŖā§ āĻ˛āĻā§āĻˇāĻŖā§āĻ¯āĻŧ āĻ¨āĻ¯āĻŧ: Moq, Autofac, EF Core āĻāĻŦāĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ "āĻŦā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŋāĻ"āĨ¤
āĻāĻŽāĻŋ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻāĻžāĻĒā§āĻ° āĻ
āĻ§ā§āĻ¨ā§ āĻāĻžāĻ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻāĻŋ:
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻ˛ā§āĻāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻā§ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻāĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻā§ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻĻā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻ¯āĻŧā§āĻā§āĻ¨āĨ¤ āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻāĻ˛ āĻ¨āĻŋāĻ°ā§āĻāĻŽāĻ¨ āĻāĻā§, āĻ¤āĻŦā§ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻāĻžāĻ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻžāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻļā§āĻ°āĻŽ-āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻāĻĒāĻžāĻ¯āĻŧ, āĻ¯āĻž āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§ āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§āĻŖāĨ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻāĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŽāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻ āĻŽāĻ¤ āĻĒā§āĻˇāĻŖ āĻāĻ°ā§āĻāĻŋ āĻ¤āĻž āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§, āĻāĻŽāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ˛ā§āĻāĻā§āĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ¤ā§āĻ˛āĻžāĻ° āĻāĻā§āĻāĻž āĻāĻ°āĻŋāĻ¨āĻŋāĨ¤
āĻāĻŽāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻ¨āĻŋāĻˇā§āĻĒāĻžāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻāĨ¤ āĻ§āĻ°āĻ¨ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ SetValue āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻŦāĻžāĻ āĻāĻ¨āĻ¨ā§āĻĻ āĻāĻ°ā§āĨ¤ āĻāĻžāĻ°ā§āĻā§āĻ āĻĢāĻŋāĻ˛ā§āĻĄā§ āĻŽāĻžāĻ¨ āĻāĻ¸ā§āĻā§, āĻ¸āĻŦāĻžāĻ āĻā§āĻļāĻŋāĨ¤ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ°āĻž - āĻ¸āĻŋāĻ¨āĻŋāĻ¯āĻŧāĻ° āĻāĻŦāĻ āĻĻāĻ˛ā§āĻ° āĻ¨ā§āĻ¤ā§āĻ¤ā§āĻŦ - āĻ¤āĻžāĻĻā§āĻ° āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨āĻā§āĻ˛āĻŋ āĻŦāĻ¸ā§āĻ¤ā§āĻ¤ā§ āĻ˛āĻŋāĻā§āĻ¨, āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦā§āĻ§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ "āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨" āĻŽā§āĻ¯āĻžāĻĒāĻžāĻ° āĻāĻ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻĨā§āĻā§ āĻ āĻ¨ā§āĻ¯āĨ¤ āĻ¸āĻžāĻ°āĻŽāĻ°ā§āĻŽāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ: āĻāĻŽāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŋ, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŋ, āĻ¸ā§āĻā§āĻ˛āĻŋāĻ° āĻāĻĒāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻŋ: āĻ¯āĻĻāĻŋ āĻāĻžāĻāĻĒ āĻ¸āĻĻāĻ¸ā§āĻ¯āĻĻā§āĻ° āĻ¨āĻžāĻŽ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž SetValue āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻŋāĨ¤ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻŽāĻ°āĻž āĻā§āĻ˛ā§āĻ° āĻāĻžāĻ°āĻŖā§ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĻā§āĻ˛āĻŋ āĻ§āĻ°āĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻā§ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¨āĻŋ, āĻ¤āĻŦā§ āĻāĻāĻžāĻ¨ā§āĻ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻ¯āĻŧ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°ā§āĨ¤ āĻ§āĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°.
āĻāĻŽāĻŋ āĻĻā§āĻā§āĻāĻŋ āĻ¯ā§ āĻ˛ā§āĻā§āĻ°āĻž āĻ¤āĻžāĻĻā§āĻ° āĻāĻā§ āĻāĻ¸āĻž āĻŽā§āĻļāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ¸āĻā§āĻāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧā§āĻ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻāĻŦāĻ āĻŽā§āĻ¯āĻžāĻĒāĻžāĻ°āĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻĻā§āĻāĻžāĻŦāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻŋ āĻĻā§āĻā§āĻāĻŋ āĻ¯ā§ āĻ˛ā§āĻā§āĻ°āĻž āĻā§āĻļāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻĒāĻŋāĻāĻ¨ā§, āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻĒāĻŋāĻāĻ¨ā§, āĻāĻ¨āĻā§āĻāĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻĒāĻŋāĻāĻ¨ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻˇā§āĻĒāĻžāĻĒ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻ˛ā§āĻāĻŋāĻ¯āĻŧā§ āĻ°āĻžāĻā§, āĻ¯ā§āĻ¨ āĻāĻāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻŦā§āĻ¯āĻžāĻāĻžāĻ¨āĻžāĻ˛āĻŋāĻ¯āĻŧāĻžāĻā§ āĻ āĻā§āĻšāĻžāĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻŽāĻŋ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻĒāĻ˛āĻŦā§āĻ§āĻŋāĻ¤ā§ āĻāĻŽāĻžāĻ° āĻ¨āĻžāĻ āĻāĻžāĻ˛ā§. āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§, āĻāĻŽāĻŋ āĻĒā§āĻ°āĻā§āĻ¤ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻ˛āĻŋāĻ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°āĻŋāĻ¨āĻŋ, āĻāĻŦāĻ, āĻ¯āĻĻāĻŋ āĻ¸āĻŽā§āĻāĻŦ āĻšāĻ¯āĻŧ, āĻāĻŽāĻŋ āĻā§āĻŦāĻ˛āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻā§ āĻāĻ°āĻ "āĻ āĻ¨ā§āĻā§āĻ˛" āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻŋ āĻāĻāĻŋāĻ¤ā§ āĻšāĻžāĻ¤ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ āĻ¤āĻāĻŦ, āĻ¨ā§āĻā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒāĻā§āĻ˛āĻŋ āĻāĻŽāĻžāĻā§ āĻā§āĻ°ā§āĻ¤āĻ°āĻāĻžāĻŦā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻāĻ°ā§āĻā§āĨ¤
āĻāĻŽāĻŋ āĻŽāĻ¨ā§ āĻāĻ°āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨ā§āĻā§āĻ, āĻ°āĻŋāĻāĻāĻžāĻ° āĻŦāĻž āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻ¤āĻžāĻĻāĻ°ā§āĻļā§ āĻĒāĻĄāĻŧā§āĻ¨, āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨ā§āĻ¯āĻžāĻ¯ā§āĻ¯ āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ¤ā§ āĻāĻ¸ā§āĻā§āĻ¨ āĻ¯ā§ āĻā§āĻĄā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻž āĻ¯āĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĢā§āĻ˛ā§āĨ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨āĻā§ āĻāĻ˛ āĻāĻ°āĻž CLR āĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻāĻāĻŋ āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§, āĻ¤āĻžāĻĻā§āĻ° āĻŽā§āĻāĻžāĻĄā§āĻāĻž āĻāĻžāĻ¨āĻ¤ā§, āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻžāĻŦā§āĻļā§āĻ° āĻŽāĻ§ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻā§āĻ°āĻŽ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻĒā§āĻ°āĻā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§ āĻŽā§āĻŽāĻ°āĻŋāĻ° āĻŦāĻ°āĻžāĻĻā§āĻĻā§āĻ° āĻĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻŽā§āĻŽāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻāĻŋ, CLR GC āĻāĻ¨ā§āĻŽā§āĻāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ āĻĢā§āĻ°āĻŋāĻ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻ˛āĻā§āĻˇāĻŖā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻ§ā§āĻ° āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤, āĻāĻŽāĻžāĻā§ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻ§ā§āĻ¨āĻŋāĻ āĻĒā§āĻ°ā§āĻĄāĻžāĻāĻļāĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦāĻž āĻā§āĻ˛āĻžāĻāĻĄ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻĒā§āĻ°āĻā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§ āĻŽā§āĻŽāĻ°āĻŋ āĻāĻā§āĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§āĻ§ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻ¸āĻ˛ā§, āĻ¯āĻ¤ āĻŦā§āĻļāĻŋ āĻŽā§āĻŽāĻ°āĻŋ, āĻ¤āĻ¤ āĻŦā§āĻļāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻŦā§āĻ¨ āĻ¯ā§ GC āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨, āĻ¤āĻžāĻ¤ā§āĻ¤ā§āĻŦāĻŋāĻāĻāĻžāĻŦā§, āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ˛āĻžāĻ˛ āĻ°āĻžāĻāĨ¤
āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ°āĻž āĻ¸āĻāĻ˛ā§āĻ IoC āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻŋāĻ āĻŽā§āĻ¯āĻžāĻĒāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ, āĻ¯āĻžāĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¨ā§āĻ¤āĻŋāĻāĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻā§āĻ¨ āĻĒā§āĻ°āĻļā§āĻ¨ āĻĨāĻžāĻā§ āĻ¨āĻžāĨ¤ āĻ¨āĻž, āĻ¨āĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻ¸ā§āĻŽāĻŋāĻ¤ āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻāĻŦāĻ āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤āĻāĻ°āĻŖā§āĻ° āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ¤āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¯ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¯ā§ āĻā§āĻ¨āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻ¤ā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¸āĻšāĻ - āĻāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻā§ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻžāĨ¤
āĻāĻ¸āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻš'āĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻžāĻ āĻžāĻŽā§āĻā§āĻ˛āĻŋ āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻ°āĻ āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ§āĻ°āĻŖā§āĻ° āĻā§āĻļāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻļā§. āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻā§āĻ˛āĻŋ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻā§āĻ°āĻŋ āĻĨā§āĻā§ āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĨ¤ āĻāĻāĻ āĻ āĻā§āĻŽā§āĻ¯āĻžāĻĒāĻžāĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¯ā§āĻāĻŋāĻ¤āĻžāĻŽā§āĻ˛āĻ āĻ āĻāĻŋāĻ§āĻžāĻ¨ āĻ°āĻā§āĻˇāĻŖāĻžāĻŦā§āĻā§āĻˇāĻŖ āĻāĻ°ā§ āĻ¯āĻž āĻāĻŽāĻ¨ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ āĻ¯āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨āĻā§ āĻāĻ˛ āĻ¨āĻž āĻāĻ°ā§ āĻāĻāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ¯āĻāĻŋāĻ¤ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻŋāĻāĻžāĻŦā§ āĻāĻ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ? āĻŽā§āĻ˛āĻ¤, āĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¨āĻŋāĻā§āĻ JIT āĻā§āĻĄ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĨā§āĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻāĻāĻŋ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻŦāĻ, āĻšā§āĻ¯āĻžāĻ, āĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻ¨āĻ¯āĻŧ); āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§, āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻā§āĻ¨ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻĄā§āĻ°āĻĄāĻžāĻāĻ¨ āĻšāĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻĒāĻ¨āĻŋ JIT āĻ¸āĻāĻāĻ˛āĻ¨āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻ° AOT āĻ¸āĻŽāĻāĻā§āĻˇāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻ¸āĻš āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻāĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻāĻ¸āĻŦā§.
āĻĒā§āĻ°āĻļā§āĻ¨ā§ āĻĨāĻžāĻāĻž āĻ¨ā§āĻ¤āĻŋāĻāĻŋ āĻ¸āĻāĻā§āĻˇā§āĻĒā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻĒā§āĻ°āĻŖāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻĢāĻžāĻāĻļāĻ¨ āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻāĻĒ, āĻāĻ°ā§āĻŽā§, āĻ¯ā§āĻā§āĻ˛āĻŋ āĻ
āĻŦāĻā§āĻā§āĻā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻāĻā§ āĻ¤āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻžāĻāĻĒ āĻ¤āĻĨā§āĻ¯ āĻ¸āĻš āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻŦāĻ¸ā§āĻ¤ā§ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻžāĻ āĻŦā§āĻ§āĻāĻŽā§āĻ¯āĨ¤
āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻāĻžāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦāĻ˛ā§ āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻāĻŋāĻā§ āĻ¸āĻāĻāĻ˛āĻ¨ āĻāĻŦāĻ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻŦā§ āĻ¤āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻ¸āĻžāĻŽāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ āĻ¤āĻžāĻāĻŋāĻ¯āĻŧā§, āĻāĻāĻž āĻŦāĻ˛āĻž āĻāĻāĻŋāĻ¤ āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻā§āĻ¯āĻžāĻļā§ āĻāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ°āĻ¯āĻŧā§āĻā§, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¸āĻāĻāĻ˛āĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻ¸āĻ˛ā§, āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻŋ āĻā§āĻŦāĻ˛ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋāĻ° āĻ˛ā§āĻāĻā§āĻ° āĻĨāĻŋāĻ¸āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻāĻŋ āĻ¯āĻž āĻāĻŽāĻŋ āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻāĻ¨ āĻā§āĻĄ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻāĻŋ āĻ¯āĻž āĻāĻŽāĻžāĻ° āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻŦā§āĻ¯āĻĨāĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¯āĻž āĻāĻŽāĻžāĻā§ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤āĻ° āĻā§āĻ°ā§āĻĄāĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ āĻžāĻ¨ā§āĻ° āĻā§āĻ°ā§āĻ¤āĻ° āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ā§āĻ° āĻŽā§āĻā§āĻŽā§āĻāĻŋ āĻšāĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻ¤ā§āĻ¤āĻž āĻāĻžāĻ˛ā§āĻĒāĻ¨āĻŋāĻ āĻ¯āĻžāĻ¤ā§ āĻā§āĻ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻ¨āĻž āĻāĻ°ā§āĨ¤
āĻāĻŋāĻā§ āĻ¸āĻžāĻ°āĻŽāĻ°ā§āĻŽ āĻāĻā§āĨ¤ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻšāĻ¤ā§ āĻĻāĻŋāĻ¨. āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻŽāĻŋāĻ¤ āĻŦāĻĄāĻŋ āĻ¸āĻš āĻ āĻā§āĻˇāĻ° āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻĨā§āĻā§ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻāĻŦāĻ āĻšāĻžāĻāĻĄā§āĻ°ā§āĻāĻ° āĻāĻāĻ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻŋāĻ āĻŋ āĻāĻ¸ā§āĻāĻŋāĻ˛, āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻĒāĻĄāĻŧā§āĻāĻŋ, āĻāĻāĻŋāĻā§ āĻā§-āĻŽāĻžāĻ¨ āĻā§āĻĄāĻŧāĻžāĻ¯āĻŧ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°ā§āĻāĻŋ, āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻāĻž āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ. āĻ§āĻ°āĻž āĻ¯āĻžāĻ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤āĻŋāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻžāĻŽ, āĻŦāĻ¯āĻŧāĻ¸ āĻāĻŦāĻ āĻ¯ā§āĻāĻžāĻ¯ā§āĻā§āĻ° āĻĢā§āĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ āĻ¤āĻĨā§āĻ¯ āĻāĻŋāĻ āĻŋāĻ¤ā§ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻŋāĻ āĻŋāĻ° āĻŽā§āĻ˛ āĻ āĻāĻļā§ āĻā§āĻĄāĻŧāĻžāĻ¯āĻŧ āĻ¸āĻ¤ā§āĻ¤āĻž āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŽā§āĻ¯āĻžāĻĒ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻ°ā§āĻ¤ āĻ¨āĻ¤ā§āĻ¨ āĻā§ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻžāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻāĻĒā§ āĻāĻ°ā§ āĻĨāĻžāĻā§ āĻŦāĻž āĻ°āĻŋāĻ˛āĻŋāĻā§āĻ° āĻāĻā§ āĻāĻ°ā§āĻ°ā§āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ āĻāĻļā§āĻĻāĻžāĻ° āĻĨā§āĻā§ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨, āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻ āĻāĻŋāĻ¯ā§āĻāĻŋāĻ¤āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸āĻ¸ā§āĻ¤āĻž āĻĄā§āĻāĻžāĻĢāĻŋāĻā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ āĻĒāĻžāĻ°āĻ¸ā§āĻĒāĻ°āĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ āĻ°ā§āĻĨāĻžā§ āĻā§āĻŦāĻ¨ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖāĨ¤
āĻāĻŽāĻ°āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻŋ, āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻāĻŽāĻŋ āĻā§āĻĄāĻāĻŋ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻŦ āĻ¨āĻž: āĻĒā§āĻ°āĻā§āĻ° āĻāĻ¤ā§āĻ¸ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻļā§āĻˇā§ āĻ˛āĻŋāĻā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŋāĻāĻšāĻžāĻŦā§ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¸ā§āĻŦā§āĻā§āĻ¤āĻŋāĻ° āĻŦāĻžāĻāĻ°ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻ°ā§āĻ¯āĻžāĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĢā§āĻ˛āĻŦā§āĨ¤ āĻāĻŽāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĻā§āĻāĻŋ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻā§āĻĄ āĻĻā§āĻŦ āĻ¯āĻž āĻšāĻžāĻāĻĄā§āĻ°ā§āĻāĻ°āĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°ā§, āĻ¯āĻž āĻĻā§āĻ°ā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĨāĻž āĻāĻŋāĻ˛, āĻšāĻžāĻāĻĄā§āĻ°ā§āĻāĻ° āĻĨā§āĻā§, āĻ¯āĻž āĻ§ā§āĻ° āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĨāĻž āĻāĻŋāĻ˛āĨ¤
āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ: āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŽā§āĻ˛āĻŋāĻ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ¤ā§āĻĒāĻ¨ā§āĻ¨ āĻā§āĻĄāĻŧāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤ LINQ āĻ¸ā§āĻ¤āĻ°āĻāĻŋ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻāĻŦāĻ āĻšāĻžāĻāĻĄā§āĻ°ā§āĻāĻ°ā§āĻ° āĻŽā§āĻ˛āĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ, āĻ¯āĻž āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻĨā§āĻā§ āĻā§āĻĄāĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻā§āĻ˛āĻŋāĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§ (āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ LINQ āĻāĻžāĻĄāĻŧāĻž āĻā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§)āĨ¤ āĻāĻ° āĻĒāĻ°ā§, āĻā§āĻĄāĻŧāĻžāĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻšāĻžāĻāĻĄā§āĻ°ā§āĻļāĻ¨ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻā§āĻĄāĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
"āĻĻā§āĻ°ā§āĻ¤" (āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻĻā§āĻ°ā§āĻ¤):
protected override Contact GetContact(PropertyToValueCorrelation[] correlations)
{
var contact = new Contact();
foreach (var setterMapItem in _proprtySettersMap)
{
var correlation = correlations.FirstOrDefault(x => x.PropertyName == setterMapItem.Key);
setterMapItem.Value(contact, correlation?.Value);
}
return contact;
}
āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻāĻŋ, āĻ¸ā§āĻāĻžāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻ¸āĻāĻā§āĻ°āĻš āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ - āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻ˛ā§āĻ¯āĻžāĻŽā§āĻŦāĻĄāĻžāĻ¸ āĻ¯āĻž āĻ¸ā§āĻāĻžāĻ° āĻ¸āĻ¤ā§āĻ¤āĻžāĻā§ āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻĄ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ:
static FastContactHydrator()
{
var type = typeof(Contact);
foreach (var property in type.GetProperties())
{
_proprtySettersMap[property.Name] = GetSetterAction(property);
}
}
private static Action<Contact, string> GetSetterAction(PropertyInfo property)
{
var setterInfo = property.GetSetMethod();
var paramValueOriginal = Expression.Parameter(property.PropertyType, "value");
var paramEntity = Expression.Parameter(typeof(Contact), "entity");
var setterExp = Expression.Call(paramEntity, setterInfo, paramValueOriginal).Reduce();
var lambda = (Expression<Action<Contact, string>>)Expression.Lambda(setterExp, paramEntity, paramValueOriginal);
return lambda.Compile();
}
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§ āĻāĻāĻž āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ°āĨ¤ āĻāĻŽāĻ°āĻž āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°āĻŋ, āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄā§āĻ˛āĻŋāĻā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻ¯āĻžāĻ°āĻž āĻ¸ā§āĻāĻžāĻ°āĻā§ āĻāĻ˛ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻĢā§āĻ¨ āĻāĻ°āĻŋāĨ¤
"āĻ§ā§āĻ°" (āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻā§ āĻĒā§āĻ°āĻŋāĻĢāĻŋāĻā§āĻ¸ āĻ¸ā§āĻ˛ā§):
protected override Contact GetContact(PropertyToValueCorrelation[] correlations)
{
var contact = new Contact();
foreach (var property in _properties)
{
var correlation = correlations.FirstOrDefault(x => x.PropertyName == property.Name);
if (correlation?.Value == null)
continue;
property.SetValue(contact, correlation.Value);
}
return contact;
}
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻŦāĻ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ SetValue āĻāĻ˛.
āĻ¸ā§āĻĒāĻˇā§āĻāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻ°āĻ˛ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĻāĻŋ āĻ¯āĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¸āĻ¤ā§āĻ¤āĻž āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻžāĻ°āĻ¸ā§āĻĒāĻ°āĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻā§āĻĄāĻŧāĻžāĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ˛ā§āĻā§āĨ¤ āĻāĻĒāĻ¸āĻ°ā§āĻ - āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĨ¤
āĻāĻāĻ¨ āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻāĻĄāĻāĻ¨ā§āĻ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ āĻāĻŦāĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤ āĻāĻŦāĻ āĻšāĻ āĻžā§... (āĻ¸ā§āĻĒāĻ¯āĻŧāĻ˛āĻžāĻ° - āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¨āĻ¯āĻŧ, āĻŦāĻŋāĻļāĻĻ āĻ¨ā§āĻā§ āĻ°āĻ¯āĻŧā§āĻā§)
āĻāĻŽāĻ°āĻž āĻāĻāĻžāĻ¨ā§ āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻāĻŋ? āĻ¯ā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻāĻ¯āĻŧā§āĻāĻžāĻŦā§ āĻĻā§āĻ°ā§āĻ¤ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻŦāĻšāĻ¨ āĻāĻ°ā§ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻžāĻ¸ā§āĻ āĻ§ā§āĻ° āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¸āĻš āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ§ā§āĻ° āĻšāĻ¤ā§ āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧā§ˇ āĻāĻāĻŋ āĻāĻžāĻā§āĻ° āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻŦāĻ āĻāĻ¤āĻŋ āĻāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯āĻ āĻ¸āĻ¤ā§āĻ¯āĨ¤ āĻ
āĻ¨ā§āĻ¯āĻĻāĻŋāĻā§, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¸āĻŽā§āĻāĻŦ āĻ¸ā§āĻāĻžāĻ¨ā§ LINQ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻ¨ā§āĻĻāĻ° āĻāĻŦāĻ āĻŽāĻžāĻ°ā§āĻāĻŋāĻ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨, āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨āĻļā§āĻ˛āĻ¤āĻžāĻā§ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻšā§āĻ°āĻžāĻ¸ āĻāĻ°ā§āĨ¤ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯āĻāĻŋ āĻ
āĻ°ā§āĻĄāĻžāĻ°ā§āĻ°āĨ¤ āĻĒāĻžāĻ¸ā§āĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻŦāĻŖāĻ¤āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻļā§āĻ§ā§ āĻ¸ā§āĻā§āĻ˛ā§āĨ¤ LINQ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ 4 - 200 āĻā§āĻŖ āĻ§ā§āĻ°, āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻāĻ āĻ¸ā§āĻā§āĻ˛ā§ āĻāĻ°āĻ āĻāĻŦāĻ°ā§āĻāĻ¨āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻĒāĻĄā§āĻ
āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻā§āĻāĻā§ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°āĻŋāĻ¨āĻŋ, āĻ¤āĻŦā§ āĻāĻ°āĻ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ, āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻšāĻāĻ°ā§āĻŽā§ āĻāĻŽāĻžāĻ° āĻā§āĻ āĻŦāĻž āĻāĻŽāĻžāĻ° āĻā§āĻĄāĻā§ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĻ¨āĻŋ -
āĻāĻāĻžāĻ¨ā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛:
āĻāĻĒāĻ¸āĻāĻšāĻžāĻ°: āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻā§āĻļāĻ˛ āĻ
āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻ¨āĻ āĻŦāĻŋāĻļā§āĻˇ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻ - LINQ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨āĻļā§āĻ˛āĻ¤āĻžāĻā§ āĻāĻ°āĻ āĻŦāĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ˛āĻŦā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻ
āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻā§āĻ-āĻ˛ā§āĻĄ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻ¨āĻŋāĻļāĻŋāĻ¯āĻŧāĻžāĻ˛āĻžāĻāĻāĻžāĻ° āĻāĻŦāĻ āĻĄā§āĻ˛āĻŋāĻā§āĻ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻāĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻž āĻ¤āĻžāĻ°āĻĒāĻ°ā§ "āĻĻā§āĻ°ā§āĻ¤" āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŦā§āĨ¤ āĻāĻāĻāĻžāĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻ¨ā§āĻ° āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧāĻ¤āĻž āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¤āĻŋ āĻāĻāĻ¯āĻŧāĻ āĻŦāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻ āĻā§āĻĄ āĻāĻāĻžāĻ¨ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§. āĻ¯ā§ āĻā§āĻ āĻāĻŽāĻžāĻ° āĻāĻĨāĻžāĻā§āĻ˛ā§ āĻĻā§āĻŦāĻžāĻ° āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
PS: āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻā§āĻĄāĻāĻŋ IoC āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻāĻŦāĻ āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻ āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ¸āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻš'āĻ˛ āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§ āĻāĻŽāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻā§āĻˇāĻŽāĻ¤āĻžāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§ āĻā§āĻ˛āĻŽāĻžāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻžāĻ°āĻŖāĻā§ āĻā§āĻā§ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
PPS: āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ
PPPS: āĻ¸ā§āĻā§āĻˇā§āĻŽ āĻĒāĻžāĻ āĻāĻā§ āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ āĻ¯āĻžāĻ°āĻž āĻļā§āĻ˛ā§ āĻāĻŦāĻ āĻ¨āĻāĻļāĻžāĻ° āĻ¨ā§āĻā§ āĻĒā§āĻāĻā§āĻā§āĻ¨āĨ¤ āĻāĻŽāĻŋ āĻ
āĻāĻŋāĻ¨ā§āĻ¨āĻ¤āĻž āĻāĻŦāĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻāĻ¨ā§āĻ¯. āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻā§āĻāĻ¨ā§āĻ¤āĻŋ āĻāĻžāĻā§āĻā§āĻˇāĻŋāĻ¤ āĻšāĻ¤ā§ āĻ
āĻ¨ā§āĻ āĻā§āĻĄāĻŧā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻā§ āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻž āĻā§āĻ°āĻšāĻŖ. āĻāĻŽāĻŋ āĻĒā§āĻ°āĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž.
āĻāĻ¤ā§āĻ¸: www.habr.com