Size: a a a

2021 September 09

f

folex in codingteam
ГОСПОДИ БОЖЕ МОЙ
источник

f

folex in codingteam
тайпскрипт - конченый язык
источник

f

folex in codingteam
источник

t

ttldtor in codingteam
НЕ СПОЙЛЕРИ!
источник

f

folex in codingteam
class Employee {}

function getEmployee(id: number): Employee;                     //Overload 1
function getEmployee(email: string): Employee;                  //Overload 2
function getEmployee(email: number, name: string): Employee;    //Overload 3

//function getEmployee(name: string): Employee;                 //Error - Conflict with Overload 2

//Implement the function
function getEmployee (paramOne: string | number, paramTwo?: string ): Employee {
   
   let employee: Employee;

   if( typeof paramOne === 'number') {
       //Logic for overload 1
   } else if( typeof paramTwo != 'undefined') {
       //Logic for overload 3
   } else {
       //Logic for overload 2
   }

   return employee;
}
источник

f

folex in codingteam
это пиздец
источник

f

folex in codingteam
это просто пиздец
источник

t

ttldtor in codingteam
мне ещё только предстоит)
источник

f

folex in codingteam
то есть в тайпскрипте нету перегрузки методов, есть просто ХУЕТЕНЬ
источник

f

folex in codingteam
зачем кто-то решил что такой паттерн вообще имеет место быть?
источник

f

folex in codingteam
ну почему нельзя было нормально диспатчинг сделать? а? а? а?
источник

f

folex in codingteam
внутрь компилятора хероту эту с typeof засунуть? а?
источник

f

folex in codingteam
КОНЧЕНЫЕ
источник

f

folex in codingteam
чтобы можно было нормально блядь делать, щас покажу как
источник

t

ttldtor in codingteam
function getEmployee(name: Name) : emploee
источник

t

ttldtor in codingteam
function getEmployee(email: Email) : emploee
источник

f

folex in codingteam
class Employee {}

function getEmployee(id: number): Employee {
   let email = getEmail();
   let name = getName();
   return getEmployee({
       id,
       email,
       name,
   })
}
function getEmployee(email: number, name: string): Employee {
   let id = getId();
   let name = getName();
   return getEmployee({
       id,
       email,
       name,
   })
}

function getEmployee (args: { id: number, email: string, name: string }): Employee {
   let employee: Employee = createEmployee(args);
   return employee;
}
источник

f

folex in codingteam
вот нормальная перегрузка методов
источник

f

folex in codingteam
а не эта ебень
источник

f

folex in codingteam
ПИЗДЕЦ
источник