рдЗрдореЛрдЯрд┐рдХреЙрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ

рдЫрд╡рд┐

рдЖрдЬ рдХреЗ рдЙрдЬреНрдЬреНрд╡рд▓ рджрд┐рди рдХреЗ рд╕рдореНрдорд╛рди рдореЗрдВ рдореИрдВрдиреЗ рдпрд╣ рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдпрд╣ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдореЗрдВ рдЗрдореЛрдЯрд┐рдХреЙрдиреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ?

рдЧрд╣рд░реЗ рд▓рд╛рд▓ рд░рдВрдЧ рдХрд╛


рд╣реЛрдВрдареЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдпрд╛ рдЪреЗрд╣рд░реЗ рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛:
foo ||= [] foo ||= {} foo ||= '' foo ||= 0 


рд╡рд╛рд╢ рдЖрдЙрдЯ рдЯреЙрдб рдЬрдВрдкрд┐рдВрдЧ:
 def_delegators :@config, :[], :[]=, :sort 


рд╡рд╣рд╛рдБ рд╕реЗ, рдХреЛрдб рдЬрдирд░реЗрд╢рди, рд╕рд╛рдЗрдХреНрд▓реЛрдкреНрд╕ рдПрдХ рдЪрд░ рдЦрд╛рддрд╛ рд╣реИ:
 @#{sym} 


рдХреНрд▓рд╛рд╕ рдХреЛ рд╣реИрд╢ рдпрд╛ рдПрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрд▓ рдХрд░рдирд╛, рдлрд┐рд░ рд╕реЗ рдПрдХ рдЯреЙрдб:
 alias_method :regular_writer, :[]= unless method_defined?(:regular_writer) 


govnokod.ru/2749
 map(&:-@) 

рд▓рдЧрддрд╛ рд╣реИ?
рдЫрд╡рд┐

рдПрдХ рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░ рдореЗрдВ рдПрдХ рдкрдЧрдбрд╝реА рдореЗрдВ рдЯреЙрдбред
 var.is_a Array ? {} : [] 


рд░реВрдмреА рдХрд╛ рдПрдХ рдФрд░ рд░рд╛рдХреНрд╖рд╕, рдПрдХ рдкреЛрдХрд░ рдЪреЗрд╣рд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рд╣реЛрдВрдареЛрдВ рдХреЛ рд░реЛрд▓ рдХрд░рдХреЗ рд╕рднреА рдЭрдВрдбреЗ рдХреЗ рд▓рд┐рдП 'рдпрд╛' рдФрд░ 'рдФрд░' рдСрдкрд░реЗрдЯрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
 flags.reduce(&:|) flags.reduce(&:&) 


рд╣рдореЗрдВ рдПрдХ рднрдпрд╛рдирдХ рдЪреЗрд╣рд░рд╛ рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЕрдЧрд░ рд╣рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рд╣реИрд╢ рдореЗрдВ рдПрдХ рдиреЗрд╕реНрдЯреЗрдб рд╣реИрд╢ рд╣реИ:
 session[:comments].try(:[], @comment.id) 


рдмрдбрд╝реА рдорд╛рд░



рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк рднреА рдХрд╛рдлреА рд╕реНрдорд╛рдЗрд▓реА рд╣реИрдВ:

рд╣рд░ рдмрд╛рд░ рдЬрдм рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрддрдиреА рд╡рд┐рд╕реНрддреГрдд, рдХреНрд╖рдорд╛рдкреНрд░рд╛рд░реНрдереА рдореБрд╕реНрдХрд╛рди рд╣реИ, рдХрд╣ рд░рд╣реА рд╣реИ, "рдореИрдВ рднреВрд▓ рдЧрдИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдХрд╛рдо рд╣реИ, рдХреГрдкрдпрд╛ рдЗрд╕реЗ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВ":
 rake -D 


CoffeeScript



рдХреЙрдлрд╝реА рдФрд░ jQuery рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╕рдордп рдШрдмрд░рд╛рд╣рдЯ рдкреВрд░реА рдХрд░реЗрдВ
 $(@) 

рдЫрд╡рд┐

CoffeeScript рдЗрдореЛрдЯрд┐рдХреЙрдиреНрд╕ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ
 foo = bar getBar:-> @bar #    Coffee not:(o)-> !o 


рд╕реНрд▓рд┐рдо


 =< "Hello!" => "Hello!" =<> "Hello!" 


рдкреАрдПрдЪрдкреА


рд╕рд░рдгреА рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдпрд╣ рджреБрдЦрдж рд╣реИ:
 $var = array( 1 => 'one' ); 


рдФрд░ рджреБрдЦрдж рднреА рдЬрдм рдпрд╣ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ:
 $var = some_function(array( 'named_attr' => 'one' )); 


рд╣рд░ рдЬрдЧрд╣ рдФрд░ рд╣рд░ рдЬрдЧрд╣


рдХрдИ рдЬрдЧрд╣ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрдк рдПрдХ рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
 ('') ("") [''] [""] 

рдХреЛрдИ рднреА рдЗрд╕рдХрд╛ рд╕рдкрдирд╛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдпрд╣ рдЖрдпрд╛, рддреЛ рдпрд╣ рдЬрд▓реНрджреА рд╕реЗ рдПрдХ рдкрдкреБрдЖрди рдкреБрдЬрд╛рд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЧрдпрд╛ (рдХреНрдпреЛрдВрдХрд┐ рдХрдорд░ рдореЗрдВ рдПрдХ рджреЗрд╢реА рдмреЗрд▓реНрдЯ рдХреЗ рд╕рд╛рде):
 ('.') 

рдФрд░ рдпрд╣рд╛рдБ рдПрдХ рдиреАрдВрдж рдЙрд▓реНрд▓реВ рд╣реИ:
 [","] 


Skype, рд╡реИрд╕реЗ, рдХрднреА-рдХрднреА рдЗрдореЛрдЯрд┐рдХреЙрдиреНрд╕ рднреА рджреЗрдЦрддрд╛ рд╣реИред рд▓реЙрдЧ рдлрд╝реЙрд░рд╡рд░реНрдбрд┐рдВрдЧ:

рдЫрд╡рд┐

рдкреБрдирд╢реНрдЪ


рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рднреЗрдЬреЗрдВ, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдЬ рд╣рдо рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдВрдЧреНрд░рд╣ рдПрдХрддреНрд░ рдХрд░реЗрдВрдЧреЗред

рдпреБрдкреАрдбреА:


рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕ рдЫреБрдЯреНрдЯреА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ:
рдЪрд░реНрдЪ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рддрдереНрдп - рдЕрдм рдЗрдореЛрдЯрд┐рдХреЙрдиреНрд╕ рдореЗрдВ рднреА

Source: https://habr.com/ru/post/In184278/


All Articles