iT邦幫忙

2024 iThome 鐵人賽

DAY 1
2

第1週: 基礎概念與工具準備

第1章: 認識B4X平台與B4A工具

緣起

AI時代已來,不耍技術只要邏輯+專業,
期望對您的專業導入行動應用有幫助。
返璞歸真的程式開發僅要專注:邏輯+UI+元件引用,
選用工具平台特色-UI採拖拉視覺化設計.Basic程式僅專注邏輯。

提供行動應用平台比較表: B4A、Flutter與Visual Studio

以下比較表列出了B4A、Flutter與Visual Studio三個行動應用開發平台的主要特點,幫助開發者選擇最適合自己需求的平台。

特性 B4A Flutter Visual Studio
語言 Basic (B4X) Dart C#, F#, VB.NET
開發環境 專屬B4A IDE Android Studio, Visual Studio Code Visual Studio IDE
支援平台 僅支援Android 支援Android與iOS 支援Android、iOS、Windows、macOS等多平台
學習曲線 平緩,適合初學者 中等,需要學習Dart語言 中等到高,需要.NET基礎
社區支持 小型但專注的社區 大型且活躍的全球社區 大型且專業的社區
UI設計工具 Designer工具 使用Flutter的Widget與Flutter DevTools Xamarin.Forms, MAUI的XAML設計工具
跨平台支持 B4A支援Android/B4I支援iOS/B4J支援Windows 原生支援Android與iOS跨平台開發 跨平台支援,通過Xamarin或MAUI
性能 良好,針對Android進行優化 高效,近乎原生性能 高效,依賴於底層原生API
開發速度 快速,適合快速原型設計與中小型專案 快速,適合構建跨平台應用程式 取決於專案複雜度與開發者經驗
擴展性 依賴於B4X Libraries,擴展性相對有限 豐富的插件庫,社區支持強 強大,支援多種擴展與第三方工具
部署 僅支持Google Play上架 支援Google Play和Apple App Store上架 支援多平台的應用程式部署
調試工具 內建調試功能簡單易用 提供強大的調試工具與Widget Inspector 提供豐富的調試工具和性能分析工具
定價 完全免費且工具平台也開源 開源免費 免費社群版與付費專業版
  • B4A:適合專注於Android平台的初學者或中小型專案開發者,學習曲線平緩,開發效率高。
  • Flutter:適合需要開發跨平台應用的開發者,擁有強大的社區支持和豐富的插件庫,性能表現接近原生。
  • Visual Studio:適合專業開發者,尤其是那些已有.NET基礎的開發者,支持多平台開發,並提供強大的擴展和調試工具。

選擇合適的開發平台應根據您的專案需求、目標平台以及個人技術背景來決定。

B4X平台與B4A工具

B4X 是一個強大的跨平台開發工具,能夠讓開發者使用單一語言來開發 Android、iOS、桌面、和物聯網設備上的應用程式。B4X 系列包含 B4A、B4i、B4J 和 B4R,分別對應於 Android、iOS、桌面應用和 Arduino 等嵌入式系統。這個平台的核心是簡單易學的語法、強大的開發環境,以及豐富的社群資源,讓開發者能夠快速上手,並創建功能強大的應用程式。
😱其中,B4A (Basic for Android) 是專門針對 Android 開發的工具。B4A 提供了一個基於 BASIC 語言的開發環境,這種語言對於新手來說非常友好,因為它簡潔、直觀且容易理解。與 Java 和 Kotlin 等傳統 Android 開發語言相比,B4A 的語法更簡單,但功能卻不減,能夠滿足大部分的應用程式開發需求。
😱B4A 的主要特點之一是其視覺化設計器(Designer),允許開發者以所見即所得的方式設計應用程式的用戶介面。這意味著你可以直接在設計器中拖放各種 UI 元件,如按鈕、文字框和圖片,並立即看到它們在實際應用中的效果。這種方式不僅提高了開發效率,也減少了編寫代碼的錯誤率。
😱B4A 另一個強大的功能是其模組化設計,允許開發者將代碼分解成多個模組,這樣可以更好地管理和重用代碼。模組化設計有助於提高代碼的可維護性,尤其是在大型專案中,這一點尤為重要。
😱此外,B4A 支援豐富的第三方庫(Libraries),這些庫可以大大擴展 B4A 的功能範圍。例如,你可以使用外部庫來實現網路通訊、資料庫存取、圖形處理、甚至是機器學習等功能。這些庫的使用大大減少了開發者自行編寫複雜代碼的需求,並且有助於加快專案的開發速度。
😱B4X 平台的一大優勢是它的跨平台能力。儘管 B4A 專注於 Android 平台,但如果你學會了 B4A,那麼學習 B4i(iOS 開發工具)和 B4J(桌面應用開發工具)將會變得更加簡單,因為它們共享相似的語法和開發環境。這種一致性允許開發者更輕鬆地擴展到其他平台,並且重用大部分的代碼,從而節省開發時間和資源。
😱B4A 也得到了社群的大力支持。你可以在 B4X 官網的論壇中找到大量的教學、範例程式和各種資源。此外,社群成員經常會發布新庫、工具和範例,這些資源極大地豐富了 B4A 的生態系統,並為開發者提供了更多的選擇。
😱總結來說,B4X 平台尤其是 B4A 是一個非常適合初學者以及經驗豐富的開發者的工具。它簡單易學,但功能強大,且擁有豐富的資源支持。如果你想要快速開發高品質的 Android 應用程式,B4A 無疑是一個值得考慮的選擇。

範例程式

以下是一個簡單的範例程式,展示了如何使用 B4A 來創建一個基本的 Android 應用程式。這個應用程式將顯示一個按鈕,當用戶點擊該按鈕時,螢幕上會顯示「Hello, B4A!」的訊息。
basic程式碼

' Main Activity module

Sub Process_Globals
    ' 這裡宣告的是全域變數。
End Sub

Sub Globals
    ' 這裡宣告的是活動(Activity)的變數。
    Private btnHello As Button
    Private lblMessage As Label
End Sub

Sub Activity_Create(FirstTime As Boolean)
    ' 設定活動的介面佈局
    Activity.LoadLayout("Layout1")
    
    ' 初始化按鈕和標籤
    btnHello.Initialize("btnHello")
    lblMessage.Initialize("")
    
    ' 設定按鈕的屬性
    btnHello.Text = "點擊我"
    Activity.AddView(btnHello, 50%x - 75dip, 50%y - 40dip, 150dip, 80dip)
    
    ' 設定標籤的屬性
    lblMessage.Text = ""
    lblMessage.TextSize = 20
    Activity.AddView(lblMessage, 10dip, 80%y, 100%x - 20dip, 80dip)
End Sub

Sub Activity_Resume
    ' 這個子程序在活動恢復時執行
End Sub

Sub Activity_Pause (UserClosed As Boolean)
    ' 這個子程序在活動暫停時執行
End Sub

' 按鈕點擊事件的處理
Sub btnHello_Click
    lblMessage.Text = "Hello, B4A!"
End Sub

範例解說
• Sub Process_Globals 和 Sub Globals 是 B4A 中常見的兩個區塊,用來定義全域和局部變數。
• Activity_Create 是應用程式啟動時執行的子程序。這裡我們初始化了一個按鈕和一個標籤,並將它們添加到活動(Activity)的介面中。
• btnHello_Click 是按鈕的點擊事件處理程式,當按鈕被點擊時,標籤的文本將會被設置為 "Hello, B4A!"。
這個範例展示了 B4A 開發的一些基本概念和操作,你可以藉此開始探索更多的功能和進階技術。

B4X平台提供Android模擬器與SDK更新工具https://ithelp.ithome.com.tw/upload/images/20240831/20168401VzYFHV3n95.jpg

B4A來開發Android APP手機應用程式時,您必須要先在電腦安裝以下三種不同的軟體
一.安裝 JAVA JDK(Java 開發套件)及SDK :兩方式下載OpenJDK及Android SDK
方法一.官方網站下載安裝OpenJDK+Android SDK(https://www.b4x.com/b4a.html):

1.OpenJDK 19
OpenJDK 19 + OpenJFX:下載連結。
授權:GPL + 類別路徑例外。許可證允許在封閉的商業項目中使用。
下載 zip 並解壓縮。C:\java是一個好地方。
建議使用7-Zip等工具解壓縮大包。 Windows 資源管理器可能無法正確提取它。不需要安裝。

2. Android SDK + 所需資源
您需要下載兩個元件,這兩個元件都不需要安裝。
下載Android SDK 命令列工具
請務必閱讀並同意SDK 許可證。按一下 Windows 命令列工具即可查看授權。
不需要 Android Studio,也不會受到命令列工具(始終需要)的影響。
解壓縮到C:\Android等資料夾中
下載所需資源。

方法二.到官方網站下載「Android SDK」

步驟一:http://developer.android.com/sdk/index.html
步驟二:選擇「Download the SDK」鈕

二、下載Basic4Android:安裝「Basic4Android」
我們必先到官方網站下載「Basic4Android」。
(https://www.b4x.com/b4a.html)

B4A設定環境

https://ithelp.ithome.com.tw/upload/images/20240831/20168401RQ1kWgnwj1.jpg
執行「Tools/Configure Paths」
1.設定javac.exe的路徑:如 D:\app\jdk-19.0.2\bin\javac.exe
2.設定android.jar的路徑:如 D:\app\android\platforms\android-28\android.jar
3.設定additional libraries的路徑:如 C:\B4X\lib
4.設定Shared Modules的路徑:如 C:\B4X\Share

參考網址
https://www.b4x.com/b4a.html
https://github.com/AnywhereSoftware/B4A
https://www.b4x.com/teach.html
https://www.b4x.com/android/forum/forums/🐢-👩%E2%80%8D🏫-👨%E2%80%8D🏫-teaching-programming-with-b4x.72/
https://github.com/AnywhereSoftware/B4A


下一篇
Basic30天學會行動App-第2章
系列文
用最接近自然語言的Basic30天學會行動App30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言