Documentație / IDE-ul

Inteligența codului

Navigare exactă, referințe, ierarhii, refactorizări cu previzualizare și căutare de simboluri.

Yuli îți înțelege codul, nu doar textul lui. Navigarea te duce mereu la linia exactă, iar refactorizările îți arată impactul înainte de a fi aplicate.

Acțiune Scurtătură
Salt la definiție Ctrl+B sau Ctrl+Clic
Salt la implementare Ctrl+Alt+B
Găsește utilizările Alt+F7 sau Shift+F12
Ierarhia apelurilor Ctrl+Alt+H
Ierarhia tipurilor Ctrl+H
Fluxul și urma metodei Ctrl+Alt+F
Caută simbol (clasă, metodă…) Ctrl+T
Salt la un simbol din fișier Ctrl+Shift+O
Salt la obiectul din baza de date (funcție, pachet, tabel) Ctrl+Alt+J

Ctrl+Clic aproape instantaneu

Destinația se rezolvă cât timp cursorul stă pe simbol, iar fișierul este citit în avans. Dacă tot durează, apare o notificare discretă care nu blochează editorul.

Cod generat

Accesorii generați din adnotări (getterii, setterii, constructorii și builderii Lombok) duc la câmpul din care provin.

Panoul de referințe

Un panou compact pe două coloane: clasa și membrul, plus fragmentul liniei. Opțiunile lui sunt reținute:

  • Accese de citire și de scriere.
  • Cod generat.
  • Importuri.
  • Calea fișierului.
  • Grupare după fișier.
  • Previzualizarea codului.

Refactorizări

Refactorizare Scurtătură
Redenumește simbolul Shift+F6 (sau F2)
Extrage metoda Ctrl+Alt+Shift+M
Schimbă semnătura Ctrl+F6
Mută clasa F6
Extragerea unei variabile și inline Din acțiunile rapide (Alt+Enter)

Redenumirea arată previzualizarea impactului înainte de aplicare.

Biblioteci externe

Dependențele pot fi parcurse din panoul proiectului. Clasele lor se deschid în linie sau în vizualizare împărțită, cu codul sursă sau decompilate, întotdeauna doar în citire.

Jar-uri proprii

Adaugă biblioteci .jar în Proiect → Structura proiectului… sau cu Adaugă .jar din panoul Maven / Gradle:

  • Ca dependență reală: în Maven, system sau instalată în depozitul local; în Gradle, implementation files(...).
  • Sau ca bibliotecă a IDE-ului, fără a atinge build-ul.

Motorul Java rezolvă aceste jar-uri chiar dacă Maven sau Gradle nu pot rula.

Proiecte nemigrate

Yuli înțelege un build.xml Ant și fișierele .classpath și .project ale Eclipse (surse, jar-uri, variabile și rădăcina web WTP). Ai completare automată, navigare și compilare fără Maven sau Gradle.

Framework-uri

Framework Ce înțelege
Spring Bean-uri, injecție și endpoint-uri. Panoul Spring din panoul inferior.
JPA și Hibernate Entități, mapări XML și tabele.
Struts 1 și 2 Acțiuni, formulare și configurare.
Servlets și JSP web.xml, taglib-uri, include-uri și mesaje.
Lombok Accesori, constructori și builderi.

Cum funcționează în interior

Piesă Ce face
Tree-sitter Analizează codul incremental.
Graful de simboluri Clase, metode, câmpuri și relațiile dintre ele (apelează, extinde, implementează, injectează).
SQLite Salvează graful în .ai/codebase/, în afara Git.
Invalidare Când editezi un fișier, se reanalizează doar ce depinde de el.
Compilatorul Java Rezolvarea exactă a tipurilor.

Panoul Code Intelligence (Alt+0) arată starea indexului.

Cu agentul

Agentul folosește aceeași inteligență: yuli_find_references, yuli_impact, yuli_search_symbols, yuli_refactor… Pentru a răspunde la întrebări despre proiect, extrage un subgraf delimitat în loc să citească fișiere întregi, ceea ce economisește context și tokeni.

Inspecții și calitate

Deasupra codului apar și inspecțiile (null-safety, cod mort, Spring) și metricile de calitate: deasupra fiecărei metode, CC · CoG · MI · líneas · cobertura · costo. Severitățile se ajustează în Opțiuni globale → Inspecții. Vezi Măsurarea față de N−1.