Mojo – Fullstack Station https://fullstackstation.com Hướng dẫn lập trình, thiết kế, lập trình web, thiết kế web, lập trình javascript, lập trình fullstack từ cơ bản đến nâng cao Sat, 21 Feb 2026 02:42:35 +0000 vi hourly 1 https://wordpress.org/?v=6.8.5 https://fullstackstation.com/wp-content/uploads/2019/08/favicon.ico Mojo – Fullstack Station https://fullstackstation.com 32 32 Hướng dẫn cài đặt Mojo🔥 bằng Docker Compose trên Windows (2026) https://fullstackstation.com/cai-dat-mojo-docker-compose-windows/ https://fullstackstation.com/cai-dat-mojo-docker-compose-windows/#respond Sat, 21 Feb 2026 02:41:41 +0000 https://fullstackstation.com/cai-dat-mojo-docker-compose-windows/ Hướng dẫn chi tiết cài đặt ngôn ngữ lập trình Mojo🔥 trên Windows bằng Docker Compose. Bao gồm Dockerfile, docker-compose.yml, kiểm tra với code mẫu, benchmark hiệu năng, tích hợp Python, và kết nối VS Code.

The post Hướng dẫn cài đặt Mojo🔥 bằng Docker Compose trên Windows (2026) appeared first on Fullstack Station.

]]>
Mojo — ngôn ngữ lập trình “siêu tốc” của Modular, kết hợp sức mạnh của Python với hiệu năng ngang C++. Tuy nhiên, Mojo hiện chỉ hỗ trợ chính thức trên Linux và macOS. Vậy làm sao để lập trình Mojo trên Windows?

Câu trả lời: Docker Compose. Bài viết này hướng dẫn bạn từng bước cài đặt môi trường phát triển Mojo hoàn chỉnh trên Windows — không cần WSL phức tạp, không cần dual-boot Linux.

👉 Nếu bạn chưa biết Mojo là gì, hãy đọc bài Ngôn ngữ lập trình Mojo🔥: Python++ nhanh hơn Python đến 68.000 lần trước nhé!

Tại sao dùng Docker cho Mojo trên Windows?

Mojo SDK yêu cầu hệ điều hành Linux (Ubuntu 22.04+). Trên Windows, bạn có 3 lựa chọn:

  1. WSL2 — Cài Windows Subsystem for Linux, rồi cài Mojo trong đó
  2. Virtual Machine — Chạy Linux trong VMware/VirtualBox
  3. DockerLựa chọn tốt nhất

Docker vượt trội ở các điểm:

  • Nhẹ hơn VM nhiều lần — khởi động chỉ vài giây
  • Dễ chia sẻ, tái tạo môi trường — đồng nghiệp chỉ cần docker compose up
  • Quản lý bằng file docker-compose.yml — version control được
  • Không “ô nhiễm” máy host
  • Hỗ trợ tích hợp VS Code qua Dev Containers

Yêu cầu hệ thống

  • Windows 10/11 (64-bit, bản Pro/Enterprise/Education hoặc Home có WSL2 backend)
  • Docker Desktop for Windows (phiên bản mới nhất)
  • RAM: tối thiểu 8GB (khuyến nghị 16GB)
  • Ổ cứng: tối thiểu 10GB trống
  • CPU: hỗ trợ virtualization (VT-x/AMD-V)

Bước 1: Cài đặt Docker Desktop

Truy cập docker.com/products/docker-desktop và tải Docker Desktop for Windows. Khi cài, chọn Use WSL 2 instead of Hyper-V (khuyến nghị). Sau khi cài xong, khởi động lại máy.

Kiểm tra Docker trong PowerShell:

docker --version
docker compose version

Kết quả mong đợi:

Docker version 27.x.x, build xxxxxxx
Docker Compose version v2.x.x

Bước 2: Tạo cấu trúc dự án

Tạo thư mục dự án trên Windows:

mkdir C:\Projects\mojo-dev
cd C:\Projects\mojo-dev

Dockerfile

Tạo file Dockerfile:

# Mojo Development Environment
FROM ubuntu:22.04

# Tránh interactive prompts khi cài packages
ENV DEBIAN_FRONTEND=noninteractive

# Cài đặt dependencies cơ bản
RUN apt-get update && apt-get install -y \
    curl git python3 python3-pip python3-venv wget nano \
    && rm -rf /var/lib/apt/lists/*

# Cài pixi (package manager cho Mojo)
RUN curl -fsSL https://pixi.sh/install.sh | bash
ENV PATH="/root/.pixi/bin:${PATH}"

# Tạo thư mục workspace
WORKDIR /workspace

# Tạo Mojo project với pixi
RUN pixi init mojo-project \
    -c https://conda.modular.com/max-nightly/ \
    -c conda-forge \
    && cd mojo-project \
    && pixi add mojo

# Set working directory vào project
WORKDIR /workspace/mojo-project

# Giữ container chạy
CMD ["bash"]

docker-compose.yml

services:
  mojo:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: mojo-dev
    volumes:
      # Mount thư mục code từ Windows vào container
      - ./code:/workspace/mojo-project/code
    stdin_open: true   # Giữ stdin mở (tương đương -i)
    tty: true          # Cấp pseudo-TTY (tương đương -t)
    working_dir: /workspace/mojo-project
    deploy:
      resources:
        limits:
          memory: 4G

Tạo thư mục chứa code:

mkdir code

Cấu trúc dự án cuối cùng:

C:\Projects\mojo-dev\
├── Dockerfile
├── docker-compose.yml
└── code\           ← Thư mục chứa code Mojo của bạn

Bước 3: Build và khởi động container

# Build image (lần đầu mất khoảng 5-10 phút)
docker compose build

# Khởi động container ở background
docker compose up -d

# Kiểm tra container đang chạy
docker compose ps

Bước 4: Kiểm tra Mojo đã hoạt động

Vào container:

docker compose exec mojo bash

Kiểm tra phiên bản:

pixi run mojo --version
# Output: mojo 2026.1.x (xxxxxxxx)

Thử Mojo REPL:

pixi run mojo

# Trong REPL:
1> print("Hello from Mojo on Windows! 🔥")
Hello from Mojo on Windows! 🔥

Bước 5: Viết chương trình Mojo đầu tiên

5.1 Hello World

Tạo file code/hello.mojo trên Windows (dùng VS Code hoặc bất kỳ editor nào):

# hello.mojo - Chương trình Mojo đầu tiên trên Windows!

def main():
    print("🔥 Xin chào từ Mojo trên Docker!")
    print("Mojo chạy thành công trên Windows!")
    
    # Kiểm tra kiểu dữ liệu cơ bản
    var name: String = "Mojo Developer"
    var version: Int = 2026
    print("Xin chào, " + name + "! Chào mừng đến với Mojo " + str(version))

Chạy trong container:

pixi run mojo run code/hello.mojo

Kết quả:

🔥 Xin chào từ Mojo trên Docker!
Mojo chạy thành công trên Windows!
Xin chào, Mojo Developer! Chào mừng đến với Mojo 2026

5.2 Benchmark — So sánh tốc độ Mojo

Tạo file code/benchmark.mojo để kiểm tra hiệu năng:

# benchmark.mojo - So sánh tốc độ tính toán
from time import now

def fibonacci_mojo(n: Int) -> Int:
    if n <= 1:
        return n
    var a: Int = 0
    var b: Int = 1
    for _ in range(2, n + 1):
        var temp = a + b
        a = b
        b = temp
    return b

def main():
    print("=" * 50)
    print("🔥 MOJO BENCHMARK trên Docker/Windows")
    print("=" * 50)
    
    var iterations = 1_000_000
    
    var start = now()
    var total: Int = 0
    for i in range(iterations):
        total += fibonacci_mojo(100)
    var elapsed_ms = (now() - start) / 1_000_000
    
    print("\n📊 Kết quả:")
    print("  Fibonacci(100) x " + str(iterations) + " lần")
    print("  Thời gian: " + str(elapsed_ms) + " ms")
    
    print("\n✅ Mojo hoạt động hoàn hảo trên Docker/Windows!")
pixi run mojo run code/benchmark.mojo

5.3 Kiểm tra tích hợp Python

Một trong những điểm mạnh nhất của Mojo là gọi được thư viện Python trực tiếp. Tạo file code/python_interop.mojo:

# python_interop.mojo - Gọi Python từ Mojo
from python import Python

def main():
    print("🐍 Kiểm tra tích hợp Python từ Mojo\n")
    
    # Import thư viện Python chuẩn
    var sys = Python.import_module("sys")
    print("Python version: " + str(sys.version))
    
    # Dùng math module
    var math = Python.import_module("math")
    print("Pi = " + str(math.pi))
    print("sqrt(144) = " + str(math.sqrt(144)))
    
    # Dùng datetime
    var datetime = Python.import_module("datetime")
    var now_time = datetime.datetime.now()
    print("Thời gian hiện tại: " + str(now_time))
    
    # Tạo và xử lý JSON
    var json_mod = Python.import_module("json")
    var data = Python.dict()
    data["language"] = "Mojo"
    data["platform"] = "Docker on Windows"
    data["status"] = "Working!"
    print("\nJSON output: " + str(json_mod.dumps(data, indent=2)))
    
    print("\n✅ Python interop hoạt động tốt!")

Nếu thấy output Python version, Pi, thời gian, và JSON — môi trường Mojo của bạn đã hoàn chỉnh! 🎉

Các lệnh Docker Compose thường dùng

LệnhMô tả
docker compose up -dKhởi động container (chạy nền)
docker compose exec mojo bashVào terminal container
docker compose stopDừng container (giữ data)
docker compose downXóa container (giữ image)
docker compose down -vXóa container + volumes
docker compose build --no-cacheBuild lại image từ đầu
docker compose logsXem logs

Kết nối VS Code với container

Để có trải nghiệm lập trình tốt nhất, kết nối VS Code trực tiếp vào container:

  1. Cài extension Dev Containers (ms-vscode-remote.remote-containers) và Mojo (modular-mojotools.vscode-mojo)
  2. Nhấn F1 → gõ Dev Containers: Attach to Running Container
  3. Chọn container mojo-dev
  4. VS Code sẽ mở cửa sổ mới kết nối vào container
  5. Mở thư mục /workspace/mojo-project/code

Giờ bạn có thể viết code Mojo trên Windows với syntax highlighting, autocompletion, và chạy trực tiếp trong container! 🔥

Xử lý lỗi thường gặp

Docker build bị timeout

$env:DOCKER_CLIENT_TIMEOUT=300
$env:COMPOSE_HTTP_TIMEOUT=300
docker compose build

Container bị "Exited"

# Kiểm tra logs
docker compose logs mojo

# Khởi động lại
docker compose restart

Lỗi "permission denied" với file mount

Mở Docker Desktop → SettingsResourcesFile Sharing, thêm đường dẫn C:\Projects\mojo-dev.

Thiếu RAM khi build

Mở Docker Desktop → SettingsResources → tăng Memory lên 4-6GB.

Fullstack Station Tips 💡

  1. Mount thư mục code, không mount cả project: Chỉ mount thư mục code/ vào container. Pixi project files nên ở trong container để tránh xung đột path Linux/Windows.
  2. Dùng .dockerignore: Tạo file .dockerignore để loại bỏ node_modules, .git, etc. khỏi build context.
  3. Pin version Mojo: Trong Dockerfile, thay pixi add mojo bằng pixi add 'mojo>=2026.1,<2027' để tránh breaking changes.
  4. Tự động khởi động REPL: Thêm command: pixi run mojo vào docker-compose.yml — container sẽ vào REPL ngay khi khởi động.
  5. Multi-stage build cho production: Dùng 2 stage — stage 1 build binary, stage 2 chỉ chứa runtime. Image nhẹ hơn nhiều lần.

Bài viết liên quan về Mojo

Bài viết được tổng hợp bởi Fullstack Station. Nguồn tham khảo: Modular Docs, Modular Blog.

The post Hướng dẫn cài đặt Mojo🔥 bằng Docker Compose trên Windows (2026) appeared first on Fullstack Station.

]]>
https://fullstackstation.com/cai-dat-mojo-docker-compose-windows/feed/ 0
Ngôn ngữ lập trình Mojo🔥: Python++ nhanh hơn Python tùy theo tác vụ đến 68.000 lần https://fullstackstation.com/ngon-ngu-lap-trinh-mojo%f0%9f%94%a5-python-nhanh-hon-python-tuy-theo-tac-vu-den-68-000-lan/ https://fullstackstation.com/ngon-ngu-lap-trinh-mojo%f0%9f%94%a5-python-nhanh-hon-python-tuy-theo-tac-vu-den-68-000-lan/#respond Sat, 13 Apr 2024 15:00:04 +0000 https://fullstackstation.com/?p=8047 Ngôn ngữ lập trình Mojo dù chỉ mới ra mắt chưa được 1 năm, nhưng đến nay đã nhận được sự chú ý của cộng đồng lập trình viên và nhận nhiều phản hồi tích cực. Dù tiếp xúc chưa được lâu, nhưng với những gì cảm nhận được thì đây là một ngôn ngữ […]

The post Ngôn ngữ lập trình Mojo🔥: Python++ nhanh hơn Python tùy theo tác vụ đến 68.000 lần appeared first on Fullstack Station.

]]>
Ngôn ngữ lập trình Mojo dù chỉ mới ra mắt chưa được 1 năm, nhưng đến nay đã nhận được sự chú ý của cộng đồng lập trình viên và nhận nhiều phản hồi tích cực. Dù tiếp xúc chưa được lâu, nhưng với những gì cảm nhận được thì đây là một ngôn ngữ lập trình đáng được quan tâm trong vòng 10 năm tới.

Bài viết này sẽ tập trung vào việc đo hiệu suất của ngôn ngữ lập trình Mojo, để xem thực tế chính xác đến đâu nhé. Bạn cũng đừng bỏ qua bài viết Tại sao nên học Python nhé.

Sơ lược về ngôn ngữ lập trình Mojo

Ngôn ngữ lập trình Mojo là gì

Ngôn ngữ lập trình Mojo được phát triển bởi công ty Modular, có cú pháp tương tự như Python và đạt hiệu cao hơn Python nhiều lần như C. Ban đầu họ hướng đến ngôn ngữ lập trình dành cho lập trình AI, nhưng ở thời điểm hiện tại thì đã trở thành ngôn ngữ lập trình cho những mục tiêu chung.

Ngôn ngữ lập trình Mojo khá dễ học do tương đồng với ngôn ngữ lập trình Python và được xem là Python++ nên sẽ giúp rút ngắn khoảng cách của những người nghiên cứu AI (thường sử dụng Python) đến phát triển sản phẩm (Python khá chậm và đòi hỏi nhiều tối ưu để sản phẩm đạt hiệu suất tốt)

Những đặc tính của ngôn ngữ lập trình Mojo

  • Sử dụng được các thư viện Python (numpy, pandas, …): sử dụng thông Cython nên có thể dùng được hầu hết các thư viện này. Tuy nhiên, theo kết quả đo hiệu suất bên dưới, thì việc sử dụng các thư viện này không mang lại kết quả tốt về hiệu suất mong muốn.
  • Sử dụng được cú pháp Python: Bạn hoàn toàn có thể sử dụng code Python trong Mojo, tuy nhiên việc sử dụng Python trong Mojo không nên ưu tiên nếu quan tâm đến hiệu suất.
  • Cú pháp tương tự Python: phong cách viết tương tự Python, tuy nhiên thuần Mojo thì sẽ khắt khe trong type-checker
  • Chạy đa luồng: Mojo sử dụng hạ tầng biên dịch (MLIR) để hỗ trợ nhiều loại phần cứng, bao gồm GPU chạy CUDA và phần cứng tương tự, mà không làm tăng thêm sự phức tạp trong lập trình.

Những điểm còn thiếu sót của ngôn ngữ lập trình Mojo

  • Chưa hỗ trợ Mac Intel, Window và các hệ Linux khác ngoài Ubuntu
  • Còn xa để đạt được mức tập cha (superset) của Python
  • Rất ít các thư viện hỗ trợ
  • Chưa có dependencies management: làm gì có thư viện khác mà đòi quản lý :))

Bạn có thể xem những vấn đề đang tồn tại: https://docs.modular.com/mojo/roadmap#mojo-sdk-known-issues

Cha đẻ của Mojo: Chris Latter

Thật thiếu sót nếu không nói về cha đẻ của ngôn ngữ lập trình Mojo: Chris Latter – người cũng là tác giả của trình biên dịch LLVM. Đồng thời ông cũng là người tạo ra MLIR – compiler stack thế hệ tiếp theo, và Mojo được thiết kế để biên dịch trên MLIR, đó cũng có thể là lý do vì sao Mojo nhanh hơn Rust (Rust và Swift được xây dựng trên nền tảng LLVM). Người sáng lập ngôn ngữ lập trình cũng là người tham gia vào quá trình thiết kế compiler, vì vậy ông rất am hiểu về cách vận hành của các chip cũng như trình biên dịch tương ứng. Đó cũng là ưu thế rất lớn để phát triển ngôn ngữ lập trình Mojo trở thành ngôn ngữ của thập niên tiếp theo – đặc biệt là trong mảng lập trình AI.

So sánh hiệu suất với Python

Môi trường

Công cụ được sử dụng đo hiệu suất: Hyperfine (https://github.com/sharkdp/hyperfine)
Hàm sử dụng: Fibonacci (thuật toán không tối ưu)
Cấu hình máy chính: 2.4 GHz 8-Core Intel Core i9
Cấu hình docker: RAM 8GB, max 200% CPU

Cài đặt Mojo

Cài đặt ngôn ngữ lập trình Mojo chỉ mới dành cho MacOS Apple, và Ubuntu. Với các máy khác có thể sử dụng docker. Chi tiết cho từng phiên bản thì bạn tham khảo ở đây:

https://docs.modular.com/mojo/manual/get-started/

Việc cài đặt cũng không mất nhiều thời gian và khó khăn gì cả nên mình không bổ sung gì thêm.

Code

# fibonacci.mojo
# Fibonacci thuần mojo
import sys
fn fibonacci(n: Int) -> Int:
    if n == 0 or n == 1:
        return n
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)


fn main():
    try:
        print(fibonacci(atol(sys.argv()[1])))
    except:
        pass
# fibonacci_python_style_no_type_annotation.mojo
# Fibonacci không  type-annotation với code kiểu Python
import sys
def fibonacci(n):
    if n == 0 or n == 1:
        return n
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)

fn main():
    try:
        print(fibonacci(atol(sys.argv()[1])))
    except:
        pass
# fibonacci_python_style_with_type_annotation.mojo
# Fibonacci  type-annotation với code kiểu Python
import sys
def fibonacci(n: Int) -> Int:
    if n == 0 or n == 1:
        return n
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)

fn main():
    try:
        print(fibonacci(atol(sys.argv()[1])))
    except:
        pass
# fibonacci.py
# Fibonacci không  type-annotation (Python)
import sys

def fibonacci(n):
    if n == 0 or n == 1:
        return n
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)

def main():
    print(fibonacci(int(sys.argv[1])))

main()
vscode/workspaces/ubuntu $ hyperfine "mojo fibonacci.mojo 40"
Benchmark 1: mojo fibonacci.mojo 40
  Time (mean ± σ):     700.7 ms ±  16.8 ms    [User: 431.9 ms, System: 19.5 ms]
  Range (minmax):   677.3 ms735.1 ms    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "mojo fibonacci_python_style_with_type_annotation.mojo 40"
Benchmark 1: mojo fibonacci_python_style_with_type_annotation.mojo 40
  Time (mean ± σ):      1.202 s ±  0.012 s    [User: 0.927 s, System: 0.021 s]
  Range (minmax):    1.184 s1.217 s    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "mojo fibonacci_python_style_no_type_annotation.mojo 40"
Benchmark 1: mojo fibonacci_python_style_no_type_annotation.mojo 40
  Time (mean ± σ):     15.129 s ±  3.435 s    [User: 14.793 s, System: 0.059 s]
  Range (minmax):   10.228 s19.135 s    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "python3 fibonacci.py 40"
Benchmark 1: python3 fibonacci.py 40
  Time (mean ± σ):     44.586 s ±  3.859 s    [User: 44.502 s, System: 0.033 s]
  Range (minmax):   37.771 s51.637 s    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "./fibonacci 40"
Benchmark 1: ./fibonacci 40
  Time (mean ± σ):     350.3 ms ±   5.5 ms    [User: 346.5 ms, System: 2.4 ms]
  Range (minmax):   340.9 ms358.6 ms    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "./fibonacci_python_style_no_type_annotation 40"
Benchmark 1: ./fibonacci_python_style_no_type_annotation 40
  Time (mean ± σ):     10.667 s ±  0.872 s    [User: 10.650 s, System: 0.007 s]
  Range (minmax):    9.323 s11.830 s    10 runs
 
vscode/workspaces/ubuntu $ hyperfine "./fibonacci_python_style_with_type_annotation 40"
Benchmark 1: ./fibonacci_python_style_with_type_annotation 40
  Time (mean ± σ):     831.7 ms ±  11.5 ms    [User: 827.4 ms, System: 2.5 ms]
  Range (minmax):   814.2 ms852.2 ms    10 runs

Kết quả so sánh

MinMaxMeanHiệu suất
Python thuần37.771 (s)51.637(s)44.586(s)N/A
Mojo phong cách Python10.228(s)19.135(s)15.129(s)x3
Mojo phong cách Python có type-annotation1.184(s)1.217(s)1.202(s)x37
Mojo thuần677.3(ms)735.1 (ms)700.7(ms)x75
Mojo phong cách Python [compiled]9.323(s)11.830(s)10.667(s)x3
Mojo phong cách Python có type-annotation [compiled]814.2(ms)852.2(ms)831.7(ms)x55
Mojo thuần [compiled]340.9(ms)358.6(ms)350.3(ms)x127
Hiệu suất thực tế của ngôn ngữ lập trình Mojo theo từng cách viết so sánh với Python.

Bonus

Với phiên bản Python thuần, nếu bạn tối ưu bằng decorator cache thì tốc độ cũng cải thiện rất nhiều, tuy nhiên Mojo chưa hỗ trợ decorator này nên chưa so sánh được.

import sys
from functools import cache

@cache
def fibonacci(n):
    if n == 0 or n == 1:
        return n
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)

def main():
    print(fibonacci(int(sys.argv[1])))

main()
vscode/workspaces/ubuntu $ hyperfine "python3 fibonacci_with_cache.py 40"
Benchmark 1: python3 fibonacci_with_cache.py 40
  Time (mean ± σ):      14.0 ms ±   1.1 ms    [User: 11.6 ms, System: 2.2 ms]
  Range (minmax):    12.7 ms19.3 ms    159 runs
 

Kết luận

Nhanh hơn Python 68.000 lần?

Without a parallel Python implementation, It would be more fair to claim that Mojo is 874 times faster than a naive CPython implementation, 175 times faster than a (rather naive) Numpy code, and 40 times faster than a PyPy implementation (on this specific Mandelbrot set computation).

StackOverflow

Mặc dù con số 68.000 lần là thực tế từ kết quả, tuy nhiên đây chỉ là con số mang tính chất biểu tượng/marketing là chính chứ không có tác dụng trong thực tế nhiều lắm.

  • Mojo là ngôn ngữ multi-threaded chứ không có chạy tuần tự, nên một số tác vụ tính toán có thể hưởng lợi
  • Sử dụng tính toán vector, lại là về tính toán con số; numpy có thực hiện tính toán vector nên vẫn ổn
  • Sử dụng chiến thuật thực thi song hành (parallel) trên con CPU khủng 88-Core Intel Xeon

Bạn có thể đọc thêm cách đo hiệu suất trong 3 bài viết từ blog của Modular có gắn kèm bên dưới.

Bài toán thực tế

Với kết quả từ thực nghiệm ở trên với hàm Fibonacci (một hàm thường được dùng cho việc tính hiệu suất vì có dùng đệ quy), có thể kết luận việc sử dụng ngôn ngữ lập trình Mojo có thể nhanh hơn Python khoảng 100 lần. Đây là con số khá hấp dẫn trong việc chọn lựa với những hệ thống yêu cầu tốc độ. Với những người yêu thích tốc độ như mình thì khó có thể cưỡng lại được 😀

Tốc độ đến từ ngôn ngữ biên dịch và type-checked cũng là điều dễ hiểu, ngoài ra kết hợp tính toán vector, multi-thread thì ngôn ngữ lập trình Mojo có thể còn phát huy được nhiều ứng dụng khác. Về điểm này thì chúng ta nên so sánh với Golang mới đúng, hi vọng sẽ có thời gian để viết bài so sánh với Golang.

Fullstack Station Tips:

  • Không khuyến khích dành cho người mới học lập trình, khuyến khích dành cho người đã biết Python
  • Mặc dù có thể sử dụng cú pháp Python, nhưng với kết quả kiểm tra hiệu suất thì rõ ràng không nên sử dụng cú pháp Python nếu muốn có hiệu suất cao, chí ít cũng phải có type-annotation (xem thêm MyPy là gì). Tốt nhất cũng là sử dụng ngôn ngữ lập trình Mojo thuần để cho tốt độ cao nhất.
  • Tuy tuổi đời còn ít, nhưng với những thành tựu đã đạt được thì ngôn ngữ lập trình Mojo sẽ còn phát triển nhanh và xa. Đặc biệt là rút ngắn khoảng cách từ nghiên cứu đến phát triển sản phẩm AI.
  • Vì chưa trưởng thành, nên nhiều cú pháp sẽ bị thay đổi, không nên sử dụng ngôn ngữ lập trình cho sản phẩm thực tế.
  • Với những lợi ích mà ngôn ngữ lập trình Mojo mang lại, mình nghĩ sẽ rất có lợi cho bạn ở tương lai gần khi học Mojo. Giống như lập trình viên Golang, là một ngôn ngữ lập trình cho bạn mức thu nhập rất tốt.

Tham khảo:

  • https://www.modular.com/blog/how-mojo-gets-a-35-000x-speedup-over-python-part-1
  • https://www.modular.com/blog/how-mojo-gets-a-35-000x-speedup-over-python-part-2
  • https://www.modular.com/blog/mojo-a-journey-to-68-000x-speedup-over-python-part-3
  • https://dev.classmethod.jp/articles/try-mojo-programming-langurage/
  • https://stackoverflow.com/questions/77070883/performance-comparison-mojo-vs-python
  • https://augierpi.gricad-pages.univ-grenoble-alpes.fr/mojo-the-point-of-view-of-a-researcher-using-python.html

The post Ngôn ngữ lập trình Mojo🔥: Python++ nhanh hơn Python tùy theo tác vụ đến 68.000 lần appeared first on Fullstack Station.

]]>
https://fullstackstation.com/ngon-ngu-lap-trinh-mojo%f0%9f%94%a5-python-nhanh-hon-python-tuy-theo-tac-vu-den-68-000-lan/feed/ 0