.Net MAUI moves along

Humph. Still no designer for Avalonia and as far as I can see, none on the road map. There’s a VIEWER for Rider (AvaloniaRider) and it’s managed to find its way to v 1.0+. Better than nothing I suppose. What is this fixation on XML-derived UI designs?

Visual programming was this revolution / revelation way back in VB6 as well as FoxPro and other 4GLs and now it’s out of fashion. Maybe people got used to building web pages with HTML, and found it better than the early HTML designers, which were admittedly awful, and that has carried over to XAML and similar. But I just don’t see what’s so inherently impossible and unasked for anymore in a visual designer or better yet a 2-way round trip designer that responds to code changes at those times when that’s a more appropriate way to get at an issue. Something closer to (now apparently deprecated) WinForms.

Xojo has its problems, but I was drawn to the IDE and visual designer as a way of working. Xojo arguably takes it too far, demanding that all your methods be written and squirreled away in the IDE rather than in separate “code behind” files (or even giving you that option as far as I can tell) but at least you don’t have to laboriously define a document tree by hand. That is gruntwork the tooling should handle for you, and you can always hand-diddle when it makes sense to.

PHP has come a long way since v4 which was the last time I kicked its tires and I should probably overcome my instinctive aversion to it, IDK. IIRC v5 at least allowed you to follow good practices even if it didn’t enforce much.

But are Java and PHP that stalwart? Aren’t they subject to the same churn driven by vendors trying to keep up with fashion and the dynamic of the open source parts? To me this feels like a larger systemic issue that isn’t really MSFT-specific.

I don’t know much about Java. I’ve only had it installed to support other apps like FileMaker.

But for PHP, I think it has done well. I used PHP via the FileMaker XML API. At the time I hated it. I think that might have been due to the API being a little ugly. Back then, I never thought to create my own class around the actual class.

I don’t use any of the big frameworks as I have difficulty understanding them. Instead I create my own classes to create controls, process round trips, etc.

The language itself has grown too, so that may have made it better. Now you can require types in functions parameters like this function:

function eleDBMetaRender( colMeta $colMeta, tags $tags, recs $recs, formTag $formTag, response &$resp ) { ... }

The community might have something to do with it. Like with Xojo, Geoff ignores the community and does what he wants. But with PHP, the community actually determines its fate.

I google when I’m not sure the best way to do something. Quite often the info is from long ago and still works too! Now with Xojo if you google for something it’s likely to be an API 1.0 example.

Xojo could be like that, but Geoff holds it back…

2 Likes

Still a visual Designer for Java Swing, a Designer for Vaadin, a Designer for JavaFX and a Designer for CodenameOne. Visual Programming is nice and beautiful.

1 Like

That is my tendency as well. I don’t like other people’s abstractions, especially when they grow crufty by trying to be all things to all people. Of course that means anyone working with my code has to understand MY abstractions, so one has to consider that factor.

I created a custom ETL engine for the company I’m with now (or its predecessor really) and yes we could use one of the several commercial ETL frameworks but you ultimately end up writing a ton of custom code in those to handle weird formats and you end up fighting their defaults and assumptions so in the long run it’s often easier to roll your own – and cheaper; those platforms aren’t inexpensive. I could train anyone on our system very quickly and it’s standard OOP that isn’t difficult to reverse engineer.

1 Like

Are any of those round-tripped so you can edit markup when you want to and leave it to the designer when you want?

What you want to ask with that? What is your problem? I would say it so: Millions of customers using JFormdesigner, same amount using Netbeans Matisse. So where you see something missed? We work with the UI Designers together. But what should I leave as markup? What should be better with Xaml? Are you dreaming or bad sleeping? What do you think why more Java Software is made by ibm, oracle, SAP and other big vendors then ever C#? Ahh yes while c’ has the breaking through UI technology.

Just curious.

I think what you are saying in so many words is that I have to go to a completely different ecosystem to get what I want. And that may be so. I’d rather not, but I may have to. Perhaps the tooling is that much better to be worth it.

After looking at Java tooling this afternoon, I see very similar issues. Swing is now said to be larded with technical debt, such as no longer producing identical results on high-DPI displays that its original design never contemplated, so it has been replaced by JavaFX. But the latter is less mature, 3rd party controls are lagging and there is massive investment in Swing, so Swing has long term support too. And then you have Vaadin and CN1 and other projects addressing it for different audiences.

Of course tech turnover isn’t 100% avoidable but if I have to sort through a half dozen different options they might as well be options I’m acquainted with. Java and .NET are both backed by giant MegaCorps, Java has been around a bit longer but I’m not sure that’s exactly an advantage at this distance from the 1990s.

.NET Maui lacks Linux and web targets; they want you to use Blazor as a way to recycle shared libraries from Maui apps for the web but essentially to have a separate web app with its own system of controls. Given people’s performance complaints with frameworks that try to get where I want to be (same code even for web) maybe that is the best way to go given the current state of the art and where the development $$ seem to want to flow. Wasm is attractive to me as it gets rid of heavy dependence on JavaScript and gives the option to render everything from the server if you wish.

So I’m thinking probably I will peck away at learning Maui for possible future need but right now most of my personal development efforts are going into a web API product and the supporting tools to maintain it, for which .NET 7 for the API and Xojo for the administrative tooling suffice.

ETA: you can kinda-sorta achieve a one-solution run-everywhere app by using Blazor to create the UI and then rendering it on various devices via a WebView control.

First: JavaFX is NOT replacing Swing. Swing is still in Development. With the right Settings the results on HighDPI are correct. Oracle Supports Swing for the foreseeable future. There is no deprecation. the technical debts are not even a bit comparable to the sets of Dotnet or even harder of Xojo. I don’t know where you are reading but I guess: not the right places. There is no replacement of Swing. It should but was not so that JavaFX should replace Swing. But the Developers decided that they will not change to FX. Swing is still in maintenance. I have for my Customers more than 20 Apps outside written in JavaSwing. Jetbrains IntelliJIdea is written with Java Swing. The Flatly Design of IntelliJ is available to use with Apps written in Java Swing. So I don’t know how you can start to compare it here in a total different wise.

The High DPI problems aren’t there with flatly for example. With the old metal design it is so that there are that problems. But: nobody uses this old Designs. Since Java Swing can handle different UI-Systems it is no problem to change it. Simply with UIManager. No Problem.

Also individual components are no problem in Swing so I don’t know why to replace Java Swing with something else.

CodenameOne and Vaadin using the same approach for UI programming. Makes it simple or at least simpler to build up UI in Vaadin or CodenameOne when and if you know Swing. But that is also making it less complex: learning Swing makes it less complex to write Applications with CodenameOne and Vaadin. So you can have with one Codebase all platforms. IOS, Android, Web and all Desktop Platforms.

And one of the benefits of Swing Applications is: write once and run on all platforms without any changes. Linux, Unix, Windows, MacOS. There is no problem. If the App is running it will also run on the other platforms. There are only a few rules you have to fit and then it works on all platforms.

It is dangerous to listen to things written before years. In their enthusiasm Oracle decided to replace Swing. But they had to realize that JavaFX can’t replace Swing. While it is the most reliable UI Platform on the entire market. I have it running als Desktop-Platform and embedded Platform on devices. There is no need for something else. Running, reliable and with Updates until 2030 from now on.

Swing is Part of the Oracle Java JDK (all JDK are coming with Swing). It will be part of the JDK Releases at least until 2030. Makes supported time until 2038 at least. I believe that is a guarantee that you will not find for any of the UI packages.

1 Like

Thanks for the info. I admit I was Googling and of course you can’t believe everything you read on the Internet, lol.

Don’t forget the cost of Xojo’s limits. You want to show a 3 page PDF invoice in your app? You need DynaPDF Pro for US$ 1,100. Alternatively if you don’t like C style languages try B4X (the closest relative of Xojo) and find a free source code solution within 60 seconds (PDFBoxWrapper Class Module - show PDF-document in B4J | B4X Programming Forum).

3 Likes

Yes, B4X (b4J) is JavaFX based and yes, for a Xojo Programmer the most simple way. Install Parallels and work with it. Then you have all stuffs you have With Xojo plus much more. And your programs are running on all platforms. And you can build Web Applications with B4J-Banano like a charm.

B4x is really flexible and comes with visual Designer (abstract designer) and is a really smart system. Worth to trie. And definitely more stable and reliable than Xojo. Xojo programmers will be productive really fast.

1 Like

Last time I looked, DynaPDF Professional was cheaper than $1100.

There are other solutions out there such as pdfium which should integrate with Xojo.

Still not a real solution. With Java and C++ or C# you have free PDF libs which are as good as dynapdf. You also have Office automation libs for example from Apache. But never mind, when ever you answered here you try to color the world for Xojo. It is not able to bring all this solutions and it will never be able to bring . It is Xojo, a reduced and functional not bringing any modern potential bringing language. Even threading is… So please, try to get us free from this Ideas where you try to show something.

Do it different: show us using the entire potential in Xojo. This Lib is nice and can be integrated with Xojo: show us how that works. Most people having no Idea about. how to do it. Since you have and telling it will go: show it. If not: be quiet. Please.

1 Like

This is a free PDF lib that can be used by C etc…
Unless you have experience of DynaPDF you can’t really say the alternatives you talk about are as good.

I have no idea what you are ranting on about. I simply corrected Marcus on the price of DynaPDF and happened to mention a potential free alternative to DynaPDF.

We are a happy user of DynaPDF so we have no need of it.

I don’t think you have any right to tell other users to be quiet but you really are up your own arse aren’t you - you nasty horrible person.

Yes and you told that it can be used with Xojo without any problem. It can not. There are many problems.

Since you told that I told you: show the. Not only telling. Evidences. Reality and not your believing that you can do here.

As a user of DynaPDF you use a Plugin made for Xojo. But you tell to people like you tested this one. Wow. It is shaming that people like you try to do polemic speaking. Try with truths.

I think you need to get a grasp of the English language as I said it ‘should be possible’ and not ‘it is possible’. I made that assumption based on it being a C library as you can use a lot of C libraries in Xojo via Declares.

Please enlighten us with why it cannot be used as you seem so certain.

No idea what you are talking about.

As a user of DynaPDF (a commercial C library) I chose, for convenience, to use a Xojo based wrapper provided by MBS. Why is that a problem?

Please don’t lie - I never said that.

Again, I have no idea what you are trying to say.

Before telling it should be possible you should get: it is not. But it is for you nothing you would accept. That I wanted to know. You should learn about passive psychology. Helps to be not in the trap sometimes.

One problem it that this lib is not working with Xojo directly. There is a Wrapper needed. That you forgot when telling yeah should work. Or the knowledge about is missed.

Show the use with Xojo. Not only telling. You brought this lib for Xojo. So you should be able to show how it works. Otherwise shut up with this not needed arguments.

And if you have no Idea: you may never get it. It is nod needed. I will ignore you and I hope that Norman is man enough to get you outa here.

And once more: you should tell us your name. Or stop being here. Nobody needs antonymics here.

1 Like

I looked up the price before posting. Maybe do the same before posting irrelevant statements.

Another assertion that is not backed up by evidence.

3 Likes