POV-Ray : Newsgroups : povray.off-topic : What's in an IDE? Server Time
4 Sep 2024 19:20:55 EDT (-0400)
  What's in an IDE? (Message 41 to 50 of 66)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Warp
Subject: Re: What's in an IDE?
Date: 1 Mar 2010 19:59:05
Message: <4b8c62d8@news.povray.org>
Darren New <dne### [at] sanrrcom> wrote:
> Warp wrote:
> >   (Besides, what is *your* definition of "IDE", if CMake isn't one?)

> CMake is just a new version of make, or a makefile generator, I forget 
> which. It's not integrated, and it's not an environment, any more than make 
> itself is.

  You said what CMake is/isn't, not what an "IDE" is...

-- 
                                                          - Warp


Post a reply to this message

From: Darren New
Subject: Re: What's in an IDE?
Date: 1 Mar 2010 20:47:02
Message: <4b8c6e16$1@news.povray.org>
Warp wrote:
> Darren New <dne### [at] sanrrcom> wrote:
>> Warp wrote:
>>>   (Besides, what is *your* definition of "IDE", if CMake isn't one?)
> 
>> CMake is just a new version of make, or a makefile generator, I forget 
>> which. It's not integrated, and it's not an environment, any more than make 
>> itself is.
> 
>   You said what CMake is/isn't, not what an "IDE" is...

You weren't talking to me. :-)  I wasn't sure you knew what cmake was, so I 
was clarifying that it wasn't an IDE. :-)

I don't consider cmake a development environment. It's one tool that's part 
of some development environments.

-- 
Darren New, San Diego CA, USA (PST)
   The question in today's corporate environment is not
   so much "what color is your parachute?" as it is
   "what color is your nose?"


Post a reply to this message

From: nemesis
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 00:00:01
Message: <web.4b8c9a47c7641e1cfbacf1b0@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
> Darren New <dne### [at] sanrrcom> wrote:
> > Warp wrote:
> > >   (Besides, what is *your* definition of "IDE", if CMake isn't one?)
>
> > CMake is just a new version of make, or a makefile generator, I forget
> > which. It's not integrated, and it's not an environment, any more than make
> > itself is.
>
>   You said what CMake is/isn't, not what an "IDE" is...

bash is a pretty good IDE to me.  It integrates/glues all other dev tools
needed. :)


Post a reply to this message

From: Invisible
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 04:35:42
Message: <4b8cdbee$1@news.povray.org>
>> Actually it saves the GUI description as an XML file, which your 
>> program then loads and parses at runtime.
> 
> Yes. As does Visual Studio. And what do you think the boilerplate does 
> there beside "load and parse at runtime" that XML? :-)

Surely it's just 1 line of code? (Unless you want to do something 
special to determine where to find the XML file...)

>> Now, see, to me these kinds of tasks all belong to the set of things 
>> which are "impossible" in the first place, so I guess I don't tend to 
>> think about it. You can't write web browser plugins unless you're a C 
>> programmer, unfortunately.
> 
> Of course you can.

Oh, yeah, I forgot. You could be a C++ programmer. ;-)


Post a reply to this message

From: Invisible
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 04:54:04
Message: <4b8ce03c$1@news.povray.org>
>>> Edit->Advanced->Reformat entire document
>> Wouldn't that just apply the incorrect formatting to the whole document?
> 
> It applies the formatting rules you asked it to apply.

Or rather, it applies the default formatting rules, whatever they happen 
to be for the IDE in question.

> Which would be "the" incorrect formatting?

For example, both JBuilder and VS put the opening bracket of a function 
on the same line as the function declaration, rather than on the next 
line where it belongs. They also indent everything by 8 spaces rather 
than the usual 2. And so on. (I'm not even sure *what* formatting rule 
they apply to if-statements...)

> So you're going to maintain a batch file that first compiles the code 
> needed to parse the video game animations, then the code that writes 
> them out, then runs the animations through that, then put them in the 
> right place?
> 
> Why in the world would you do that when it has already been written for 
> you?

Yeah, if your application was actually that complex, you'd probably use 
make or similar.

> It is if you're doing something small enough. But then, you can live 
> without batch files too if you never type the same command more than twice.
> 
> The advantages of an IDE over a DE is that it's integrated.

OK, fair enough.

Large numbers of people apparently think that it's just infeasible to 
write any code of any kind unless you have an IDE specifically targetted 
at the programming language you're using. But to me, it looks like an 
IDE is only really beneficial if you're actually doing something 
complex. (And, further more, it looks to me that the tipping point is 
when you start writing something more complex than any program I've ever 
attempted in my entire life - so an IDE is probably of little to no use 
to me...)

>>>>> 6) "Template" projects for a Windows app
>>>>
>>>> What does that do?
>>>
>>> Try it! Or at least google it. :-)
>>
>> A human being is far more likely to give a useful overview. 
> 
> You know what a template is in documents, right? Corporate report 
> template? Vacation time reporting template? Request for purchase of 
> networking equipment template?
> 
> Same thing, for code.

Sure. But "Windows app" template? What could possibly be in it?

It's like, you have a template for a purchase request. Or a template for 
a procedure document. But you know what you *don't* have a template for? 
A document. Because, let's face it, what would a template for "a 
document" actually contain?

Similarly, "a Windows application" could be absolutely anything. How do 
you template that?

> I want to write a game. I want to write a windows service. I want to 
> write a new type for a SQL database engine.  I want to build a web 
> application.

Maybe it's because I've never written any of these things, but I can't 
imagine what (for example) two games would have in common. (And hence, 
what you'd put into a template.)

>> I'll just spend an hour not being able to figure out what it's 
>> supposed to be for.
> 
> That's because you never practice the skill, so you never improve at it.

This statement is not falsifiable.


Post a reply to this message

From: scott
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 05:18:15
Message: <4b8ce5e7$1@news.povray.org>
> I want to write a game.

Actually if you install XNA with VC# then you can go File -> New -> Windows 
Game and then press F5 and you will have running a game skeleton program 
which is very easy to add stuff too.  In fact you can also choose 
"Platformer Starter Kit" as a new project and have a playable platform game 
as a template!  Then go Build -> Publish... and it creates a standalone 
installer to distribute, it doesn't get any easier than this to code games 
on Windows/XBOX!


Post a reply to this message

From: scott
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 05:36:47
Message: <4b8cea3f$1@news.povray.org>
> For example, both JBuilder and VS put the opening bracket of a function on 
> the same line as the function declaration, rather than on the next line 
> where it belongs.

In VS Express (the free one):

Options -> Text Editor -> (Language) -> Formatting -> New Lines -> "Place 
open brace on new line for xxxx" where (xxx) is a number of different 
options.  Feel free to tick all these (actually they seem to all be ticked 
by default, it's the style I prefer too).

>  They also indent everything by 8 spaces rather than the usual 2. And so 
> on. (I'm not even sure *what* formatting rule they apply to 
> if-statements...)

Options -> Text Editor -> (Language) -> Tabs -> "Tab Size" or "Indent size"

Why don't you just spend 5 minutes setting the options to your preference?

> Maybe it's because I've never written any of these things, but I can't 
> imagine what (for example) two games would have in common. (And hence, 
> what you'd put into a template.)

Err, the headers and namespaces for graphics, audio and input libraries, 
build processors set up for graphics files, meshes, sound files etc, a game 
loop with empty functions for you to add your game logic and graphics code, 
pre-existing code for initialising the graphics API and painting the updates 
into the window each frame, a framework for adding "components" to your game 
that can be easily enabled/disabled and automatically called/rendered, etc.

Just download VC# and XNA and ask it to make a new "Game" project - there's 
a lot of useful common stuff in there that makes your job way easier.


Post a reply to this message

From: Invisible
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 05:55:42
Message: <4b8ceeae@news.povray.org>
scott wrote:
>> For example, both JBuilder and VS put the opening bracket of a 
>> function on the same line as the function declaration, rather than on 
>> the next line where it belongs.
> 
> In VS Express (the free one):
> 
> Options -> Text Editor -> (Language) -> Formatting -> New Lines -> 
> "Place open brace on new line for xxxx" where (xxx) is a number of 
> different options.  Feel free to tick all these (actually they seem to 
> all be ticked by default, it's the style I prefer too).

When I looked at this stuff, there were 3 different options you could 
select. I tried all three, and none of them did what I want. (Curiosly, 
there didn't seem to be an option for "disable all autoformatting and 
just let me do it by hand".)

> Why don't you just spend 5 minutes setting the options to your preference?

As I say, when I tried it there wasn't much you could adjust.

>> Maybe it's because I've never written any of these things, but I can't 
>> imagine what (for example) two games would have in common. (And hence, 
>> what you'd put into a template.)
> 
> Err, the headers and namespaces for graphics, audio and input libraries, 
> build processors set up for graphics files, meshes, sound files etc, a 
> game loop with empty functions for you to add your game logic and 
> graphics code, pre-existing code for initialising the graphics API and 
> painting the updates into the window each frame, a framework for adding 
> "components" to your game that can be easily enabled/disabled and 
> automatically called/rendered, etc.

Now, to me, that sounds like it's just going to build a bunch of 
boilerplate code for how the designers invesage a game would be 
structured, and if you want your game structured a different way you're 
going to have to waste time deleting the template stuff and rewritting 
it the way you want it.

Similarly, I obviously haven't written many games (currently at zero and 
counting), but I would have hoped that "initialising the system" would 
already be a fairly painless task. (Isn't this what we have libraries for?)

I'm not quite sure what "build processors set up for graphics files, 
mashes, sound files etc" is supposed to mean.

> Just download VC# and XNA and ask it to make a new "Game" project - 
> there's a lot of useful common stuff in there that makes your job way 
> easier.

Well, yeah, there is always that. (Although not understanding C#, 
presumably none of it will make sense anyway...)


Post a reply to this message

From: scott
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 06:15:44
Message: <4b8cf360$1@news.povray.org>
> Now, to me, that sounds like it's just going to build a bunch of 
> boilerplate code for how the designers invesage a game would be 
> structured, and if you want your game structured a different way you're 
> going to have to waste time deleting the template stuff and rewritting it 
> the way you want it.

Sorry but I never heard of anyone making a game that didn't have a "game 
loop" and methods for rendering and methods for the game logic.  Obviously 
you are free to delete those and make your own, or just start from scratch. 
They are just providing the most common structure, as most people will want 
that anyway.

> Similarly, I obviously haven't written many games (currently at zero and 
> counting), but I would have hoped that "initialising the system" would 
> already be a fairly painless task. (Isn't this what we have libraries 
> for?)

Sure, it's just the odd line here and there for creating a 
GraphicsDeviceManager, a content loader object, a sprite/texture manager 
object, method calls to clear and redraw the frame, that sort of thing.  No 
more than a handful of lines of code, but it's easier to have it done for 
you in a nice structure than to have to start from scratch each time.

> I'm not quite sure what "build processors set up for graphics files, 
> mashes, sound files etc" is supposed to mean.

So that you can go "Add to project..." and include a JPEG, PNG, WAV, MP3, 
BMP, X (3D mesh) or whatever and at the build stage it will convert your 
file into a format suitable/optimised for the game (eg mipmaps for the 
textures).  It saves you have to export all your data files in some specific 
format just to get them to work with your API, the build processor just does 
it seemlessly (obviously it detects if there has been an update or not).

> Well, yeah, there is always that. (Although not understanding C#, 
> presumably none of it will make sense anyway...)

FYI here's the raw template code it gives you when you create a new game (it 
looks better in the IDE than in plain text):  Now maybe it's just me, but I 
quite like it doing that automatically for me rather than having to 
remember/type that all each time I want to mess about quickly with a little 
graphics demo or whatever.


using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage;

namespace WindowsGame3
{
    /// <summary>
    /// This is the main type for your game
    /// </summary>
    public class Game1 : Microsoft.Xna.Framework.Game
    {
        GraphicsDeviceManager graphics;
        SpriteBatch spriteBatch;

        public Game1()
        {
            graphics = new GraphicsDeviceManager(this);
            Content.RootDirectory = "Content";
        }

        /// <summary>
        /// Allows the game to perform any initialization it needs to before 
starting to run.
        /// This is where it can query for any required services and load 
any non-graphic
        /// related content.  Calling base.Initialize will enumerate through 
any components
        /// and initialize them as well.
        /// </summary>
        protected override void Initialize()
        {
            // TODO: Add your initialization logic here

            base.Initialize();
        }

        /// <summary>
        /// LoadContent will be called once per game and is the place to 
load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch = new SpriteBatch(GraphicsDevice);

            // TODO: use this.Content to load your game content here
        }

        /// <summary>
        /// UnloadContent will be called once per game and is the place to 
unload
        /// all content.
        /// </summary>
        protected override void UnloadContent()
        {
            // TODO: Unload any non ContentManager content here
        }

        /// <summary>
        /// Allows the game to run logic such as updating the world,
        /// checking for collisions, gathering input, and playing audio.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing 
values.</param>
        protected override void Update(GameTime gameTime)
        {
            // Allows the game to exit
            if (GamePad.GetState(PlayerIndex.One).Buttons.Back == 
ButtonState.Pressed)
                this.Exit();

            // TODO: Add your update logic here

            base.Update(gameTime);
        }

        /// <summary>
        /// This is called when the game should draw itself.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing 
values.</param>
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.CornflowerBlue);

            // TODO: Add your drawing code here

            base.Draw(gameTime);
        }
    }
}


Post a reply to this message

From: Invisible
Subject: Re: What's in an IDE?
Date: 2 Mar 2010 06:28:45
Message: <4b8cf66d@news.povray.org>
scott wrote:

>> I'm not quite sure what "build processors set up for graphics files, 
>> mashes, sound files etc" is supposed to mean.
> 
> So that you can go "Add to project..." and include a JPEG, PNG, WAV, 
> MP3, BMP, X (3D mesh) or whatever and at the build stage it will convert 
> your file into a format suitable/optimised for the game (eg mipmaps for 
> the textures).

Oh, OK. I didn't realise there was a conversion step there.

>> Well, yeah, there is always that. (Although not understanding C#, 
>> presumably none of it will make sense anyway...)
> 
> FYI here's the raw template code it gives you when you create a new game 
> (it looks better in the IDE than in plain text):

That's actually not too bad...


Post a reply to this message

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.