AArevia
Środowisko programowania z AI

Prostokątne obszary siatki CSS

Sprawdź prostokątne obszary siatki z nazwami ASCII i pojedynczymi kropkami jako pustymi komórkami.

● ● ●Arevia●
Sposoby pracy · Prostokątne obszary siatki CSS ×
import re

def grid_areas(rows):
    if type(rows) is not list or any(type(r) is not str for r in rows):
        raise ValueError("grid.rows")
    if not rows:
        return {}
    cells = [r.split() for r in rows]
    width = len(cells[0])
    if not width or any(len(r) != width for r in cells):
        raise ValueError("grid.width")
    groups = {}
    for y, row in enumerate(cells):
        for x, name in enumerate(row):
            if name == ".":
                continue
            if not re.fullmatch(r"[A-Za-z_][A-Za-z0-9_-]*", name):
                raise ValueError("grid.name")
            groups.setdefault(name, []).append((y, x))
    result = {}
    for name, points in groups.items():
        top, bottom = min(y for y,x in points), max(y for y,x in points)+1
        left, right = min(x for y,x in points), max(x for y,x in points)+1
        if len(points) != (bottom-top)*(right-left):
            raise ValueError("grid.rectangle")
        result[name] = (top, bottom, left, right)
    return result
✳Prostokątne obszary siatki CSS
✓ ZmianySprawdź przed zastosowaniem ↗
Ilustracja środowiska
01

Projekt

Przetestuj pusty zbiór, nierówne wiersze i rozłączne nazwy, zwracając granice wyłączne tylko dla wypełnionych prostokątów.

02

Sprawdź przed zastosowaniem

Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.

03

Modele

Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.

Sposoby pracy

Prostokątne obszary siatki CSS

Sposoby pracy ↗
Sposoby pracy
import re

def grid_areas(rows):
    if type(rows) is not list or any(type(r) is not str for r in rows):
        raise ValueError("grid.rows")
    if not rows:
        return {}
    cells = [r.split() for r in rows]
    width = len(cells[0])
    if not width or any(len(r) != width for r in cells):
        raise ValueError("grid.width")
    groups = {}
    for y, row in enumerate(cells):
        for x, name in enumerate(row):
            if name == ".":
                continue
            if not re.fullmatch(r"[A-Za-z_][A-Za-z0-9_-]*", name):
                raise ValueError("grid.name")
            groups.setdefault(name, []).append((y, x))
    result = {}
    for name, points in groups.items():
        top, bottom = min(y for y,x in points), max(y for y,x in points)+1
        left, right = min(x for y,x in points), max(x for y,x in points)+1
        if len(points) != (bottom-top)*(right-left):
            raise ValueError("grid.rectangle")
        result[name] = (top, bottom, left, right)
    return result
Środowisko programowania z AI

Od reguły układu do użytecznej odpowiedzi interfejsu

Arevia to środowisko programistyczne AI dla Windows do tworzenia kodu łączącego dane układu z widocznym zachowaniem. Otwórz odpowiednie pliki projektu i opisz, co osoba edytująca układ powinna móc wyrazić. Poproś model o sprawdzenie walidatora i wywołującego go kodu przed zmianą którejkolwiek strony tej interakcji.

Wybierasz model pomocniczy przez obsługiwany punkt końcowy zgodny z OpenAI lub punkt końcowy Anthropic i podajesz dane uwierzytelniające, gdy są wymagane. Model AI bez cenzury można wybrać, jeśli oferuje go Twój punkt końcowy. Jego ograniczenia, obsługa narzędzi i pojemność kontekstu pozostają właściwościami tej konfiguracji, a nie gwarancjami związanymi z zadaniem dotyczącym układu.

Przykładowe zadanie to sprawdzenie prostokątności obszarów siatki CSS. Przedstaw w rozmowie poprawną siatkę, rozłączny nazwany obszar i nierówny wiersz. Zapytaj, jak obecna implementacja przyjmuje lub odrzuca każdy przypadek, a następnie przejrzyj proponowaną zmianę, która zachowuje poprawne układy i wyjaśnia użytkownikowi nieprawidłowy układ.

Przeglądaj wynik walidatora i odpowiedź interfejsu razem. Poprawne odrzucenie nadal wymaga użytecznego komunikatu, a zaakceptowany układ powinien trafić do zamierzonej ścieżki renderowania. Uruchom testy projektu, sprawdź zmieniony kod i wypróbuj reprezentatywne układy we własnym interfejsie, zanim uznasz, że funkcja działa zgodnie ze specyfikacją.

Od danych układu do informacji zwrotnej

Co odróżnia błąd reguły siatki od problemu z renderowaniem?

Najpierw sprawdź, czy przesłana struktura przechodzi zamierzoną walidację. Jeśli tak, prześledź zaakceptowany wynik aż do renderowania. Poproś model o sprawdzenie obu ścieżek na tych samych danych testowych, zamiast zmieniać CSS przed ustaleniem etapu awarii.

Czy nieprawidłowy obszar należy naprawiać automatycznie?

Tylko jeśli jest to wyraźne wymaganie produktu. Naprawa może zmienić zamierzony przez kogoś układ. Określ, czy interfejs ma odrzucać, wyjaśniać czy przekształcać dane, i oceń powstały kod względem wybranego zachowania.

Jakie przykłady siatki dołączyć do prośby o zmianę?

Uwzględnij poprawny prostokąt, nazwany obszar z przerwą i wiersze o różnych szerokościach. Podaj oczekiwany wynik każdego przypadku. Dodaj najmniejszy zestaw danych odtwarzający Twój problem, aby przegląd dotyczył zgłoszonego zachowania.

Jak utrzymać właściwy zakres zadania podglądu układu?

Wskaż pliki i przypadki akceptacyjne przed zleceniem pracy. Przejrzyj proponowane działania narzędzi, ponieważ lokalne wnioskowanie modelu wymaga osobnego serwera i nie sprawia, że wszystkie narzędzia działają lokalnie. Sprawdź powstały interfejs w faktycznie używanym środowisku.

Pobierz dla Windows ↗

Arevia · Zaktualizowano 2026-10-25