Google рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рдХреА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рд╕реНрддреБрддрд┐

рдЖрдЬ, Google рдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдирдИ рдбрд╛рд░реНрдЯ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд╡реЗрдм рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдЕрдирд╛рд╡рд░рдг рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рддреЗрдЬ рдФрд░ рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдЧрд╛ред рдЫреЛрдЯреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕рднреА рд╕рд╛рджрдЧреА рдХреЗ рд╕рд╛рде, рдбрд╛рд░реНрдЯ рдХреА рдорджрдж рд╕реЗ рдЬрдЯрд┐рд▓ рдореЙрдбреНрдпреВрд▓рд░ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ, рдбрд┐рдмрдЧрд░реНрд╕, рдХреЛрдб рд╕рдВрдкрд╛рджрдХреЛрдВ рдФрд░ рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рднрд╛рд╖рд╛ рдХреА рддрдХрдиреАрдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ ( рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд░реВрд╕реА рд╕реЗ рдЕрдиреБрд╡рд╛рдж ), рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ (рдкреАрдбреАрдПрдл), рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рд╕реВрдЪреА ред

рдЬреИрд╕рд╛ рдХрд┐ рдХрдВрдкрдиреА рдХреЗ рдЖрдВрддрд░рд┐рдХ рдкрддреНрд░рд╛рдЪрд╛рд░ рдореЗрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдбрд╛рд░реНрдЯ рдХреЛ "рдореВрд▓рднреВрдд" рджреЛрд╖реЛрдВ рд╕реЗ рдкреАрдбрд╝рд┐рдд, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди / рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рдХрд╛рд╕рд╡рд╛рджреА рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбрд╛рд░реНрдЯ рдХреЗ рдкреНрд░рдореБрдЦ рд▓рд╛рдн

рдбрд╛рд░реНрдЯ рдЕрднреА рднреА рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдореЗрдВ рд╣реИред рднрд╛рд╖рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдкреНрд░рд╕рд┐рджреНрдз рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд▓рд╛рд░реНрд╕ рдмрдХ рд╣реИ, рдЬрд┐рд╕реЗ рдбреЗрдирд┐рд╢ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рд╕рдореВрд╣ рджреНрд╡рд╛рд░рд╛ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИред рдЕрдЯрд▓рд╛рдВрдЯрд╛ рдореЗрдВ рдмреНрд░реВрд╕ рдЬреЙрдирд╕рди рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдФрд░ рд╕реЗрдВрдЯ рдкреАрдЯрд░реНрд╕рдмрд░реНрдЧ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдкрд╛рд╡реЗрд▓ рдлреЗрд▓реНрдбрдореИрди рдбрд╛рд░реНрдЯ рдФрд░ рд╣рд╛рд░реНрдордиреА рдХреЗ рд▓рд┐рдП рд╡реЗрдм рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред

рдЙрджрд╛рд╣рд░рдг

рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕, рдХреНрд▓рд╛рд╕ рдФрд░ рд╕рдмрдХреНрд▓рд╛рд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ред

interface Shape { num perimeter(); } class Rectangle implements Shape { final num height, width; Rectangle(num this.height, num this.width); // Compact constructor syntax. num perimeter() => 2*height + 2*width; // Short function syntax. } class Square extends Rectangle { Square(num size) : super(size, size); } 

рдпрд╣ рдПрдХ рд╣реА рдмрд┐рдВрджреБ рд╡рд░реНрдЧ рдХреЛ рд╕рд╛рдзрд╛рд░рдг рдХреЛрдб рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд┐рдирд╛, рдкреИрд░рд╛рдореАрдЯрд░ x рдФрд░ y рдХреЗ рд╕рд╛рдеред

 class Point { var x, y; Point(this.x, this.y); scale(factor) => new Point(x*factor, y*factor); distance() => Math.sqrt(x*x + y*y); } main() { var a = new Point(2,3).scale(10); print(a.distance()); } 

рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд╕рдорд╛рди рдХреЛрдб, рдЬреЛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдмрдврд╝рдиреЗ рдкрд░ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

 class Point { num x, y; Point(num this.x, num this.y); Point scale(num factor) => new Point(x*factor, y*factor); num distance() => Math.sqrt(x*x + y*y); } void main() { Point a = new Point(2,3).scale(10); print(a.distance()); } 


рдбрд╛рд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:


рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдбрд╛рд░реНрдЯ рдХреЛ рддреАрди рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:


рдбрд╛рд░реНрдЯ рдХреЛ рдЕрдзрд┐рдХрддрдо рд╕реБрд░рдХреНрд╖рд╛ рднреА рдкреНрд░рджрд╛рди рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдпрд╣ рдХрд╛рд░реНрдп рддреАрди рдореБрдЦреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рд╕рдорд░реНрдерди рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдореБрдЦреНрдп рджреЗрд╢реА рдЧреНрд░рд╛рд╣рдХ рднрд╛рд╖рд╛ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмрдЬрд╛рдп) рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдлреНрд░рдВрдЯ-рдПрдВрдб рд╕рд░реНрд╡рд░, рд╕рд╛рде рд╣реА рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдЗрд▓рд░реНрд╕ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

"рдХреНрд░рд╛рдВрддрд┐рдХрд╛рд░реА" рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ, рдЬреЛ рдбрд╛рд░реНрдЯ рд╣реИ, Google рд╕рдорд╕реНрдпрд╛ рдХреЗ рдПрдХ рдФрд░ рд╕рдорд╛рдзрд╛рди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдЧрд╛ - рд╕рджреНрднрд╛рд╡ рдкрд░рд┐рдпреЛрдЬрдирд╛, рдЬреЛ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЙрди Javacript рдХрдорд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдЧрд╛ред

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


All Articles