Jeden prosty trik z nazewnictwem, który powstrzyma gnicie kodu
Przestań nazywać swoje klasy Service, Manager lub Handler.
Te nazwy są niejasne. Działają jak przyzwolenie na zły projekt.
Jeśli nazwiesz klasę UserService, możesz do niej wrzucić wszystko, co ma związek z użytkownikiem. Możesz dodać resetowanie haseł, przypisywanie ról i obliczanie zniżek. Wszystko to dotyczy użytkownika, więc nazwa wydaje się poprawna.
Ale te zadania mają różne reguły i zależności. Pojedynczy UserService staje się gigantycznym bałaganem.
Zamiast tego wypróbuj nazewnictwo sprawcze (agentive naming). Używaj nazw, które opisują konkretną czynność:
• UserRegistrar • PasswordResetter • RoleAssigner • DiscountCalculator
Te nazwy wprowadzają tarcie. Jeśli PasswordResetter nagle będzie potrzebował narzędzia do generowania faktur, błąd będzie oczywisty. Nazwa sprawia, że złego projektu nie da się zignorować.
Niejasna nazwa, taka jak UserService, jest jak typ „any” w programowaniu. Akceptuje wszystko. Precyzyjne nazwy tworzą granice.
Teraz ma to jeszcze większe znaczenie ze względu na AI.
Agenci kodujący AI analizują Twój istniejący kod, aby zdecydować, gdzie umieścić nową logikę. Jeśli dasz AI klasę UserService, doda ona nowe funkcje do tej samej, nieuporządkowanej klasy. Zrobi to bardzo szybko.
Jeśli dasz AI klasę PasswordResetter, będzie ona trzymać się tych konkretnych granic.
Twoja baza kodu to prompt dla AI. Niejasne nazwy uczą niejasnego projektowania.
Nazwy nie tworzą dobrej architektury. One sprawiają, że zła architektura staje się widoczna.
Nadaj każdej odpowiedzialności nazwę na tyle precyzyjną, aby niepowiązany kod wyglądał nieuczciwie.
Source: https://dev.to/caeus/one-simple-naming-trick-that-keeps-vibe-coded-code-from-rotting-5hf5
Optional learning community: https://t.me/GyaanSetuAi