Blog

Home » Blog

Authoring

  Would you like a place to write some articles and share some code? But don’t want the hassle of managing a web site yourself? This might be the place for you.  

Source Code

  Many articles are introductory– Some articles contain source code that you are free to use — I will be working on about 6 sourceforge projects — Some of the SourceForge code I may pusblish here — Contact me ‘caverdude’ on sourceforge if you would like to join a SourceForge project.  

Facebook

facebook.com /softwaredeveloperzone  Please visit and Like the page so that you can receive post in your feed. I am very active on the FaceBook page. I post video, audio, and image content there that you will not see here.          

SDZ Podcast Episode 10 – Tools and Skill Set

I discuss the tools that I use for coding or publishing Software Developer Zone. I talk about what I’m doing with SDZ, what languages I’m learning, what tools I’m using with maybe a few pointers or tips. Join me in using and learning the same things. Then socialize with me on Facebook or most especially Software Developer Zone. SDZ WordPress Plugins CPanel node.js java.softwaredeveloperzone.com questhost.com tomcat node.js Skill Set Java Android Javascript jQuery Angular ajax HTML 5 CSS 3 Tools Serverside PuTTY WinSCP IDE Eclipse Idea Netbeans Scene Builder Android Studio Graphics Blender Inkscape Gimp Media Facebook Youtube LibSyn Twitter Misc Password Safe Github Sourceforge WebServers Tomcat Node.js WebBrowsers Chrome Firefox Developer Edition Opera Edge

Introduction to Data Structures and Java Collections

An Object is a Data Structure Objects are data structures. We all know programs have data, in fact in OOP an object is data and related program logic packaged into this thing called an object. In Java, we have primitives byte, short, int, long, float, double, boolean, char. A String is an object made of the primitive char. But in general, all objects can be broken down into these primitives. Of course, all primitives are made of bytes. So you can say the most basic data type is the byte. And the most basic data structure is a series of bytes. Or an array of bytes. Therefor the most basic collection is the array. Primitives are the most basic data structures made from bits and bytes. The bit (on or off, 0 or 1, true or false) boolean actually its stored as around 1 byte in the JVM, but its ...

Learn to code Java now!

Easy steps and tips to get started learning to code Java How easy is it to begin learning Java? I will explain the steps needed to get started. What tools are needed? Which tools to avoid at first. Ask yourself a few questions. Why do you want to learn Java? What are your main goals in learning Java and what do you want Java to do for you? Which kinds of problems do you want it to solve? You can use Java to code console apps, desktop apps, web apps, phone/tablet apps etc. Are you learning it because of school or because of work? For hobby or self-education? Get the following JDK (Java Development Kit) A console or command line, either Linux shell or Windows shell or Windows Power Shell  A text editor JEdit,  Atom or Editpad Pro. VScode, Notepad++, Brackets, Sublime Notepad on windows for s...

Profiling Java Efficiency

Profiling without an  IDE with Java Think you need an IDE or a paid IDE to profile? Think again. I explain in this post how to do this with the basic Java language. You will find some interesting results in the very simple test case that I made up for this article. Later I will try to come back and upgrade this article to test a couple of other methods mentioned and other types of objects. How to use Java to determine the size of something. How to Get the Size of an Object in Java is an article that talks about using getObjectSize(Object objectToSize) of Instrumentation interface It seems this interface was created to work with bytecode but it can be used to get an estimated object size. In his article he states. Minimum object size is 16 bytes for modern 64-bit JDK since the object has 12...

Local Data Storage 8 – Random Access Files with Java

Random Access Files with Java Working with Java and Files Tutorial Trail Serialized XML to Files SQLite Database Random Access Files(API) (RAF) in Java are super easy to use. Use an RAF when you are doing more database-like operations vs document-like operations. With an RAF you can move to any location in the file based on the byte number.  Then read or write primitives and Strings. You can also read and write arrays of bytes. It would be easy enough to write a set of primitives associated with an object which is the object’s state, then reload and rebuild the object later. Six Examples So in this article, I will give you 6 examples of storing and reading – one, two and three dimensioned arrays of integers. The first 3 examples simply generate random numbers in arrays then wri...

Sprite Organizer 0.1 Alpha

Organizing Sprites, Tiles, Textures etc on Image Strips or Grids. This article is about a tool for organizing sprite or tile images into image grids or image strips. It’s useful for organizing game sprites, simulation sprites, textures or even CSS sprites used on web pages.  It has buffers which contain images. Images can be broken into cols and rows.  Cells or sprites are defined as so many pixels by so many pixels in size.  Saves and loads images.      Features Load and save single images or sprite sets. Load images into one of 10 buffers (more buffers in the next versions) Paste from one buffer into a grid or image strip.  Divide a blank image into cols or cols and rows. Sprite size is determined by the size of the grid in pixels and number of cols and rows. Copy, Paste,...

Simple 3D graphics using Java Swing

Isometric or Orthogonal 3D views In this article, I demonstrate 3D Graphics showing you how to project a surface in 3D using 3 modes for drawing the surface. There is a left-hand mode, a center mode, and a right-hand mode. This same transformation math works for 3D polyhedron objects as well and you could use if for voxel type games. I show some effects you can use on the surface such as zoom, pan, skew etc. This is entirely wire frame. I do not remove hidden lines. I do not fill or texture map. And I do not rotate. I may do all this in future versions of this article. 90-degree rotation is very easy to do. Using basic trigonometry math more fine rotation is not difficult. The Iso3D class I did not have to put this code in its own class. As a matter of fact, in such a simple demo applicati...

Sound effects and Musical Notes.

Sound Effects and Musical Notes I will demo how to play a wave file or other sound files as effects. How to play musical notes. Later I will write on how to play music files simultaneously with sound effects.  There is a website that is like a YouTube for sound effects. freesound.org is a website where anyone can get an account to upload sound effects that they have recorded. So you too can record and contribute.  Sox Wikipedia and Sox Sourceforge is a command line sound conversion tool where you may convert most any format found on freesound.org to .wav for use in your Java software. Listen to my Podcast about 2D Game coding. Playing WAV Sound Effects I now show you how to play some sound effects. I have a small collection of wave files for a beaver trapping game. One of the files threw a...

Local Data Storage 10 – JDBC and H2 (formerly HypersonicSQL)

H2 Database and Java When I began using Java years ago I heard of a database that was being coded entirely using Java. This was HypersonicSQL and you can still download it at Sourceforge. The author working on it decided it needed a rewrite and he began H2 database. First download H2 installer at H2 download.  Get the stable version 1.4.195 as the h2 jar file for the last version .196 gave a class not found exception on startup looking for the driver. And the tutorial can be found here H2 Tutorial.  Next look at your install and find the H2/bin folder. Here you find the jar file needed h2-some-version.jar i.e. h2-1.4.195.jar. Most if not all databases now create the database when you connect to it. All we need to do is make the JDBC connection and create a table, add some records with SQL ...