B4J Question Informations about B4J

Crystal Noir

Member
Licensed User
Longtime User
Hi there,

Please apologize for my aproximative english

I would like to have some informations about B4J. I am a "hobby dev" at the same as I had a dev cursus at school I don't work in dev so...just a hobby at the moment.

I saw a topic where Erel asks how to promote B4J, may be my questions and remarks could help you to find what's missing for B4J...When I saw this tool I was interested in but :

- There is few informations about it except that we know it's for desktop app, web app and so on.
- The documentation page is....just an index of libs.

There is not a lot of things to have an opinion of the tool and when we download it we don't know how to start. For B4A/B4i user it's may be easy to get in it but for others... I don't have a lot of experience with B4A for example so I'm lost in B4J.

Now the questions :

- Screenshots seems to have kind of oldschool ui style, is it efficient to make a desktop application ? I ask that because on the forum I often see some servers project etc... but more rarely desktop apps.

- Code concerning : Can we create class or code with some Poo aspect ? (except of use a java class directly inline).

Please, my topic and question is not to complain but just ask my questions and tell you my feeling when I saw at first the tool and the webpage.

Thank you very much !

Guillaume
 

stanmiller

Active Member
Licensed User
Longtime User
There's no better resource for getting started with B4J than Robert Linn's HowTo compendium.

B4J HowTos
http://www.rwblinn.de/b4j/b4jhowto/index.htm

The core language, syntax, and many libraries overlap B4A. As such, the B4A Beginner and User guides are great resources on topics of variables, loops, program structure, and so on...

B4A - Beginner's Guide
https://www.b4x.com/android/files/guide.zip

Lastly, Seagrave's frequently updated B4A book from Penny Press is unmatched.

B4A - Rapid Android App Development Using BASIC
http://pennypress.co.uk/b4a-book/
 
Upvote 0

jmon

Well-Known Member
Licensed User
Longtime User
just a hobby at the moment
Same for me, I never learnt coding at school, and I mostly learnt coding with B4J actually, reading the forum and looking at the example scripts provided. I code apps just for fun, and help some friends and coworkers. No money made from my apps so far

is it efficient to make a desktop application
Yes, basically any Javafx application you see, you can do it with B4J. Check out this page:
https://jaxenter.com/20-javafx-real-world-applications-123653.html
i.e. Many trading apps, airport management apps, etc are done with Javafx. B4J uses Javafx for the GUI apps.

You can also have a look at one of my desktop app : https://www.b4x.com/android/forum/t...ng-project-management-tool.60005/#post-393613
Entirely done with B4J.

The documentation page is....just an index of libs
Regarding that, I can tell you that I never had to read the documentation. You can find many scripts in the tutorial & classes sections. Also many users wrote good tutorials. Also the IDE has built-in help pop-ups, very useful.

so I'm lost in B4J
I quite agree with you that B4J is very big now. I started B4J when the very very first BETA was released. At that time, there was probably 1 or 2 topics in the Tutorial section, so it was easier to start .
Have a look at this to start: https://www.b4x.com/android/forum/threads/b4j-helloworld-s-examples.53371/#content
Going from there, I'd say you should have a goal to achieve. For example if you need an app that exchanges with mySQL, then just search mySQL in the forum, filter by "B4J" and look at the examples. Do like that for each step of you app, and you'll see you will get somewhere very quickly.

The user community is very helpful, and Erel is amazingly fast at providing help. Just post a question in the forum, it will be answered within a few hours.

Good luck.
 
Upvote 0

Crystal Noir

Member
Licensed User
Longtime User
Hi there,

thank you all I'm going to look at your ressources and try to understand how it works and make an opinion !
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime User
As to an example of what can be done, check out my B4X-Launcher in the share your creations sub forum
 
Upvote 0

Harris

Expert
Licensed User
Longtime User
Hi there,

thank you all I'm going to look at your resources and try to understand how it works and make an opinion !

Hobby dev or professional, B4X covers it all (so easily) like no other dev environment on this planet does...
You are fortunate as a newbie; you ask the right questions BEFORE you get corrupted and get steered astray. After all, you are looking for honest answers and guidance.

And the price of B4J? How can you argue with FREE? (frankly, I would pay 300 bucks (or more) per year for this - but don't tell Erel).

This B4X community; the advise and guidance the community offers freely benefits everyone and rarely the contributor (unless they ask due to extreme circumstances... many hours developing)) are compensated. Generally it is by donation from users - because we truly appreciate their efforts.

Code is Basic (easiest to learn - you probably were taught) - get it compiled to java within B4X (don't ask me how) and run native Android or Java apps (even B4i).

Don't like desktop apps (old school - client/server style)? Check out ABMaterial - a webapp creation GUI for B4J (and much more). Not to slight any of the B4X achievements, ABM is the BEST thing to happen for us that embrace it. NOW we can create ultra-modern (cloud) web systems - without the usual pains of php, Ajax, JavaScript (expert knowledge)... and the like.

Even thou I have stated much of the above many times before, when asked the same from new enquiries, I feel obligated (committed) to reply on behalf of us all.
Explore no further - you are at your destination. Nothing is easier along with robust, stable, supported, and "fun" as this.

my 2 pesos...

PS: I shall bookmark this response to forward for each new type inquiry..
 
Last edited:
Upvote 0

Crystal Noir

Member
Licensed User
Longtime User
Hello,

I am a newbie with B4X but not really in coding. Got some training curriculum in dev (java, c#, poo, UML, agile...), but at my work I didn't code a lot (I don't working in dev at office so...), so it's a hobby for me.

I like Poo style, I see that B4J offers some classes but no inheritance but that's ok.

What I like in this solution is that we can have some lib to work with some things like Excel or pdf etc... without have to pay an expensive addon...

Check out ABMaterial....

Could ABMaterial used to make desktop app ? Javascript....I don't like it but I know that node.js could be powerfull if mastered.

you are looking for honest answers and guidance.

That's right ! I already like the community. Thank you so much for all the answers I received and please, I'm sorry for any mistakes in english, I try to do my best

I have to explore in depth this solution. It's just a few weird how we have to work with layout size (windows size) for a desktop app.
 
Last edited:
Upvote 0

Hilton

Active Member
Licensed User
Longtime User
Hi,
I am retired and my love affair with programming and systems work started in 1969. I am hooked and I am forever looking at various environments and playing with them. Nsbasic and ionic 2 being a couple. Everything has it's upside and down side, but overall I have found the B4x environment the easiest to learn (I am not saying that it is easy, just the easiest) and the most productive, the forum is excellent. With the B4x family of products you can DO IT ALL!

I would encourage you to give the B4x family of products (and forum members) a good try. I wish you the best with your efforts.

Hilton.
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
Crystal Noir, welcome to B4X I'd like to share some words about your questions.
Computer programming is usually a long road of extremely hard work, and even since the 80's revolution (as I was port of the Commodore 64 demoscene when Basic language and Assembly language was the available) the industry have exploaded and as everybody knows there's many technology tools and development environments for programming. At that time Pascal and C++ was also famous, but did not attract a large userbase because of the introduction of the Altair, Apple II and Commodore 64/128). Ever since Amiga and especially the PC was developed hardware have developed at a rapid pace and slowed down because manufacturers have to reply on the nano standard which takes years to stay in sync with the market). This is because like Steve Jobs said, the software industry evolved into a become much more powerful than the hardware industry, so today you have plenty of programming languages to choose from. You are doing yourself a favour to ask yourself how much time and ambition you want to put into your programming hobby, and what you want to achieve by doing so. Seen from a corporate industry perspective there's mainly two dominating platforms, Microsofts C sharp (.NET) and Oracles Java language (Cross-platform runtime) that programmers choose to become skilled which is the fundamental knowledge base, then you have the opportunity to use a Javascript framework (such as Angular JS, Angular 2, Node JS, React, Riot.JS, Create JS, Ketstone JS, VUE, Meteor to name a few, which is used to program websolutions with the webbrowser in mind. This makes webpages look and perform more like a desktop application. In later years webserver programming has become an obvious need for online business. That is therefore neccessary to be familar with the SQL standard which is used to allow programming code to communicate with databases such as SQLite (local database file), and such as servers (MySQL (mysql and mariadb versions), Microsoft SQL server and others. If you want to work with a MySQL database then the server script language PHP is very common and easy to learn and use. This isone of the most common way to build a login system and other stuff on the webserver in the old way, however B4J offers us to run a webserver with RDC2 that make it less neccessary to sign up at a webhotel to run a webserver of your own which is a great thing so there's much to considder depending what you want to do with it. PHP is known to be used together with a Javascript framework because a javascript framework is used to display stuff in the webbrowser, while PHP is handing what happens in the background on the server, usually to interact with the server itself such as the database and files behind the webpage. Microsoft Visual Basic 6 attracted a large userbase when it was released long ago that made it very easy to the common Windows user to put together their own application. VB.NET followed, then C sharp, so that Microsoft could turn their language closer to Java, which has been a standard for a long time in the academic software engineering world and it to this day the obvious academical programming language at Chalmers universities and other corporate funded academies around the world. Because the Visual Basic language became so widespread, it is easy to find code snippets and examples on the internet. This makes the B4X frenchise of development environments for android, ios, arduino, Rapeberry PI, webserver and desktop development with B4J (Java) possible and the benefit to use a worldwide standardized programming language based on Basic and Visual Basic so this opens up for great possibillities as a single developer so as far as I know B4X is something of 'a unique package' of development environments and tools that supports it all, or at least a large range of hardware to keep us all busy for a long time to come. I'd like to wrap up this by saying that you will get a great jumpstart by doing examples from the B4A or B4J PDF guide and give that some time, and start out with adding single contros and learn how they are used. That will keep you motivated to learn more and it's a advantage to learn as much as possible with what you choose and stay with that until you can do pretty much what you need to do. Then you will notice it is not difficult to move on and learn other programming languages because programming languages these days is buildt around OOP-Objective oriented programming were classes is the fundamental part and the heart of the application, so remember C sharp, Java and C++ is the worldwide standards in the corporate and academic world with giants such as Microsoft, Apple and Oracle owns the dominating platform standards and then there's many development tools based on these or others. I personally think that B4X is the obvious development package for the hobby/indie developer were many have experience from the major standards but since it is possible to use Visual Basic syntax which many programmers were used to in the past it's as far as I know the only (and best) solution to use one programming langauge to develope for multiple platforms. With that said the B4X frenchise is causing alot of work for Anywhere software to maintain and update and promote his products which is a great effort, and thanks to this community of experienced programmers it helps to learn more no matter where in the knowledge and experience ladder you stand as we help eachother to progress which is vital for the B4X to keep growing and attract more customers. You will find that Google is your best friend to learn whatever you want to learn, and in time you will find that it takes less time to develope with B4X compared to any of the other standards, which is the reason why so many allready experienced programmers have found that B4X actually is a shortcut to spend less time to get the same result. That's very important in todays world. In time B4X members will be the ones who promote Anywhere software products, depending of their level of success.

 
Last edited:
Upvote 0

Crystal Noir

Member
Licensed User
Longtime User
Waow, thank you so much to take your time to answer me ! I started reading some doc and playing with the Ide B4j will stay free ?
 
Upvote 0

Crystal Noir

Member
Licensed User
Longtime User
Cool I looked at ABMaterial. It's just for web app isn't it ? I wonder if we can use it (or adapt it) for a desktop app ?
 
Upvote 0
Cookies are required to use this site. You must accept them to continue using the site. Learn more…