🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #11558

Re: beginner in vb6

#11558
From: Philip Paeps
Date: Thu, 31 Jan 2002 07:19
107 lines
6711 bytes
Noel <de.nille@pandora.be> wrote:
> On Wed, 30 Jan 2002 22:35:13 +0100, "Geert" <thefloppyman@hotmail.com>
> wrote:

>>> pfff, weer zo'n java freak zekers ;-)
>>
>>Waarom moet domi precies een Java freak zijn?
>>

> hehe :-)

> Ik had al zoiets verwacht. Misschien was die java freak erover, maar
> het was eigenlijk meer  bedoeld om te zeggen dat de meeste
> programmeurs Visual Basic 6.0 "haten", omdat het van dat
> softwarebedrijfje komt, hoe was de naam ook weer... ah ja M$. En dus
> platformgebonden is...

Het probleem is niet dat het van Microsoft is, maar dat je vastzit aan ��n
platform, en regelmatig ook aan ��n versie van het platform.  Als je een
programma schrijft dat overwegend Windows API calls maakt, zal daar veel niet
van werken op een andere versie van Windows waarvoor je het schrijft, en dan
mag je met elke nieuwe Windows versie je programma aanpassen.  De 'components'
en 'libraries' van Microsoft zijn ook niet consistent tussen software versies.
Ik ben nu voor mijn werk een Windows programma aan't ontwikkelen [tegen mijn
zin, ik hou me normaal bezig met het schrijven van automatisatie dingen onder
un*x] om data uit een databaseserver te halen en in Excel te gooien.  Nu
zitten we hier met twee versies van Excel: Excel 2000 en Excel 97.  Ik schrijf
natuurlijk in C++, maar heb toch al een lijstje pre-processor macro's om 'u'
tegen te zeggen, gewoon omdat de Excel 2000 classes niet proper praten met
Excel 97.  ...dat even terzijde...

[...]

> Het feit dat je een programma "opnieuw" moet maken wijst erop dat je
> "slecht" geprogrammeerd hebt. 

Niet noodzakelijk.  Als jij je programma linkt met een third-party library, en
een nieuwere versie van die library is niet backward-compatible, dan heb je
een probleem, en dat probleem is inherent aan Windows, denk ik, met de
DLL-hel.  Elke programmeur kan een DLL in het systeem steken, en een 'system
DLL' overschrijven zonder dat hij rekening houdt met de programma's die zich
al baseren op die DLL.  Onder un*x kan je ook shared libraries overwriten,
maar men doet het gewoon niet. ;-)

> Moet wel zeggen dat ik geen ervaring heb met compatibiliteit tussen de
> verschillende Basic'en daar ik slechts enkel vb6 heb gebruikt. 
> Dus jouw slecht geprogrammeer kan dus ook een compatibiliteitsprobleem
> zijn. :-)

Ik heb bewust nog nooit in VB geschreven.  Ik heb wel al een paar keer de
*rommel* van VB programmeurs mogen opruimen.  Ik kan je verzekeren dat het
geen lolletje is.  De taal laat je gewoon toe -- moedigt je zelfs aan -- om
vieze code te schrijven.  Daar kan ik niet mee om. 

>>Dit zou misschien ook wel gelukt hebben in Visual Basic maar in ik voelde
>>mij vanaf het begin in visual c meer thuis in de C syntax. Ik heb hier nog
>>geen letter Java gezien en kan dan ook geen freak zijn en toch vind ik Basic
>>vrij "beginnend" tov C.

> Iedereen heeft zijn voorkeur. Maar voor beginnende programmeurs is een
> taal als VB wel handig om een te leren programmeren. De taal is
> gemakkelijk en met de basis kan je toch al heel wat bereiken, en als
> je de meer geavanceerde dingen kan gebruiken, kan je zeer mooie dingen
> maken.

De vraag is of die 'mooie dingen' ook wel nuttig zijn.  E�n van mijn leraars
had het vroeger altijd over de 'three Fs of architecture': 'Form Follows
Function'.  Het kwam erop neer dat je een badkamer nog zo mooi moch ontwerpen,
als er geen water naartoe kon of weg kon was ze volkomen nutteloos.  Zo is het
ook met software.  Je kan in VB waarschijnlijk zeer mooie dingen maken met
venstertjes en icoontjes en ander 'eye candy' maar is dat allemaal wel
noodzakelijk?  In C kan je ook zo'n dingen schrijven, mits je tegen bepaalde
libraries linkt, en dat moet je bewust doen, het systeem stuurt je niet in die
richting (het systeem is je standaard happy editor).

[...]

> Is wel eens plezant zo'n discussie/meningsuiting ;-)

Als het maar beleefd en constructief blijft.  Niemand heeft behoefte aan *nog*
een scheldoorlog Microsoft vs. whatever of VB vs. whatever.  Ik ben van mening
dat je je goed moet voelen in een programmeertaal en dat die taal ook 'werkt'.
Als je automatisatietoepassingen moet schrijven die op meerdere platformen
werken, en ook in low-memory situaties ga je met VB niet ver komen.  Dezelfde
applicatie die je echter in C op een low-memory platform schrijft kan met zeer
weinig aanpassingen (meestal maar enkele pre-processor macro's) geport worden
naar een meer uitgebreid platform.

Ik heb me in December bezig gehouden met het porten van een applicatie om
tegen een teletekst-inserter te praten.  De bestaande applicatie draaide onder
Windows NT en was niet voldoende voor onze teletekst bedoelingen.  Door de
firma te contacteren die het programma origineel geschreven had ben ik te
weten gekomen dat het origineel geschreven was voor een mac68k, en men heeft
mij de belangrijkste data structures gegeven, geschreven in C.  Ik heb die op
minder dan twee weken tijd kunnen gebruiken onder NetBSD op een i386 machine.
Aan die structures zelf heb ik amper veranderingen moeten maken.

Als jij een VB programma zou krijgen, geschreven in 1984, of maar een stukje
van zo'n programma, denk ik dat je heel wat meer werk zou hebben om het te
laten werken onder meer moderne systemen...

 - Philip

-- 
Philip Paeps                                                   philip@paeps.cx

  If you can't convince them, confuse them.
Technical Details
Message-ID: <1e668.108304$rt4.9230@afrodite.telenet-ops.be>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news-x2.support.nl!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
References: <pyC58.105321$rt4.8831@afrodite.telenet-ops.be> <a9W58.107457$rt4.8856@afrodite.telenet-ops.be> <rbcg5u82a479t6715830t9ei3thso06v5b@4ax.com> <a39oud$a0h$1@newsreader.mailgate.org> <c4tg5ucjmf89kj583apqbgaqeq4mno8pde@4ax.com>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,4f074f42822f7c22
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-01-30 23:19:28 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news-x2.support.nl!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: Philip Paeps <philip@paeps.cx>
Subject: Re: beginner in vb6
Newsgroups: be.comp.programming
References: <pyC58.105321$rt4.8831@afrodite.telenet-ops.be> <a9W58.107457$rt4.8856@afrodite.telenet-ops.be> <rbcg5u82a479t6715830t9ei3thso06v5b@4ax.com> <a39oud$a0h$1@newsreader.mailgate.org> <c4tg5ucjmf89kj583apqbgaqeq4mno8pde@4ax.com>
User-Agent: tin/1.5.10-20011117 ("Darkcell") (UNIX) (FreeBSD/4.5-STABLE (i386))
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Lines: 107
Message-ID: <1e668.108304$rt4.9230@afrodite.telenet-ops.be>
Date: Thu, 31 Jan 2002 07:19:25 GMT
NNTP-Posting-Host: 213.118.35.252
X-Complaints-To: abuse@pandora.be
X-Trace: afrodite.telenet-ops.be 1012461565 213.118.35.252 (Thu, 31 Jan 2002 08:19:25 MET)
NNTP-Posting-Date: Thu, 31 Jan 2002 08:19:25 MET
Organization: Telenet Internet