рдЕрд▓рд╡рд┐рджрд╛ рд╕рд╛рдл рдХреЛрдб



рджреЗрд░ рд╢рд╛рдо рд╣реЛ рдЧрдИ рдереАред

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

рдХреЛрдб рдХрд╛рдо рдХрд┐рдпрд╛ред

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

рдкреНрд░рд╢реНрди рдореЗрдВ рдХреЛрдб рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрд╛ рдЧрдпрд╛:

let Rectangle = {
  resizeTopLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeTopRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeBottomLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeBottomRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },
};

let Oval = {
  resizeLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeTop(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeBottom(position, size, preserveAspect, dx, dy) {
    // 10   
  },
};

let Header = {
  resizeLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },  
}

let TextBlock = {
  resizeTopLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeTopRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeBottomLeft(position, size, preserveAspect, dx, dy) {
    // 10   
  },
  resizeBottomRight(position, size, preserveAspect, dx, dy) {
    // 10   
  },
};

, , .

.

, . , Oval.resizeLeft() , , Header.resizeLeft(). , , .

, . , Oval.resizeLeft() Oval. тАФ . Rectangle, Header TextBlock, .

.

, - . тАФ :

let Directions = {
  top(...) {
    // 5   
  },
  left(...) {
    // 5   
  },
  bottom(...) {
    // 5   
  },
  right(...) {
    // 5   
  },
};

let Shapes = {
  Oval(...) {
    // 5   
  },
  Rectangle(...) {
    // 5   
  },
}

, :

let {top, bottom, left, right} = Directions;

function createHandle(directions) {
  // 20  
}

let fourCorners = [
  createHandle([top, left]),
  createHandle([top, right]),
  createHandle([bottom, left]),
  createHandle([bottom, right]),
];
let fourSides = [
  createHandle([top]),
  createHandle([left]),
  createHandle([right]),
  createHandle([bottom]),
];
let twoSides = [
  createHandle([left]),
  createHandle([right]),
];

function createBox(shape, handles) {
  // 20  
}

let Rectangle = createBox(Shapes.Rectangle, fourCorners);
let Oval = createBox(Shapes.Oval, fourSides);
let Header = createBox(Shapes.Rectangle, twoSides);
let TextBox = createBox(Shapes.Rectangle, fourCorners);

, , , . ! . , , , , .

( ). master , , ┬л┬╗ .


тАж , .

, . . тАФ . .

, , .

тАФ


┬л ┬╗ тАФ , . , - , . , , , .

, , , . , . . , , : ┬л , ┬╗. , .

, , . , , , . . . - , тАФ , . , ┬л┬╗.

, ┬л┬╗, , , :

  • -, , . , . ( ), тАФ . . тАФ .
  • -, . . . , . . ┬л┬╗ .

, ┬л┬╗ ? . , ┬л┬╗ ┬л┬╗. - ? - , , ? , , ? , ?

, , . , тАФ , , , .

тАФ . , , , . , , , , . , . .

. . тАФ . тАФ - , . , , , , . 

. тАФ .

! ┬л ┬╗?

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


All Articles