{}const=>[]async()letfn</>var
LuaDéveloppement

Premier code en Lua : un guide pour ceux qui veulent commencer à programmer sans devenir fous

Comprendre le langage Lua à partir de zéro : de l'installation au mini-jeu en 10 minutes. Sans théorie ennuyeuse, avec des exemples de code et une présentation amusante. Découvrez pourquoi Lua est l'un des langages les plus conviviaux pour débuter en programmation, où il est utilisé et comment écrire votre premier projet.

К

Kodik

Auteur

7 min de lecture

Quand tu as ouvert Lua et que tu t'es dit : « Attends, où sont les accolades ? »

Il y a des langues qui vous donnent envie de fermer votre ordinateur portable et d'aller faire paître les vaches au village. Et il y a Lua, un langage qui vous accueille comme un vieil ami : sans cérémonie inutile, sans constructions de cinq étages et sans le sentiment que vous avez accidentellement ouvert la thèse de quelqu'un d'autre en physique quantique.

Si vous avez déjà joué à World of Warcraft, Roblox ou à un mod sur Garry's Mod, félicitations, vous avez déjà utilisé Lua indirectement. Ce langage est littéralement partout où vous devez scripter quelque chose rapidement sans déployer une station spatiale de dépendances.

Étape 0 : Installation (spoiler : c'est rapide)

Lua est l'un des langages les plus faciles à installer. Pas de gigaoctets de SDK, pas de « veuillez mettre à jour votre version de Java vers 847.3 ».

Sur Linux/macOS :

# Ubuntu/Debian
sudo apt install lua5.4

# macOS (via Homebrew)
brew install lua

Sous Windows :

Télécharger LuaBinaries avec site officiel ou mettez-le via scoop :

scoop install lua

Vérifions que tout fonctionne :

lua -v

Si vous obtenez quelque chose comme Lua 5.4.7 en réponse, vous êtes dans le coup. Sinon, eh bien, classique, vérifiez PATH.

🔥 100 000+ étudiants déjà avec nous

Marre de lire la théorie ?
Il est temps de coder !

Kodik — une appli où tu apprends à coder par la pratique. Mentor IA, leçons interactives, projets réels.

🤖 IA 24/7
🎓 Certificats
💰 Gratuit
🚀 Commencer
Ont rejoint aujourd'hui

Étape 1 : Hello, World ! (rituel d'initiation)

Créez le fichier hello.lua et écrivez :

print("Hello, World!")

Lancez :

lua hello.lua

Tout. Un. Un seul appel. Sans public static void main, sans import, sans #include <iostream>. Lua respecte votre temps.

À titre de comparaison, voici la même chose en Java :

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Lua voit cela comme :

« Mec, pourquoi tant de lettres ? print() et on passe à autre chose. »

Étape 2 : Variables — il suffit d'écrire et c'est tout

Dans Lua, il n'est pas nécessaire de déclarer le type de variable. Pas de int, string, float. Lua le découvrira lui-même :

name = "Alexey"
age = 25
is_developer = true

print(name)          -- Алексей
print(type(age))     -- number
print(type(name))    -- string

Les variables locales sont déclarées via local — et cela est considéré comme une bonne pratique :

local score = 100
local player = "Hero"

Pourquoi local ? Parce que sans lui, la variable devient globale, et les variables globales dans un grand projet, c'est comme laisser les clés de l'appartement sous le paillasson. Cela semble pratique, mais vous serez surpris plus tard.

Étape 3 : Conditions — if, elseif, else, end

local hp = 30

if hp > 50 then
    print("Everything is fine, we continue to fight")
elseif hp > 0 then
    print("Be careful, HP is running out!")
else
    print("Game Over. Respawn in 5 seconds")
end

Faites attention : au lieu de { et }then et end. C'est inhabituel au début, mais ensuite tu comprendras que c'est encore plus propre à lire. Lua aime les mots, pas les symboles.

Un autre point : dans Lua il n'y a pas de !=. Au lieu de cela, on utilise ~= :

if name ~= "Admin" then
    print("Access denied")
end

Oui, tilde. Accepte-le.

Étape 4 : Cycles — tourner, retourner

while:

local i = 1
while i <= 5 do
    print("Iteration: " .. i)
    i = i + 1
end

Au fait, .. est une concaténation de lignes dans Lua. Pas +, pas concat(), mais juste deux points.

for:

for i = 1, 5 do
    print("Step " .. i)
end
CODE_BLOCK_12__

for-in (pour parcourir les tableaux) :

local fruits = {"apple", "banana", "mango"}

for index, fruit in ipairs(fruits) do
    print(index .. ". " .. fruit)
end

Étape 5 : Fonctions — écrire nos propres commandes

local function greet(name)
    return "Hi, " .. name .. "! Welcome to Lua"
end

print(greet("Maria"))

Les fonctions de Lua sont des citoyens de première classe. Elles peuvent être stockées dans des variables, transmises comme arguments, renvoyées à partir d'autres fonctions. En général, la programmation fonctionnelle n'est pas en paroles ici :

local function apply(func, value)
    return func(value)
end

local function double(x)
    return x * 2
end

print(apply(double, 21))  -- 42

42 est la réponse à tout. Coïncidence ? Je ne pense pas.

Étape 6 : Les tableaux sont le cœur de Lua

C'est là que la magie commence. Dans Lua, il n'y a pas de tableaux, pas d'objets, pas de dictionnaires. Mais il y a tableaux — une structure de données universelle qui remplace tout :

-- Как массив
local colors = {"Red", "Green", "Blue"}
print(colors[1])  -- красный (индексация с 1!)

-- Как словарь
local player = {
    name = "Warrior",
    hp = 100,
    level = 5
}
print(player.name)   -- Warrior
print(player["hp"])  -- 100

-- Как объект с методами
function player:takeDamage(damage)
    self.hp = self.hp - damage
    print(self.name .. " received " .. damage .. " damage. HP: " .. self.hp)
end

player:takeDamage(25)  -- Warrior получил 25 урона. HP: 75

Point important : l'indexation en Lua commence à 1, pas à 0. Oui, c'est le détail qui va te causer une crise existentielle si tu es habitué à JavaScript ou Python. Mais tu vas t'y habituer.

Étape 7 : Mini-projet — quête textuelle

Il est temps de tout rassembler. Voici un petit jeu de texte :

local function game()
    print("=============================")
    print("  CODE DUNGEON")
    print("=============================")
    print("")
    print("You are standing in front of the entrance to a dark cave.")
    print("A strange noise is heard inside...")
    print("")
    print("What are you doing?")
    print("1 - Enter the cave")
    print("2 - You go home to drink tea")
    print("")

    io.write("Your choice: ")
    local choice = io.read()

    if choice == "1" then
        print("")
        print("You enter and find... an ancient laptop!")
        print("A file with Lua code is open on the screen.")
        print("You start reading... and you become a programmer!")
        print("")
        print("🏆 VICTORY! +100 to programming skill")
    elseif choice == "2" then
        print("")
        print("A wise choice. Tea is also important.")
        print("But the cave will be waiting for you...")
        print("")
        print("☕ END. But you can always come back!")
    else
        print("")
        print("Unknown command. The cave is confused.")
        print("Try again!")
    end
end

game()

Enregistre-le dans quest.lua, lance lua quest.lua — et félicitations, tu viens d'écrire ton premier jeu en Lua.

Et ensuite ?

Lua est un langage qui vous ouvrira les portes du développement de jeux (Love2D, Defold, Roblox), du développement intégré, de l'écriture de plugins et de scripts pour les applications existantes. Il est léger, rapide et étonnamment puissant.

Voici quelques directions dans lesquelles vous pouvez vous déplacer :

  • Roblox Studio - si vous voulez faire des jeux et gagner de l'argent

  • Love2D - moteur 2D minimaliste pour les jeux indépendants

  • Neovim — la configuration et les plugins sont écrits en Lua

  • OpenResty/Nginx — Lua pour les serveurs Web à forte charge

  • Embedded/IoT — Lua fonctionne très bien sur les microcontrôleurs (NodeMCU, ESP8266)

Si ce format vous plaît et que vous souhaitez aller plus loin, jetez un œil à Code. C'est une application où vous pouvez apprendre la programmation à partir de zéro : de Python et JavaScript à HTML, CSS et d'autres technologies. Pas de théorie sèche de 200 pages, seulement des leçons claires avec de la pratique, après lesquelles vous comprenez vraiment ce que vous avez écrit et pourquoi.

Code créé spécialement pour ceux qui veulent apprendre à leur propre rythme, depuis leur téléphone ou leur ordinateur, sans être liés à un emploi du temps et à de longs cours.

Et nous avons aussi Chaîne Telegram avec une communauté de plus de 2 000 développeurs, où des articles utiles sur la programmation, des analyses de tâches et des actualités du monde du développement sont régulièrement publiés. C'est un excellent moyen de réviser et de rester à jour, même lorsque vous faites la queue pour prendre un café.

Total

Lua est un cas rare où un langage de programmation n'essaie pas de vous intimider. Il est minimaliste, logique et vous permet d'écrire du code de travail littéralement dès les premières minutes de connaissance. Si vous avez longtemps voulu essayer quelque chose de nouveau ou si vous recherchez une entrée facile dans la programmation, Lua sera un excellent choix.

🎯Arrête de reporter

Tu as aimé l'article ?
Place à la pratique !

Avec Kodik, tu ne lis pas seulement — tu codes immédiatement. Théorie + pratique = vraies compétences.

Pratique instantanée
🧠L'IA explique le code
🏆Certificat

Sans inscription • Sans carte