Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
1,22 MB
Nội dung
VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ Hà Nội - 2016 Hà Nội- Năm 2015 Hà Nội - Năm 2012 Môn: Lập trình ứng dụng LẬP TRÌNH HỖ TRỢ HỌC VÀ KIỂM TRA KIẾN THỨC LUẬT GIAO THÔNG ĐƯỜNG BỘ TRÊN ANDROID NGUYỄN VĂN QUY – 11B4 VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN Giảng viên hướng dẫn: TS Dương Thăng Long BÁO CÁO CHUYÊN ĐỀ Hà Nội - 2016 Hà Nội- Năm 2015 Hà Nội - Năm 2012 Môn: Lập trình ứng dụng LẬP TRÌNH HỖ TRỢ HỌC VÀ KIỂM TRA KIẾN THỨC LUẬT GIAO THÔNG ĐƯỜNG BỘ TRÊN ANDROID NGUYỄN VĂN QUY – 11B4 LỜI CẢM ƠN Em xin chân thành cảm ơn ban chủ nhiệm khoa Công nghệ thông tin, thầy cô giáo, gia đình bạn bè động viên giúp đỡ em nhiều trình làm chuyên đề tốt nghiệp Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc tới thầy giáo hướng dẫn T.S Dương Thăng Long tận tình, tận tâm hướng dẫn em từ ý tưởng cho đền lúc hoàn thành chuyên đề tốt nghiệp Em xin bày tỏ lòng biết ơn tới gia đình thân yêu, người bạn thân tin tưởng, quan tâm, động viên, giúp đỡ em thời gian qua Em mong nhận đánh giá, bổ sung lời bảo thầy cô đề em tiếp tục nghiên cứu kĩ lĩnh vực Em xin chân thành cảm ơn! Sinh viên: Nguyễn Văn Quy MỤC LỤC DANH MỤC VIẾT TẮT STT Tên viết tắt Tên đầy đủ Dich tiếng việt (Nếu tiếng anh) iOS Iphone Opera System Hệ điều hảnh di động Apple API Application Programming Interface Giao diện lập trình ứng dụng JDT Java Development Toolkit Môi trường phát triển Java AWT Abstract Window Toolkit Công cụ trừu tượng JNI Java Native Interface Giao diện Java nguyên RIM Research In Motion Công ty sản suất BlackBerry JVM Java Virtual Machine Máy ảo Java SDK Software Developement Kit Công cụ phát triển phần mềm 10 IDE Integrated Development Environmen Môi trường thiết kế hợp Chương 1: CƠ SỞ LÝ THUYẾT 1.1 Nền tảng di động Ngày này, thị trường di động phát triển mạnh mẽ chưa thấy với vô vàng nhãn hiệu, kiểu dáng, tính Đã biến điện thoại thành thiết bị giải trí đa phương tiện thiếu Với lợi nhỏ gọn, người sử dụng đem theo lúc nơi, nhỏ gọn bất lợi xử lý tốc độ Để đảm bảo điện thoại thông minh hoạt động tốt cần có hệ điều hành quản lý thiết bị Đi kèm với phát triển phần cứng thiết bị động chiến nhà phát triển hệ điều hành điện thoại di động diễn khốc liệt Hiện nay, tảng di động lớn biết đến sau Nền tảng di động iOS với điện thoại di động thông minh iPhone, với thiết kế đẹp, thời trang, cảm ứng mượt mà, hình đẹp sắc nét với tài "thánh" Steve Jobs khiến cho iPhone trở thành tượng thị trường, đặc biệt Mỹ Doanh số bán iPhone tăng dần qua năm, thống lĩnh thị trường nhiều nước iPhone dù năm phiên sức nóng đủ lan tỏa khắp làng di động, đó, iOS chưa "già" iOS hệ điều hành "đóng" hoạt động iPhone, iPad, iPod iOS định nhiều thành công Apple, với giao diện bóng bẩy, đẹp mắt, dễ sử dụng Tất chạm vuốt để thực thi Cùng với sách hợp lý để thu hút lập trình viên viết ứng dụng, kho ứng dụng Appstore ngày lớn khiến cho người dùng thêm thích thú, nhu cầu người đáp ứng Cũng việc Apple tung cập nhật, vá lỗi liên tục phát hiện, khiến cho iOS ngày trở nên "thông minh" hơn, an toàn Nhưng gọi iOS thống trị năm 2012 điều chưa thể Vì iOS cài giới hạn thiết bị Apple gồm thiết bị iPhone, iPad, iPod Thị phần thiết bị Apple giới nói chung không lớn, số liệu bạn thấy báo đa số thống kê Mỹ, gọi thống trị phải thống trị thị trường di động toàn giới 1.1.1 Android Mặc dù sinh sau đẻ muộn, Android có bước tiến thần tốc, thời gian ngắn đạt nhiều điều khiến hệ điều hành di động mơ ước: khoảng 700.000 điện thoại Android kích hoạt ngày Khi mà iOS ngày bành trướng mà Symbian lại không đủ sức để cạnh tranh Các lập trình viên, nhà sản xuất điện thoại ý đến Android Hệ điều hành di động mở Google phát triển dựa tảng Linux Android ngày lớn mạnh số lượng chất lượng linh hoạt từ tảng Google, phù hợp với smartphone tầm thấp lẫn giá cao Hàng loạt nhà sản xuất điện thoại di động sử dụng Android làm hệ điều hành cho sản phẩm Như HTC, Samsung, LG, Motorola, Sony Ericsson Từ điện thoại, máy tính bảng hãng dùng hệ điều hành Android Các nhà lập trình viết ứng dụng ngày nhiều Android Market Kho ứng dụng cạnh tranh trực tiếp với AppStore Apple Chính điều mà khiến Android ngày bành trướng thị trường khắp châu lục, đến năm 2012, Android hệ điều hành thống trị Nhưng bạn thấy, dường Android đỉnh cao Chính có nhiều thiết bị, thiết bị có cấu hình riêng, nhà sản xuất tùy biến riêng việc có nhiều ứng dụng, lại không theo chuẩn cụ thể Khiến Android ngày bị phân mảnh rời rạc Android cập nhật thường xuyên, dẫn đến tình trạng thị trường có nhiều phiên tồn tại, phát hành song song với Google dần muốn kiểm soát hạn chế phân mảnh, đồng thời làm dần tính "mở" vốn triết lý Android 1.1.2 Windows Phone Sau kiện Microsoft hợp tác Nokia Nokia chạy hệ điều hành Windows Phone smartphone song song với Symbian MeeGo Với lợi nhà sản xuất điện thoại chiếm thị phần cao giới Windows Phone bắt đầu khiến hệ điều hành di động khác lo lắng Windows Phone giống Windows Mobile Hệ điều hành có diện mạo hoàn mới, hợp thời, với giao diện Metro đầy lạ, gần giống tờ tạp chí, dễ sử dụng cách xử lý việc khác Windows Phone tạo sức hấp dẫn cho làng công nghệ Kho ứng dụng Marketplace có khiêm tốn nhiều phần mềm hữu ích kiểm soát Microsoft 1.1.3 Sysbian Symbian, hệ điều hành di động đánh giá thân thiện, dễ sử dụng Symbian mạnh dòng điện thoại sử dụng hình cứng, bàn phím T9 Và kho ứng dụng Symbian 10 năm qua Những ứng dụng đáp ứng không nhỏ công việc, đời sống ngày người 10 năm cuối kỉ 20, đầu kỉ 21 Nó coi công nghệ mang tính cách mạng khả thi việc tạo ứng dụng có khả chạy thống nhiều tảng mà cần biên dịch lần Lần xuất vào năm 1992 ngôn ngữ dùng nội tập đoàn Sun Microsystems để xây dựng ứng dụng điều khiển xử lý bên máy điện thoại cầm tay, lò vi sóng, thiết bị điện tử dân dụng khác Không ngôn ngữ, Java tảng phát triển triển khai ứng dụng máy ảo Java Sun, công ty phát minh ngôn ngữ Java, thức ban hành Java Development Kit 1.0 vào năm 1996 hoàn toàn miễn phí để nhà phát triển tải về, học Java, xây dựng ứng dụng Java triển khai chúng hệ điều hành có hỗ trợ Java Ban đầu, Java chủ yếu dùng để phát triển Applet, ứng dụng nhúng vào trình duyệt, góp phần làm sinh động trang web tĩnh vốn tẻ nhạt hồi Tuy nhiên, với phát triển công nghệ thông tin nhu cầu xã hội, Java Applet dần vị trí thay vào đó, công ty, cộng đồng ủng hộ Java phát triển theo hướng khác 1.3.2 Đặc trưng 6.Đơn giản Những người thiết kế mong muốn phát triển ngôn ngữ dễ học quen thuộc với đa số người lập trình Do Java loại bỏ đặc trưng phức tạp C C++ thao tác trỏ, thao tác định nghĩa chồng toán tử (operator overloading),… Java không sử dụng lệnh “goto” file header (.h) Cấu trúc “struct” “union” đượcloại bỏ khỏi Java 7.Hướng đối tượng Java thiết kế xoay quanh mô hình hướng đối tượng Vì Java, tiêu điểm liệu phương pháp thao tác lên liệu Dữ liệu phương pháp mô tả trạng thái cách ứng xử đối tượng Java 8.Độc lập phần cứng hệ điều hành 16 Đây khả chương trình viết máy chạy đâu Chúng thể mức mã nguồnvà mức nhị phân Tính độc lập mức nhị phân, chương trình biên dịch chạy nhiều (phần cứng, hệ điều hành) khác mà không cần dịch lại mã nguồn Tuy cần có phần mềm máy ảo Java (JVM) hoạt động trình thông dịch máy thực thi Môi trường phát triển Java chia làm hai phần: Trình biên dịch trình thông dịch Không C hay C++, trình biên dịch Java chuyển mã nguồn thành dạng bytecode độc lập với phần cứng mà chạy CPU Nhưng để thực thi chương trình dạng bytecode, máy cần phải có trình thông dịch Java hay gọi máy ảo Java Máy ảo Java chuyển bytecode thành mã lệnh mà CPU thực thi 9.Mạnh mẽ Java ngôn ngữ yêu cầu chặt chẽ kiểu liệu.Phải khai báo kiểu liệu tường minh viết chương trình Java kiểm tra lúcbiên dịch thời gian thông dịch Java loại bỏ loạilỗi lập trình định Java không sử dụng trỏ phép toán trỏ Java kiểm tra tất truy nhập đến mảng, chuỗi thực thi để đảm bảo truy nhập không giới hạn kích thước Java kiểm tra chuyển đổi kiểu liệu từ dạng sang dạng khác lúc thực thi Cơ chế bẫy lỗi Java giúp đơn giản hóa qúa trình xử lý lỗi hồi phục sau lỗi 10 Bảo mật Viruses nguyên nhân gây lo lắng việc sử dụng máy tính Trước có Java, lập trình viên phải quét virus tệp trước tải hay thực chúng Thông thường việc không loại trừ hoàn 17 toàn virus Ngoài chương trình thực thi có khả tìm kiếm đọc thông tin nhạy cảm máy người sử dụng mà người sử dụng không hay biết Java cung cấp môi trường quản lý thực thi chương trình Nó cho đoạn mã an toàn Và Java không ngôn ngữ lập trình tuý mà cung cấp nhiều mức để kiểm soát tính an toàn thực thi chương trình Ở mức đầu tiên, liệu phương thức đóng gói bên lớp Chúng truy xuất thông qua giao diện mà lớp cung cấp Java không hỗ trợ trỏ không cho phép truy xuất nhớ trực tiếp Nó ngăn chặn không cho truy xuất thông tin bên kích thước mảng kỹ thuật tràn cung cấp kỹ thuật dọn rác nhớ Các đặc trưng tạo cho Java an toàn tối đa cókhả động cao Trong lớp thứ hai, trình biên dịch kiểm soát để đảm bảo mã an toàn, tuân theo nguyên tắc Java Lớp thứ ba đảm bảo trình thông dịch Chúng kiểm tra xem bytecode có đảm bảo qui tắc an toàn trước thực thi Lớp thứ tư kiểm soát việc nạp lớp vào nhớ để giám sát việc vi phạm giới hạn truy xuất trước nạp vào hệ thống 11 Phân tán Java dùng để xây dựng ứng dụng làm việc nhiều phần cứng, hệ điều hành giao diện đồ họa Java thiết kế hỗ trợ cho ứng dụng chạy mạng Vì chúng sử dụng rộng rãi công cụ phát triển Internet, nơi sử dụng nhiều tảng khác 12 Đa luồng 18 Chương trình Java đa luồng( Multithreading) để thực thi công việc đồng thời Chúng cung cấp giải pháp đồng luồng Đặc tính hỗ trợ đa này cho phép xây dựng ứng dụng mạngchạy hiệu 13 Động Java thiết kế ngôn ngữ động để đáp ứng cho môi trường mở Các chương trình Java chứa nhiều thông tin thực thi nhằm kiểm soát truy nhập đối tượng lúc chạỵ Điều nàycho phép khả liên kết động mã 1.3.3 Các mạnh Ngôn ngữ lập trình JAVA chọn cho Collections framework số lý đây: • Nó ngôn ngữ lập trình hướng đối tượng chức cung cấp Collections framework mang lại kỹ thuật hướng đối tượng • Nó thành phần mở rộng chuẩn ANSI C chương trình viết java framework không bị tính người dùng hưởng lợi ngôn ngữ java.Với ngôn ngữ này, người dùng lựa chọn lập trình hướng đối tượng lập trình thủ tục cần thiết • Nó đơn giản dễ học cú pháp ngắn gọn nên giúp cho lập trình viên đạt hiệu mong muốn mà không gặp nhiều khó khăn • Nó ngôn ngữ mạnh định đưa lúc biên dịch trì hoãn chương trình chạy • Nó hỗ trợ ràng buộc động mở tạo cấu trúc đơn giản giao diện tương tác người dùng 19 Nó cho phép phát triển công cụ phát triển phức tạp Một giao diện cho hệ thống run time tạo điều kiện cho việc tiếp cận thông tin lúc run time giúp cho việc monitor ứng dụng viết JAVA 1.3.4 Mô hình làm việc Xcode Eclipse phần mềm miễn phí, nhà phát triển sử dụng để xây dựng ứng dụng J2EE, sử dụng Eclipse nhà phát triển tích hợp với nhiều công cụ hỗ trợ khác để có công cụ hòan chỉnh mà không cần dùng đến phần mềm riêng khác Eclipse SDK bao gồm phần chính: Platform, Java Development Toolkit(JDT), Plug-in Development Environment(PDE) Với JDT, Eclipse xem môi trường hỗ trợ phát triển Java mạnh mẽ PDE hỗ trợ việc mở rộng Eclipse, tích hợp Plug-in vào Eclipse Platform Eclipse Platform tảng toàn phần mềm Eclipse, mục đích cung cấp dịch vụ cần thiết cho việc tích hợp công cụ phát triển phần mếm khách dạng Plug-in, thân JDT coi Plug-in làm cho Eclipse Java IDE (Integrated Development Enviroment) Các thành phần Eclipse: • The Platform runtime: Công việc Platform runtime phát xem plug-in có thư mục plug-in củaEclipse.Mỗi Plug-in có tập tin Manifest liệt kê kết nối mà plug-in cần.Pug-in tảivào Eclipse thực cần thiết để giảm lượng tài nguyên yêu cầu thời gian khởi tạo 20 • The workspace: Workspace chịu trách nhiệm quản lý tài nguyên người dùng tồ chức dạng Project Mỗi Project thư mục thư mục Workspace - Workspace bảo quản cấp thấp lịch sử thay đổi tài nguyên, tránh thất thoát tài nguyên người dùng - Workspace đồng thời chịu trách nhiệm thông báo công cụ cần thiết cho việc thay đôit tà nguyên • The Workbench: Jface Eclipse không hoàn toan bắt buộc phải sử dụng SWT hay Jface để lập trình giao diện, bạn sử dụng AWT hay SWING Java thông qua việc cài đặt Plug-ins • Team supost: Trang bị hệ thống quản trị để quản lý dự án người dùng: Concurrent Version System(CVS) • Help: Cung cấp hệ thống tài liệu mở rộng, định dạng HTML hay XML 21 Chương 2: PHÂN TÍCH BÀI TOÁN 2.1 Giới thiệu đề tài 2.1.1 Mô tả toán Trong thời đại công nghệ thông tin việc học kiểm tra kiến thức luật giao thông đường trở nên thuận tiện hết qua điện thoại thông minh Qua công nghệ lập trình Android lạo phần mềm học hỗ trợ kiểm tra kiến thức luật giao thông đường đem lại thuận tiện cho người dùng lúc nơi 2.1.2 Các chức - Luật giao thông đường • Văn bảng quy phạm pháp luật, • Các mức xử phạt xe moto - Các biển báo giao thông - Luyện thi sát hạch - Thi thử sát hạch - Tra cứu biển số tỉnh 2.2 Cơ sở liệu - “fine” : chứa thông tin xử phạt xe moto - “lawdocument” : Chứa thông tin luật giao thông đường - “licenseplates”: chứa thông tin biển số xe tỉnh - “trafficsigns”: chứa thông tin loại biển số xe 22 CSDL SQLite Khởi tạo csdl: Tạo lớp CreateDatabase kế thừa SQLiteOpenHelper có biến phương thức sau: private static final String DATABASE_NAME = "mydb.db"; (Tên csdl tạo mydb) private static final int SCHEMA_VERSION = 2; (Phiên sqlite) Phương thức khởi dựng lớp public CreateDatabase(Context context){ super(context, DATABASE_NAME, null, SCHEMA_VERSION); } (Khi gọi đến lớp CreateDatabase hạm tự động chạy tạo csdl chưa có có csdl mở csdl lên) Ghi đè phương thức onCreate lớp CreateDatabase: @Override public void onCreate(SQLiteDatabase db) { db.execSQL("CREATE TABLE lawdocument (provision TEXT,content TEXT,chapter TEXT);"); db.execSQL("CREATE TABLE fine (_id INTEGER PRIMARY KEY AUTOINCREMENT,sentence TEXT, price TEXT);"); db.execSQL("CREATE TABLE licenseplates (cityname TEXT,licensepalte INTERGER);"); db.execSQL("CREATE TABLE trafficsigns (signname TEXT,signtype TEXT,signconten TEXT);"); } 23 Khi gọi đến lớp CreateDatabase hàm tự động chạy sau hàm Khởi dựng chạy Hàm tạo bảng lawdocument (bảng văn pháp luật), bảng fine (bảng chứa liệu xử phạt xe máy), bảng licenseplates (bảng chứa thông tin biển xe theo tỉnh), bảng trafficsigns (bảng chứa thông tin biển báo giao thông) Hàm getAll public Cursor getAll(String tableName){ return (getReadableDatabase().rawQuery("SELECT * FROM "+tableName,null)); } Hàm kiểu trả Cursor có đầu vào String tableName tên bảng muốn lấy liệu Khi gọi hàm trả toàn giá trị bảng tableName từ csdl Hàm getByID public Cursor getById(String tableName,String id){ String [] args = {id}; return (getReadableDatabase().rawQuery("SELECT * FROM "+ tableName + " WHERE _id=?",args)); } Hàm có kiểu trả Cursor đầu vào String tableName, String id (tên bảng id giá trị) Hàm trả giá trị bảng có tên tableName có id = id đầu vào Hàm insert public void insert(String tableName, ContentValues contentValues){ getWritableDatabase().insert(tableName,null,contentValues); } Hàm có biến đầu vào String tableName ContentValues contenValues (tên bảng giá trị muốn lưu vào csdl) Sau thực hàm này, ta thêm vào csdl giá trị contentValues vào bảng có tên tableName 24 Hàm deleteAllData public void deleteAllData(String tableName){ getWritableDatabase().execSQL("DELETE FROM " + tableName); } Hàm có đầu vào String tableName (tên bảng muốn xóa liệu) Hàm gọi xóa toàn liệu bảng có tên tableName csdl Cách ghi liệu vào bảng: CreateDatabase createDatabase = new CreateDatabase(context); Trước tiên ta phải tạo đối tượng kiểu CreateDatabase, sau khởi tạo hàm khởi dựng lớp CreateDatabase chạy tạo csdl chưa tồn tại, tồn hàm mở csdl “mydb” lên createDatabase.deleteAllData("fine"); Hàm xóa toàn liệu tồn bảng “fine” để tránh ghi nhiều lần liệu vào bảng ContentValues cv = new ContentValues(); Hàm khởi tạo biến “cv” kiểu ContenValues , biến có tác dụng gán liệu vào thêm vào csdl try { cv.put("sentence","1.\tNgười điều khiển, người ngồi xe không đội mũ bảo hiểm đội mũ bảo hiểm không cài quai quy cách tham gia giao thông đường bộ: "); cv.put("price", ">>bị phạt tiền từ 100.000 đồng đến 200.000 đồng."); createDatabase.insert("fine", cv); catch (Exception e){ e.printStackTrace(); } finally { createDatabase.close(); } 25 Khối lệnh thực công việc gán liệu vào biến cv qua hàm put(tên cột bảng , nội dung liệu); Sau gán liệu vào biến “cv” ta gọi phương insert từ biến createDatabase khởi tạo bên với đầu vào tên bảng muốn thêm liệu biến cv gán liệu Việc thêm liệu vào csdl android chặt chẽ nên việc phải đặt khối lệnh try-catch Nếu thêm thành công bỏ qua phần lệnh thực khối lệnh catch Trong khối lệnh catch xử lý việc thêm liệu vào csdl xảy lỗi Trong khối lệnh finally xử lý cho dù khối lệnh try hay khối lệnh catch có thực hay không Trong hàm giải phóng biến createDatabase tạo để giải phóng dung lượng nhớ bị chiếm 10 Các lớp SetDataFineMoto, SetImageData, SetLawProvisionData, SetLicensePlatesData có phương thức khởi dựng thực công việc thêm liệu vào bảng csdl qua bước bước Khi giao diện gọi đến, ta cần tạo biến có kiểu lớp csdl bảng thêm vào SetDataFineMoto setDataFineMoto = new SetDataFineMoto(this); SetLicensePlatesData licensePlatesData = new SetLicensePlatesData(this); Chương ỨNG DỤNG 3.1 Nguồn liệu http://vanban.chinhphu.vn/ http://www.luatgiaothongduongbo.net/ 26 3.2 Giao diện Hình 3.1 Giao diện ứng dụng Hình 3.2 giao diện quy phạm pháp luật ấn vào luật giao thông đường 27 Hình 3.3 mức xử phạt moto 28 Hình 3.4 giao diện tra cứu biển số Hình 3.5 tra cứu tên tỉnh theo biến số xe 29 TÀI LIỆU THAM KHẢO 1) Lập trình thiết bị di động, Khoa CNTT – Viện ĐH Mở Hà Nội 2) http://developer.android.com/reference/packages.html 3) http://android.vn/threads/kho-tai-lieu-giao-trinh-ve-lap-trinhandroid-day-du.16856/ 30 [...]... thiệu đề tài 2.1.1 Mô tả bài toán Trong thời đại công nghệ thông tin việc học và kiểm tra kiến thức về luật giao thông đường trở nên thuận tiện hơn bao giờ hết qua những chiếc điện thoại thông minh Qua công nghệ lập trình Android có thể lạo ra phần mềm học và hỗ trợ kiểm tra kiến thức về luật giao thông đường bộ đem lại sự thuận tiện cho người dùng ở mọi lúc mọi nơi 2.1.2 Các chức năng - Luật giao thông. .. Luật giao thông đường bộ • Văn bảng quy phạm pháp luật, • Các mức xử phạt xe moto - Các biển báo giao thông - Luyện thi sát hạch - Thi thử sát hạch - Tra cứu biển số các tỉnh 2.2 Cơ sở dữ liệu - “fine” : chứa thông tin xử phạt xe moto - “lawdocument” : Chứa thông tin về luật giao thông đường bộ - “licenseplates”: chứa thông tin về các biển số xe của các tỉnh - “trafficsigns”: chứa thông tin các loại... giao diện quy phạm pháp luật khi ấn vào luật giao thông đường bộ 27 Hình 3.3 các mức xử phạt moto 28 Hình 3.4 giao diện tra cứu biển số Hình 3.5 tra cứu tên tỉnh theo biến số xe 29 TÀI LIỆU THAM KHẢO 1) Lập trình thiết bị di động, Khoa CNTT – Viện ĐH Mở Hà Nội 2) http://developer .android. com/reference/packages.html 3) http:/ /android. vn/threads/kho-tai-lieu -giao- trinh-ve-lap-trinhandroid-day-du.16856/... tràn và cũng cung cấp kỹ thuật dọn rác trong bộ nhớ Các đặc trưng này tạo cho Java an toàn tối đa và cókhả năng cơ động cao Trong lớp thứ hai, trình biên dịch kiểm soát để đảm bảo mã là an toàn, và tuân theo các nguyên tắc của Java Lớp thứ ba được đảm bảo bởi trình thông dịch Chúng kiểm tra xem bytecode có đảm bảo các qui tắc an toàn trước khi thực thi Lớp thứ tư kiểm soát việc nạp các lớp vào bộ nhớ... quảng cáo khá ấn tượng Theo những thông tin đầu tiên, nhiều cải tiến từ giao diện, màn hình Home mới, menu pop-up, khả năng chuyển dịch, trình duyệt web mới dựa trên nền tảng WebKit tương thích HTML5 Ngoài ra, BlackBerry OS 6 hỗ trợ khả năng điều khiển trên màn hình cảm ứng đa điểm tốt hơn 1.2 Hệ điều hành Android 1.2.1 Giới thiệu Android là hệ điều hành trên điện thoại di động (và hiện nay là cả trên. .. triển bởi Google và dựa trên nền tảng Linux Trước đây, Android được phát triển bởi công ty liên hợp Android ( sau đó được Google mua lại vào năm 2005) Các nhà phát triển viết ứng dụng cho Android dựa trên ngôn ngữ Java Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của 11 liên minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng, phần mềm và viễn thông nhằm mục đính... Java không chỉ là ngôn ngữ lập trình thuần tuý mà còn cung cấp nhiều mức để kiểm soát tính an toàn khi thực thi chương trình Ở mức đầu tiên, dữ liệu và các phương thức được đóng gói bên trong lớp Chúng chỉ được truy xuất thông qua các giao diện mà lớp cung cấp Java không hỗ trợ con trỏ vì vậy không cho phép truy xuất bộ nhớ trực tiếp Nó cũng ngăn chặn không cho truy xuất thông tin bên ngoài kích thước... hướng đối tượng và lập trình thủ tục khi cần thiết • Nó đơn giản và dễ học bởi cú pháp của nó khá ngắn gọn nên nó giúp cho lập trình viên đạt được hiệu quả mong muốn mà không gặp nhiều khó khăn • Nó là một ngôn ngữ mạnh bởi vì các quyết định có thể được đưa ra lúc biên dịch sẽ được trì hoãn cho tới khi chương trình chạy • Nó hỗ trợ ràng buộc động và mở tạo ra một cấu trúc đơn giản đối với giao diện tương... hiện ở mức mã nguồnvà mức nhị phân Tính độc lập ở mức nhị phân, một chương trình đã biên dịch có thể chạy trên nhiều nền (phần cứng, hệ điều hành) khác mà không cần dịch lại mã nguồn Tuy vậy cần có phần mềm máy ảo Java (JVM) hoạt động như một trình thông dịch tại máy thực thi Môi trường phát triển của Java được chia làm hai phần: Trình biên dịch và trình thông dịch Không như C hay C++, trình biên dịch... cung cấp giải pháp đồng bộ giữa các luồng Đặc tính hỗ trợ đa này này cho phép xây dựng các ứng dụng trên mạngchạy hiệu quả 13 Động Java được thiết kế như một ngôn ngữ động để đáp ứng cho những môi trường mở Các chương trình Java chứa rất nhiều thông tin thực thi nhằm kiểm soát và truy nhập đối tượng lúc chạỵ Điều nàycho phép khả năng liên kết động mã 1.3.3 Các thế mạnh Ngôn ngữ lập trình JAVA được chọn