Separate names with a comma.
Discussion in 'Mac Programming' started by italiano40, Sep 20, 2008.
i know C++, C, Cocoa, java, php
i am thinking of learning python, is it worth the time to learn
Do you have a need for it? Is there some project you think it would be well suited to python? Do you just want to learn it for diversity? Do you need good style forced on you? What are your aspirations in terms of programming? To be a "jack-of-all-trades" or an expert?
Depending on the answers to these it may or may not be worth learning. It may serve you well to learn C better (threading with pthreads, variable argument lists, bridges to other languages like Java via JNI, etc.) or C++ (boost seems to be popular, but i can't speak from experience), or to pick a language that is more diverse than the current group than python. A functional language would serve you well to broaden your horizons. I like haskell, but Lisp (and its buddy Scheme) are probably in wider use.
i was think i would use python in Cocoa as a wrapper and java as a bridge, and plus i see a lot of open source projects starting to use python
There are different levels of knowing. Further Cocoa is not a programming language, Objective C is. In any event Python is not really like any of the above. It is often referred to as a scripting language, which probably is a big disservice in many minds.
Yes and YES. I've found Python to be very flexible and powerful. It has application in a wide range of endeavors. Is it perfect, probably not but it has far fewer warts than many so called scripting languages. One thing I like about it is that I can walk away from programming or python programs and come back to things months later and have something that is very readable and easy to understand to work with. That is nice.
Yes it is worth learning as it offers a route to faster and more efficient development. You can test out and implement ideas much faster in something like Python than you can with C. As and when you find bottlenecks, you can relatively easily implement the functionality in C (or c++), and call that implementation from from your Python code.
As a language, Python is very versatile and can be applied to nearly all areas of development.
If you spend are likely to spend more time with Java, then Scala or Groovy are possibly better options.
(edit) What is most important is that a language like Python complements one like C (and also the Cocoa libraries) where they are relatively simple to use together in a single project.
Yes unless you want to do heavy string manipulation.
More than meets the eye!
The way I see it is this: what makes Python great is it's ease of use in numerous applications. By this I mean sripts at work to run on Windows as scheduled tasks to using it in an IPhone project to parse data and create plists. Pythons strength is it's ability to offer quick and viable solutions across a wide array of demands.
For a newbie it should be pointed out that Python is entering a transition period to Python 3. For a person new to Python they should beaware of this improvement program. Ideally the should target their code for compatability with Python 3. Www.python.org has some very well written docs covering what is going on here. Frankly this is another reason to plug Python, it's structure and style seems to lead to very good documentation.
I might be sounding a bit like I'm going overboard plugging Python. Maybe but I really see it as a very powerful tool that is easy to learn and has a great user community.