Generování komplexní logiky s testy
Tento prompt slouží k vygenerování kompletní, produkční kvality kódu včetně ošetření chyb, komentářů a jednotkových testů na základě stručného zadání.
Prompt text
"[Popis funkčnosti]"
Při psaní kódu postupuj podle těchto pokynů:
1. **Struktura a styl:** Použij aktuální best practices pro daný jazyk. Kód musí být čitelný, dobře strukturovaný a oddělený do logických bloků.
2. **Dokumentace:** Každá funkce musí obsahovat JSDoc/DocBlock komentář popisující její účel, parametry a návratové hodnoty.
3. **Ošetření chyb:** Implementuj robustní error handling (try-catch bloky, validace vstupů) a vrať vhodné chybové zprávy nebo status kódy.
4. **Typování:** Pokud jazyk podporuje statické typování (např. TypeScript, C#), použij ho striktně.
5. **Testování:** Napiš komplexní sadu jednotkových testů (pokud je to pro daný jazyk vhodné, např. pytest, Jest) pokrývající běžné scénáře, okrajové případy (edge cases) a chybové stavy. Zaměř se na čitelnost testů ("Arrange-Act-Assert").
Výstup poskytni v jednom bloku kódu, který lze rovnou zkopírovat a použít.
Příklad použití
Vstup:
Popis funkčnosti: Vytvoř třídu `BankovníÚčet`, která umožňuje vkládat a vybírat peníze. Musí obsahovat ochranu proti zápornému zůstatku a metodu pro výpis historie transakcí.
Výstup:
import unittest
from datetime import datetime
from typing import List, Dict
class BankovníÚčet:
"""
Třída reprezentující bankovní účet s historií transakcí.
"""
def __init__(self, počáteční_zůstatek: float = 0.0):
"""
Inicializuje účet s volitelným počátečním zůstatkem.
:param počáteční_zůstatek: Počáteční částka na účtu.
"""
if počáteční_zůstatek < 0:
raise ValueError("Počáteční zůstatek nemůže být záporný.")
self._zůstatek = počáteční_zůstatek
self._historie: List[Dict] = []
def vložit(self, částka: float) -> None:
"""Vloží částku na účet a zaeviduje transakci."""
if částka <= 0:
raise ValueError("Částka pro vklad musí být kladná.")
self._zůstatek += částka
self._přidat_transakci("Vklad", částka)
def vybrat(self, částka: float) -> None:
"""Vybere částku z účtu, pokud je krytá zůstatkem."""
if částka <= 0:
raise ValueError("Částka pro výběr musí být kladná.")
if částka > self._zůstatek:
raise ValueError("Nedostatečný zůstatek pro výběr.")
self._zůstatek -= částka
self._přidat_transakci("Výběr", částka)
def zobrazit_zůstatek(self) -> float:
"""Vrátí aktuální zůstatek."""
return self._zůstatek
def zobrazit_historii(self) -> List[Dict]:
"""Vrátí seznam všech transakcí."""
return self._historie
def _přidat_transakci(self, typ: str, částka: float) -> None:
"""Pomocná metoda pro přidání záznamu do historie."""
self._historie.append({
"typ": typ,
"částka": částka,
"čas": datetime.now().isoformat(),
"zůstatek_po": self._zůstatek
})
class TestBankovníÚčet(unittest.TestCase):
def setUp(self):
self.účet = BankovníÚčet(1000.0)
def test_vklad(self):
self.účet.vložit(500.0)
self.assertEqual(self.účet.zobrazit_zůstatek(), 1500.0)
def test_výběr_v_pořádku(self):
self.účet.vybrat(200.0)
self.assertEqual(self.účet.zobrazit_zůstatek(), 800.0)
def test_výběr_přes_limit(self):
with self.assertRaises(ValueError):
self.účet.vybrat(2000.0)
def test_záporný_vklad(self):
with self.assertRaises(ValueError):
self.účet.vložit(-100.0)
if __name__ == '__main__':
unittest.main()
```
Kde použít tento prompt?
Najděte vhodné AI nástroje pro použití tohoto promptu a maximalizujte jeho efektivitu.
Podobné prompty
Asistent pro psaní e-mailů
Profesionální nástroj pro sestavení, vylepšení nebo přepisování e-mailových zpráv v různých tónech.
Autor Expertního SEO Článku
Komplexní pokyn pro Monica.im k vytvoření hloubkového, optimalizovaného článku na zadané téma s využitím kontextu z webu.
Autor trendových článků s Grokem
Pokročilý systémový prompt pro transformaci suchých dat do poutavého žurnalistického textu využívající schopnosti Groku.
Blog článek s obsahovým kalendářem
Vytvoření zábavného a praktického blogu o social media content kalendáři pro e-commerce.
Objevte další AI prompty
Prozkoumejte naši sbírku Psaní promptů a najděte ty, které vám pomohou dosáhnout lepších výsledků.