Học một ngôn ngữ lập trình mới là điều phổ biến đối với các nhà phát triển cứng rắn. Một lập trình viên trung bình có thể tăng tốc trong 3-4 tuần và thường có thể học 2-3 ngôn ngữ mới trong một năm. Leo có đáng để bạn quan tâm không? Làm thế nào hứa hẹn là nó? Hãy cùng tìm hiểu.
Leo là một ngôn ngữ lập trình kiểu tĩnh được xây dựng cho chuỗi khối Aleo. Bạn có thể xây dựng các ứng dụng riêng tư trong một chuỗi khối phi tập trung hoàn toàn riêng tư bằng cách sử dụng nó, về cơ bản là Solidity nhưng dành cho Aleo.
Hãy so sánh cú pháp của các phép toán đơn giản nhất:
Một ví dụ về một chương trình đơn giản cho Leo:
Tương tự cho Rust:
Như chúng ta có thể thấy, cả hai ngôn ngữ đều có cú pháp giống nhau, nhưng chúng khác nhau đáng kể về cấu trúc đầu vào-đầu ra. Mặc dù ở Leo, chúng tôi có thể tích hợp các biến từ một tệp đầu vào riêng biệt, nhưng ở Rust, bạn không thể làm điều này theo mặc định (bạn chỉ có thể làm điều đó nếu bạn mô tả tệp nhập theo cách thủ công). Điều này là do cấu trúc của chuỗi khối Aleo — nó tập trung vào tính ẩn danh và các nhà phát triển cảm thấy rằng các thông tin đầu vào nên được mô tả trong một tệp riêng biệt. Hãy thử nó cho chính mình:
https://play.leo-lang.org/ <- trình biên dịch trực tuyến cho Leo
https://play.rust-lang.org/ <- trình biên dịch trực tuyến cho Rust
Leo hỗ trợ từ khóa let
và const
để xác định biến.
let
định nghĩa một biến chương trình chuyên dụng.
const
định nghĩa một biến chương trình không đổi.
Các biến không đổi không xác định một biến trong một hệ thống ràng buộc. Giá trị của chúng bị hạn chế trong lược đồ khi tính toán với biến được phân bổ. biến hằng không thể thay đổi được. Chúng có chức năng tương tự như Rust.
Các tính toán được thể hiện dưới dạng các mạch số học R1CS. Do đó, tính toán một biến được chọn luôn dẫn đến một biến được chọn khác.
sự thay đổi
Tất cả các biến trong Leo là bất biến - chúng không thể thay đổi sau khi gán, giống như trong Rust. Tất cả các biến trong Leo đều có thể sửa đổi được - chúng có thể được thay đổi sau khi gán. Chức năng của biến không được bảo tồn trong các khu vực khác nhau vì các biến Leo được truyền theo giá trị.
gõ tĩnh
Leo là một ngôn ngữ có kiểu gõ tĩnh, nghĩa là chúng ta phải biết kiểu của từng biến trước khi thực hiện lược đồ.
Các loại rõ ràng được yêu cầu.
Không có giá trị không xác định hoặc null trong Leo. Khi gán một biến mới, loại giá trị phải rõ ràng. Một ngoại lệ đối với quy tắc này là nếu biến mới kế thừa kiểu của nó từ biến trước đó.
Giá trị đi qua
Các biến trong Leo luôn được truyền theo giá trị, có nghĩa là chúng luôn được sao chép khi được sử dụng làm đầu vào cho một hàm hoặc trong các bài tập.
giá trị Boolean
Leo hỗ trợ các bộ dữ liệu truyền thống hoặc các giá trị boolean. Việc thêm một loại boolean rõ ràng cho các giá trị boolean trong các câu lệnh là tùy chọn.
số nguyên
Leo hỗ trợ các số nguyên có dấu i8
, i16
, i32
, i64
, i128
và các số nguyên không dấu u8
, u16
, u32
, u64
, u128
Các số nguyên có độ dài bit cao hơn sẽ tạo ra nhiều hạn chế hơn trong sơ đồ, điều này có thể làm chậm thời gian tính toán.
Từ những điều trên, chúng ta có thể kết luận rằng việc học Leo sẽ không mất nhiều thời gian cho các nhà phát triển Rust. Tuy nhiên, câu hỏi dành cho các nhà phát triển Aleo là "Làm cách nào chúng tôi có thể khuyến khích các nhà phát triển chuyển từ Rust sang Leo?" Vì các nhà xây dựng có kinh nghiệm đang có nhu cầu, dự án đặt cược cao vào đường dây. Có một chương trình tài trợ Aleo cho mục đích này:
Để khuyến khích các nhà phát triển đủ điều kiện tham gia Aleo, dự án đã đưa ra một chương trình tài trợ:
https://www.aleo.org/post/community-grants-program
Các nhà phát triển có thể yêu cầu tới 100.000 đô la cho công việc của họ. Tuy nhiên, số tiền yêu cầu càng cao thì mức độ công việc đòi hỏi càng cao. Đây là một ví dụ về một số người chiến thắng chương trình tài trợ:
Pine Street Labs: https://www.aleo.org/post/aleo-grants-pine-street-labs - về cơ bản là một công cụ xây dựng phần mềm ví.
Hợp tác với Forte: https://www.aleo.org/post/aleo-announces-partnership-with-forte - phát triển trò chơi (Không thực sự là người nhận tài trợ vì đây không phải là công ty khởi nghiệp)
Chúng ta hãy xem xét sự thật.com :
Trung bình, một nhà phát triển Rust cấp trung có thể kiếm được tới 150.000 đô la một năm (cả ví dụ về Blockchain và Web2). Nhiều hơn (hoặc ít hơn) bao nhiêu so với những gì có thể kiếm được tại Leo? Không ai biết, nhưng bạn chắc chắn có thể mong đợi một mức lương cao vì thị trường lao động của nhà phát triển Leo rõ ràng không phải là cạnh tranh nhất. Hầu hết các nhà phát triển mà tôi biết đều cảm thấy thoải mái khi xây dựng những thứ của riêng họ, chẳng hạn như bộ sưu tập NFT hoặc DAO, và bạn cũng vậy. Bạn vẫn có thể kiếm tiền khi tự kinh doanh. Chính xác hơn, nó hoàn toàn không cạnh tranh - bạn có thể trở thành một trong những lập trình viên đầu tiên của Leo ngay bây giờ!
Bắt đầu từ đâu? Học Leo không phải là nhiệm vụ khó nhất, bởi vì những người đam mê dự án hiện tại đã làm rất tốt việc chuẩn bị tài liệu giáo dục cho Leo! Chỉ cần truy cập kênh Aleo Discord chính thức để tìm bản dịch bằng bất kỳ ngôn ngữ nào: https://discord.gg/aleohq
Ngoài ra, bạn có thể bắt đầu học với các tài liệu chính thức của Leo: https://developer.aleo.org/leo/language
Chúc may mắn trong nỗ lực của bạn!