Jump to content
Sign in to follow this  
SirJohann

OOP or functional.

Recommended Posts

SirJohann

Hi guys! I've been working in some projects, and looking/studying some UDF, and I found the AutoItObject...just...awesome...

But now, I'm having some troubles making decisions, I am very indecisive, so this is my question. I'm making a Pong. I want to be a game develop so I started with some basic and easy. I made 2 versions of the code, one is full OOP and the other semi-OOP. In the full OOP even the Gui and the debug console(Console UDF, more awesomeness) are objects, in the semi just the graphic part, the pads, the ball...now I must choose in what continue working. I found the OOP really cool, and useful, and I can have everything organized. In the Gui object I have everything like a property, the width, the height, but in the functional I have a lot of variables for everything. I've tried to choose the fastest one or the "sizeless" but both of them use 8.3 mb from the ram and 548 kb, I thought the one made with object would be more big, in the ram I mean.

So, personal opinion, what would you choose? (Sorry if I wrote something wrong, I didn't wanted to use Google Translate, I'm trying to learn English ^-^)


Codes codes codes.

Share this post


Link to post
Share on other sites
trancexx

AutoItObject is great way to learn some OOP basics from AutoIt. Memory usage shouldn't worry you, there wouldn't be differences.

I never said this, but AutoItObject relies on one particular reference counting bug in AutoIt. When it would be fixed AutoItObject will stop working unless rewritten. But you also shouldn't worry much about that either, it probably will never be fixed :D.

  • Like 4

♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
SirJohann

Then I think I will continue working with the full OOP. And in the game development, OOP is used a lot, so I better start practicing.Thank you so much :thumbsup:


Codes codes codes.

Share this post


Link to post
Share on other sites
FaridAgl

AutoItObject relies on one particular reference counting bug in AutoIt.

Damn, really? :|

You're scaring me as I can't remember my last AutoIt script which is not based on AIO.

Edited by D4RKON3

Share this post


Link to post
Share on other sites
trancexx

I remember when AutoItObject was written, the guy behind it (great monoceres) was crazy about reference counter. The AutoIt scheme made no sense. To make it work everything was done with assumption that AutoIt reference counter was wrong. Later when I became AutoIt developer I confirmed the bug and felt really good about being part of gang with ability to see past obvious. Great people, great times.

I never fixed the bug because no one ever complained about it and to be affected by it you should really be on another level. However, I wish there are people who would find the bug, one Ascend4nt's snippet was demonstrating it, but the snippet was about something else so it wasn't noticed.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
guinness

*sigh*


UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Share this post


Link to post
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
Sign in to follow this  

×