Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

What's the difference?

In my opinion, I can replace the term "Schema" with "Scheme". Can I?

share|improve this question
add comment

1 Answer

up vote 4 down vote accepted

Although Dan's link to the English SE does provide some context to the words, I don't think it really gets across how the two are different in the lexicons of most programmers.

I don't have a technical source for you, but the general difference is that Schema is something formal, a model typically. See, for example, an XML Schema, meaning a document describing the proper elements and structure of an XML document. Schema also very commonly refers to a database's design and layout of tables and fields. From these data-descriptive uses, some people refer to any kind of diagram of a system or process as a "schema". Still, I think the word most specifically refers to a model you can verify an implementation against.

"Scheme" is rarely used in programming, except to refer to the sub-genus of LISP languages called Schemes (Racket, formally PLT, being perhaps the best known implementation of the Scheme language standard). I have also occasionally heard the word used to mean "a plan or methodology" as well, as in "what's your scheme for solving this database issue?" No other formal usage comes to mind.

share|improve this answer
    
Can we say, a "Class" is a "Schema" of all of it's "Instances" ? –  Vishwas Gagrani Apr 29 '12 at 7:27
    
Yes, I'd say that a class (in a typical OOP language) is a schema of instances. This follows from Dan's link to formal definitions and the informal meaning. A class acts as both a type-descriptor (Kant's definition of schema) and as an instance constructor (more informal modeling definition of schema). –  CodexArcanum Apr 30 '12 at 15:11
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.