| | |||||||
|
Welcome to the YD Scuba forums. You are currently viewing our boards as a guest which gives you limited access to view most discussions, articles and access our other FREE features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload your own photos and access many other special features. Registration is fast, simple and absolutely free so please, join our community today! If you have any problems with the registration process or your account login, please contact contact support. |
| Technology: Discuss Question for any programmers out there in the Non-Diving Related Forums forums: Object oriented programming: do you find it reflects "natural thinking" or do you consider it to be artificial? ... |
| | LinkBack | Thread Tools | Display Modes |
| ||||
| I am not an Object Orientated Bod, but I find it artifical and in some cases limiting.
__________________ “Did I leave the gas on? No! No, I'm a f***in' squirrel!” Mr E Izzard |
| ||||
| Quote:
Object oriented is still imperative, which means one instruction follows another. The difference between OO and procedural is deep under the covers. It's explained well in Bertrand Meyer's "Object-Oriented Software Engineering", but without considerable experience you may find it hard going and/or simply will not understand it. I do not know of an easier way. Quote:
Object oriented programming has a curve no doubt. In the beginning it will annoy you, because as it's imperative you will not be able to see its advantages. After a short while (1-2 yrs), well then you'll understand why OO is the way it is. cod3r
__________________ not a new species of cod |
| ||||
| Quote:
OO is great! Well, maybe not, but it tends to make life simpler than procedural programming once you get used to it. We're starting to use Java a fiar bit so I guess for now I am full on OO. I suppose that I find it a 'neater' way to code. Last edited by NeilP : 18-02-05 at 12:00 PM. |
| ||||
| Quote:
Object Oriented stuff just tries to focus on the data structures and attach processes to manipulate them in close. It is one tool in the programmers toolbox but it can be just as easily done to death as any one-fits-all methodology. Its advantage is that you can treat the data-and-routines like a black box and not have to worry about what goes on inside. A well designed OOP lump can be reused from its description without ever 'going inside'. This can, if handled properly, save time = money. The big problem with most OO programming is that things spend their CPU time moving numbers on and off stacks and nesting calls through layers and layers of redirection just to return a pointer. If there are 15 of you working on a project OO make the design stage harder but the implementation easier and you probably won't notice it is slow. If I want to reuse predesigned or library stuff OO can save me time as all I am doing is stitching stuff together. However if you ask why does my 3GHz PC running XPpro run slower than the 100MHz machine I had a few years ago it is all that OO stuff burning the mill time. I have two jobs on the desk at the moment. One involves multiple users running machine tools and tracking conforming/non-conforming materials and looks like OOP and SQL from here and the other is a test jig fixture that is going to be linear code assembler. Neither could use the other technique so I don't get much choice. I've rambled about a bit... was that relevant? |
| ||||
| Quote:
|
| ||||
| Thanks for the feedback guys, I need to start learning this stuff, currently scheduled to be doing a Java module next April but will try to start learning well before then. Ian
__________________ Oh Durr, it's all going wrong ![]() "Vigilant, the moment a delusion appears, Which endangers myself and others, I shall confront and avert it Without delay" (Translation of part of Tibetan Buddhist chant) |
| ||||
| Nigel, some valid stuff in there, some inaccuracies as well, esp. the design and performance stuff. Won't go into it in a diving forum, but keep an open mind Quote:
My current project is for BT. Last was France Telecom. Ran on Sun E10000, 64 processor servers. But then maybe because of OO? cod3r
__________________ not a new species of cod |
| ||||
| Quote:
I mean I am not a OO Believer, I don't go along with the idea that its an appropriate choice for every system. I think it has its place and if it is used appropriately can make modelling and delivery a shed load easier....If it is used in the right place.
__________________ “Did I leave the gas on? No! No, I'm a f***in' squirrel!” Mr E Izzard |
| ||||
| I find OO programming closer to natural thinking than proceedural, but not that much. If you've done some coding before then it'll be easier to learn Java than if you're new to it. If you haven't done any before, a good first step might be to try Visual Basic - it'll help with some basic programming concepts before tackling Java. Nigel / Cod3r - are you talking about the difference between compiled and interpreted code ? As I remember there is not much difference between compiled proceedural and OO code, but there can be a huge difference between compiled proceedural programme (COBOL ?) and an interpreted OO programme (Java etc). You just need to look at Borland J Builder - the whole of that was written in Java and is interpreted - open it up and the thing grinds away for ages on the splash screen !
__________________ Andy Proud member of the government's 'army' of consultants - your tax paying for my diving! http://www.socialistworker.co.uk/ - go on, buy a copy and help a beardy sandal wearing liberal lefty |
| Thread Tools | |
| Display Modes | |
| |
| | ||