Computing.Net > Forums > Programming > Python without OOP

Computer Problems? Computing.Net has over 1,000,000 posts about all things technology related! Over 90% answered within 24 hours! Click here to start participating now! Also, be sure to check out the New User Guide.

Python without OOP

Reply to Message Icon

Name: Jack-R
Date: October 13, 2002 at 16:13:10 Pacific
OS: win98
CPU/Ram: p3
Comment:

I was wondering if it is possible to use the Python language without employing object-oriented techniques. The reason I ask is because I would like to learn Python some time soon, however I don't think I'm ready to tackle OOP yet.



Sponsored Link
Ads by Google

Response Number 1
Name: junky_toof
Date: October 14, 2002 at 00:52:14 Pacific
Reply:

Sure, you can use python as a procedural
language. It does have some quirks in this
vein, but they are not really too serious.


0

Response Number 2
Name: Jeff Graver
Date: October 14, 2002 at 11:20:43 Pacific
Reply:

I've spent a little bit of time on Python, and it seems to me that trying to separate Python into OOP bits and non-OOP bits would be a fairly long process leading to no good end. The Python distributions that I've seen (for Windows and Linux) include some materials to help you get the hang of Python. I'd say just try to learn the language and don't worry about whether you might accidentally learn some OOP stuff.

If you know almost any other programming language, you'll have enough on your hands trying to get used to the notion that indentation matters.

Jeff


0

Response Number 3
Name: Jack-R
Date: October 14, 2002 at 12:16:43 Pacific
Reply:

Thanks for the advice. Right now, I'm still learning LibertyBASIC. I was just wondering where I should go from there. I was considering Python, but I wasn't sure if I should go OOP yet. Do you have any advice for a next language after Basic?


0

Response Number 4
Name: Guy
Date: October 14, 2002 at 13:58:17 Pacific
Reply:

Hi - I don't know about Python, but Ruby would be OK for procedural programming, although it also supports OO well.

Don't worry about difficulties with OO, not all languages are as daunting as C++.

Regards, Guy


0

Response Number 5
Name: Jeff Graver
Date: October 14, 2002 at 14:27:13 Pacific
Reply:

There are many languages to learn and which one you choose depends a lot on what sort of problems you are facing, how quickly you must get up to speed, whether you need much/little support, whether you are a professional or hobbyist, etc.

I mean, heck, I always thought FORTRAN 77 was a pretty decent language, but I wouldn't recommend anyone learn it unless they need to.

I haven't really checked it out yet, but I keep thinking the new Lego sets that come with a microcontroller have to be pretty cool, and probably pretty easy to learn, given to whom they are marketing.

Jeff


0

Related Posts

See More



Response Number 6
Name: Jack-R
Date: October 14, 2002 at 20:24:53 Pacific
Reply:

"Don't worry about difficulties with OO, not all languages are as daunting as C++."

I was considering learning C next.(definitely not C++). would you advise against attempting C next? It seems like it would be easier than Java considering C is not OO, but what do I know...

"There are many languages to learn and which one you choose depends a lot on what sort of problems you are facing, how quickly you must get up to speed, whether you need much/little support, whether you are a professional or hobbyist, etc."

I'm a college student who is considering going into computer science, and considering programming as an occupation. So I guess my goals would be "professional" or maybe educational, or some combination of both.
So far as my interests are concerned...right now, I would really like to learn some things about network programming and writing network applications. Heck, I would just be thrilled to know how to code *anything* remotely useful.

By the way, what is this you are saying about Lego? Please elaborate. If it is a child's toy or something, it might actually be on my intellectual level.


0

Response Number 7
Name: Gauthier
Date: October 14, 2002 at 23:59:26 Pacific
Reply:

Hey!

There is Pascal... It has been created as a "school language", it is thus not really used professionaly, but it can get you started.
I think that the most used is C. At least that's what I saw the most in my placements (not engineer yet, 8 months to go).
I wouldnt really advise you to start with Pascal, though. If you want to start with a useful procedurial language, C is definitely better.
Furthermore, it can lead you to C++. You shouldnt be afraid of object oriented! I had no real difficulty to understand what it was (it was much harder to get the use of it!). It's great!
And when it comes to java, I wouldnt say it's difficult. People say it's easy, at least! For simple application, you mostly use the work that has already be done by other programmers!!

Good luck,

Gauthier


0

Response Number 8
Name: junky_toof
Date: October 15, 2002 at 03:38:32 Pacific
Reply:


Jack-R,

I'm one of the last few people it seems who doesn't think that everything needs to be OO ;)...
C is great if you have good math skills and a good teacher.
As far as C++ being "harder" than C...
Depends on what you are doing..I've seen
some horrible stuff in C++, that should have been done in C...and vice versa.

Java is junk IMO, I've got no use for it.
It's slow, it sucks memory, half of
it's libraries and API's are deprecated, and it is an ugly language syntactically.

Unfortunately if you want to be employable as a programmer the two languages that I see jobs for
are C and Java right now.
It's sad because tcl/tk has a better
syntax, it's tk set is so much easier to build gui's with and I don't find it to
be any slower than java, faster most of the time.




0

Response Number 9
Name: Jeff Graver
Date: October 15, 2002 at 07:54:20 Pacific
Reply:

Just to make things go full-circle, Python makes good use of the tk toolset for GUI development.

Jack - C is always a good choice, especially if you are interested in low-level applications. You mentioned network apps, so learning C would put you in a good position to understand the code that runs network stacks, switches, network interface cards, etc. In other words, the sort of stuff that runs networks.

OTOH, Java - a very popular choice these days - would be very useful putting together distributed applications, that is, the sort of stuff you want to have a network to do.

But truly, picking languages to read is like picking music to listen to. The latest and greatest is just around the corner, and you'll probably be picking up new stuff for many, many years. So rather than stew on it too much, just pick a language and go with it.

Jeff


0

Response Number 10
Name: Grant Austin
Date: October 15, 2002 at 15:40:31 Pacific
Reply:

All I can say is it really doesn't matter what you chose. Just spend a lot of time on it.

In the time I've had an internship I've learned 4 languages. C++, LotusScript(Visual Basic superset), Lotus Formula(lol), JavaScript(lol).

Don't get in the mindset that OOP is always good or always bad. Learn to use them when appropriate. Get solid Programming experience. That will follow you through whatever languages you decide to take up.

I'm getting quick on how fast I pick up programming languages, not due to intelligence just tenacity. Keep bashing your head against the wall and you'll come up with gold, and a bruised head.


0

Response Number 11
Name: Jack-R
Date: October 15, 2002 at 21:58:59 Pacific
Reply:

Thanks everyone for all of this information.
I'll probably look it over a few times again just so my brain can process it. :)

There is something junky_toof that I would like to ask about:

"C is great if you have good math skills and a good teacher. "

I have neither good math skills or any teacher aside from a couple books. Does this mean I should not attempt C? And how good do my math skills have to be? The farthest I've ever gone is high school algebra. So it pretty much stops there.

As for all the OOP business:

I just always heard that OOP is an "advanced" topic. And I noticed from surfing the internet, looking at college curriculum and just talking with people, that the vast majority of people learn procedural langauges first. But I've also read an article that claims schools should start teaching OOP first. Well, whatever the case, I think someone made some sound advice. Just pick something and stick with it. I am very very indecisive. Its pretty bad really...
Anyway, thanks again to everyone for the advice.


0

Response Number 12
Name: junky_toof
Date: October 16, 2002 at 11:31:36 Pacific
Reply:

Okay, a couple of things..
When you first learn C you will be dealing
with things like:

int main(void) {
char buf[20] = "My name is myname"
int i;

for (i=1 ; i <= 20 ; i++) {
printf("%s\n", buf);
}

return 0;
}

Later you will have to deal with bit manipulation, pointers ,pointer arithmetic
and the various octal, hexadecimal, etc..
data translations that are inherent in data typing it seems.
I have struggled and do struggle with this because I do not have a good background in math.
I've seen math guys pick up these concepts immediately.
Thus the advice ;)

OOP...
A lot of people write OO type code without
even meaning to, it is the particular OO
system that is the clincher.


0

Response Number 13
Name: Jack-R
Date: October 16, 2002 at 16:27:20 Pacific
Reply:

Thanks for clarifying junky_toof. I thought you were saying I'd have to be really good at math, like calculus level or something. I'm not familiar with pointers or pointer arithmetic, but I am comfortable dealing with different number systems like binary, hex and octal, the arithmetic involved in the those systems and switching between them. Would this be sufficient? Should I be okay?


0

Response Number 14
Name: junky_toof
Date: October 18, 2002 at 06:18:23 Pacific
Reply:

Sure, give it a try.


0

Sponsored Link
Ads by Google
Reply to Message Icon






Post Locked

This post is quite old and has been locked from receiving new replies. Please create a new posting instead.


Go to Programming Forum Home


Sponsored links

Ads by Google


Results for: Python without OOP

explain classes? www.computing.net/answers/programming/explain-classes/4438.html

Python: call variables in os.system www.computing.net/answers/programming/python-call-variables-in-ossystem/7700.html

python book www.computing.net/answers/programming/python-book/4105.html