Jump to content

OOP or functional.


SirJohann
 Share

Recommended Posts

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.

Link to comment
Share on other sites

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.

♡♡♡

.

eMyvnE

Link to comment
Share on other sites

...You're scaring me...

That's probably why:

...I never said this...

"Just be fred, all we gotta do, just be fred."  -Vocaliod

"That is a Hadouken. A KAMEHAMEHA would have taken him 13 days and 54 episodes to form." - Roden Hoxha

@tabhooked

Clock made of cursors ♣ Desktop Widgets ♣ Water Simulation

Link to comment
Share on other sites

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

Link to comment
Share on other sites

*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

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...