Wydaje się, że oznaczają to samo. Ale który termin jest bardziej odpowiedni w jakim kontekście?
properties
modeling
żrący
źródło
źródło
Odpowiedzi:
Ogólnie (iw normalnym języku angielskim) terminy oznaczają to samo.
W specyficznym kontekście HTML / JavaScript terminy są niejasne, ponieważ reprezentacja HTML elementu DOM ma atrybuty (to jest termin używany w XML dla par klucz / wartość zawartych w tagu), ale gdy jest reprezentowany jako obiekt JavaScript te atrybuty pojawiają się jako właściwości obiektu .
Aby jeszcze bardziej zmylić rzeczy, zmiany właściwości zazwyczaj powodują aktualizację atrybutów.
Na przykład zmiana
element.href
właściwości spowoduje zaktualizowaniehref
atrybutu w elemencie, co zostanie odzwierciedlone w wywołaniu funkcjielement.getAttribute('href')
.Jeśli jednak później przeczytasz tę właściwość, zostanie ona znormalizowana do bezwzględnego adresu URL, nawet jeśli atrybut może być względnym adresem URL!
źródło
python
. Czy mogę użyć terminuclass attribute
iinstance property
?Te słowa istniały na długo przed pojawieniem się informatyki.
Atrybut to jakość lub przedmiot, który przypisujemy komuś lub czemuś. Na przykład berło jest atrybutem władzy i państwowości.
Własność to jakość, która istnieje bez przypisania . Na przykład glina ma właściwości klejące; lub jedną z właściwości metali jest przewodnictwo elektryczne. Własności przejawiają się poprzez zjawiska fizyczne bez potrzeby przypisywania ich komuś lub czemuś. Z tego samego powodu powiedzenie, że ktoś ma męskie cechy, jest oczywiste. W efekcie można powiedzieć, że nieruchomość jest własnością kogoś lub czegoś.
Szczerze mówiąc, w informatyce te dwa słowa, przynajmniej w większości, mogą być używane zamiennie - ale z drugiej strony programiści zwykle nie mają dyplomów z literatury angielskiej i nie piszą ani nie przejmują się zbytnio książkami do gramatyki :).
źródło
Często atrybut jest używany do opisania mechanizmu lub rzeczy ze świata rzeczywistego.
Właściwość służy do opisania modelu.
Na przykład dokument (leżący na biurku) może mieć atrybut, że jest wersją roboczą.
Klasa, która modeluje dokumenty, ma właściwość wskazującą, czy jest to wersja robocza. W tym przypadku własność przejmuje stan.
źródło
Atrybut to rzeczywisty element używany w tagu HTML, na przykład
W tym przypadku typ i zaznaczone są atrybutami. Właściwość jest jednak wartością tych atrybutów, które przeglądarka zapisuje wewnątrz elementu DOM. Często wartości atrybutów i właściwości są równe, dlatego jest to tak zagmatwane.
W tym przykładzie element DOM
input
ma właściwośćtype
z wartością"checkbox"
i właściwośćchecked
z wartościątrue
(zwróć uwagę, jak ta wartość różni się od wartości wewnątrz atrybutu HTML).Za pomocą Firebuga możesz obserwować zachowanie właściwości po kliknięciu elementu i wybraniu „widoku DOM”.
źródło
Dokładne znaczenie tych terminów będzie w dużej mierze zależało od języka / systemu / wszechświata, o którym mówisz.
W HTML / XML atrybut jest częścią tagu ze znakiem równości i wartością, a własność na przykład nic nie znaczy.
Dlatego potrzebujemy więcej informacji na temat domeny, o której rozmawiasz.
źródło
W Pythonie ...
Właściwość to pojedyncza nazwa podobna do atrybutu, która otacza zbiór funkcji ustawiających, pobierających (i usuwających).
Atrybut jest zwykle pojedynczym obiektem w innym obiekcie.
Powiedziawszy to jednak, Python udostępnia metody,
__getattr__
które pozwalają rozszerzyć definicję „atrybutu”.Bottom Line - są prawie synonimami. Python wprowadza techniczne rozróżnienie w sposobie ich implementacji.
źródło
W Javie (lub innych językach) użycie właściwości / atrybutu zależy od zastosowania:
Właściwość używana, gdy wartość nie zmienia się zbyt często (zwykle używana podczas uruchamiania lub dla zmiennej środowiskowej)
Atrybuty to wartość (obiekt potomny) elementu (obiektu), która może zmieniać się bardzo często / cały czas i być trwała lub nie
źródło
W HTML wydaje się, że atrybuty są specyficzne dla drzewa DOM, podczas gdy właściwości są używane do opisywania cech elementów DOM
źródło
Jaka jest różnica między atrybutem a właściwością?
Jaka jest różnica między funkcją a funkcją? Jaka jest różnica między Characteristic i Character? Jaka jest różnica między Act a Behaviour?
To tylko zmiana kontekstu.
Przedmiot, produkt, osobowość, osoba
Osoba zachowuje się w sposób. Osobowość ma cechy danej postaci. Produkt posiada Cechę, która wywodzi Funkcjonalność. Obiekt miał atrybuty, które nadają mu właściwości.
źródło
byłby jednym ze sposobów spojrzenia na to.
W C #
źródło
Delphi wykorzystało właściwości i trafiło do .NET (ponieważ ma tego samego architekta).
W Delphi są one często używane w połączeniu z informacjami o typie środowiska uruchomieniowego, tak że zintegrowany edytor właściwości może być używany do ustawiania właściwości w czasie projektowania.
Właściwości nie zawsze są powiązane z polami. Mogą to być funkcje, które mogą mieć skutki uboczne (ale oczywiście jest to bardzo zły projekt).
źródło