Python advice
Chris Kaynor
ckaynor at zindagigames.com
Mon Sep 22 15:00:13 EDT 2014
On Mon, Sep 22, 2014 at 11:03 AM, Dave Angel <davea at davea.name> wrote:
> > I need a way forward on what more free ebooks i can get mt hands on so i
> can accomplish my goals.
> >
> > I need some advice. should i go on to learn other languages like java or
> c++ cos i want to be able to using all these knowledge for games, desktop,
> mobile and web.
>
> You certainly should learn other languages. I used about 35
> during my career. But until you've mastered one, c++ and Java
> will probably be more confusing than helpful. There are others
> you probably need first, such as html, css, regex. And other
> skills, such as a debugger, profiler, customizable editor.
A lot of what you should learn will depend on what you want to do.
As a rule-of-thumb I'd recommend sticking to one or two high-level
languages until you are reasonably comfortable with them, then possibly
branching to other languages. As you've already started with Python, I'd
continue on it for a while. Possibly throw in Javascript/HTML/CSS for
web-development - for server-side code you could look in the to various
Python web frameworks, or learn PHP for those.
Once you are comfortable with at least one of those, you can consider
branching off into other languages as your projects need.
A few languages and their major strengths:
- Python is pretty good base-line language. It is really good as a glue
language to piece together other components, or for IO-bound or user-bound
code, but will not preform well enough for many other applications such as
games. It is good for short parts of games, but a full next-gen engine
would be much too slow if written in pure Python, however Civilization 5
uses Python as its scripting language. There are also libraries available
that can provide enough performance to do basic games in Python.
- C# is another good base-line language, although its much more limited
to Windows (there are ways to run it on Mac and Linux, but not as easily).
The main benefit it has is that, if you have Visual Studio, you get a nice
UI designer built-in. Overall, this is a decent option for Windows-only GUI
applications, and can be expanded with other libraries to other platforms,
including many mobile platforms. Some web-servers can also run it as a
server-side language.
- Javascript is basically a necessity for web-based applications, as it
is the only language that is commonly runnable across all browsers. There
are, however, compilers that can (with some success) convert other
languages to Javascript. (note: Javascript runs in the browser, primarily)
- PHP is another commonly used web language, and is widely supported by
servers. Anymore, there are also good Python libraries available for
server-side webpages, although whether you can use them will depend on the
server you are using. For some of the free servers, even PHP may not be
supported, and you will only be able to do static sites (no server-side
code).
- C/C++ are both low level, and therefore generally harder to learn but
provides much better performance than many other languages. I'd recommend
putting these off until you are more comfortable with other, higher-level
languages.
- LUA is a commonly used scripting language for games. You'll find many
engines have LUA support, as it tends to be very light-weight. I'd only
recommend LUA if you want to program in one of those engines. World of
Warcraft is one game I know of that has public support for LUA when making
UI mods.
- Objective-C is one of the main languages used for IOS (Apple)
development.
- Java is a commonly used language for Andoid development.
Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20140922/36dc6eb2/attachment.html>
More information about the Python-list
mailing list