0:00 / 0:00

Podstawy pracy z Cursor IDE: Podstawy pracy z Cursor IDE

Programowanie wspólnie z Claude 3.5 Sonnet

37 min · HTML i CSS · Full-stack i Programowanie

Adam Gospodarczyk

Czego się nauczysz

  • Narzędzia dostępne w Cursor IDE
  • Proste zmiany w kodzie z funkcją Inline Edit
  • Rozmowa z LLM na temat naszego projektu w Cursor Chat
  • Implementowanie kompletnej funkcjonalności w Cursor Composer
  • Najważniejsze ustawienia i prompt systemowy
  • Pliki .cursorignore i .cursorrules
  • Techniki pracy z Cursor IDE

Fundament w postaci Visual Studio Code

Cursor IDE to alternatywna wersja Visual Studio Code, a nie jedynie jego rozszerzenie (np. jak Github Copilot). Zatem u swoich podstaw jest to dokładnie to samo narzędzie, co pozwala na automatyczne zaimportowanie ustawień i rozszerzeń. Jednak w przeciwieństwie do oryginalnego VSC, dostajemy dostęp do edycji kodu "inline", z pomocą okna czatu, a także specjalnego "composer'a" dzięki któremu LLM jest w stanie generować kod i natychmiast wprowadzać zmiany w wielu plikach projektu.

Kod projektu jako kontekst generowanej treści

Choć ChatGPT może generować kod oraz pomagać przy rozwiązywaniu problemów, to wymaga od nas opisywania kontekstu naszego projektu. W przypadku Cursor IDE wystarczy skorzystać z dostępnych symboli ("@"), aby dołączyć pliki i katalogi do bieżącej konwersacji. Bezpośrednio przekłada się to na wzrost generowanych odpowiedzi oraz ich dopasowanie do bieżącego projektu.

Composer, czyli modyfikowanie wielu plików

W przeciwieństwie do (obecnej wersji) Github Copilot, Supermaven czy Tabnine, Cursor ma możliwość wprowadzania zmian w wielu plikach jednocześnie. Następnie w oknie "Control Panel" możemy zweryfikować sugerowany kod i porównać go z dotychczasową wersją w widoku "Diff". W przypadku potrzeby wprowadzania dalszych poprawek, możemy po prostu kontynuować interakcję, a Cursor samodzielnie zdecyduje o tym, które pliki wymagają zmian.

Aktualna wiedza bezpośrednio z dokumentacji

Zakres wiedzy dużych modeli językowych (LLM) jest ograniczony w czasie i nie obejmuje wszystkich możliwych informacji. Fakt ten przekłada się na generowanie kodu zawierającego odwołania do nieistniejących już funkcji, czy nawet takich, które nigdy wcześniej nie istniały. Ten problem można w znacznym stopniu rozwiązać poprzez dodanie do rozmowy fragmentów dokumentacji lub wyników wyszukiwania. Cursor znacznie to ułatwia poprzez opcję indeksowania wskazanych przez nas dokumentacji, które następnie mogą zostać przywołane w trakcie rozmowy.

Pair Programming z LLM

Może się wydawać, że modele językowe, dzięki umiejętności generowania kodu, są w stanie pracować w pełni autonomicznie. Dość szybko można się przekonać, że w praktyce tak nie jest, ponieważ ograniczona wiedza, umiejętności rozumowania czy niewystarczające informacje o kontekście projektu nie pozwalają na bezbłędny rozwój projektu. Z drugiej strony, gdy programujemy samodzielnie, to również możemy spotkać podobne bariery i ograniczenia. Dlatego najwięcej korzyści daje współpraca z LLM i wspólne rozwiązywanie problemów oraz dążenie do rozwiązania i właśnie w takim przypadku Cursor IDE sprawdza się najlepiej. Aby dodatkowo zwiększyć wartość z tej współpracy nie wystarczy tylko poznać tego narzędzia, ale także dowiedzieć się więcej na temat dużych modeli językowych oraz szerokopojętego generatywnego AI.

Dla kogo jest ten kurs?

Warsztat "Cursor IDE" jest przeznaczony dla osób chcących poznać możliwości tego narzędzia oraz techniki pracy z nim w praktycznym projekcie. Materiał ten może okazać się wartościowy także dla osób, które pracują już z tym IDE i szukają wskazówek oraz inspiracji związanych z programowaniem wspólnie z dużymi modelami językowymi. Ze względu na złożoność omawianego przykładu, wskazane jest posiadanie programistycznego doświadczenia w dowolnym języku programowania oraz ogólnego zrozumienia technologii.