Che cos'è una libreria di classi? [chiuso]

3

Sto lavorando a una causa e ho bisogno di una definizione di una "libreria di classi" a cui possa fare riferimento. Ogni libro e tutta la documentazione che riesco a trovare sembra presupporre che il lettore sappia già cos'è una biblioteca. Anche la voce wikipedia su "Library (computing)" è a basso riferimenti. E i riferimenti che ha sono degli anni '80 o precedenti.

Quindi, nel contesto di C #, che cos'è una libreria di classi? (con riferimenti)

Ho ottenuto un numero decente di definizioni da "Modelli di progettazione: elementi di software orientato agli oggetti riutilizzabili", ma presuppone anche che il lettore sappia cos'è una libreria.

    
posta FigBug 15.07.2014 - 02:57
fonte

2 risposte

3

Il termine "libreria di classi" è un'affermazione ambigua che può variare in modo selvaggio per lingua, runtime e convenzione. Anche se dovessimo limitare la discussione solo a C #, sarebbe difficile trovare una definizione utile su cosa sia e non sia una libreria di classi.

Le caratteristiche particolari di C # rendono effettivamente tutto più complicato, in quanto una "libreria di classi" potrebbe essere un pacchetto NuGet, un assembly destinato ad essere utilizzato in un altro programma, una raccolta di file * .cs destinati a fornire un genitore o caso speciale classi, o qualche combinazione degli stessi. Anche semplice confusione, uno dei precedenti potrebbe contenere più di una "libreria di classi", o codice che non fa parte di alcuna "libreria di classi".

Dato che hai menzionato una causa, presumibilmente hai qualche disaccordo che dipende da ciò che è e non è una "biblioteca di classi", e il contratto in questione non specificava una definizione precisa o ne includeva una che tu o l'altra parte vuole scartare. Se tale è il caso, probabilmente non riuscirai a uscire dalla discussione della definizione in tribunale, anche se hai trovato una definizione chiara e inequivocabile dal. unione nazionale dei programmatori.

Naturalmente se la definizione di "biblioteca di classi" non è rilevante per la tua causa, vai con una definizione ambigua. (Un gruppo di una o più classi, che possono essere presentate in qualsiasi forma e possono o non possono essere tutte contenute nello stesso spazio dei nomi o scritte nella stessa lingua.

    
risposta data 15.07.2014 - 05:53
fonte
2

Da sito web della School of Law dell'Università di Washington :

The central programming abstractions provided by object-oriented languages are those of objects and classes. Objects represent real, functioning program entities that contain data and can respond to certain messages. Classes are a means of defining and organizing a world of objects. A class defines the data and behaviors of a group of objects. For example, a programmer may wish to build a student database application for a university. In doing so, she may create a class called Student that defines the relevant characteristics of a student. These characteristics may include data such as name, student ID number, and GPA. They may also contain behaviors that students can perform. For instance, a student might know how to take exams, complain, and ask questions. Finally, classes may relate to each other by means of inheritance. In our example, our programmer might create a subclass of Student called GradStudent that specializes and/or extends the behaviors of Student in some manner. For instance, a GradStudent may prefer to complain about his or her advisor, whereas a generic Student may typically prefer to complain about grades. Inheritance allows the programmer to easily reuse much of the functionality of existing classes, by defining a subclass that overrides certain default behaviors of its superclass. (Some object-oriented languages, C++ for example, use the term base class for superclass and derived class for subclass. For obvious reasons, we shall avoid the use of those terms here.)

Nel programma di supporto alla tecnologia (anche dalla School of Law dell'Università di Washington), la pagina contiene anche alcuni dettagli sulla decomposizione del software. Questo ti darà una spiegazione di facile comprensione di cosa è una classe senza richiedere la definizione legale.

    
risposta data 15.07.2014 - 03:29
fonte

Leggi altre domande sui tag