Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Your crystal ball?
Message
De
11/10/2020 11:53:29
 
 
À
10/10/2020 14:41:14
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
01676408
Message ID:
01676594
Vues:
76
Thanks again for all the informations.

By the way I became a TSPlus user based on your recommandations. Effectively it's a very nice way to port a VFP app. to a web app.

I don't know if some persons find you boring. I don't. I appreciate the time that you take to give us all those informations.

Regards,
Denis

>>I've been told that WinDev apps are slow. Perhaps you heard about it too. What can you tell me about this.
>>
>>I don't want to start a fight here looking like "My development environment is faster than yours :-)"
>>
>>I just want to know if it was or if it is the case right now for whatever reasons.
>
>
>I have no idea who is talking or showing you WinDev but they clearly are not in the know. For all intents and purposes WinDev is as fast as VFP. Obviously there might be areas where one is faster/slower than another but this sort of nit-picking doesn’t interest us. And often I bet difference are found because one is an expert in one tool but not in another and so does not know the optimal solution in both tools. I think string handling might be faster in VFP but only when the strings become very large.
>
>However, to be fair, there are 2 areas we came across where we found WinDev slower BUT this was several years ago and we changed our code to make it work as desired. It might be that in the subsequent several upgrades to WinDev that this has been improved by PCSoft but I wouldn’t know since we fixed it in another way years ago and didn’t revisit the issues. It might also be that we are not familiar enough with better solutions in WinDev – it is huge with very many options. The two we found are:
>
>1) One of our applications allows users to open many windows; browsing tables and charts. In our VFP app we limited it to 100 windows arbitrarily because that’s a lot of windows to display even on hi-res screens. The application allows the user to arrange these windows and save the arrangement as a workspace. In the next session the user can restore the workspace to quickly regenerate all windows (up to 100 in VFP). In WinDev we found (several years ago) that the restoration of windows began to slow down when we reached about 50 open windows. So it would begin very quickly to regenerate and display windows and then as the number hit 50, 60, 70, etc. it began to visibly slow. I don’t know why this was so and never bothered to investigate or inquire with PCSoft or even bother to find out if WE were programming the code inefficiently. We just limited the workspace to 50 windows because we knew users never got near this limit anyway. I stress that this might well have been a problem on OUR side of not knowing the tool well enough and/or it might have been addressed/improved by PCSoft in the meantime but it’s not an issue we have revisited.
>
>2) In our VFP app we can browse a table of 30,000 to 40,000 records DBF file. We allow the user to start typing and as they type each letter we re-position the file at the closest match. In WinDev this process is slower than VFP. When we inquired with WinDev experts the first thing they questioned was the very design of allowing a user to even begin browsing a 40,000 record table. OK, we thought that was a fair point. Plus there are several ways to browse a table in WinDev; direct access, in memory, doing a query first, etc. The way we programmed it was not the most efficient due to our lack of knowledge in using more optimal methods – we tried to do it the VFP way. So that’s on us. Again we simply did things in a slightly different way and due to time constraints we went with the solution and moved on.
>
>In both cases we must admit it might be our own ignorance of the tool and that there were better solutions; we can’t all be Sergey or Rick or Tamar or Fabio. Also our mind-set was the VFP way; that does not always make the most sense when using a new dev-tool.
>
>However, generally speaking our WinDev apps execute as fast as their VFP predecessors in all processes that we have found. If there are differences then they are either minor or very possibly simply because we ourselves are not using optimal techniques (in either dev-tool). As business people our main objective is producing working solutions for clients and not producing the best code – we don’t always have the time and resource luxury to spend on learning everything and perfecting everything as programmers. Our work is always a cost/benefit decision. We are business people first and coders second.
>
>Look, Denis and lurkers, I have no vested interest in whether a VFP developer switches to WinDev or not. I don’t sell WinDev. I am personally also towards the end of my coding career at 59. I only offer my opinion on these matters as a For-What-It’s-Worth. I am on record in this forum for being very clear; if I was a younger developer AND looking for a job or contracting work I would probably go .Net. or other VERY mainstream development tool. However, if I am an independent business person developing off-the-shelf systems and/or have clients who simply don’t care about the tool then I want the fastest development tool I can get. The focus is on how fast can I build the application and customize it in future. NOT on how fast does my DO WHILE loop run or whether some function can be a few seconds faster. We are business people first. Developers second. We need to be productive, have systems that help us build quality and modern applications, with rich features easily. I don’t care if a 1,000,000 FOR NEXT loop is faster in language X or Y. Who cares?? If those few seconds mean anything then throw a faster processor or SSD at it and move on.
>
>Here is how I see it. If you want to stay with VFP but make your application cloud based then the single fastest way is TSPLus because for a small price you can set up a server in 20 minutes and publish your app to the cloud with ZERO changes. Don’t even recompile it. You can allow a user to run the cloud app in 2 ways:
>
>1) The user can run your app inside a browser tab. TSPlus uses HTML5 technology to load your app and it appears inside a browser tab. Everything will work. Every ActiveX or 3rd party tool that your app uses will work as is.
>
>OR
>
>2) You can run your app using a TSPlus browser plugin which runs your app simulating it as if it was running on the users own desktop as if it was locally installed. Get that? It runs like it would as if locally installed with a taskbar application button that you can minimize/maximize, resize, and everything like a desktop app. You can create a desktop icon and the user can double click that and your application loads in the cloud but looks and feels to the user as if it was local.
>
>In both options you can even copy/paste to local apps like MSOffice, print locally, save files locally, etc. You need to learn a few TSPlus settings and options but all doable reasonably straight forward.
>
>However, if you want to move to a more productive tool then for a VFP developer WinDev is the best choice imo because of the almost code-line for code-line similarity between the two languages, the very similar syntax, the vast range of functions and controls, and the very similar way in which you build a project and EXE.
>
>In respect of productivity let me give you an example. Now assume you have not already built your own classes or tools because that would be an unfair comparison. We want to do a clean-slate comparison. Let’s say that in VFP you want to allow a user to browse a table. You want the user to be able to do all the following:
>
>1) Sort ascending/descending any column
>2) Search in any column using sophisticated search options like partial and wildcard
>3) Search memo fields
>4) Filter the table on any column using sophisticated options like starts with, contains, ends with, does not start with, does not end with etc.
>5) Allow filtering on already filtered subsets
>6) Allow long fields to run over several lines or force onto one line only
>7) Copy the table
>8) Copy a row or multiple selected rows
>9) Copy a column
>10) Copy a cell
>11) Print the table
>12) Convert the table to Excel
>13) Convert the table to PDF
>14) Hide/show specific columns
>15) Move columns around
>16) Resize columns
>17) Change the font
>18) Change the colours
>19) Change the colour only of specific columns
>20) Have all design and layout/column changes automatically saved and reused next time
>21) Find the contents of a selected field automatically on the internet with Google search
>22) Here's a tough one; allow the user to move controls/buttons/etc. on the window around, i.e. re-arrange to suit
>23) Allow the user to add sticky notes to the windows for future reference
>24) … that’s enough for this example.
>
>How long to build that in VFP? In WinDev you don’t code anything. You just drop a table control on a window, connect it to a database, connect columns to database fields, and all those features (if you want them) come along automatically. You can switch on/off the specific features you need/don’t need. This is just a small example. It is not whether you could build all this in VFP. You can. We did. The point is that modern development tools come with so many productivity enhancements that VFP has missed out on due to lack of upgrades. Now if you say well I have all the classes and 3rd party tools that allow me to do everything then fine. BTW, have you got a scheduler conrtrol? How about a Instagram control? Or a signature verification control? A Twitter control? Camera control? Video control? Want to know how your users use your app? Telemetry built in. etc. etc. Can you build it all yourself? Sure you can (maybe). How much time you want to spend on that … ?
>
>Then using the same language and tools you can develop websites and mobile apps. And I have heard they are now working on a solution where an existing WinDev app will eventually just run as a cloud app without tools like TSPlus. Can’t wait because it’s one more 3rd party tool we could drop.
>
>Like I said, we (and I mean me & my team) are not coders. We are solution providers. We don’t get paid for perfect code or the fastest loop. We get paid for solutions and the speed which we can bring solutions to market.
>
>Anyway, long (boring) post. Each to their own. Everyone must do whatever works for them.
*******************************************************
Save a tree, eat a beaver.
Denis Chassé
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform