Denne rapporten er
skrevet for å gi interesserte innblikk i hva som kan læres ved å reise til Software
Development i Washington DC og hvilke tanker jeg gjorde meg som deltakere på utallige
forelesinger og "tutorials". I år deltok jeg for femte gang på denne
konferansen. Det som gjorde sterkest inntrykk i år var at Microsoft har ryddet unna all
konkurranse når det gjelder Windows programmering, men likevel er sterkere utfordret enn
noensinne ved at NETTET er i ferd med å ta operativsystemets plass. Thor Vollset, Oslo 5.
oktober 1997
Fredag 3. Oktober 1997
"Building better JAVA applications and applets"
Peter Coad,
Object International Inc
Dagen begynte utmerket med et godt foredrag
av Peter Coad. Han har "forlatt" C++ til fordel for JAVA fordi han mener
språket noe skrives i er viktig for resultatet.
Kjernen i hans foredag var disse påstandene :
- Design with composition rather than
inheritance
Her går han gjennom en god del eksempler og
klarer å overbevise meg at det er viktigere å modularisere system enn å gjenbruke kode
gjennom arv.
Han påstår at mens arv : utvider
grensesnittene gir de svak innkapsling og resulterer i en underlig måte å håndtere
endringer over tid gir modularisering en meldingsbasert innkapsling og en meget
god håndtering av endringer.
- Design with
Interfaces
Bruk et felles sett "metodesignaturer".
Grensesnitt lar deg koble opp mot et objekt i hvilket som helst objekt som implementerer
dette grensesnittet, ikke bare mot et objekt i en spesifikk klasse.
En regel som en bør kunne forholde seg til
er aldri arve av "utility" klasser.
- Design with
Threads
Moralen er : Gjør det så enkelt som
mulig, men bruk tråder når det skal til. Det ligger godt til rette for dette i
JAVA
- Design with
notification
Her kommer han innpå "Observer -
Obervable" og viser med eksempler på hvorfor modularisert design er bedre enn
når en bruker arv.
Konklusjon : Foredraget var lærerikt og gav
meg bedre innsikt i de design jeg jobber med i øyeblikket hos Kongsberg Simrad AS.
"Building Internet Solutions with
Visual C++, Active Server Pages and Microsoft Transaction Server"
Dette foredraget fikk jeg med meg første
havdel av som gjaldt MS Internet Information Server 4.0 og deres nye konsept med Active
Server Pages.
En interessant observasjon er at COM
er den viktigste byggesteinen i alle disse arkitekturene for å gi
"utviklere" mulighet til å skreddersy sine løsninger basert på Microsofts
basis.
Med "Active Server Pages", Visual
Interdev, OLE DB og IIS 4.0 er det blitt trivelt å lage en Internett applikasjon som
modiserer / leser fra hvilken som helst database i nettverket ditt. Dette er viktig for
alle de som har plundret med å installere database klienter i et nettverk og alle oss
andre som vil lage Internett Sider / Applikasjoner som gjenspeiler våre databaser.
Etter foredraget gikk jeg direkte ut og
kjøpte :
- Visual Interdev Unleashed,
Jay Kottler, Glenn Fincher et al, Sams Net, 1997, ISBN 1-57521-285-4
Denne leste jeg på flyet hjem (som jeg
nesten mistet da jeg møtte opp på feil flyplass) og fikk stor
inspirasjon til å sette i gang å lage internett programmer basert på denne basis
teknologien. Jeg funderer enda på hvordan vi i TORDIVEL kan nytte oss dette
samspillet som en ser her mellom HTML, Active Server Pages basert på VBScript, IIS, ODA
(ActiveX Data Objects ) i OLE DB og COM til noe kreativt og som en basis for nye
applikasjoner.
Writing Windows NT Services
David
Solomon, David Solomon Expert Seminars
I dette foredraget gikk en igjennom det som
skulle til for å utvikle Windows NT Services. Viktige kilder til en slik utvikling er NT
Server Resource KIT, Win32 SDK.
Torsdag 2. Oktober 1997
Visual Modeling with the UML, Rational
Dette var en prima presentasjon av det som
nå er i ferd med å UML - Unified Modeling Language.
Det som overrasket meg var å se hvordan
Rational har rasket til seg ledende autoriteter og fått dem til å jobbe sammen. Ivar
Jacobsen ( Use Case ), Grady Booch og James Rumbaugh ( OMT ) jobber alle for Rational. OML
versjon 1.0 kom ut i januar 1997 og er støttet av firmaer som Microsoft, IBM, HP etc. En
ny versjon 1.1 kom i september i år.
En rask konklusjon er at dette er noe
alle seriøse programmere bør bry seg om og at dette vil bli måten å spesifisere
systemer på.
Add Internet Explorer 4.0 and Internet
Features using the Internet SDK
Dette var en interessant gjennomgang av de
muligheter COM, Internet SDK og de grensesnitt IE 3.0 og IE 4.0 gir.
- Første versjon av dette i IE 3.0 gav
interessante muligheter dersom en vil inkludere browser funksjonalitet i et View eller i
en dialog.
- I IE 4.0 er alle grensesnitt gjort på nytt og
utvidet, men IE 3.0 grensesnitt er beholdt ( som alle gode Automation Servere gjort )
- I IE 4.0 er det mange grensesnitt og her er
langt flere muligheter da IE er en del av operativsystemet
- Mange vanlige WIN32 API funksjoner finnes i IE
4.0 grensesnitt
- I grensesnittene er hele object modellen til
IE eksponert; dette gjør at en generisk kan styre alle objekter på en side og lage DHTML
(dynamic HTML). Dette er meget kraftig.
- De tre enhetene en browser består av er
Navigasjon, Address felt samt en HTML side.
Det er store muligheter for den som har tid
til å jobbe med "udokumenterte" COM grensesnitt.
Why Internet will bury Windows NT
Dette var en meget interessant foredrag som
tok tråden fra i fjor hvor temaet va "Why NT will bury UNIX".
- De påpeker at nettverket nå har erstattet
operativsystemet som det vi bygger våre programmer rundt
- Antall studenter som tar kurs i
operativsystemer går dramatisk ned
- Det antall endringer Microsoft gjør i
operativsystem er i øyeblikket enormt for å tilpasse seg INTERNETT
- De påpeker at levetid for Windows 95 vil bare
være et par år i kontrast til 10 år for Windows 3.x ( de påpeker at 3.x kanskje vil
overleve windows- 95). Dette vil gi Microsoft store problemer.
- Microsoft har vært best i "Good
Enough" i gjennom 20 år.
- Dagens løsninger på internett er vertikale,
det betyr at du må kjøpe alt fra en leverandør for å kunne levere enn løsning som gir
funksjonalitet fra Browser og inn i ditt datasystem
- De påpeker at komponentene som vil alle
snakker sammen om passer inn på nettverket og vil ersatte de integrerte løsningene vi i
dag ser med i MS Office.
- Om komponentene blir Java Beans, Active X
eller noe annet tar de ikke standpunkt til
- ActiveX er en komponent teknologi som er for
enkelt å ta i bruk til å den kan gi store gevinster ( den er knyttet opp mot Microsoft
private API )
Konklusjonen jeg ønsker å trekke av
dette er at NETTET er MINST like viktig som introduksjonen av PCen i 1981 men at det er
usannsynlig at MICROSOFT har svaret på hvor vi skal gå; like lite som IBM hadde i går.
Trass i dette vil mange tjene gode penger
lenge på å utvikle for Microsofts plattform. |
Onsdag 1. Oktober
1997 Plenum
sesjonene fra SunSoft og Microsoft var i går skuffende, de hadde ikke den høyde de
skulle ha. Det som var morsomt å se var eksempler fra SunSofts Java Workshop hvor de
viste virkelig Visual Programming med JavaBeans. En Java bønne hadde
visualisert sitt grensesnitt med "kroker" som hadde navn hvor du kunne koble til
en tabell, "button". ( type sjekk foregikk mens du koblet ). Når du hadde
koblet til alle visuelle elementer til "bønna" var det var å si GO.
Andre interessante observasjoner var at de alle stresser hvor fort Webben vokser. Webben
har nådd 50 millioner brukere på fem år. Det er dramatisk raskere enn noen
annet. SunSofts president stresset at verdi ligger i infrastrukturen og at Browseren (
PCen ) kan sees på som telefonen og skal være enkel og bare virke. Han synes det er dumt
at vi må dra med oss bærbare PCer overalt for å være on-line. Microsoft presenterte
Windows CE og de toolkits som plugger inn i Visual C++ og VB. Et viktig poeng her er at
APIen er et subset av Win32 og at vi må rekompilere, men dog dette er "kuult".
I sitt zero admin initiative har nå Microsoft i tillegg til NetPC introdusert
Windows Terminal som kjører alle sine programmer på en NT 5.0 Server.
Gui Design for the Intranet
Jim Hobart er president i dette firmaet som
spesialiserer på å lage brukergrensesnitt for Klient / Server og nå Intranett. Han
holdt en meget god presentasjon hvor det er flere poenger som vi kan ta i bruk på webben.
I tillegg er dette en liten oppsummering :
- på www.classicsys.com
finner du blant annet GUI Guidelines og WEB Guidelines som er produkter fra dem
- han fokuserte på at web applikasjoner ikke
har brukermanualer. de skal ha "instant usability". det er en stor utfordring
- internett sider MÅ være
enkle, intranett sider kan være noe mere komplekse
- viste JAVA applets som er skreddersydd for
spesielle oppgaver, tekstbehandling, regneark, presentasjon og som VIL utfordre MS
Office og Microsoft.
- det vil i løpet av høsten også komme mange
"server-side" applikasjoner skrevet i JAVA som gjør "real
things"
Utstillingen
På utstillingen er det mange gjengangere :
- Stingray som vokser og i år
lanserer VisualCase for MFC og C++; dette så spennende ut og er billig.
De bruker som alle andre UML
- Rockwell presenterer igjen
sine ActiveX kontroller for prosess-kontroll. Dette ser bra og greit ut
- Dart Communication selger et
tcp/ip toolkit for Windows. De viste en spennende presentasjon av en SMTP / POP3 klienter
som gjør at hvem som helst kan sender mail fra en Web Side eller lese sin mail. Det var
rimelig interessant
- SuperCede Inc er nå skilt ut
fra Asymetrix for å satse på sitt Java utviklingsystem som nok er ledende. De er
nå eid av Paul Allen og satser hardt i denne nisjen. Java compileren kompilerer ned til
binær kode på Intel ( de er alene om dette ) og de skal porte sitt system til Solaris (
er blitt bedt av Sun å gjøre dette ). Jeg har kjøpt en versjon og laget min første
applet. Det er enkelt, men skal en lage noe for TORDIVEL WEB så må en ha noe på
aktivt på server siden og det er det lite støtte for.
- Underware Inc, med Track
Record
- Allaire med verktøyet Cold
Fusion for Web Applikasjoner
Mandag 29 og Tirsdag 30.
September 1997
Introduction To Active X And
COM
Richard
Hale Shaw gives
seminars on ActiveX programming in C++ and Java, is a contributing editor for Visual Basic
Programmers Journal, and writes for VC++ Developers Journal and PC Magazine.
The Windows track chair of the Software Development
Conference and Conference Chair of Visual C++ DevCon,
hes a frequent speaker at VBITS, WinDev, Windows Solutions and Microsoft
TechEd.
Det jeg sitter igjen med etter å ha hørt på Richard Hale Shaw i to dager er
at COM er en viktig mekanisme. Med introduksjonen av DCOM i Windows NT 4.0 ble den enda
viktigere.
Viktige utsagn :
- Automation Servere vil erstatte regulære DLLer i mange tilfeller.
- Automation Servere kan styres ved hjelp av "scripts"
i VB, Excel, JAVA etc.
- Det er trivielt å legge til Automation til en Visual C++
applikasjon. Problemet som alltid er å definere et ordentlig grensesnitt.
- DCOM er et viktig alternativ til WinSock
og RPC mekanismer ( det er ofte bedre og enklere )
- COM virker smertefritt mellom 16 og 32
bit applikasjoner og kan bruke til å ta vare på 16 bit "legacy" kode ved at
funksjonalitet bygges inn i en 16 bit Automation Server som er tilgjengelig for alle COM
klienter som kan være 16 eller 32 bit.
- For meg har det vært viktig å forstå at COM er basisen ( essensen ) til
det som het OLE 2.0 ogsom stort sett brukes i MS Office til linking /
embedded / menu / toolbar merging. Dette er ikke fokusert lenger og er heller ikke særlig
interessant for vanlige utviklere.
- OLE Automation er veldig enkelt å
bruke både for utviklere av servere og klienter. En kan bruke VB, Delphi eller VC++. Det
vanskeligste er å definere de objekter som du ønsker å dele og innse at en har fått en
genuin klient / server modell.
- Med DCOM ( distribuert COM ) kan en
flytte EXE baserte automation servere "remote" ( til en annen maskin i
nettverket ) uten å gjøre noen endringer i hverken klient eller server. Dette
bare virker.
- I COM er det definert et versjon
system som gjør dette problemet enklere. En viktig konvensjon er ALDRI endre et
publisert grensesnitt. Dette er veldig viktig for brukere av et bibliotek ( men
her er det satt som en absolutt regel ). Noe å lære kanskje.
- ATL bør bare
brukes dersom en trenger å lage så ActiveX kontroller. Det er vanskelig og tidkrevende
å lage noe annet enn en enkel kontroll.
I tillegg til essensen som er
trukket ut i utsagnene hadde vi en fin gjennomgang med å utvikle både IN-PROC og EXE
baserte Automation Servere i Visual C++ samt klienter i både VB og Visual C++. Det som
var interessant for meg å oppdage var at visual basic kode bare kan "pastes"
inn i MS Excel og så blir Excel også en klient.
Hvordan publiserte jeg på direkte på
TDV-WEB ?
Dette året var jeg virkelig online i
Washington DC.
De biter som nå er på plass.
- EUNet Traveller som gi meg internett aksess
med gratis 800 nummer. Koster ca 80 øre / minutt i avgift til EUNET.
- Windows 95 med standard modem
- Frontpage 98 som jeg bruker til å direkte
editere våre sider på www.tordivel.no
- FTP for å overføre lokalt editerte filer til
http://www.tordivel.no
Hva som er på plass og virker men som er for
tregt
- PPTP ( point to point tunneling protocol ) mot
vår NT server i Oslo.
Har du noen spørsmål ta
kontakt.
Bokliste
- "Professional DCOM Programming", Dr
Richard Grimes, WROX Press Inc, 1997, ISDN 1-861000-60-X
A Guide to creating pratical applications
with Microsoft Distributed Component Object Model.
- "Practical Java Script Programming",
Reaz Hoque, M&T Books, ISBN-55851-513-5
- "Visual Interdev Unleashed", Jay
Kottler, Glenn Fincher et al, Sams Net, 1997, ISBN 1-57521-285-4
|