Dev-Object

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
User avatar
HeX0R
Addict
Addict
Posts: 973
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: Dev-Object

Post by HeX0R »

O.k., that was the explanation I was waiting for, many thanks, it's pretty clear now!
You probably should link to that explanation in the first post, otherwise it keeps hiding and things might not get any better.

Unfortunately that means that I am no possible user for your jewel here, because the thing I like most with Purebasic is the procedural paradigm.
If I would like to code OOP-style, I would simply select a different language.
But, that's only my opinion, go on with your Dev-Object, there were enough people crying for OOP implementation to PB since years.
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Denis wrote: Sat Nov 05, 2022 10:03 am My question is the following

Can we create several interfaces and define them as private/public?
If no, may it's a suggestion.

another suggestion:
For the Get/Set functions, it would be nice to define them individually for each member of the interface, which means that all the members could be either Get, or Set, or Get and Set or with no Get/Set, name only without prefix.

Another question
What is the difference between the Clear and Reset functions for you (it's not clear in my head)?
The way Dev-Object work there is only one Public Interface wrapped inside a module. I have not encountered a case where a private interface is needed. I will study the example you provide to see what I can do.

About the Get/Set Methods I understand the problematic and the way I personally deal with it I let the program generate all of them and remove the unwanted ones manually afterward. About the methods with the member name without the Get/Set prefix, same thing I modify them manually.

The difference between the Reset method and the Clear method it's the name, the internal code is the same. That being said I usually modify the Reset internal code with values that are different than zero/empty strings, etc.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

There is no more a 1.x.x branch of Dev-Object, that particular branch has been replaced by Dev-Object-V2.x.x-All-OS branch. Also the branch 2.x.x available for Linux Only is now the Dev-Object-V2.x.x-Linux branch.

That out of the way, what new for Dev-Object 2.x.x-All OS branch :
  • JSON File support
  • Small correction inside the ReDim methods for Dynamic arrays
  • Corrections and additions to the help files.
  • The default font is now different according to the OS
  • The default rules for the code generator is Integer type
  • The default user informations has been translated (French)
See First post for download link.

What new for Dev-Object 2.x.x-Linux branch :
  • JSON File support
  • Small correction inside the ReDim methods for Dynamic arrays
  • Corrections and additions to the help files.
  • The default rules for the code generator is Integer type
  • The default user informations has been translated (French)
See second post for download link.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

There is a small bug fixes for both branch of Dev-Object
  • Minor fix in the code generator about the Catch JSON instruction.
  • Minor fix in the case of a HashMap of objects in JSON files.
  • Minor fix in the case of a LinkedList of objects in JSON files.
As always see first or second post for download link. Sorry for the inconvenience. By the way, this will probably be the last bug fixes for 2022.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

I have a small update for both branch of Dev-Object. What new for Dev-Object 2.x.x-All OS branch :
  • Code generator rules about DisableDebugger / EnableDebugger keywords
See First post for download link.

What new for Dev-Object 2.x.x-Linux branch :
  • Code generator rules about DisableDebugger / EnableDebugger keywords
  • Minor bug correction in the Options Editor
See second post for download link.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Edit : The following post was the response to question about if Dev-Object can be compiled on Mac OS. Apparently the question was posted by a spamming Bot. Never the less this is the answer to that particular question for those you might be interested.

The all OS version might need some adjustment for the MAC OS because as I have said I don't have a Mac Computer to try the compile myself.

The adjustment are about the gadget position inside the the windows (Main, OptionsEditor and maybe the StatsRequester). Another point is where the program preferences file should be saved. Just look inside the code for section of code like this :

Code: Select all

CompilerSelect #PB_Compiler_OS
    
  CompilerCase #PB_OS_Windows 
    
  CompilerCase #PB_OS_Linux
    
  CompilerCase #PB_OS_MacOS
    
CompilerEndSelect
That being said Dev-Object don't use OS Specific code, so it should compile flawlessly under MAC OS using PureBasic version 6.01 LTS

Best regards
StarBootics
Last edited by StarBootics on Mon Apr 03, 2023 7:37 pm, edited 1 time in total.
The Stone Age did not end due to a shortage of stones !
User avatar
Lunasole
Addict
Addict
Posts: 1091
Joined: Mon Oct 26, 2015 2:55 am
Location: UA
Contact:

Re: Dev-Object

Post by Lunasole »

Wished to look at it, but cannot download from that dropbox
"W̷i̷s̷h̷i̷n̷g o̷n a s̷t̷a̷r"
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Lunasole wrote: Fri Mar 31, 2023 7:10 pm Wished to look at it, but cannot download from that dropbox
Strange, because many have managed to download it. Something I can consider is to upload the source code on my GitHub account.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
Lunasole
Addict
Addict
Posts: 1091
Joined: Mon Oct 26, 2015 2:55 am
Location: UA
Contact:

Re: Dev-Object

Post by Lunasole »

StarBootics wrote: Fri Mar 31, 2023 7:28 pm Strange, because many have managed to download it. Something I can consider is to upload the source code on my GitHub account.

Best regards
StarBootics
Probably in my case dropbox is somehow blocked in browser (it uses lot of 3-party resources, scripts, etc).
Yes, github is quite more universal.
"W̷i̷s̷h̷i̷n̷g o̷n a s̷t̷a̷r"
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Lunasole wrote: Fri Mar 31, 2023 9:16 pm Yes, github is quite more universal.
Just to let you know that Dev-Object-V200-All-OS is up on my GitHub account. (See first post for link) Let me know if you also want the Dev-Object-V200-Linux uploaded on GitHub.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

I'm posting the following message just to let you know that I have discovered some issues writing code with an OOP approach with PureBasic. When your program has to deal with a large amount of heap memory you are ending up with a highly fragmented memory and your program run slower and slower. This is particularly true when you compose objects with smaller objects. A Trihedron which is consisting of a Position vector, a tangent vector, a normal vector and a binormal vector. So a total of 5 fragments, 1 fragment for the Trihedron that contain the memory addresses of the 4 vectors to represent it.

So I will release a maintenance version of Dev-Object in the coming days since I have discovered some issues with the code generator, that being said no new features will be added.

EDIT : The source code along with support files are now on GitHub : https://github.com/StarBootics/Dev-Object

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
Post Reply