I use Xojo Framework dictionaries extensively on Windows (and macOS & Linux including Pi) projects, so why is it limited to iOS in your mind?
I create Xojo Framework classes in Windows projects very simply by inserting a Using Clause (click the Insert button and select Insert Using Clause) and change the name to the framework namespace required e.g. Xojo.Core, Xojo.Data etc. The class is now a Xojo Framework class rather than a global class. Adding for instance a dictionary property to this class will add a Xojo.Core.Dictionary (no you don’t have to type all of that). Having added the Xojo.Data using clause you can now convert easily data to & from JSON without the long winded (but useful namespace for documentation) iteration.
What I end up with is a class that I can generate across all target platforms including Desktop, Web & iOS which includes a mechanism to serialise & deserialise the property values and that is the core of a distributed computing environment. And it is simple to implement in the existing Xojo IDE using the Xojo Framework.
I agree that the framework is far from complete, but I won’t bleat (as in Lamb looking for Ewe’s teat) about that until the classic framework is deprecated (assuming the Xojo framework can’t accommodate the shortfalls).
For those of you that need to convert strings to text I have this global method
Public Function ToUTF8Text(Extends s As String) as Text
Return DefineEncoding(s, Encodings.UTF8).ToText
End Function
in a module to save a whole heap of typing. Usage for example might be Dim T as Text = TextField1.Text.ToUTF8Text and it even autocompletes! Don’t forget you can override the default desktop project by saving a desktop project as “Default Desktop Project” in binary format to your templates directory and if you include your library of helper methods in that template all new desktop projects will include that module.
The IDE is a vary powerful tool that can be customised to respond in an intelligent way (customised for you), so use the best of the tool available.
[quote=359220:@Wayne Golding]I use Xojo Framework dictionaries extensively on Windows (and macOS & Linux including Pi) projects, so why is it limited to iOS in your mind?
[/quote]
There is no reason to use Xojo.Core.Dictionary on Desktop/Web/Console instead of classic Dictionary. They are essentially equivalent except one feature which is Parse/Generate JSON which is WAY WAY easier than the old JSONItem class.
However to use Xojo.Core.Dictionary to actually generate or parse JSON your data must be Text and not String. This means for every variable that you might use in a web app (where JSON could potentially be used a TON like in our Rapid Services instant REST API product) you have to wrap every single parameter with DefineEncoding().
I grant that extension methods can offset some of the string manipulation but if you always assume your data is UTF-8 then you have effectively achieved nothing that String did not already do for you by having invalid encoding or worse no encoding. What if the data is not UTF-8?
At this point user decides there is no reason to use Xojo.Core.Dictionary because the String -> Text conversion is a waste of their time and JSONItem is good enough.
User decides to create iOS app to work with their desktop app or web service. Unfortunately all of their existing Xojo classes that may have classic Dictionary baked deep in various properties and methods cannot be moved to iOS because it is Xojo.Core.Dictonary so you end up with #If TargetiOS Using?
The point is if you go new framework then you are forced to deal with String/Text conversion that is painful and spotty target support. If you go with classic then you cannot easily port code to iOS and have to use old painful JSONItem class.
About « Censorship always leaves a bad taste in my mouth. », I’m often agree with you. But in this case, I think Xojo is right. I’ve never seen a company forum where we can speak this way.
I suppose the thread has not been deleted but moved to a hidden place. And as mentioned above, it may be a good thing to reserve a hidden place for those kind of discussion. When I was angry with my ex-wife, we don’t shout front of our children, we went somewhere else.
This thread was very long, and it started because of previous problems. Then people who came on this thread see people « shouting » without knowing why. Like children who don’t know why, who can’t understand why. The difference is that children don’t care, and potentials Xojo’s users do care. We can still use classic framework without care of the new one, then why scare people about problems they won’t have?
No one can say thread like that is not a bad communication for Xojo.
Xojo team seem to be very sympathetic, and we should not abuse of their sympathies. In France we have an expression « the customer is king », I always disagree with that, I king was able to do what he wanted. The last king in France, we cut his head . Customers can report their problems with the products they bought, but in any case they can « shout » louder than the vendor.
I may use some words I shouldn’t, but I’m very good in English.
To Tim Dietrich and people who eventually fall in the same situation:
Search in Microsoft forums about bug reports (similar situation) and display that to your prospective customer and explain them that this is something usual in our industry. Bug are removed all the time.
Also: IMHO, asoftware you wrote using a Development Software is already done at 25 to 50 (if not more) % if by pure bad luck you have to rewrite it using a different Development Software tool.
I came to REALbasic (1.0a) because my previous Development Software failed. It tooks me less than a day to write that multimedia softtware in REALbasic (I already had all multimedia files and the application design: I only create windows, controls and code back from memory).
You are right, of course, Xojo are very tolerant. But the effect of censorship is that some users are not going to express their opinion. To any company honest and robust interaction with their customers is of immense value: censorship stifles this, though it is common.
To me, most censorship is just wet ( ‘lacking strength of character; feeble’ ).
They could have waited for everyone to comment and then quietly removed the thread two weeks later when it had moved out of sight anyway (sneaky but smart)
They could have participated - especially early on - and explained some of the challenges they and therefore their users are facing, like slow progress, serious bugs in data types, why SQLdate is missing, etc. that would even have enhanced their reputation.
Censorship is not the smart move and was the worst of all possible choices, especially under false pretenses (“we lock the thread because it went off-topic, but you can open another one”)
As it stands their users are left with the same questions and none the wiser.
Markus, as we already told you, it was not locked under false pretenses. I locked the thread because it was no longer discussing the original topic, the conversation had shifted to talking about project management, not the Xojo framework.
[quote=359199:@Beatrix Willius]@Geoff Perlman: Censorship always leaves a bad taste in my mouth. What in the topic thread did you fear so much that you had to delete it?
I’m always horrified how much like an enterprise company the tiny Xojo acts. The jargon sounds exactly like the company I work for - just that my company has a lot more employees (>100k???).
And no, Feedback is not for communicating. It’s for bugs and feature requests. By the time we would have to do a Feedback issue for the new framework mess it’s far too late.[/quote]
We have a clearly posted set of rules for our forum complete with descriptions of what is and is not acceptable as well as the consequences of violating those rules. We moderated that discussion in accordance with those rules.
You’re a guest in their house, show them some respect… If they close a thread, shrug your shoulders and move on… Most of us come here for the knowledge and not the drama and politics… Xojo is going to do what they’re going to do… A vocal minority don’t like it, sucks to be them… Your old code doesn’t magically stop working, and you have lots of time to slowly move to the new framework and help them with bug reports… As of today, the new framework is the future of the language…
Not making a point, I thought you were implying that it was deleted and never locked. It was originally locked for a couple of hours, I think, before it was deleted.
I can sympathize with Xojo on this one. Their forums, their rules, but on top of it, they don’t need bad advertisement.
If I could, I would delete just the same the stupid one star reviews in the Mac App Store that some jerks posted because they had not read the documentation.