RE: Now I Know Why I'm Having Trouble With Objects

  • From: "Sina Bahram" <sbahram@xxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Tue, 12 Apr 2011 20:39:04 -0400

Just to save space, let's have a color flag.

Take care,
Sina

Take care,
Sina

-----Original Message-----
From: programmingblind-bounce@xxxxxxxxxxxxx 
[mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Jared Wright
Sent: Tuesday, April 12, 2011 6:08 PM
To: programmingblind@xxxxxxxxxxxxx
Subject: Re: Now I Know Why I'm Having Trouble With Objects

So I wrote out this rough little OOP outline of how I'd model a chess 
game to send with piece and square objects and a board object containing 
collections of them, then read this and thought, "Oh, yeah. That's why 
Sina's smarter than me." You'd need to have twelve possible values 
though I think to distinguish the different color pieces and you'd have 
to handle mutating pawns that make it to the last row.
On 4/12/2011 5:39 PM, Sina Bahram wrote:
> I wouldn't necessarily model the pieces at all.
>
> Just treat the chess game as a state representation problem.
>
> The board represents the state of the game
>
> So, if you have an 8x8 array with 6 possible values at each slot, then
> you can represent any chess game in existence.
>
> You can make the pieces an enum, then simply have a rules class that has
> static methods to validate the board upon moves being queried, such as
>
> Rules.isValidMove(3, 5, Pieces.KNIGHT)
>
> Or whatever
>
> Take care,
>
> Sina
>
> *From:*programmingblind-bounce@xxxxxxxxxxxxx
> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] *On Behalf Of *Homme, James
> *Sent:* Tuesday, April 12, 2011 3:27 PM
> *To:* programmingblind@xxxxxxxxxxxxx
> *Subject:* RE: Now I Know Why I'm Having Trouble With Objects
>
> Hi,
>
> If it's OK, I'd like to take this a little further. I was thinking about
> my little chess move validation project. I thought I would sit down and
> try to write out a little plan, because my book says that the nouns
> become objects, but I started to get confused when I asked myself this
> question. Do the pieces move, do the squares on the board somehow get
> pieces, or does some controller in the sky move the pieces? In the real
> world, the controller would be the player who is moving the pieces. The
> pieces can't move them selves, and all the board can do is sit there and
> have pieces on its squares. The rules would be another object, would
> they not? Oh my head.
>
> Jim
>
> Jim Homme,
>
> Usability Services,
>
> Phone: 412-544-1810. Skype: jim.homme. NonVisualDevelopment.org: Blind
> people can drive computers <http://www.nonvisualdevelopment.org/>.
> Demonstration GUI Programs: You can program GUI's while blind.
> <http://www.fruitbasketdemos.org/>
>
> *From:*programmingblind-bounce@xxxxxxxxxxxxx
> [mailto:programmingblind-bounce@xxxxxxxxxxxxx] *On Behalf Of *Homme, James
> *Sent:* Tuesday, April 12, 2011 3:20 PM
> *To:* programmingblind@xxxxxxxxxxxxx
> *Subject:* Now I Know Why I'm Having Trouble With Objects
>
> Hi,
>
> I found this humorous.
>
> Understanding the Parts of VBA "Speech"
>
> If you were going to play soccer using BASIC, the instruction to kick a
> ball would look something like
>
> "Kick the Ball"
>
> Hey-this is how we talk! It makes sense. You have a verb (kick) and then
> a noun (the ball). In the BASIC code in the preceding section, you have
> a verb
>
> (print) and a noun (an asterisk). Life is good.
>
> Here is the problem. VBA doesn't work like this. No object-oriented
> language works like this. In an object-oriented language, the objects
> (the nouns) are
>
> most important (hence, the name: object oriented). If you are going to
> play soccer with VBA, the basic structure would be:
>
> Ball.Kick
>
> You have a noun-the ball. It comes first. In VBA, this is an object
>
> . Then you have the verb-to kick. It comes next. In VBA, this is a method.
>
> The basic structure of VBA is a bunch of lines of code where you have
>
> Object.Method
>
> Sorry, this is not English. If you took a romance language in high
> school, you will remember that they used a "noun adjective" construct,
> but I don't know
>
> anyone who speaks in "noun verb" when telling someone to do something.
> Do you talk like this?
>
> Water.Drink
>
> Food.Eat
>
> Girl.Kiss
>
> Of course not. That is why VBA is so confusing to someone who previously
> stepped foot in a procedural programming class.
>
> Let's carry the analogy on a bit. Imagine you walk onto a grassy field
> and there are five balls in front of you. There is a soccer ball, a
> basketball, a
>
> baseball, a bowling ball, and a tennis ball. You want to instruct the
> kid on your soccer team to
>
> Kick the soccer ball
>
> If you tell him kick the ball (or ball.kick
>
> ), you really aren't sure which one he will kick. Maybe he will kick the
> one closest to him. This could be a real problem if he is standing in
> front of
>
> the bowling ball.
>
> Jim
>
> Jim Homme,
>
> Usability Services,
>
> Phone: 412-544-1810. Skype: jim.homme. NonVisualDevelopment.org: Blind
> people can drive computers <http://www.nonvisualdevelopment.org/>.
> Demonstration GUI Programs: You can program GUI's while blind.
> <http://www.fruitbasketdemos.org/>
>
> ------------------------------------------------------------------------
>
> This e-mail and any attachments to it are confidential and are intended
> solely for use of the individual or entity to whom they are addressed.
> If you have received this e-mail in error, please notify the sender
> immediately and then delete it. If you are not the intended recipient,
> you must not keep, use, disclose, copy or distribute this e-mail without
> the author's prior permission. The views expressed in this e-mail
> message do not necessarily represent the views of Highmark Inc., its
> subsidiaries, or affiliates.
>

__________
View the list's information and change your settings at 
//www.freelists.org/list/programmingblind

__________
View the list's information and change your settings at 
//www.freelists.org/list/programmingblind

Other related posts: