Jump to content

The road to become a Java programmer


Hi G00gle

Recommended Posts

- Excuse me if this is the wrong section, please move so to the right section if this is the wrong section - 

 

Hi,

 

As the new year has started, I've also picked up some new goals. As of lately, I've started to become bored alot, and decided to pickup some Java programming! :)

In this post I will be keeping you guys up-to-date on where I stand, and how far I currently am on studying Java. 

Some Q&A first! :)

 

- Where do you follow your tutorials?

I am currently following the Java tutorials on this site: Lynda

 

- Does it has some sort of subscribtion?

Yes it has some sort of subscribtion, I pay a monthly fee of around 29,99, though, they approach it a professional aspect, and don't just go float around like, here are some variables, here are some objects, go elsewhere from here. They go deeper into the language as in history, how to use proper syntax, and such.

 

- Do you intend to learn Java only for OSBot scripting? 

Not specifically. I currently lack some sort of motivation for most computer related stuff, and Java has been quite a interest of me for a long time, I just never could find time to pick it up. 

 

Currently I am following the tutorial 'Java 8 Essential Training' - As I've read somewhere, OSBot doesn't support Java 9 - So for now I will stick to Java 8. Also, the duration of the tutorial is 6h and 4m. I will post below where I currently stand in the learning progress. Questions will go to the scripting section if I ever run into some problems.

 

Here is a overview on where I currently stand:

 

Spoiler

      Introduction
        - Welcome
        - Is this course for you?
        - Using the Exercise files

    1. What is Java?
        - The history of Java
        - Principles and components of Java
        - Java syntax and compilation
        - Memory management and garbage collection
        - Choosing a development environment

    2. Installing the Software
        - Installing Java on Windows
        - Installing Java on OS X
        - Installing IntelliJ IDEA on Windows
        - Installing IntelliJ IDEA on OS X
        - Installing BlueJ


    3. Getting Started
        - Hello World
        - Passing arguments to a console application
        - Organizing Java classes in packages
        - Creating a Java project in IntelliJ IDEA
        - Taking a tour of IntelliJ IDEA
        - Creating a Java project in BlueJ
        - Using the Java API documentation

    4. Working with Variables
        - Working with primitive variables
        - Declaring and initializing numeric primitives
        - Representing currency values with BigDecimal
        - Converting numeric values
        - Using mathematical operators and the Math class
        - Working with Boolean values and expressions
        - Working with character values
        - Using Java operators

    5. Working with Objects
        - Working with object data types
        - Using the String class
        - Converting primitive values to strings
        - Building a string from multiple values 
        - Comparing string values
        - Formatting numeric values as strings
        - Parsing string values
        - Working with dates and times
        - Challenge: Creating a simple calculator application
        - Solution: Creating a simple calculator application

    6. Exception Handling and Debugging
        - Understanding syntax errors vs. runtime exceptions
        - Debugging with IntelliJ IDEA
        - Handling exceptions with try/catch
        - Creating multiple catch blocks
        - Throwing custom exceptions

    7. Managing Program Flow
        - Programming conditional logic
        - Using the switch statement
        - Creating looping code blocks
        - Creating reusable code with methods
        - Overloading methods with different signatures
        - Passing arguments by reference or by value
        - Challenge: Creating a more complex calculator application
        - Solution: Creating a more complex calculator application

    8. Using Data Collections
        - Using simple arrays
        - Using two-dimensional arrays
        - Managing resizable arrays with ArrayList
        - Managing unordered data with HashMap
        - Looping through collections with iterators and for-each

    9. Creating Custom Classes
        - Understanding encapsulation 
        - Creating and instantiating custom classes
        - Creating nested and anonymous classes
        - Visualizing class relationships
        - Storing data in instance variables
        - Declaring instance and static methods
        - Using constructor methods
        - Using static variables as constants
        - Declaring and using enum types

    10. Working inheritance
        - Understanding inheritance and polymorphism
        - Extending classes and overriding methods
        - Creating and implementing interfaces
        - Using abstract classes and methods

    11. Using Common Java Libraries
        - Managing files with the original File class
        - Managing files with Java 7's new I/O library
        - Managing files with Apache Commons FileUtils
        - Reading a text file over the Internet

    12. Preparing a Java Application for Deployment
        - Document code with Javadoc
        - Packaging classes in JAR files

    13. Conclusion

 

When I finish up this course, I will continue on improving and perhaps start writing OSBot scripts soon. :) 

If you have any questions or comments or even suggestions, please let me know! I will use this post as some sort of blog to keep you guys updated! :) 

 

Edited by Hi G00gle
  • Like 3
Link to comment
Share on other sites

A short update as I've already progressed through another chapter. Wasn't quite a hard chapter, though, it was quite alot of information. 

More like what was realised in what year, what are some principles, are keywords aloud in classes and such? 

Quite an interesting read on the memory management. 

The teacher was stating that system.gc() and runtime.gc() may be performed, but it does not garantuee that the Garbage collector is emptied. But if it does not guarantuee it, why are people not just putting it in the code on the hope that it might actually be called on and maybe be executed? Not sure if this question makes sense, just wondering if it might be useful in the feature. 

Furthermore, I took that chapter quiz, it did not had alot of questions, but 2 out of 3 questions were good, I've read a little bit to fast the question, I should really control on working and reading slower next time haha. :p

What have I done today?

I've completed the complete chapter 'What is Java?' - It consists of:

- The history of Java - Such as what version was released, the earlier name of Java was Oak instead of Java, which was named that way because most developers had sight on trees. (Ugh, some teachers and information? :p ) 
- Principles and components of Java - More like that the language is based on object-orientated, that it is robust, but on the other hand it has alot of security risks if you don't update so often. Architect neutral, meaning that it is a portable language which means that you can move the application to any other system without having issues. (Aslong as you are not working with a interface?) More I won't cover, seeing as I could go on more about this subject. :p
- Java syntax and compilation - Java compiles to bytecode, and is run in runtime, instead of system language. If it was to run that way, the application wouldn't be cross-platform compatible.
- Memory Management and Garbage Collection - I've actually covered this subject earlier in this post, if someone could answer that question on that then it would be awesome. :)
- Choosing a development environment - Wasn't quite a useful subject in my opinion, it didn't went into detail on the functions of each IDE, therefor it makes the subject a little bit pointless, though I like IntelliJ IDEA more than Eclipse.
       

Tomorrow I want to complete chapter 2, which consists the following subjects:

    2. Installing the Software
        - Installing Java on Windows
        - Installing Java on OS X
        - Installing IntelliJ IDEA on Windows
        - Installing IntelliJ IDEA on OS X
        - Installing BlueJ

 

Thanks for reading! :)

Link to comment
Share on other sites

Sadly, I had second to no time yesterday. Though, I've taken up the lessons from yesterday to today. With that being said, my summary is now already 64 pages (with screenshots), and I'm only in the second chapter haha. :)

 

Chapter 2 was not quite a hard chapter, and I was already familiar with the knowledge of it, but I still wanted to follow up on the chapter to see if I didn't knew anything. Apart from that I don't know anything about a Mac, I haven't learned much about this chapter, but familiarizing yourself with knowledge you already know is not always a bad practice or a bad thing. Tomorrow I will really start with Java Programming! :)

 

This chapter, and those subjects are completed:

 

    2. Installing the Software
        - Installing Java on Windows
        - Installing Java on OS X
        - Installing IntelliJ IDEA on Windows
        - Installing IntelliJ IDEA on OS X
        - Installing BlueJ

 

Tomorrow I will start on this chapter, and those subjects:

 

    3. Getting Started
        - Hello World
        - Passing arguments to a console application
        - Organizing Java classes in packages
        - Creating a Java project in IntelliJ IDEA
        - Taking a tour of IntelliJ IDEA
        - Creating a Java project in BlueJ
        - Using the Java API documentation

 

Hopefully I will complete this chapter tomorrow.

 

Total video length of the chapter: 33 minutes, but I take notes alot and I want to work it out thorougly and that I understand everything that is being said. 

 

Thanks for reading! :)

Link to comment
Share on other sites

  • 5 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...