Forum > Operating Systems
General other OS question
dLm:
I am new to pascal and Lazarus. Generally speaking how hard is it to optimize a windows program to run on android/iphone ?
Thaddy:
Very hard... It is a bit of an exception.
Handoko:
Hello dLm,
Welcome to the forum.
Basically it is not hard to rewrite a Windows program to target Android platform if:
- You are the programmer who wrote that Windows program
- The program does not use any Windows specific commands/libraries
- You ever write multi-platforms programs
Reasons that I said it is not hard:
Pascal is relatively easy to learn, if you can write programs in other languages you should not have problem learning Pascal. Lazarus is very powerful IDE for rapid application development (RAD). To be able to develop programs to run on Android, you can use Lazarus Android Module Wizard (LAMW). LAMW integrates nicely into Lazarus. Although you cannot use the default visual components provided by Lazarus, LAMW offers its alternative visual components, which are relatively easy to use.
But it is not fair if I do not tell you the disadvantages of using Lazarus:
Pascal is quite verbose. I heard some users complained about Pascal, one even abandoned it because he could type less in C++. The documentation of Pascal is well written unfortunately the documentation of Lazarus needs some improvements.
If you interested to see Lazarus short demos, you can download them here:
https://wiki.freepascal.org/Portal:HowTo_Demos
You should have some understanding on how Pascal/Lazarus works before you start learning LAMW. Using LAMW is not hard but before you can use it you need to do some preparations, and that is not easy. This is the documentation of LAMW:
https://wiki.lazarus.freepascal.org/LAMW
Because of man power issue, the documentation of LAMW does not offer much detail. The good things is, you can find plenty of demos after you install LAMW. They are really helpful. And if you have problems using LAMW/Lazarus/Pascal, many users in the forum will give very helpful answers.
I am not a skilled user in LAMW but I ever used it to write my Linux/Win/Android cross platform graphics library. Things run smoothly, unfortunately I had to stop it because I became busy working on other things and I found bugs in LAMW's OpenGL components.
dLm:
Thanks for the warm welcome...
Hmm.. I obviously have more research to do. I used to program in visual basic back in the early 2000s and more recently wordpress websites. The project I am working on is for a mobile game that I play Puzzles and Survival. There is a mini game water sorter in game that I found an open source example for but it wouldn't correctly work when you add 12 or more colors. I sorted through the code and I got it working for up to 14 colors, which is currently the max in the mini game in PNS. However, with it being a mobile game offered on PC not too many play on PC and I was hoping to be able to optimize it for mobile so my guild mates could use it, not just myself.
Also would LAMW include working on apple OS as well?
Handoko:
I haven't used LAMW for quite a long time but I remember the last time I used it, LAMW didn't support Apple OS.
If your goal is building games you should consider the tools that are specialized for game development first, like Unreal Engine, Unity, CryEngine, RPG Maker, Stencyl, Construct 2, GDevelop. I ever spent some time learning Construct Classic (Construct version 1) and GDevelop. Impressive, free and very easy to use you can build simple games after half an hour trying it. Unfortunately their later versions are no longer free.
When I was kid I was very curious how video game hardware and software work and I enjoy problem solving, so Lazarus suits me. Although the tools specialized for game development really offer more features for building games than Lazarus but that isn't my main goal.
If you're not willing to spend much money on the tools like those I mentioned, you can try ZGameEditor. It is open source, you write only once and it can generate Linux, Mac OS X and Android binaries for you.
http://www.zgameeditor.org/index.php/Main/Features
ZGameEditor script language is Pascal, which is a plus for me. I really put some efforts learning it. Later I realized, their development was mainly on Windows but I was a Linux user, so I stopped using it.
And the best of the free game development tool is Godot Engine:
https://godotengine.org/
I tried Godot Engine, downloaded some demos and generated binaries for Linux, Windows and Android. I was speechless. I never known I could build multi-platform games so easy. I can be sure to tell you, you can build games for Windows, Linux and Android using Lazarus and with LAMW. But Godot is the king, because for the multi-platform export features, it just as easy as clicking some settings.
Game development tools will surely make you more productive. But I am not a very creative person, I prefer a general purpose tool. So far Lazarus is the best (for me)
Navigation
[0] Message Index
[#] Next page