Aloittelija10 min

Cursor: Chat vs Composer

Chat ja Composer ovat Cursorin kaksi pääasiallista AI-työkalua. Niillä on eri tarkoitukset ja vahvuudet. Tässä oppaassa opit valitsemaan oikean työkalun kuhunkin tilanteeseen.

Chat: Keskustelukumppani

Chat (Cmd+L) on keskustelupohjainen työkalu:

Vahvuudet: - Kysymyksiin vastaaminen - Koodin selittäminen - Ideoiden sparraus - Ongelmien diagnosointi - Dokumentaation etsiminen

Käyttötapaukset: - "Miksi tämä koodi ei toimi?" - "Selitä mitä tämä funktio tekee" - "Mikä on paras tapa toteuttaa X?" - "Mitä tämä virheviesti tarkoittaa?"

Chat ei muokkaa tiedostoja suoraan - se ehdottaa koodia jonka voit kopioida.

// Hyvä Chat-prompti:
"Selitä miten React useEffect toimii ja
milloin sitä pitäisi käyttää. Anna esimerkkejä
yleisimmistä käyttötapauksista."

Composer: Toteuttaja

Composer (Cmd+I) on koodin kirjoittamiseen:

Vahvuudet: - Koodin kirjoittaminen - Useiden tiedostojen muokkaus - Refaktorointi - Testien luonti - Uusien ominaisuuksien toteutus

Käyttötapaukset: - "Lisää autentikaatio sovellukseen" - "Refaktoroi tämä komponentti" - "Luo uusi API-endpoint" - "Korjaa tämä bugi"

Composer näyttää muutokset diff-näkymässä ja muokkaa tiedostoja suoraan.

// Hyvä Composer-prompti:
"Luo uusi React-komponentti ProductCard.tsx
joka näyttää tuotteen kuvan, nimen, hinnan
ja 'Lisää koriin' -napin. Käytä TypeScript
ja Tailwind CSS."

Vertailu taulukossa

OminaisuusChatComposer
----------------------------
PikanäppäinCmd+LCmd+I
TarkoitusKeskusteluToteutus
Muokkaa tiedostojaEiKyllä
Multi-fileRajoitettuKyllä
Diff-näkymäEiKyllä
Agent-tilaEiKyllä
Sopii kysymyksiinErinomainenHeikko
Sopii toteutukseenHeikkoErinomainen

Milloin valita Chat?

Käytä Chatia kun:

1. Kysyt jotain - "Mitä tämä koodi tekee?" - "Miksi saan tämän virheen?"

2. Haluat oppia - "Selitä miten async/await toimii" - "Mikä ero on useMemo ja useCallback?"

3. Suunnittelet - "Mikä olisi paras arkkitehtuuri tälle?" - "Mitä pitäisi huomioida tässä toteutuksessa?"

4. Debuggaat - "Miksi tämä testi ei mene läpi?" - "Missä tässä koodissa on ongelma?"

Milloin valita Composer?

Käytä Composeria kun:

1. Toteutat uutta - "Luo käyttäjäprofiilisivu" - "Lisää hakutoiminto"

2. Muokkaat olemassa olevaa - "Refaktoroi tämä funktio" - "Lisää TypeScript-tyypit"

3. Korjaat bugeja - "Korjaa tämä null-pointer -virhe" - "Fixaa tämä layout-ongelma"

4. Teet laajoja muutoksia - "Päivitä kaikki API-kutsut käyttämään uutta endpointia" - "Lisää error handling kaikkiin API-funktioihin"

Chat ja Composer yhdessä

Tehokkain työnkulku yhdistää molemmat:

1. Suunnittele Chatissa - "Miten kannattaisi toteuttaa käyttäjäautentikaatio?"

2. Toteuta Composerissa - "Toteuta autentikaatio suunnitelman mukaan"

3. Debuggaa Chatissa - "Miksi kirjautuminen ei toimi?"

4. Korjaa Composerissa - "Korjaa session hallinta"

Vinkki: Voit kopioida Chatin vastauksia Composeriin ja päinvastoin.

Vinkki: Aloita usein Chatista suunnittelulla ja siirry Composeriin toteutukseen.

Yhteenveto

  • Chat on kysymyksiin ja keskusteluun - Cmd+L
  • Composer on toteutukseen ja muokkaukseen - Cmd+I
  • Chat ei muokkaa tiedostoja, Composer muokkaa
  • Yhdistä molemmat: suunnittele Chatissa, toteuta Composerissa

Usein kysytyt kysymykset