- π I'm skilled in javascript, Typescript, React, Next.js, PHP, Laravel.
- ποΈ I'm interested in Typescript, Flutter.
- π« Contact me: { email: [email protected], linkedin: seyed majid attar, telegram: majid19373 }
type Contacts = {
email: string
linkedin: string
telegram: string
}
type User = {
name: string
yearOfBirth: number
skills: string[]
favorites: string[]
contacts: Contacts
}
class Person {
protected name: string
protected yearOfBirth: number
constructor( name: string, yearOfBirth: number ) {
this.name = name
this.yearOfBirth = yearOfBirth
}
public about(): string {
return `Hello, I'm ${this.name} and I was born in ${this.yearOfBirth}.`
}
}
class Developer extends Person {
private skills: string[]
private favorites: string[]
private contacts: Contacts
constructor( { name, yearOfBirth, skills, favorites, contacts }: User ) {
super( name, yearOfBirth )
this.skills = skills
this.favorites = favorites
this.contacts = contacts
}
public printInformation():void {
const str: string = `
π ${this.about()}
- π I'm skilled in ${this.skills.toString()}.
- ποΈ I'm intrested in ${this.favorites.toString()}.
- π« Contact me: ${JSON.stringify(this.contacts)}
`
console.log(str)
}
}
const user: User = {
name: 'Seyed Majid Attar',
yearOfBirth: 1994,
skills: ['javascript', 'Typescript', 'React', 'Next.js', 'php', 'Laravel'],
favorites: ['Typescript', 'Flutter'],
contacts: {
email: '[email protected]',
linkedin: 'seyed majid attar',
telegram: 'majid19373'
}
}
const developer:Developer = new Developer({...user})
developer.printInformation()