2010-02-25 14 views
8

Wiele pytań tutaj na SO zapytać o niestandardowych klas. Ja z drugiej strony nie mam pojęcia, o czym mówią. "Klasa niestandardowa" zdaje się oznaczać to samo, co mam na myśli, gdy mówię "klasa".Jakie jest znaczenie terminu "klasa niestandardowa"?

Czego mi brakowało w latach 80., co powstrzymuje mnie od zrozumienia?


Wiem, że można kupić system pakowany - dla księgowości, ERP lub coś w tym stylu. Następnie możesz go dostosować lub dodać "niestandardowy kod", aby pakiet zrobił rzeczy specyficzne dla Twojej firmy.

Ale to nie opisuje procesu używanego do pisania programu .NET. W tym przypadku cały cel .NET Framework pozwala nam pisać własny kod. Nie ma nic przydatnego po wyjęciu z pudełka.

+1

Klasa, która nie jest wyjęta z pudełka (framework/library/etc)? – alex

+5

czekaj, to było poważne pytanie? Ma więcej przedstawicieli niż większość diet. http://stackoverflow.com/users/159179/budda na przykład. Nie ma być niegrzeczny po prostu szturchanie zabawy tu i tam :) – Woot4Moo

+4

P.S. Czy w latach 80. * mieli * klasy? : P – Aaronaught

Odpowiedz

16

Klasy że piszesz sobie kontra klas, które pochodzą z ramami

+0

To jest ta część, której nigdy nie zrozumiałem. Framework właściwie nic nie robi. Bez "klas niestandardowych" nic się nie dzieje. Dlaczego więc dokonać rozróżnienia? –

+0

Może "zwyczaj" jest używany w sposób specyficzny dla kontekstu. Są "niestandardowe" dla aplikacji, którą budujesz. Lub jego tylko semantyka. – bkaid

0

Kusi mnie żartować, ale zamiast tego będę umieścić w poważnych dwóch centów; Ludzie są przyzwyczajeni do dokonywania dostosowań - jeśli chodzi o programowanie, muszą chcieć niestandardowej klasy.

3

Termin "kod niestandardowy" jest ogólnie używany w odniesieniu do kodu, który można napisać, aby rozszerzyć istniejącą bibliotekę lub strukturę. Przypuszczam, że "klasa niestandardowa" byłaby klasą, do której można podłączyć bibliotekę lub framework, być może poprzez implementację interfejsu lub dziedziczenie z abstrakcyjnej klasy bazowej.

Prawdopodobnie nazwałbym to "klasą indywidualizacji", ale z pewnością nie jest to pierwsza niezręcznie określona koncepcja komputerowa, o której tu słyszałem.

+0

Tak, myślę, że ważne jest to, że ma to znaczyć, że klasa koncentruje się na dodaniu implementacji (nie interfejsu) do zbioru kodu, którego nie jest częścią. Na przykład w Swingu niestandardowy 'TableModel' implementowałby' TableModel', ale w przeciwieństwie do 'DefaultTableModel' nie jest częścią Swing ani JDK. –

1

Jedyną rzeczą, która ma dla mnie sens, jest rozszerzenie istniejącej klasy w ramach lub bibliotece, czy coś w tym stylu, lub po prostu napisanie klasy w innym rozwiązaniu kodu?

Doskonałe pytanie!

1

Przypuszczam, że jest podobny do kod niestandardowy.

+1

Czy masz definicję ** niestandardowego kodu **? –

+0

Dobra uwaga, ładnie postaw! – fastcodejava

4

Praca z niestandardowych klas w dBASE Ken Mayer, Senior SQA Engineer 30 stycznia 2001 roku w http://www.dbase.com/knowledgebase/int/custom_classes/custclas.htm

Co to jest klasa, a co jest niestandardowej klasy?

Klasa jest definicja obiektu - przechowuje w swej definicji wszystkie właściwości, zdarzeń i metod związanych z obiektem (to jest, przy okazji „hermetyzacji”).

Klasa niestandardowa to klasa programistów zdefiniowana jako , oparta na jednej z klas zasobów (klasy wbudowane w dBASE). A Naprawdę dobry przykład pliku Custom Class dostarczanego z dB2K - jest w klasie CLASSES (w Visual dBASE 7.x to jest katalog CUSTOM) i jest nazywany DATABUTTONS.CC. W skrócie: spójrz na jeden z przycisków zdefiniowanych w w tym pliku klasy, ale większość kodu , który przyjrzymy, będzie nieco inna niż zdefiniowaliśmy tutaj.


Microsoft używa terminu „zwyczaj” w jego dokumentacji każdym przedłużeniu jego dostarczonych bibliotek.

Jeśli chciałbyś przedłużyć ListBox, utworzysz "kontrolkę niestandardową". Jeśli chcesz przedłużyć Timer, utworzysz "komponent niestandardowy". Rozszerz DataTable, utwórz "klasę niestandardową". Robili to przez długi czas. Najwcześniejsze wspomnienie, jakie pamiętam, to podręczniki Visual Basic 5.0, które moim zdaniem były 1996/1997.

Były projekty "Kreatora aplikacji niestandardowej", "Niestandardowe obiekty biznesowe w RDS [ADO]", "Zdarzenia niestandardowe kliknięcia", "Właściwości niestandardowe w programie SQL Server MDX", "Niestandardowe elementy sterujące OCX", "Niestandardowe elementy sterujące z DHTML ", A lista jest długa. Szacuję, że biblioteka MSDN z października 2001 r. Ma ponad 300 pozycji indeksu rozpoczynających się od słowa "custom".