Tuesday, May 30, 2017

Module 5 - CST 338

GUI is learned late in the game with Java.  Do you think this is helpful or harmful and why?
I think it is helpful to wait a little while to learn GUI after going over the fundamentals in a language because from personal experience I find it much easier to understand and comprehend the language. One can easily get caught up more in the appearance of the GUI rather than the programming itself, and I personally found it much more interesting to work with the code than focus on looks.

Why do think that coding the Swing elements in Java would be more difficult compared to some other languages?
The syntax for the Swing elements maybe a little harder to grasp initially then other programming languages such as python, but the versatility of being able to build layer upon layer of the interface rather easily makes the Swing system very fun to work with.

Update your learning journal from what you experienced this week with class. 
This week we learned about GUI interfaces and how to write them in Java. One really interesting part of the week was working with the Swing elements to create the card table for this weeks assignment. I also created a video presentation this week on my thoughts for assignment 5. We created a GUI High Card game for the assignment this week and I really enjoyed working on this project.

Tuesday, May 23, 2017

CST 338 - Module 4

Give an example of polymorphism and what what be inherited between classes.
One example of polymorphism would be to have an “Animal” class. This class could contain such aspects as whether the animal is carnivorous, herbivorous, or omnivorous, as well as how many legs it has. Then we could create a class called “Bear” which extends from the Animal class and it would set itself as omnivorous with 4 legs.


After the learning this week, can you identify the difference between Abstract classes and Interfaces?  Be specific.
Interfaces are a sort of empty shell filled with names for methods which will not be filled until later when the interface is used.
Abstract classes are actual classes and can have both method signatures and definitions inside, unlike interfaces which just lay out the signatures for methods.

Update your learning journal from what you experienced this week with class. 
This week we spent some time discussing interfaces, inner classes, polymorphism, abstract classes, and UML design. It was quite interesting to learn about the flexibility afforded using techniques such as polymorphism where you could establish general guidelines for parent classes which could later be built upon as more and more specialized descendent classes were created. I also enjoyed learning about UML’s as they seem a clean-cut way too quickly grasp how a group of classes are interacting.

Tuesday, May 16, 2017

CST 338 - Module 3

What is the largest multi-dimensional array that you have used?
3

What is the largest that you think would be unwieldy and why?
If you use a vector to access the elements than my understanding is that it does not matter how many dimensions the array is.

What does inheritance do for your classes?  Have you used it in the past? How?
Inheritance makes it easier to write more generalized classes, with methods that will be useful to a variety of different, more specific classes. Yes, I have used inheritance in the past when working on projects similar to this week’s in simulating card games for example.

Update your learning journal from what you experienced this week with class. 
This week’s project was quite fun. Working with my team we created three different classes, Card, Hand, and Deck, which simulated how playing cards would be used. It included methods for multiple decks, shuffling the decks, drawing cards, and more. Besides the project we also reviewed such topics as the enum type, class inheritance, and references. Overall there were a lot of different topics covered.

Tuesday, May 9, 2017

CST 338 - Module 2

OOP is not in all languages.  Have you used one that does not?
No I do not believe I have spent any significant amount of time with a non-OOP language.

What was your experience?
N/A

How extensively have you used OOP outside of the classroom?
I have used it a few times on personal projects, but not extensively.

Are you experience with UML diagrams and do they help?
I am somewhat familiar with UML diagrams, but I don’t know if I have enough experience to state one way or another.


This week was quite interesting. We have a large amount of reading to go over and that took a bit longer to finish than I anticipated. The casino game was fun to create with my teammates, and it will be interesting going forward to see what projects we will complete together.

Tuesday, May 2, 2017

CST 338 - Module 1

Have you used Eclipse before?
Yes I have used Eclipse in previous courses when working with C++.

What languages are you proficient in at this point?
I am proficient in Python and C++ thus far.

What is your desired field of Computer Science at this point?
Personally, I am interested in general software engineering and perhaps looking into video game development specifically.

Update your learning journal from what you experienced this week with class. 

This week I took my first foray into Java. It seems interesting, and similar enough to C++ that it does not feel completely alien. I look forward to learning more about this language as the course progresses. Overall, I am enjoying the course and am highly anticipating the next few weeks of learning.

Tuesday, April 18, 2017

CST 205 Module 7

This class was overall quite enjoyable. We learned through hands on projects by manipulating and using pictures, sounds, and even some html, all while learning about the python programming language in the JES. Perhaps the most rewarding aspect of the course was the group projects in which we learned through experience what it takes for a team to plan, execute and accomplish programming tasks. I believe the practice working with others programming is very applicable to a career in computer science, as it will be necessary to review and rewrite programs together with co-worker to achieve the desired results. To any future students who take this course, I would suggest that they keep on top of the workload, as the fast pace nature of the course can leave you feeling overwhelmed if you are not careful.

Tuesday, April 11, 2017

CST Module 6

This week we went over lists, dictionaries and working with files. It was interesting to study these and the projects we did were quite fun. We created a madlib, sorted through a txt file and an html file. I also got the chance to create my video for the lab presentation and I enjoyed the process of writing up and presenting my information.