Tài liệu về NET BEANS
Trang 1Giới thiệu về NetBeans – môi trường phát triển mã nguồn mở dành cho lập
trình viên J2ME
Bạn sẽ ngạc nhiên về những gì mà cộng đồng mã nguồn mở đem lại cho bạn Nếu như Linux phải cần hơn 10 năm để có thể tiến gần đến mục tiêu là đối trọng của Windows cho dòng máy để bàn thì các ứng dụng IDE (Integrated Development Environment- môi trường phát triển tích hợp) chỉ mất một nữa thời gian để có thể là đối thủ tương xứng với các dòng sản phẩm thương mại danh tíếng như Borland Jbuilder, Code Warrior, Oracle JDeveloper
Một trong những nguyên nhân chính giúp các sản phẩm mã nguồn mở trong dòng sản phẩm này phát triển như vũ bão như hiện nay là sự hỗ trợ từ các đại gia trong giới công nghệ, ví dụ như trong sản phẩm NetBeans là sự xuất hiện của Sun Microsystems và trong sản phẩm Eclipse là “ông trùm” IBM
Một giao diện chuyên nghiệp đến không ngờ đó là ấn tượng đầu tiên của tôi khi download
NetBeans từ trên mạng, lúc đó vẫn còn là bản 3.5.1, còn đến bản 3.6 hiện nay thì tôi đã hoàn toàn bị thuyết phục về sản phẩm này và quyết định chuyển toàn bộ dự án Java của tôi sang sử dụng
NetBeans NetBeans có một lợi thế mà các sản phẩm thương mại khác không thể có, đó là chi phí bản quyền Nếu bạn đã có dịp sử dụng qua NetBeans thì bạn không thể ngờ đây là 1 sản phẩm mã nguồn mở và bạn có thể sử dụng hoàn toàn miễn phí
Trong bối cảnh Việt Nam phải thực thi luật bản quyền khi gia nhập WTO thì các dòng sản phẩm mã nguồn mở này chính là một cứu cánh lớn cho giới lập trình viên Việt Nam Các doanh nghiệp phần mềm không có lý do gì để phải trả trên 1000 USD cho các IDE quen thuộc mà lại không làm quen với các IDE Open Source
Trong phạm vi bài viết này, tác giả mong muốn người đọc có thể làm quen với việc sử dụng môi trường phát triển NetBeans, trước mắt là trong cuộc thi Mobile Games 2004 và sau đó là trong công việc của mình
1 Download NetBeans IDE: Bạn có thể tải về từ Internet, hãy vào địa chỉ sau:
http://www.netbeans.org/downloads/ide/index.html và làm theo hướng dẫn trên trang web, bản đầy
đủ khoảng 36 Mb
2 Các khái niệm cơ bản cần nắm trước khi sử dụng NetBeans:
1 Xác định Mount FileSystem: Nếu bạn đã có kinh nghiệm lập trình Java thì khái niệm Mount khá giống với việc xác định Classpath khi biên dịch và chạy ứng dụng Java bằng dòng lệnh NetBeans đã đưa ra một khái niệm mới là FileSystem Với việc xác định FileSystem và
“mount” chúng với mã nguồn, NetBeans sẽ biên dịch (compile) mã nguồn và copy các
file class vào cấu trúc thư mục như trong khai báo package Ngoài ra, nếu mã nguồn của bạn
có sử dụng các thư viện lập trình khác thì việc khai báo trong FileSystem sẽ báo cho trình biên dịch biết nơi cần tìm các thư viện cần thiết Việc xác định đúng FileSystem sẽ tránh được lỗi FileNotFoundException, đây là một lỗi rất cơ bản đối với người mới bắt đầu lập trình Java
2 Cài đặt J2ME Plug-in: Để đáp ứng trước sự phát triển như vũ bão của CNTT như hiện nay thì mọi môi trường phần mềm phải là mở tức là cho phép các hãng phần mềm khác viết các phần
bổ sung (thuật ngữ tiếng Anh gọi là Plugin) và tích hợp được với phần mềm NetBeans là một môi trường như vậy Bạn có thể chọn lựa các Plugins cho nhu cầu của mình, NetBeans cung cấp hơn 50 Plugin miễn phí, J2ME Plugin là một trong số đó Có hai cách để cài đặt J2ME plugin vào máy của các bạn Hoặc các bạn sử dụng tính năng update của Netbeans hoặc các bạn download các Plugins này về và cài đặt Do điều kiện Internet ở VN nên tôi chọn cách thứ hai
· Download các Plug-in hỗ trợ việc lập trình J2ME: Tham khảo phần phụ lục, tôi giả sử các bạn lưu các Plugins ở thư mục D:\Soft
Trang 2· Cài đặt: Cách cài đặt các Plugins tương tự nhau và rất dễ dàng Tôi chỉ nêu ra một ví dụ khi cài đặt J2ME Wireless Toolkit Các bạn vào menu Tools-> Update Center Do chọn cách cài đặt offline nên các bạn chọn Install Manually Downloaded Modules (.nbm Files) và bấm Next Cửa sổ như hình dưới sẽ xuất hiện
Các bạn chọn nút Add và chọn đường dẫn tới thư mục lưu trữ các Plugin, trong trường hợp này là D:\Soft\kjava-emulator_win.nbm sau đó chọn Next
Và sau đó là thực hiện các bước đăng ký xác nhận quyền sở hữu Plugin v.v, thao tác rất đơn giản nên tôi không hướng dẫn chi tiết
Trang 33 Xác định Emulator: Trong lập trình trên J2ME thì việc xác định thiết bị mô phỏng trước khi chạy trên thiết bị thật rất quan trọng, do đó, điều mà các lập trình viên J2ME cần phải chú ý thứ ba là việc tích hợp các bộ giả lập (Emulator) vào NetBeans Mời các bạn tham khảo lại hai bài viết “Hướng dẫn sử dụng Samsung JSDK 1.0 ” và “Phát triển ứng dụng J2ME với Samsung JaUmi Wireless Toolkit 2.0 ” trong PC World số tháng 6 về cách cài đặt bộ SDK và Emulator của Samsung
Các bạn chọn Tool -> Device Emulator Registry, một cửa sổ hiện ra như hình dưới
Bạn nhấn vào nút Add và chọn đường dẫn vào thư mục bạn cài đặt Samsung Wireless Toolkit, trên máy tôi là C:\SAMSUNG_WTK20 NetBeans có chức năng tìm Emulator từ thư mục đã chọn
Nếu bạn thấy dòng thông báo “Detected Emulator Type” như hình trên thì bạn đã chọn đúng
và bạn nhấn Next, sau đó NetBeans sẽ liệt kê các Emulator của các chủng loại điện thoại mà
Trang 4SDK hỗ trợ Tốt nhất là bạn chọn all và nhấn Finish.
Sau đó bạn hãy chọn dòng điện thoại Samsung mà bạn muốn chạy thử từ hình trực quan sau
Sau khi đọc xong phần này, các bạn đã biết cách tích hợp các Emulator vào NetBeans và xem thử kết quả chương trình trực tiếp từ NetBeans
3 Chạy thử các ứng dụng J2ME sử dụng API của Samsung: Một thành viên của
JavaVietnam.org là bạn Nguyễn Ngọc Minh (acc minhnn) đã viết những ví dụ sử dụng API của Samsung SDK Tôi sẽ sử dụng những ví dụ này trong bài viết Các bạn có thể tải source code minh họa từ địa chỉ sau http://www.JavaVietnam.org/javavn/tutorial/j2me/SamsungDemo.zip
· Thiết lập FileSystem trong NetBeans: Giả sử tôi để mã nguồn và các file có liên quan tại tại thư mục C:\SamsungDemo Với cấu trúc thư mục như hình sau:
Với thư mục src chứa toàn bộ mã nguồn và thư mục res chứa các file tài nguyên cho ví dụ như hình ảnh, âm thanh v.v
Bạn vào menu File-> Mount FileSystem sau đó chọn Local Directory và nhấn Next và sau đó các bạn chọn đường dẫn thư mục tới c:\SamsungDemo\src và nhấn Finish
Các bạn hãy kiểm tra lại trên màn hình của các bạn với hình chụp dưới đây
Trang 5Sau đó bạn hãy kiểm tra toàn bộ công việc của mình bằng cách nhấn tổ hợp phím Shift-F11, đây là phím tắt ra lệnh cho NetBeans biên dịch (compile) và xây dựng (build) toàn bộ project, nếu trên tab Compiler không báo lỗi gì thì xin chúc mừng bạn, bạn đã cấu hình NetBeans để xây dựng ứng dụng J2ME thành công
· Chạy thử các tính năng của điện thọai Samsung: Trong phần demo của bài viết có đề cập đến các chức năng mà MIDP 1.0 không cung cấp như đọc file âm thanh, rung (vibration), hiển thị đèn LCD, gửi SMS Để kiểm tra các tính năng này trên bộ giả lập Samsung, bạn làm như sau:
· Chọn chương trình giả lập Samsung: Tôi chọn SGH-E100
· Bấm chuột phải vào lớp SamsungDemoMidlet và chọn menu Execute (hoặc nhấn F6), nếu mọi chuyện suôn sẻ thì cửa sổ chương trình giả lập sẽ hiện ra Cuối cùng thì chương trình J2ME đầu tiên cũng đã chạy
Trang 6Do phạm vi bài viết có hạn nên tôi không đề cập sâu vào phần mã nguồn, phần chi tiết này sẽ được hướng dẫn trong một bài khác
4 Kết luận: Trong phạm vi bài viết này, tác giả đã giới thiệu về môi trường lập trình NetBeans, phiên bản 3.6 cho phép các lập trình viên phát triển các ứng dụng J2ME một cách nhanh chóng nhất Nếu độc giả đã có kinh nghiệm sử dụng các công cụ như Jbuilder thì chắc hẳn rằng các bạn sẽ không mất nhiều thời gian để làm quen với NetBeans và công cụ lập trình J2ME của nó Bài viết không đề cập đến cách sử dụng các API do Samsung SDK, phần này sẽ được bàn đến chi tiết trong một bài viết khác Bài viết cũng không đề cập đến quá trình gỡ lỗi (debug) và chạy từng bước, xem như là bài tập dành cho độc giả
Khi độc giả đọc bài viết này thì phiên bản NetBeans 4.0 với rất nhiều những cải tiến đã ra mắt Hi vọng sẽ được tiếp tục bàn luận với người đọc về phiên bản mới này
Phụ lục
Bảng 1:
Các Plugins của NetBeans hổ trợ J2ME
Tên gói Nội dung và công dụng Địa chỉ tải về
kjava-emulator_win.nbm Gói này chứa các thư viện của
bộ J2ME Wireless Toolkit 1.0.4 Hổ trợ MIDP 1.0
http://www.netbeans.org/
download/nbms/36/stable/ J2ME_Wireless/Windows/ kjava-emulator_win.nbm kjava.nbm Gói này chứa các MIDP wizard
(công cụ cho phép tạo code tự động) và MIDP templates Gói
http://www.netbeans.org/
download/nbms/36/stable/
Trang 7Bảng 1:
Các Plugins của NetBeans hổ trợ J2ME
này cũng bao gồm bộ giả lập (Emulator) cho phép test trước khi chạy trên thiết bị thật
J2ME_Wireless/kjava.nbm
Bảng 2: Các lỗi thường gặp khi biên dịch code J2ME bằng NetBeans
Thông báo lỗi Nguyên nhân và cách giải quyết
NoClassDefFoundError Bạn đã chọn sai đường dẫn trong FileSystem, hãy chắc chắn rằng
bạn có đường dẫn c:\SamsungDemo\src java.lang.InstantiationExceptio
n: Class not a MIDlet Bạn đã chọn sai class cần để chạy Trong phần Source code mà chúng tôi cung cấp thì chỉ có lớp SamsungDemoMidlet là Main
Class để có thể chạy trực tiếp
NGUYỄN HỮU MAI (mainh - www.JavaVietnam.org)