29.11.2014 Views

Smalltalk and Object Orientation: an Introduction - Free

Smalltalk and Object Orientation: an Introduction - Free

Smalltalk and Object Orientation: an Introduction - Free

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

scripting <strong><strong>an</strong>d</strong> query l<strong>an</strong>guage to use. Recently however, a great deal of interest has been shown in using<br />

OO databases with the Web.<br />

Web developments are not only based around a variety of different data types, they also require the<br />

ability to navigate easily around data in a domain model. M<strong>an</strong>y OODB vendors (as well as m<strong>an</strong>y users)<br />

are coming to the conclusion that OO databases are ideal for supporting a HTTP server. By storing the<br />

Web site within the OO database the process of exch<strong>an</strong>ging data with the database, <strong><strong>an</strong>d</strong> modifying the<br />

Web pages is simplified.<br />

This trend is likely to increase signific<strong>an</strong>tly in the future. It is already the case that other OO<br />

database suppliers are adding Java interfaces or making their s ystems Web compli<strong>an</strong>t. It is also likely<br />

that the Web will act as the motivating force which will force m<strong>an</strong>y org<strong>an</strong>izations to adopted OO<br />

database technology (as opposed to relational database technology).<br />

33.6 <strong>Smalltalk</strong> as a training environment<br />

It is likely that <strong>Smalltalk</strong> will reach a point in the commercial sector where its use does not increase. At<br />

what level this will occur is still unclear, however I believe that Java is going to have a greater impact<br />

on the use of C++ th<strong>an</strong> <strong>Smalltalk</strong>. If <strong>an</strong>ything, I suspect that Java will help to interest people in OO<br />

l<strong>an</strong>guages including <strong>Smalltalk</strong>. At this point I believe that <strong>Smalltalk</strong>’s strengths as <strong>an</strong> educational<br />

l<strong>an</strong>guage will come to the fore.<br />

Far too m<strong>an</strong>y people believe that it is possible to move from a procedural deve lopment l<strong>an</strong>guage,<br />

such as C, to <strong>an</strong> OO l<strong>an</strong>guage just by reading a book on C++. The result is that they develop C programs<br />

but maintain their data within objects. I myself have been involved in discussions with developers who<br />

have claimed that object technology is a waste of time because they did not accrue the benefits claimed.<br />

When pressed it is almost always that case that they failed to invest in appropriate training for their<br />

staff. This was their mistake.<br />

The tr<strong>an</strong>sition to object technology is not <strong>an</strong> easy one. Indeed it becomes harder the greater the level<br />

of experience of those trying to make the ch<strong>an</strong>ge. This does not necessarily have <strong>an</strong>ything to do with<br />

their ability to adapt to new ideas, rather I believe it is to do with the fact that they have a ver y firm<br />

grasp of one paradigm where as less experienced software developers have a poorer grasp of (for<br />

example) the procedural paradigm. It is therefore necessary to include in the first object oriented<br />

development attempted by <strong>an</strong> org<strong>an</strong>ization, a suitable training budget. This budget needs to be seen as<br />

<strong>an</strong> investment in the future, rather th<strong>an</strong> a cost of the actual project involved. In addition it should not be<br />

seen as a l<strong>an</strong>guage programming exercise. The best approach is to view it as a training in the philosophy<br />

<strong><strong>an</strong>d</strong> techniques of object technology. The aim of such a training is not necessarily to educate those<br />

involved in the use of the tools to be used on the actual project (such as OO CASE tools <strong><strong>an</strong>d</strong> the OO<br />

l<strong>an</strong>guage to be used). Such <strong>an</strong> approach will allow the staff involved to explore the concepts rather th<strong>an</strong><br />

worrying about a particular syntax <strong><strong>an</strong>d</strong> how it differs from what they are used to.<br />

Of course educating software developers in abstract concepts is only of limited use, therefore such<br />

training courses should re-enforce what is being taught with practical experience of a pure OO l<strong>an</strong>guage<br />

such as <strong>Smalltalk</strong>. After all it is not possible to write <strong>an</strong>ything in <strong>Smalltalk</strong> without using objects <strong><strong>an</strong>d</strong><br />

message passing. In addition it is easier to spot conceptual pro blems in <strong>Smalltalk</strong> (as evidenced by<br />

students attempting to write the main program or worrying about procedures rather th<strong>an</strong> objects).<br />

I therefore believe that <strong>Smalltalk</strong> will have a concrete future as <strong>an</strong> educator as well as a practical OO<br />

development environ ment. Indeed it may well have a greater influence as <strong>an</strong> educational l<strong>an</strong>guage<br />

allowing org<strong>an</strong>izations to migrate to object technologies in as painless a m<strong>an</strong>ner as possible.<br />

33.7 <strong>Object</strong> technology: the next five years<br />

What will happen to object technology over the next five years? This is both <strong>an</strong> interesting <strong><strong>an</strong>d</strong> a<br />

difficult question. <strong>Object</strong> technology is certainly gaining <strong>an</strong> ever increasing share of the market for<br />

commercially developed systems, however there is still a great deal of resist<strong>an</strong>ce to it in m<strong>an</strong>y quarte rs.<br />

This resist<strong>an</strong>ce is sometimes due to ignor<strong>an</strong>ce <strong><strong>an</strong>d</strong> sometimes due to bigotry. In either case it requires<br />

someone to champion its cause in the affected org<strong>an</strong>izations. However the Web is here, <strong><strong>an</strong>d</strong> despite the<br />

hype, is likely to be a major factor during the next ten years.<br />

282

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!