TypeScript:
Koodin refaktorointi

Miten:

Oletetaan, että sinulla on TypeScript-funktio, joka on nähnyt parempia päiviä - se on hieman sekasotku ja kaipaisi hieman hellää huolenpitoa:

function userInfo(data: any): string {
    return "User Info: " + data.name + ", " + data.age + ", " + data.email + ";" ;
}

Refaktoroidussa muodossa tämä saattaisi näyttää tältä:

interface User {
    name: string;
    age: number;
    email: string;
}

function formatUserInfo(user: User): string {
    return `User Info: ${user.name}, ${user.age}, ${user.email};`;
}

Toinen esimerkki on robustimpi, hyödyntäen TypeScriptin tyypitysjärjestelmää interface:n avulla välttääkseen potentiaaliset suoritusaikaiset virheet ja parantaakseen luettavuutta.

Syväsukellus

Refaktorointi ei ole moderni käsite; se on kehittynyt ohjelmoinnin mukana, muodollistuen Martin Fowlerin kirjan “Refactoring: Improving the Design of Existing Code” julkaisun myötä vuonna 1999. Se on elintärkeää ketterässä kehitysympäristössä, mahdollistaen joustavat koodimuutokset. Manuaalisen refaktoroinnin vaihtoehtoja ovat automatisoidut työkalut kuten TSLint tai TypeScriptin oma kielipalvelin, jotka voivat ehdottaa tai jopa suorittaa tietyt refaktorointitehtävät puolestasi. Toteutuksen yksityiskohdat yleensä sisältävät “koodinhajujen”, kuten duplikaattikoodin, pitkien metodien tai suurten luokkien, tunnistamisen ja kuvioiden soveltamisen korjaukseen—kuten metodien eriyttäminen, siirtäminen sopivampiin luokkiin tai yksinkertaisempien rakenteiden käyttö. Nämä kuviot ovat keskeisiä ymmärtäessä refaktoroinnin mitä ja miksi.

Katso Myös