Farbs
|
|
« Reply #120 on: December 07, 2007, 06:31:02 AM » |
|
Yeah, I miss the old GW Basic interpreter days sometimes. I wrote some pretty retarded text games in that. Coincidentally, I'm currently working on a text adventure. SHAZAM! The thread is back on track. Oh, and Skalidic: Once you get your head around C++, I strongly recommend running the hell away from it There are higher level languages just waiting to pamper you with their simplicity. It's still worth learning C++ first though. Is your book pure C or does it cover C++? It's best not to leave the switch to object oriented thinking too late, or it'll damage your brain.
|
|
|
Logged
|
|
|
|
skaldicpoet9
|
|
« Reply #121 on: December 07, 2007, 08:00:48 AM » |
|
Is your book pure C or does it cover C++? It's best not to leave the switch to object oriented thinking too late, or it'll damage your brain.
It has a little bit about C++ near the end of the book. It's cool though I have C++ for Dummies as well :D Eventually my goal is to transition from C to C++ and then from C++ to who knows where maybe C#...Java, etc.. I just want to get a good feel of what is out there and then due to my experience with the various languages I come into contact with be able to assess what language I feel most comfortable with.
|
|
|
Logged
|
\\\\\\\"Fearlessness is better than a faint heart for any man who puts his nose out of doors. The date of my death and length of my life were fated long ago.\\\\\\\"
|
|
|
Ivan
Owl Country
Level 10
alright, let's see what we can see
|
|
« Reply #122 on: December 08, 2007, 11:35:13 AM » |
|
I will have to highly disagree with Farbs on most points. When you become a good C/C++ coder, there will be very few options that will be as powerful. Sure there are simpler options, more straightforward options, but when you get down to the gritty, you will always run into annoyances and wish you were using a lower level language. I don't think that using a higher level language makes things easier necessarily. Which brings me to my other point which is that C is its own language and not some stepping stone to C++. It has a vastly different programming mentality and should be explored separately from C++. It's best not to leave the switch to object oriented thinking too late, or it'll damage your brain. All programming really is object oriented. The only way to structure any kind of a complex project is in an object oriented fashion, whether it's Java, C++ or BASIC. Object Oriented languages provide the facilities for OO in the language itself, while in procedural languages, you have to be responsible for organizing your code into modular, object oriented segments. Anyway what im trying to say is that I think if you are JUST starting out with programming, you shouldn't worry about object orientation too much, because it's a very vast topic in and of itself, regardless of what language you're using. You need to get a good grip on logic, program flow and all the procedural parts that still form the meat of any object oriented language, and C in my opinion is a great language for that, because not only does it teach you the basics of programming, it teaches you a lot about how programs use memory, which most higher level languages will never provide you with.
|
|
|
Logged
|
|
|
|
team_q
|
|
« Reply #123 on: December 08, 2007, 12:05:36 PM » |
|
I will have to highly disagree with Farbs on most points. When you become a good C/C++ coder, there will be very few options that will be as powerful. Sure there are simpler options, more straightforward options, but when you get down to the gritty, you will always run into annoyances and wish you were using a lower level language. I don't think that using a higher level language makes things easier necessarily. The higher level the programming is, the faster you can generate a product. If it were a perfect world, everything would be programmed in Assembly and everything would have a 5 year development cycle. The main problem is, a programmers time is very valuable, often the most expensive in a company, if you can cut that down by using a higher level programming language, awesome. here is a completely unscientific chart: Assembly 1 year< C++ 4 months < C# 4 weeks. If my company makes $5 cellphone games, I'm going to program them in Java, its got the threads and libraries I need to churn out games every 2-4 weeks per programmer. Edit: laster? teh hell?
|
|
« Last Edit: December 08, 2007, 02:41:02 PM by TeamQuiggan »
|
Logged
|
|
|
|
skaldicpoet9
|
|
« Reply #124 on: December 08, 2007, 02:15:17 PM » |
|
Which brings me to my other point which is that C is its own language and not some stepping stone to C++. It has a vastly different programming mentality and should be explored separately from C++.
Yeah, that is pretty much how I have been approaching C language. Eventually, when I move onto C++ or something else I am just hoping that learning C as my foundation will enable me to be able to pick up other languages at a brisker pace then I do now.
|
|
|
Logged
|
\\\\\\\"Fearlessness is better than a faint heart for any man who puts his nose out of doors. The date of my death and length of my life were fated long ago.\\\\\\\"
|
|
|
Sigvatr
BANNED
Level 0
|
|
« Reply #125 on: December 08, 2007, 03:47:53 PM » |
|
|
|
|
Logged
|
|
|
|
Ivan
Owl Country
Level 10
alright, let's see what we can see
|
|
« Reply #126 on: December 08, 2007, 05:47:17 PM » |
|
The higher level the programming is, the faster you can generate a product.
I'm sorry if i keep sounding like some stuck up C snob, but that statement is incredibly untrue. A good C coder can produce stuff as fast as a good Python or Java coder. There is nothing in these languages that makes things actually faster. Yes, they are easier to learn, but you learn less. Yes, they are easier to setup and get going, but you dont know what exactly is happening I guess my point is that if you're learning to code, you have two choices. One is to start out from the high end, get immediate results, and only learn enough to do the simple stuff you're going to be able to do with no previous programming experience. Then you can work your way down to the lower levels over time. This is probably a better option for someone who's not very serious about becoming a programmer, because you'll get immediate results. The problem with this method is that it's not really certain that you will be compelled to go lower level, and you will be sort of stuck in the same niche where you started. The second option is to start low (noone can really expect you to do assembly, but C is a good alternative) and work your way up, as skaldicpoet is doing. I personally believe this is a better method, because it gives you a solid groundwork for learning pretty much any language or system from then on. Sure, once you've learned it all, you can choose to use some very high level language to quickly bang things out if you feel it works better for you, but at least you will have the knowledge of not only what you're actually doing, but the ability to circumvent the shortcomings of whatever high level system you are using. Also, Sigvatr, this is seriously bad ass. I really loved the screens of your doom mod and this reminds me of it very much. Keep on rockin!
|
|
« Last Edit: December 08, 2007, 05:49:16 PM by toastie »
|
Logged
|
|
|
|
skaldicpoet9
|
|
« Reply #127 on: December 08, 2007, 05:51:55 PM » |
|
...at least you will have the knowledge of not only what you're actually doing... I hope I will.... some day. :D
|
|
|
Logged
|
\\\\\\\"Fearlessness is better than a faint heart for any man who puts his nose out of doors. The date of my death and length of my life were fated long ago.\\\\\\\"
|
|
|
team_q
|
|
« Reply #128 on: December 08, 2007, 06:10:08 PM » |
|
Words words words.
I agree, but I would suggest that you start at C++ from my understanding, its about as low as you should go. You can do all the lower level things, plus all the object oriented fun that they bolted on, and if you are feeling really excited you can push forward into the fun world of managed code. The reason I would suggest starting with Java is its free, its similar to C++, and you don't have to deal with referencing weirdness and creating giant memory sink accidents.
|
|
|
Logged
|
|
|
|
Ivan
Owl Country
Level 10
alright, let's see what we can see
|
|
« Reply #129 on: December 08, 2007, 06:52:46 PM » |
|
Yeah, i don't have a problem with starting out with C++ per se, except that when you do, you a) are unclear of the difference between C and C++ because when you first do C++, most people do it C-style anyway (just doing stuff in main()) and b) you don't understand the idea of memory pointers as clearly because you don't have to manually allocate memory.
|
|
|
Logged
|
|
|
|
skaldicpoet9
|
|
« Reply #130 on: December 08, 2007, 07:05:33 PM » |
|
The reason I decided to go with C at first was due to the fact that according to all of the information I have gleaned from people on the web and other places it seems that it has less of a learning curve then C++ does. I wouldn't mind starting with C++ first seeing as how I have a feeling that that is where I will end up but I just don't want to take on too much at once.
|
|
|
Logged
|
\\\\\\\"Fearlessness is better than a faint heart for any man who puts his nose out of doors. The date of my death and length of my life were fated long ago.\\\\\\\"
|
|
|
team_q
|
|
« Reply #131 on: December 08, 2007, 08:16:45 PM » |
|
Go for it! I know you can do it, I didn't like C when I was introduced to it, but that was a bad time for me, so yeah.
|
|
|
Logged
|
|
|
|
peterd
|
|
« Reply #132 on: December 09, 2007, 11:11:48 AM » |
|
I'm making a weird game, I call it "Node", there is more on my blog : realtime Art ( ) On the subject of coding in C, I vote code in C++ as soon as possible. I admit it is a mess sometimes, and I will soon move onto a higher level language, but there are some advantages in the level of control working in C++ gives.
|
|
|
Logged
|
|
|
|
nayon
|
|
« Reply #133 on: December 09, 2007, 11:32:05 AM » |
|
Well I started programming with klik&play -> flash8 -> Java -> C -> C++ -> Java -> C#(XNA) -> Java -> Python -> C++ -> Java.
I dislike using external libraries, and Java is pretty adequate IMO. I have stuff that can make .jars into standalone executables, and I pretty much have my own framework by now, and it's totally cross-platform. So if anyone asks me about languages, I'll have to say Java. There are so many reasons, not all related to the language's features. I can see the advantages and disadvantages of working with pretty much any language by now, and each of them gets some specific task done, but Java does it my way, so Java it is. Take whatever you are most comfortable with, because "comfortable" languages aren't so comfortable if they simply don't suit you. And don't take noone's shit about any language, sure all have pros and cons, but we're not developing unreal 4 here, it doesn't really matter. Since we're all indies and we do it as a hobby, it should be fun. So have fun.
|
|
|
Logged
|
|
|
|
skaldicpoet9
|
|
« Reply #134 on: December 09, 2007, 10:27:07 PM » |
|
Take whatever you are most comfortable with, because "comfortable" languages aren't so comfortable if they simply don't suit you. And don't take noone's shit about any language, sure all have pros and cons, but we're not developing unreal 4 here, it doesn't really matter. Since we're all indies and we do it as a hobby, it should be fun. So have fun.
Exactly, if a language is a pain in my ass I'll still learn it. However, the language that I ultimately rest upon will be the one that is the most fun and intuitive to use for me.
|
|
|
Logged
|
\\\\\\\"Fearlessness is better than a faint heart for any man who puts his nose out of doors. The date of my death and length of my life were fated long ago.\\\\\\\"
|
|
|
Alevice
|
|
« Reply #135 on: December 12, 2007, 10:37:46 AM » |
|
Yeah, i don't have a problem with starting out with C++ per se, except that when you do, you a) are unclear of the difference between C and C++ because when you first do C++, most people do it C-style anyway (just doing stuff in main()) and b) you don't understand the idea of memory pointers as clearly because you don't have to manually allocate memory.
As much as I agree, in a way i beg to differ. I don't know your particular case, but in my experience many of the people who learned "too much" C carried a lot of their (relatively bad outsed C) habits to C++, utilizing it just as an extension for C in a way to implement objects (I still curse the fact that there C++ carries a lot of features from C that ae not really needed anymore). skaldicpoet9: A great C++ book I have read once you dare to venture to learn it is this one: http://www.relisoft.com/book/index.htm
|
|
|
Logged
|
|
|
|
oneup
|
|
« Reply #136 on: December 17, 2007, 09:44:28 PM » |
|
I still curse the fact that there C++ carries a lot of features from C that ae not really needed anymore. i curse the fact that c++ exists. yay for python/ pyglet // ruby/ gosu ^__^/ to be honest: if i imagine the time i wasted learning c++. it's just not worth the hassle. in retrospective my ideal language learning path would have been: c -> java/c# -> ruby/python.
|
|
|
Logged
|
|
|
|
marshmonkey
|
|
« Reply #137 on: December 22, 2007, 05:40:59 PM » |
|
a couple late nights and many hacked .js files later: a video of our kart customization GUI working in the game
|
|
|
Logged
|
|
|
|
Radnom
|
|
« Reply #138 on: December 22, 2007, 06:30:24 PM » |
|
|
|
|
Logged
|
|
|
|
Massena
|
|
« Reply #139 on: December 23, 2007, 04:55:44 AM » |
|
That looks sweet! Amazing Pic.
Is that the mandelbrot set in the background? :D
|
|
|
Logged
|
|
|
|
|