Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.sinclair > #4152
| Subject | Re: Trying to learn OOP (for the MIILIONTH time!!!) |
|---|---|
| Newsgroups | comp.sys.sinclair |
| References | <602be32e-1a4e-4d61-bb72-c15606d6ca5c@googlegroups.com> |
| From | AndyW <Andy@nojunqmail.com> |
| Message-ID | <Zv0Py.176064$OB.25348@fx11.fr7> (permalink) |
| Organization | usenet-news.net |
| Date | 2016-04-12 07:23 +0100 |
On 11/04/2016 15:56, bit-naughty@hotmail.com wrote: > ...OK, so my OOP book says something right off the bat about the "requirements specification" for a piece of software, how OOP is about "programmers finding out that they're writing similar pieces of software", blah blah.... > > I wanna know - back then, who the fuck wrote things like OpWolf and Thundercats and Vindicator *IN Z80 MOTHERFUCKING ASM*, using fucking OOP? Like, if we dissassemble Vindicator, are we going to find OOP-y stuff deep in its innards? > > What was the "requirements specification" for Where Time Stood Still, say, LOL? That a hyperactive 15-yr old had to be kept entertained? > > All these softwares worked just fine, seems to me, and in fact, DID provide me hours and hours of fun (which, btw, modern games do NOT, but then I haven't tried them...) > > What was "reusable" in um.... LightForce? (just being cruel, that's the 1st 48k software I've mentioned...) That many ships had to be moved around? So... if a ship has to move, and avoid collisions,... put it inside some code that does that, and Um... CALL IT??!! That's a SUBROUTINE!! Nice and simple.... > > All these softwares were HUGE pieces of code, well, for ME, cuz MY largest Z80 program was probably < 1K LOL! :) , but they worked just fine....? Without doing anything funny (OOP-y)? > > > So - what's all this OOP business, and why should I learn it? > > > > I have a feeling that THIS is the place to ask this question in, not Quora or whatever, filled with cunt "industry people" who Did Not Cut Their Teeth On A Z80!! And know what it's like to optimize cycles in Asm! YOU guys know the answer! So tell me! (if there IS one!) > I wait to find out...... I cut my teeth on 6502 on an Acorn Atom and a home built hex machine built from Elektor magazine before moving onto BASIC, Forth (Speccy White Lightning) Z80, Pascal, C, C++, Java and now Python. There is a trade-off as you move from assembler to OOP; you delegate more of the mindless donkey work to the compiler/interpreter which makes things easier and less prone to things like memory clashes but you also create code with a lot less efficiency. I use OOP almost exclusively now except for some scripting stuff and for complex systems it works fine (although "Hello World" can be several megabytes depending on the language you are using). Why use it? Extensibility - if you want another bad guy just instantiate a new object and the routines and variables are there. Inheritance - If you need to create a new type of bad guy just extend the generic BadGuy Object and override/add the relevant routines it makes for a common codebase, a logical data structure and easier development. Interfacing with the hardware. With the speccy you could easily interface directly with the video memory or the sound. Moving a character was a matter of changing some bits in memory. Computers have advanced massively (some would say in a backwards direction) and it is rare for you to be able to directly interface with the hardware, now you have to go through abstraction layers and various interfaces and libraries that are all geared toward OOP. You could write stuff on assembler but the first things you would need to do would be to write all the interface libraries. I was a procedural programmer for ages but then I took an Open Uni course on OOP, it was tough changing my way of thinking from procedural to OOP but it made sense (even if all through the course they were talking about customers, account numbers and account balance and I was translating it in my head to character name, hit points and gold) Bottom line - if you want to learn it then learn it otherwise don't. Unless you need OOP I would ignore it. Andy
Back to comp.sys.sinclair | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-11 07:56 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) Guesser <alistair@zxnet.co.uk> - 2016-04-11 16:07 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) Volker Bartheld <news2016@bartheld.net> - 2016-04-12 08:14 +0200
Re: Trying to learn OOP (for the MIILIONTH time!!!) AndyW <Andy@nojunqmail.com> - 2016-04-12 07:23 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-15 11:30 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) Calum <com.gmail@nospam.scottishwildcat> - 2016-04-12 12:54 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) Guesser <alistair@zxnet.co.uk> - 2016-04-12 13:37 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-15 11:33 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) Guesser <alistair@zxnet.co.uk> - 2016-04-15 20:38 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-15 11:35 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-15 11:36 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) Guesser <alistair@zxnet.co.uk> - 2016-04-15 20:35 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) AndyW <Andy@nojunqmail.com> - 2016-04-18 07:31 +0100
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-20 01:02 -0700
Re: Trying to learn OOP (for the MIILIONTH time!!!) bit-naughty@hotmail.com - 2016-04-20 01:02 -0700
csiph-web