Thursday, March 19, 2015

Delegates make me all philosophical. also shawls.

Even though I should be super frustrated, I am still super enamored with Mobile Makers. They've been giving us harder and harder projects and I'm still understanding. Which go me.

Anyways, remember how I was all like, "oh yea, segues are so easy, I am the best at them." I may have to amend that statement. I do get the general concept of them, but those paired with delegation make me a little iffy.

Delegation you ask? Yup. It's just like it sounds. It's when something makes something else do a task.... well sort of. It's actually super complicated and I'm just starting to wrap my head around. I'll probably post a clearer example once I start fully grasping it, but for now let me just give it my college try.

You have to use delegation when you are doing something in a different view  (or a different file) and want to know about it outside of that view (/file). I think it's a way to add more methods (making objects do things) that is cleaner and easier to break down. Some of the common objects we use all the time (view controller, table views, text fields) have delegates. These are already defined but generally I think of them as access to a level/power up. So with the objects 'built in' to objective c we can already do a  lot of stuff, but if we access their delegate we get to do ALL of their stuff.

Like Popeye. He is already a pretty good... sailor? Not really sure what he is. But then he eats spinach and he can do so much more stuff! Like knock people out... and other stuff. I'm not really up on my Popeye it would appear. But delegates are like spinach. We call them on a class and BOOM we can do way more.

From what I can tell, delegates are usually used when something is clicked or pushed and you want it to do something.

Phew. Right? That was all yesterday. We learned about delegates last week but yesterday we had to really learn them to build an app that basically just shows a different collection of tigers and lions when a corresponding button is clicked. WHICH IS SO MUCH HARDER THAN IT SOUNDS.

I think that's the main thing I've learned is that things that seem really easy are actually super complicated. I guess it makes sense because we think swiping to go to a new page makes sense, but we first had to learn how to see, how to make our finger move, and associate certain movements with certain results.

Think about being a baby. You didn't know anything as a baby (contrary to the movie Baby Geniuses). I was blown away a couple weeks ago when I learned that babies can't even recognize shapes until a couple months old. I mean that's why it takes so long to walk. Think about how complicated that is. But you don't even have to because your brain does it automatically.

Programming is making a brain. 

Ok.... you can tell I'm excited and into this right? So i'm going to be even nerdier right here. Because you know writing about knitting isn't nerdy enough.

I've always been fascinated by the brain. I've always been fascinated by philosophy and why things are how they are. And it turns out the programming is literally both of those.

Let me explain about the philosophy thing. (because the brain thing is explained up above sort of)

Philosophy takes abstract things and tries to make them concrete to be able to manipulate or solve problems. (I just blew my own brain writing that. I sound so deep and insightful)

Programming is wanting a computer or phone to do something. In order to do that, you have to conceptualize a lot of stuff. You have to break down the task into different actions and parts. You have to translate that into words (the programming language). And the programming language is telling the computer what ones and zeros and numbers to fire in order for it to accomplish things.

Why yes I am a little iffy on how programming languages and computers interact. However did you guess?

I realize there is no knitting here... but I am on the death marathon part of the shawl. For those of you unfamiliar with knitting, it's when you literally have a row that is 300 stitches and you have to add four stitches every other row in order to get to 400 stitches. You don't get a lot knit vertically and so your brain is like, "UGHHHH I just did one row and it took fifteen minutes and I have so many more of these".

Speaking of knitting... it might be time to switch to a sock as my portable project.

No comments:

Post a Comment