✨Lazarus (IDE)

Lazarus (IDE)

Lazarus là một IDE (Integrated Development Environment) được phát triển theo mô hình RAD (rapid application development - phát triển ứng dụng nhanh chóng). Sử dụng trình biên dịch Free Pascal. Được dùng để phát triển ứng dụng desktop cùng thiết bị di động, ứng dụng - dịch vụ web, và các thành phần, thư viện (.so, .dll,...). Ứng dụng viết bởi Lazarus có thể chạy bất kỳ phần mềm Pascal biên dịch được, như (Windows, Linux, Unix, MacOS,...), ngoài ra Lazarus còn miễn phí, với nhiều component có sẵn thích hợp cho phát triển ứng dụng nhiều lĩnh vực. Với Lazarus, hầu như không cần cài thêm thành phần thương mại, bạn có thể làm mọi việc.

Tính năng

Tương tự với Delphi, Lazarus tạo ra môi trường trực quan cho việc phát triển ứng dụng, bao gồm tạo ra giao diện người dùng, chỉnh sửa mã và nhiều chức năng khác. Với phương châm phát triển miễn phí, Lazarus cung cấp nhiều tính năng:

  • WYSIWYG - What You See Is What You Get - Những gì bạn thấy là những gì bạn làm được: thiết kế, bố trí cửa sổ trực quan
  • Bộ component đầy đủ, đa dạng để thiết kế như TButton, TEdit, TLabel,...
  • Hỗ trợ kết nối nhiều định dạng cơ sở dữ liệu: MySQL, PostgresSQL, FireBird, Oracle, SQLite, Sybase,...
  • Nhà phát triển xem được dữ liệu qua component để tiện cho việc phát triển
  • Công cụ gỡ rối mã
  • Tự hoàn thành code
  • Code mẫu
  • Làm nổi từ khóa, chuỗi,... tùy người dùng điều chỉnh
  • Công cụ hỗ trợ
  • Quản lý văn bản
  • Tự động định dạng mã
  • Cho phép nhà phát triển tự tạo component

    Phát triển ứng dụng đa nền tảng

    Lazarus sử dụng Free Pascal làm trình biên dịch phía sau. Vì vậy, về mặt lý thuyết thì Lazarus hỗ trợ cho tất cả các nền tảng mà Free Pascal hỗ trợ. Giống như thư viện run-time của Free Pascal, Lazarus hỗ trợ một khung làm việc ứng dụng xuyên nền tảng gọi là Lazarus Component Library (LCL), nó cung cấp cho lập trình viên giao diện thống nhất, với các khai báo nền tảng khác nhau. Câu châm ngôn của LCL là write once, compile anywhere - viết một lần, biên dịch mọi nơi.

    Biên dịch đa nền

    Giống như Free Pascal, Lazarus biên dịch được từ Windows, Linux, FreeBSD tới MacOS,... Có thể biên dịch cho Mac OS phiên bản cũ, nhưng không thích hợp cho các phiên bản mới của Intel, kể từ khi Apple ngừng cung cấp mã nguồn thêm Các ứng dụng dành cho thiết bị nhúng (Điện thoại, Thiết bị hỗ trợ cá nhân, bộ định tuyến, máy chơi trò chơi điện tử) được biên dịch trên Window hoặc *nix

    Thư viện thành phần của Lazarus

    LCL đã được mô hình hóa kể từ sau VCL của Delphi 6, nhưng nó thích hợp cho nhiều hệ điều hành hơn là chỉ Windows. Điều này được thực hiện bằng cách định nghĩa lớp Widget. Thống kê các Widget trên Lazarus năm 2011:

Kế hoạch dự định viết ra GTK3 vì GTK2 không triển khai tốt và không kế thừa đặc điểm của GTK1.

Phát triển Ứng dụng cơ sở dữ liệu

Lập trình viên có thể cài thêm các gói package để kết nối thêm nhiều loại dữ liệu. Chương trình có thể kết nối tới cơ sở dữ liệu không cần bất kì dòng mã nào, mà bằng cách thiết lập các thuộc tính - property cho các component. Những loại dữ liệu hỗ trợ sẵn:

  • dBase, FoxPro không cần máy chủ bên ngoài nếu dùng TDbf component
  • InterBase/ FireBird
  • Microsoft SQL Server và SyBase ASE
  • MySQL
  • ODBC database
  • Oracle
  • PostgreSQL
  • SQLLite Có thể dùng thêm nhiều thành phần khác, như Zeoslib.

    Những điểm khác với Delphi

    Mặc dù có nhiều đặc điểm giống Delphi, nhưng vẫn có những điểm khác:

  • Khi chạy dưới nền Windows, có thể cỡ tệp biên dịch lớn hơn so với Delphi (6/7, trừ các phiên bản sau, thậm chí từ Delphi XE trở lên, project của Delphi còn rất nặng), lý do vì Lazarus nhúng vào tệp những thông tin Debug. Dù thể ta vẫn có thể làm giảm kích thước dễ dàng bằng cách điều chỉnh Compiler Option, và đơn giản hơn là dùng lệnh Strip trong command prompt: strip --strip-all <tên tệp>.exe
  • Các component trên Delphi có thể cài đặt trên Lazarus, nhưng cần phải chuyển đổi, dễ dàng hơn khi dùng Lazarus 0.9.30 (fpc 2.4.x)
  • Các Widget và thư viện quan trọng còn thiếu: Kết nối Microsoft Office Datasnap (hệ thống này được Embarcadero độc quyền và không phân bố tài liệu công khai)
  • Networking có sẵn nhiều nhất
  • Không thể gọi thư viện .NET một cách trực tiếp, ngược lại các ứng dụng.NET có thể gọi lại Object Pascal
  • Kể từ dòng fpc 2.2.x mới hỗ trợ COM, và tốt hơn từ đây
  • Không nạp package tự động
  • Không tương thích 100% với VCL. Như được đề cập trước đó, mặc dù LCL hiện tại đủ để thiết kế cho hầu hết các ứng dụng. Nhưng các widget của VCL không thể truy cập nếu chưa được chuyển đổi. Việc chuyển đổi chủ yếu liên quan đến phần chỉnh sửa, mặc dù có nhưng khác biệt cơ bản. Hỗ trợ COM là vấn đề gây ra lỗi khi chuyển đổi giữa VCL và LCL
  • Lazarus là miễn phí, còn Delphi là trả phí

    Phân phối, giấy phép

    Như đã nói, giống như Free Pascal, Lazarus là miễn phí, các bản phân phối khác nhau được hỗ trợ giấy phép miễn phí khác nhau, bao gồm: GPL, LGPL, MPL và một phiên bản chỉnh sửa của LGPL. Lazarus được phân phối chính thức trên SourceForge.

    Các phiên bản

    Những dự án thực hiện bằng Lazarus

  • Asuite là một ứng dụng mã nguồn mở chạy trên Windows. Viết hoàn toàn bằng Lazrus/Fpc 2.0 Alpha 2
  • Cartes du Ciel là một chương trình Thiên văn miễn phí cho Linux, Windows và Mac OS X. Dùng để quan sát bầu trời, các hành tinh, thiên thể,... Được viết hoàn toàn bằng Lazarus/fpc và phát hành trên GPL
  • Cheat Engine là phần mềm để quét, chỉnh sửa, sửa lỗi trên bộ nhớ. Nhưng lại thường thường để hack game. Từ phiên bản 6.0, được biên dịch bằng Lazarus
  • Greenfish Icon Editor Pro là phần mềm miễn phí để chỉnh sửa icon, cursor và animate
  • MyNotex là phần mềm miễn phí cho Gnu/Linux dùng để tạo và quản lý chú thích văn bản
  • Peazip là phần mềm lưu trữ mã nguồn mở, viết bằng Lazarus/fpc
  • TorChat là phần mềm chuyển từ Python qua Lazarus/fpc
  • WinFF là phần mềm chuyển đổi định dạng đa phương tiện trên Windows và Linux
👁️ 4 | 🔗 | 💖 | ✨ | 🌍 | ⌚
**Lazarus** là một IDE (Integrated Development Environment) được phát triển theo mô hình RAD (rapid application development - phát triển ứng dụng nhanh chóng). Sử dụng trình biên dịch Free Pascal. Được dùng để phát
**Pascal** là một ngôn ngữ lập trình cho máy tính thuộc dạng mệnh lệnh và thủ tục, được Niklaus Wirth phát triển vào năm 1970. Pascal là ngôn ngữ lập trình đặc biệt thích hợp
**Object Pascal** chỉ đến một nhánh của phát sinh hướng đối tượng của Pascal, được biết đến chủ yếu với vai trò ngôn ngữ lập trình chính của Delphi. ## Lịch sử ban đầu tại
**Free Pascal Compiler** (**FPC**) là một trình biên dịch cho các ngôn ngữ lập trình có liên quan chặt chẽ, Pascal và Object Pascal. Nó là phần mềm tự do được phát hành theo Giấy
[[Tập tin:Nexus 4.png|thumb| Nexus 4 là một trong những thiết bị "thân thiện với lập trình viên" thuộc dòng sản phẩm Google Nexus]] **Phát triển phần mềm Android** là quy trình tạo ra các ứng