Jump to content

Development Conventions


Recommended Posts

Hi all,

This is something that has been bugging (no pun intended) me for some time.

Versioning Conventions:

Consider the current Autoit Version: 3.3.7.14

What does each Position between the points indicate? I can see the last one is release, and the rest remains a mystery to me.

Naming Conventions:

All the time I see things like:

global $sTemp
global $iTemp
global $hwndMain

And they seem to follow a generally recognised pattern. What is this pattern? how do people name their variables?

Repositories:

I have only recently discovered how awesomely Awesome repositories are, and quickly migrated most of my main projects.

My Question is what is the best repository/subversion Client to use? I am currently using HG.

Thankyou to all.

ongoing projects:-firestorm: Largescale P2P Social NetworkCompleted Autoit Programs/Scripts: Variable Pickler | Networked Streaming Audio (in pure autoIT) | firenet p2p web messenger | Proxy Checker | Dynamic Execute() Code Generator | P2P UDF | Graph Theory Proof of Concept - Breadth First search

Link to comment
Share on other sites

Hi all,

Hi you!

Versioning Conventions:

Consider the current Autoit Version: 3.3.7.14

What does each Position between the points indicate? I can see the last one is release, and the rest remains a mystery to me.

Last time i checked, they were called numbers :)

No but seriously, take a quick look in the history and you'll see that 3.x is closest to major updates and 3.x.x minor updates.

Software versioning

Naming Conventions:

All the time I see things like:

global $sTemp
global $iTemp
global $hwndMain

And they seem to follow a generally recognised pattern. What is this pattern? how do people name their variables?

Example Scripts > Standard UDF Library information > UDF standards page > Variable Names

Repositories:

I have only recently discovered how awesomely Awesome repositories are, and quickly migrated most of my main projects.

My Question is what is the best repository/subversion Client to use? I am currently using HG.

I think you mean revision control software or something like that? I'm going to say TortoiseSVN. I can't say why as I'm only a light user, but I've been using it for years without any serious problems. I have TortoiseHg installed too but it don't feel as refined.
Link to comment
Share on other sites

K thankyous.

+ Rep.

I dont really like tortiseSVN because I like using a CLI, but I suppose by the looks of things that is all just personal preference.

ongoing projects:-firestorm: Largescale P2P Social NetworkCompleted Autoit Programs/Scripts: Variable Pickler | Networked Streaming Audio (in pure autoIT) | firenet p2p web messenger | Proxy Checker | Dynamic Execute() Code Generator | P2P UDF | Graph Theory Proof of Concept - Breadth First search

Link to comment
Share on other sites

A few notes on software versioning:

The way .NET defines versioning is:

Major.Minor.Revision.Build

Of course "Build" is not too relevant in AutoIt (but AutoIt3Wrapper still follows that pattern), and it's up to you what major and minor are. Chrome decides that any change the user might actually notice is major, whereas the wikipedia article you have already been linked to by AdmiralAlkex says that a major increment is for complete code rewrites. Personally I do the following:

Code Rewrite . Breaking changes . Functionality changes . Build

it works fine for me, but each to his own. The good thing about that system is that I know roughly how much changed between versions, and whats compatible with new versions. The only other thing I do it make sure that the numbers don't exceed 255, That way you can store the version number as a 32 bit integer, making comparing easy.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

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