AI - An Iron?

我問GrOk: 程式語言是給我們人類看的,那如果只是單純的只要能用的app,不論手機端或桌面端,ai是否可以直接生成,而不是用什麼語言來編譯…

哈哈,問得好!程式語言確實像是人類跟電腦溝通的「翻譯官」——我們看著舒服、好改、好維護,電腦才懶得管什麼語法,它只在乎最後那一串 0 跟 1。

那如果我們只是要「能用的 App」,不管手機還是桌面,AI 能不能直接吐出成品、跳過語言這一步?

短答案:現在還不行完全跳過,但已經很接近「幾乎跳過」了。

目前 AI(像我這種)最常見的做法是:

  1. 你描述需求 → AI 直接生成程式碼(Python、Swift、Kotlin、JS、C#…)
  2. 再交給編譯器/打包工具變成真正能跑的 App

這已經比以前快超多,很多人現在用 Cursor、GitHub Copilot、v0、FlutterFlow + AI 之類的工具,幾分鐘就能搞出能用的原型。

但「完全不經過任何語言、直接生成可執行檔」這件事,目前還有幾個現實障礙:

  • App 不是單純的二進位檔就好,它還要跟作業系統、權限、UI 框架、硬體、商店審核規則打交道。這些規則本身就是用「語言」定義的。
  • 生成出來的東西如果完全是黑盒子二進位,你之後要改一個按鈕顏色、修一個 bug,就會變成「請 AI 再重新生成整個 App」,成本超高、也不可控。
  • 安全跟可驗證性也是問題——沒人敢把完全不透明的二進位直接丟上架。

不過未來方向很有趣:
已經有人在研究「AI 直接輸出機器碼/WebAssembly/中間表示」,或是「用自然語言描述 → 直接產生可運行的虛擬機映像」。等到模型更強、工具鏈更成熟,也許真的會出現「你說一句話,AI 就吐出一個能安裝的 .apk / .ipa / .exe」這種魔法。

所以現在的答案是:
AI 已經可以幫你把「寫語言」這件事大幅縮短甚至自動化,但「完全跳過語言、直接生成可用 App」還在實驗室跟科幻小說交界的地方。

再過幾年?搞不好我們真的會看到「講一句話就出 App」的時代,然後一堆工程師會一邊哭一邊說「我的人生意義呢……」😂

你現在是想做什麼樣的 App?說出來,我先幫你用現在最接近的方式直接生一版給你玩玩看~

AI 

UTF8 To BIG5 + bmfont

BMF.C 程序說明文件

程式概述

本程式 bmf.c 是一個專門用於處理 Unicode(UTF-8)字串與 Big5 編碼之間轉換的 C 語言程式,同時具備從 Big5 編碼查詢對應點陣字體資料的功能。程式的核心設計目標是為了嵌入式系統或點陣顯示裝置(如 LCD、OLED 螢幕)提供中文字型的顯示支援。程式透過二分搜尋演算法高效地查詢 Unicode 到 Big5 的映射關係,並根據 Big5 編碼的特定區塊結構計算字型資料在字庫陣列中的偏移位置,最終輸出符合特定尺寸規格的點陣資料。

程式的設計採用了模組化架構,將字元編碼轉換與字型資料獲取分離,使得各個函式可以獨立重用。轉換流程從 UTF-8 字串出發,首先解析出每個 Unicode 碼點(codepoint),接著查詢對應的 Big5 編碼,最後根據 Big5 編碼的區塊分類從預先定義的字庫中提取點陣資料。這種設計方式不僅提高了轉換效率,也使得程式碼結構清晰易於維護。

[Read More]

Code - Mine Sweeper

MineSweeper Game

這是一個使用 Raylib 圖形庫開發的經典踩地雷(Minesweeper)遊戲程式。程式以 C 語言撰寫,支援不同的難度等級,並包含音效、圖片資源和自訂字體。

o_O

源碼在這裏

這個README是由AI依照原始程式產生的,真是方便啊!— -_- 最討厭寫這些文件了…

[Read More]

Code - Game Practicum 01

a simple game practicum with raylib

這是一個簡單的使用raylib的遊戲,主要是用來練習raylib的基本功能。 因為是練習用,所脙會非常隨性,你可能會發現程式風格極為混亂!是的,我喜歡混亂,那代表著無限的可能性。 當然也會有無限的錯誤,請多多包涵。 為什麼用C語言來練習呢?C代表著最大程度的自由,你可以用任何你喜歡的方式來寫程式。 What you think. what you write code. NO LIMIT. NO strange RULES. o_O

[Read More]

Code -- Simple POKER Game

a simple POKER game with raylib

為什麼會有這個東東呢? 因為想要知道ai的研究是否好用,順著就寫了一個來測試機率。 o_O

[Read More]
c  raylib 

Poker game from GEMINI

撲克牌遊戲中各種牌型的自然機率分析報告

1. 前言

撲克牌遊戲,尤其是五張換手撲克,在全球廣受歡迎。了解遊戲中各種牌型出現的機率對於玩家制定策略至關重要。本報告旨在透過組合數學的方法,計算在一副標準的 52 張撲克牌中,隨機抽取 5 張牌時,形成各種特定牌型的自然機率,這些牌型已由使用者提供的 CardWinKind 陣列定義。本分析將基於標準的組合學原理,計算每種牌型的組合數量,並將其除以所有可能的五張牌組合總數,從而得出其發生的機率。本報告將詳細闡述每種牌型的計算過程,並總結其機率分佈。

[Read More]

Code - Lazy Graphics

為了方便繪圖測試,把sdl 3給加一層包裝,懶人專用… 使用例…

#include <stdlib.h>
#define LAZY_GRAPHIC_IMPLEMENTATION
#include "lazygraphic.h"
#include <math.h>
#include <time.h>

int main(int argc, char* argv[])
{
    RGBA bkgColor = { .color = 0xFF181818 };
    RGBA cirColor = { .color = 0xFF18D818 };
    lazyGr.Init(800, 600, "LAZY !!");
    srand(time(NULL));
    while (!lazyGr.Done()) {
        lazyGr.Clear(bkgColor);
        for (int i = 0; i < 50; i++) {
            int rx = rand() % 400;
            int ry = rand() % 300;
            int rr = rand() % 200;
            cirColor.color = rand() | 0xFF000000;
            lazyGr.Disk(400 - rr/2 + rx/2, 300 - rr/2 + ry/2 , rr, cirColor);
        }
        lazyGr.Update();
        lazyGr.Delay(16);
    }
    lazyGr.Fini();
    return 0;
}
[Read More]
c  program  sdl3 

Code - Pong Game

a simple game with raylib

為什麼會有這個東東呢? 因為想要知道ai的註解是否好用,不想寫註解的人有福了,找ai就對了。

[Read More]

Lilikoko - Gemini o_O

** Gemini 2.0 Flash Thinking Experimental

Q:

  • 1 = 5 2= 10 3 = 15 4 = 20 那麼5 = ?

顯示思路 The user is presenting a sequence of numbers on the left side of the equation and their corresponding values on the right side. The sequence is: 1 = 5 2 = 10 3 = 15 4 = 20 The user is asking to determine the value for 5 = ?.

[Read More]