A base-language is really necessary?

Started by
3 comments, last by _the_phantom_ 12 years, 11 months ago
Confusing title, yeah, I know.

What I'm asking more specifically is about people, and many of them, are claiming that you NEED to know a base-language(a programming language itself, not an API)to the FULLEST to be able to develop games.

Is this true?

Like, if I'm not an expert at, say, C++ inside and out, that limited-knowledge will prevent or make it difficult to develop a game? How so?

I know C++ basics, how to use it for what I do, but I really don't know it that well overall. I found it kind of dumb to dig deeper into the language seeing how it has little to do with game programming itself, in the big picture, but why do people say that?

I hear everyone saying that knowing a base-language 100% is necessary before programming games. But again, why? A base-language, to the max, doesn't have much effect on game programming mechanisms, like APIs themself(which have nothing to do with base-languages in the field of relation of use), graphics(which, again, don't pertain to a base-level language's structure or use), etc.

So what's the hype with knowing programming languages "PERFECTLY" before getting into game programming?

I think that, to be honest, one could program by learning an API, the basics of game programming, etc., with having very minimal knowledge of a base-language itself.

I really believe it's true. The people who are pushing programming languages so much are people who probably just know the language and assume "everyone" must as well, when it's not necessary to know a whole language in and out to use it to your advantage, program, etc.

Again, remember, most of C++'s "deeper" things seem to be related to OOP, and we ALL should know that OOP will not make or break the weight or code behind a game.

All in all, since C++'s deeper things are mainly OOP, it is basically not necessary to learn them because OOP doesn't limit or unlimit your ability or knowledge, skills or code behind a game: It is not necessary.

BUT I'd like to hear some others' opinions. This is why I asked this. Sorry if it came off mean...
Advertisement


Is this true?

No.

if I'm not an expert at, say, C++ inside and out[/quote]There is a total of 9 C++ experts that know language inside out. Most of them are on language committee board, the other one went insane and is living on a remote island, thinking he is a coconut.

[quoteI hear everyone saying that knowing a base-language 100% is necessary before programming games. But again, why?[/quote]Meritocracy. You will not be respected if you don't know language at same level as your peers. That exerts social pressure and disrupts team dynamics. It's one of easiest things to solve, just have everyone master the language, thereby establishing the ceiling.


I really believe it's true. The people who are pushing programming languages so much are people who probably just know the language and assume "everyone" must as well[/quote]Not everyone.

But markets are so oversaturated with programmers that filtering by those who have mastered required languages still leaves a desk full of overqualified resumes.

If not looking for a job, then it doesn't matter.
when it's not necessary to know a whole language in and out to use it to your advantage, program, etc.[/quote]Maybe.

It's also not necessary to know foot anatomy when doing a brain surgery.

[quote name='Andy Harglesis' timestamp='1306024796' post='4814032']

Is this true?

No.

if I'm not an expert at, say, C++ inside and out[/quote]There is a total of 9 C++ experts that know language inside out. Most of them are on language committee board, the other one went insane and is living on a remote island, thinking he is a coconut.

[quoteI hear everyone saying that knowing a base-language 100% is necessary before programming games. But again, why?[/quote]Meritocracy. You will not be respected if you don't know language at same level as your peers. That exerts social pressure and disrupts team dynamics. It's one of easiest things to solve, just have everyone master the language, thereby establishing the ceiling.


I really believe it's true. The people who are pushing programming languages so much are people who probably just know the language and assume "everyone" must as well[/quote]Not everyone.

But markets are so oversaturated with programmers that filtering by those who have mastered required languages still leaves a desk full of overqualified resumes.

If not looking for a job, then it doesn't matter.
when it's not necessary to know a whole language in and out to use it to your advantage, program, etc.[/quote]Maybe.

It's also not necessary to know foot anatomy when doing a brain surgery.
[/quote]

Good points, all of them.

Glad others can see this the way I do. I believe that C++, at its fullest, isn't really that great. Me not being a big fan of OOP(I dislike it, truthfully)fail to see how learning C++'s deeper use(which is almost all OOP and some other stuff that I'd never need to use)would help me become a better programmer in game development.

Is there something I'm blindly not seeing here? OOP isn't necessary, yet people claim C++'s core aspects of work, which are all OOP, are necessary to program games when that's untrue.

How would Java programmers make games then? There's no OOP in Java, so clearly there's something "off" here with what people are pushing...
Weren't you already banned for trolling?

(For beginners that might read the thread):


Is this true?


Able? No. Succeed? For any relatively sizable game, yes.


Like, if I'm not an expert at, say, C++ inside and out, that limited-knowledge will prevent or make it difficult to develop a game? How so?
[/quote]

It will make things more difficult. The best analogy is to tools. You can build a house with a handsaw and plain old hammer, but you'll get a better house done quicker with more/better tools. Language features, API knowledge, program design skill are all tools for a developer's box.


I know C++ basics, how to use it for what I do, but I really don't know it that well overall. I found it kind of dumb to dig deeper into the language seeing how it has little to do with game programming itself, in the big picture, but why do people say that?
[/quote]

Because they know that all parts of the language have to do with game programming if you apply the language to writing a game.


I hear everyone saying that knowing a base-language 100% is necessary before programming games. But again, why? A base-language, to the max, doesn't have much effect on game programming mechanisms, like APIs themself(which have nothing to do with base-languages in the field of relation of use), graphics(which, again, don't pertain to a base-level language's structure or use), etc.
[/quote]

Because making a game is more than sending some commands to an API. How do you tie the different APIs together? How do you implement the game rules?

To be honest, many here recommend such a strong foundation in programming because far too many beginners have this viewpoint. 'It doesn't apply to games, so I won't learn it'. Programs are programs. Games have a few certain nuances and requirements but 98% of the process and skills required are the same. Too many beginners start before they're really ready; to their detriment.


I really believe it's true. The people who are pushing programming languages so much are people who probably just know the language and assume "everyone" must as well, when it's not necessary to know a whole language in and out to use it to your advantage, program, etc.
[/quote]

No, but everything else being equal, a programmer with more knowledge of the language at hand will produce better code than one without. Sometimes this doesn't matter. The resultant code is good enough.


Again, remember, most of C++'s "deeper" things seem to be related to OOP, and we ALL should know that OOP will not make or break the weight or code behind a game.

All in all, since C++'s deeper things are mainly OOP, it is basically not necessary to learn them because OOP doesn't limit or unlimit your ability or knowledge, skills or code behind a game: It is not necessary.

BUT I'd like to hear some others' opinions. This is why I asked this. Sorry if it came off mean...
[/quote]

Pssh. Templates are not OOP. Metaprogramming is not OOP.

Basic, competent C++ knowledge should provide some skill designing programs in an OO fashion. Having that isn't strictly necessary to create a working game, but it will help significantly, and will aid you in not getting laughed out of any programming interviews.



There's no OOP in Java,
[/quote]

Troll alert!!!

Glad others can see this the way I do. I believe that C++, at its fullest, isn't really that great. Me not being a big fan of OOP(I dislike it, truthfully)fail to see how learning C++'s deeper use(which is almost all OOP and some other stuff that I'd never need to use)would help me become a better programmer in game development.


I see.. so what you are saying is "I don't know something and from that position of not knowing I have formed an opinion without facts and used it to back up my state of mind which already exists" aka "I'm a closed minded idiot".

Most of C++'s 'deeper', as you put it, functionality has little to nothing todo with OOP as a paradigm; C++ is, at it's heart, a multi-paradigm language.

Is knowing more of it required? No.

Would knowing more of it make you a better programmer in it? Sure.

But then, knowing more than one language also makes you a better programmer as it exposes you to new things and forces you to rethink how you do things.

However, given your mindset, I suspect this would be a waste of time.

This topic is closed to new replies.

Advertisement