Register | Login | |||||
Main
| Memberlist
| Active users
| ACS
| Commons
| Calendar
| Online users Ranks | FAQ | Color Chart | Photo album | IRC Chat |
| |
0 user currently in Programming. | 3 guests |
Acmlm's Board - I2 Archive - Programming - Object Oriented Programming | | | |
Pages: 1 2 | Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
User | Post | ||
Kasumi-Astra Administrator Level: 62 Posts: 1093/1867 EXP: 1971846 For next: 12840 Since: 03-15-04 From: Reading, UK Uni: Sheffield, UK Since last post: 1 day Last activity: 12 hours |
| ||
I'm learning the OO facilities of C++ at univesity now, and it's a complete bitch to learn when compared to just procedural programming. I can see why it's neccessary that large projects use it, but I'm finding myself longing to working on projects in the procedural way, where life was simpler Does everyone use OO or Procedural programming in their personal projects here? I'd love to know what everyone thinks of OO as well |
|||
neotransotaku Baby Mario 戻れたら、 誰も気が付く Level: 87 Posts: 1948/4016 EXP: 6220548 For next: 172226 Since: 03-15-04 From: Outside of Time/Space Since last post: 11 hours Last activity: 1 hour |
| ||
Well, it all depends on preference on what I find easiest. I'm a Java programmer--so OOP is the only way to go. However, when I program in C, which isn't an OOP by nature, I write C as if it was naturally OO (to a certain extent). I can write procedurally but if things can be modeled, then it is OO for me. But anyways, just to let you know. I've programmed OOP in C++ and it is stupid the way things are laid out. Java makes it a lot easier (or the syntax is a lot more straightforward) |
|||
Parasyte Bullet Bill Level: 35 Posts: 212/514 EXP: 267348 For next: 12588 Since: 05-25-04 Since last post: 104 days Last activity: 32 days |
| ||
I'm an extremist, but I say death to Object Oriented Programming. | |||
Kasumi-Astra Administrator Level: 62 Posts: 1096/1867 EXP: 1971846 For next: 12840 Since: 03-15-04 From: Reading, UK Uni: Sheffield, UK Since last post: 1 day Last activity: 12 hours |
| ||
Actually, I failed to mention that I'm learning OOP in Java and Python as well. Our main class in OOP uses C++ though. That's the one that is teaching us OCL and UML as well. Java seems a lot clearer than C++, and you can definately see that it's a language that grew in the time when OOP was being born. In our Java classes, we were even taught how everything is derived from a super class. It's really quite interesting and I feel kinda sad when I say that it's quite philosophical (edited by Retro-Kasumi on 01-19-05 09:13 PM) (edited by Retro-Kasumi on 01-19-05 09:15 PM) |
|||
Zem You can be civil without being flowery, dipshits. Level: 49 Posts: 608/1107 EXP: 829398 For next: 54485 Since: 06-13-04 Since last post: 131 days Last activity: 131 days |
| ||
Depends on the project. For some things the organization of OOP just makes sense, though I've never gotten used to C++. Also, though I did several assignments in Java extensively using OOP, I've never completed a personal project using it... I'm still working on one (thecaw 1.0) but it's going very slowly. Still, I think it's very useful for large-scale things. | |||
Dish Spiny Level: 38 Posts: 235/596 EXP: 355646 For next: 14801 Since: 03-15-04 From: Disch Since last post: 18 days Last activity: 18 days |
| ||
I find OOP to me of a concept than an actual programming style. You can (and most if not all people do) program with somewhat of an OOP style in C and other procedural language (yes even you Para ;P). Even games on old consoles (NES) use OOP techniques and they're primarily written in assembly. So I find the whole concept of an "OOP Language" to be really, really stupid... since pretty much any language can do OOP. Whether you do classes with member functions in C++... or structs with accompanying functions in C... they do the same thing. Virtual functions in C++... or a function pointer inside the struct in C. Inheritance in C++... or putting a common "parent" struct inside another struct in C. Templates in C++.... or carefully placed #defines in C. There's nothing new that C++ adds to C... everything --- and I mean everything can be done in C... C++ just offers different ways of doing it (and since C++ also includes all of C... all the "new" methods are optional). I prefer to use OOP where appropriate... which is most of the time. However some things just don't need it... and languages that FORCE you to do things in an OOP style I find to be pretty silly (Java). Because of this... I consider myself to be a C/C++ hybrid coder. Object Oriented Programming is good... but it shouldn't be the only way. Rather it should be an idea you adapt into your coding style. Because let's face it... code that isn't at all object oriented blows unless it's a very... very small program. |
|||
Kasumi-Astra Administrator Level: 62 Posts: 1099/1867 EXP: 1971846 For next: 12840 Since: 03-15-04 From: Reading, UK Uni: Sheffield, UK Since last post: 1 day Last activity: 12 hours |
| ||
But the difference is with C++ is that it supports OO natively, right? That would make it a lot easier to whip up a solution in a shorter period of time, and also make it less of a hassle if you were charged with maintaining a piece of software as well. We started off programming procedurally in Java. We just kept everything inside a container class. We were totally clueless about Java's nature until our classes shed light on it. |
|||
Dish Spiny Level: 38 Posts: 236/596 EXP: 355646 For next: 14801 Since: 03-15-04 From: Disch Since last post: 18 days Last activity: 18 days |
| ||
Originally posted by Retro-Kasumi I guess you could say that. I mean the logic behind classes in C++ was definatly driven by OOP ideas. But like I said... there's nothing C++ can do that C can't (and vice versa)... it just uses different techniques for things. So when you say the language "supports" something... it doesn't support anything that C doesn't besides different syntax. Most of the C++ additions to C were just re-words of pre-existing C methods. The big paragraph in my post lays out the big ones: - C++'s virtual functions are nothing but function pointers - C++'s inheritance is nothing but putting the "parent" struct inside the "child" struct (for all practical purposes, classes and structs are identical in C++): class CChildClass : public CParentClass { //class stuff here }; that's the C++ version... the C version differs only slightly: typedef struct CChildClass { CParentClass parentobject; //rest of struct here }; They're both fundamentally exactly the same. But only one is branded as "OOP" by courses (even though they're both OOP -- I mean syntax aside, they're completely identical). OOP might be a little easier in C++... but it's not very hard at all to do in C. It's not a language thing at all... programming in a so called procedural language doesn't mean your code can't be OOP... and programming in a so called OOP language doesn't mean your code won't be procedural (like you said... you were doing procedural coding in Java). Hence my point of why calling X language an OOP language is stupid. It's not the language that makes it OOP... it's the style with which it's coded. |
|||
Squash Monster New Age Retro Hippie Togateiru Fohku Kohgeki!! GRUNGE no HAMSTER otona bite Peace love and turnpike! Level: 40 Posts: 511/677 EXP: 430507 For next: 10802 Since: 03-15-04 From: Maryland (of the Country Between Canada and Mexico) Since last post: 5 hours Last activity: 5 hours |
| ||
I love object oriented programming . (And I use Java.) I do most of my programming for games, and it feels very natural to just set up a big class to hold all of the different aspects of the game and tell them each to go do their thing. I find it much preferable to the ol' array of x coords, array of y coords, and for loop with all of the code for each different things in the game. My only problem with object oriented coding is that it makes me too excited about being able to make re-usable classes, and I waste a bunch of time trying to minimize the number of classes that have project-specific code. Then again, I'll probably think that psuedo-flaw is the greatest thing since the for loop as soon as I've been doing object oriented coding long enough to start actually re-using those classes. |
|||
dan Snap Dragon Level: 43 Posts: 353/782 EXP: 534516 For next: 30530 Since: 03-15-04 Since last post: 20 hours Last activity: 14 hours |
| ||
To me, object orientated programming makes a program a lot more manageable. I remember my old procedural-based programs, which were hell to follow. That said, I'm not some kind of OOP evangelist or anything like that. I still use some global variables, as Delphi allows me to do so, and it was the only way I could get my programs to compile at the time. (I now know the proper OOP way, but I am just too lazy to fix it ) |
|||
Jizuko Jiz Is The Magic! This board has run out of mana and can no longer use The Magic Level: 51 Posts: 1013/1191 EXP: 1004683 For next: 9255 Since: 03-15-04 Since last post: 230 days Last activity: 213 days |
| ||
I just finished a Procedurall Programming course (well, dunno if I passed it, writing code on paper is a BITCH) but the coding itself was pretty easy, we also had to do JSP added to the code though. (Jacksson Structured Programming). I think I'll be doing OOP soon though, like, next semester or so. Only time I've worked with that before is when I briefly worked with php5. |
|||
Zem You can be civil without being flowery, dipshits. Level: 49 Posts: 631/1107 EXP: 829398 For next: 54485 Since: 06-13-04 Since last post: 131 days Last activity: 131 days |
| ||
Originally posted by JizukoOh, man, I can relate to that. At one point I had the kind of job where you just need to be somewhere for a long time in case something happens, and I figured I'd work on some of my code, and it took me like five pages on paper to get the smallest amount. |
|||
Dish Spiny Level: 38 Posts: 246/596 EXP: 355646 For next: 14801 Since: 03-15-04 From: Disch Since last post: 18 days Last activity: 18 days |
| ||
Originally posted by Jizuko The fact that they'd even consider making you write out code is rediculous. What the hell kind of school are you going to? What school teaches people to operate computers without actually using a computer? That's the dumbest thing I've ever heard. |
|||
neotransotaku Baby Mario 戻れたら、 誰も気が付く Level: 87 Posts: 1962/4016 EXP: 6220548 For next: 172226 Since: 03-15-04 From: Outside of Time/Space Since last post: 11 hours Last activity: 1 hour |
| ||
Hmm, Berkeley, Stanford, and MIT does that (make you write code on paper). I dunno about the other CS schools though. I think the problem more is not having enough computers to facilitate the tests. Even then, syntax errors are usually not docked--that is where a computer really is handy (checking for syntax errors). In addition, certain tests are open book, open notes--so, if that is the case, then a computer really can't be allowed now, can it? (edited by neotransotaku on 01-24-05 03:09 PM) |
|||
Dish Spiny Level: 38 Posts: 247/596 EXP: 355646 For next: 14801 Since: 03-15-04 From: Disch Since last post: 18 days Last activity: 18 days |
| ||
Originally posted by neotransotaku That's completely stupid. I go to a freaking community college and they let you use a computer. You'd think big universities that cost a million dollars for students to attend would be better equipped than a community college that any shmuck with $100 and a diploma can attend.
If they're funded by the state... I could see the problem. But these schools charge the students an arm and a leg to attend. There should be no reason why they say "sorry, I know you paid these thousands and thousands of dollars for this semester -- but we don't have enough money to be using computers in this computer class, you have to use paper and pen instead". That's just rediculous.
So proper syntax isn't even checked? What the hell are they even teaching?
You're right. That's why they should use them
I don't see why not. If it's open book/notes... why not be able to use a computer? How does that change anything? Note: Hostility not directed towards you, I apologize in advance if I seem irritable... but I can't believe how incredibly stupid that is. Teaching Computer Science without a computer is like teaching an English class without literature -- it just doesn't work. |
|||
neotransotaku Baby Mario 戻れたら、 誰も気が付く Level: 87 Posts: 1964/4016 EXP: 6220548 For next: 172226 Since: 03-15-04 From: Outside of Time/Space Since last post: 11 hours Last activity: 1 hour |
| ||
none taken. Historically, computer science stems from math and you don't need computers to teach math. In addition, computer science--fundamentally--has nothing to do with computers at all. Everything about it revolves around the notion of abstraction and building systems with abstraction. It just turns out that many applications of computer science is computer related but it isn't restricted to just that. From what I've learned at Berkeley, computer science is the art of breaking down problems into managable pieces and not programming. |
|||
Gavin Fuzzy Rhinoceruses don't play games. They fucking charge your ass. Level: 43 Posts: 399/799 EXP: 551711 For next: 13335 Since: 03-15-04 From: IL, USA Since last post: 13 hours Last activity: 13 hours |
| ||
Originally posted by neotransotaku sounds like another great example of college taking what could have been a usefull and practical class and turning it into a study about abstract and useless theories (well not really, but i like to hate. Community college all the way!) |
|||
neotransotaku Baby Mario 戻れたら、 誰も気が付く Level: 87 Posts: 1965/4016 EXP: 6220548 For next: 172226 Since: 03-15-04 From: Outside of Time/Space Since last post: 11 hours Last activity: 1 hour |
| ||
yet, the irony here is without those abstract things and useless theories there would be no CS to begin with--anywhere (edited by neotransotaku on 01-24-05 04:58 PM) |
|||
Squash Monster New Age Retro Hippie Togateiru Fohku Kohgeki!! GRUNGE no HAMSTER otona bite Peace love and turnpike! Level: 40 Posts: 513/677 EXP: 430507 For next: 10802 Since: 03-15-04 From: Maryland (of the Country Between Canada and Mexico) Since last post: 5 hours Last activity: 5 hours |
| ||
Sometmes my school doesn't let students use the computers during exams even though they easily have enough. There are just too many ways to cheat using a computer: remember, half the students who take these classes have cheated on every test where they've had access to a graphing calculator since sixth grade. The reaction around here is way out of proportion: it's not like they're completely seperating the use of a computer from a class about computers, they're just keeping them away from the exams. As for those abstract theories, I think they're much more useful than anything else in the feild. I'd much rather learn Bresenham's line algorithm or A* or recursion than one of the subtle nuances of a single programing language. |
|||
Gavin Fuzzy Rhinoceruses don't play games. They fucking charge your ass. Level: 43 Posts: 403/799 EXP: 551711 For next: 13335 Since: 03-15-04 From: IL, USA Since last post: 13 hours Last activity: 13 hours |
| ||
because math is a universal language, and theories can transcende any single subject. i was only joking about the useless theory comment |
Pages: 1 2 | Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
Acmlm's Board - I2 Archive - Programming - Object Oriented Programming | | | |