Kódátnézés beküldés előtt

Tapasztalt kollégaként nézi át a módosításodat: hibák és biztonsági gondok súlyosság szerint, konkrét sorral és javítási javaslattal, ízlésbeli szőrszálhasogatás nélkül.

FejlesztésHaladóAjánlott eszközök: ChatGPT, Claude, GeminiFrissítve:

Töltsd ki a saját adataiddal

A sárgával jelölt részeket cseréld a saját adataidra.

Nézd át az alábbi kódmódosítást, mielőtt beküldöm. Olyan visszajelzést kérek, amilyet egy alapos, de nem kötekedő senior kollégától kapnék. Nyelv, keretrendszer, verziók: [KÖRNYEZET] Mit kell megoldania a módosításnak: [CÉL] A projekt szokásai, amiket tartani kell: [KONVENCIÓK] A módosítás (diff vagy a teljes fájl): """ [KÓD] """ A válasz szerkezete: 1. Egy bekezdés: mit csinál a kód a te olvasatodban. Ha ez eltér a megadott céltól, az az első észrevétel. 2. Észrevételek súlyosság szerint: - Blokkoló: hibás működés, adatvesztés, biztonsági rés. - Fontos: szélső eset, hibakezelés, teljesítmény valós terhelésnél. - Apróság: olvashatóság, elnevezés. Mindegyiknél: melyik sor vagy függvény, mi a gond, mi lenne a következménye, és javítási javaslat néhány sorban. 3. Ami hiányzik: tesztek, hibakezelés, naplózás. 4. Ami jó, röviden. Szabályok: ízlésbeli kérdésben ne tegyél észrevételt, ha a kód megfelel a megadott konvencióknak. Ne írd át az egész fájlt. Ha valamit a megadott részletből nem tudsz megítélni (például egy hívott függvény viselkedését), kérdezz rá, ne feltételezz.

EllenőrzésCtrl + Enter: másolás

Példa: kitöltve, mintaválasszal

Környezet
Python 3.12, FastAPI, SQLAlchemy 2
Cél
Végpont, amely e-mail-cím alapján visszaadja a felhasználó rendeléseit
Konvenciók
Típusannotáció mindenhol, a lekérdezések a repository rétegben vannak
Kód
@app.get('/orders') def orders(email: str, db=Depends(get_db)): q = f"SELECT * FROM orders WHERE email = '{email}'"; rows = db.execute(text(q)).fetchall(); return [dict(r) for r in rows]
Mintaválasz (Claude)

1. Mit csinál? Az e-mail-címet közvetlenül beilleszti egy SQL-szövegbe, lefuttatja, és minden oszlopot visszaad. A cél teljesül, de két blokkoló hibával.

2. Észrevételek

Blokkoló

  • SQL-befecskendezés (q = f"... '{email}'"): a paraméter ellenőrzés nélkül kerül a lekérdezésbe. Egy kézzel összerakott e-mail-értékkel a teljes tábla kiolvasható. Javítás: kötött paraméter, text("... WHERE email = :email") és {"email": email}.
  • Nincs jogosultság-ellenőrzés: bárki lekérheti bárki rendeléseit az e-mail-cím ismeretében. Az azonosítót a bejelentkezett felhasználóból vedd, ne a kérésből.

Fontos

  • SELECT *: belső oszlopok is kikerülhetnek a válaszba. Válaszmodellt adj meg.

Apróság

  • Hiányzik a visszatérési típus, és a lekérdezés a konvenció szerint a repository rétegbe való.

3. Hiányzik: teszt a „nincs ilyen felhasználó” esetre és lapozás nagy rendelésszámnál.

Szemléltető minta, Claude segítségével készült: azt mutatja, milyen jellegű és felépítésű válaszra számíthatsz. A többi ajánlott eszközzel a prompt várhatóan ugyanígy használható, de nem mindegyikben próbáltuk ki. A te eredményed más lesz. Hogyan készülnek a példák?

Miért működik?

A „nézd át a kódomat” kérésre a modell hajlamos tíz egyformán súlyosnak tűnő megjegyzést adni, a fele ízlés kérdése. A súlyossági szintek kikényszerítik a rangsort, a konvenciók mezője pedig megmondja, mi nem vita tárgya.

Az első pont egy rejtett ellenőrzés: ha a modell mást ért a kódból, mint amit szántál, ott vagy a kód, vagy a leírás hibás.

Mire figyelj?

  • Kulcsokat, jelszavakat és ügyféladatot törölj a kódból beillesztés előtt, és céges kódnál nézd meg, mit enged a munkáltatód.
  • A modell nem futtatja a kódot. A blokkoló észrevételeket teszttel igazold, mielőtt elfogadod vagy elveted.

Tippek eszközönként

Kódasszisztensek (Cursor, Claude Code, Copilot)
A kód mezőbe írd: „a jelenlegi ág módosításai a fő ághoz képest”. Így a hívó kódot is meg tudja nézni.

Folytasd ezekkel

Ugyanabban a beszélgetésben küldd el, a válasz után.

  • Írd meg a javított változatot csak a blokkoló hibákra, a lehető legkisebb módosítással.
  • Írj három tesztet, amely a talált hibákat lefedi.

Kapcsolódó promptok

Összes fejlesztés prompt

Funkció specifikálása kódolás előtt

Mielőtt kódot kérnél az AI-tól, írasd meg vele a tervet. A prompt kérdésekkel tisztázza az ötletedet, majd rövid specifikációt készít elfogadási feltételekkel.

Fejlesztés