intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Báo cáo chuyên đề: 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

Chia sẻ: Vũ Chính | Ngày: | Loại File: DOCX | Số trang:29

139
lượt xem
29
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Báo cáo chuyên đề 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 trình bày các nội dung: Cơ sở lý thuyết, phân tích bài toán và ứng dụng. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Báo cáo chuyên đề: 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

  1. 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,  các thầy cô giáo, gia đình và bạn bè đã động viên giúp đỡ  em rất nhiều  trong quá trình làm chuyên đề tốt nghiệp  này. Đặ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 về sự tận   tình, tận tâm hướng dẫn em từ  những ý tưởng đầu tiên cho đền lúc hoàn  thành bài chuyên đề tốt nghiệp của mình. Em xin bày tỏ  lòng biết  ơn tới gia đình thân yêu, những người bạn   thân đã luôn tin tưởng, quan tâm, động viên, giúp đỡ em trong thời gian qua. Em rất mong nhận được sự  đánh giá, bổ  sung và những lời chỉ  bảo  của các thầy cô đề em có thể tiếp tục nghiên cứu kĩ hơn về lĩnh vực này. Em xin chân thành cảm ơn!
  2. Sinh viên: Nguyễn Văn Quy MỤC LỤC DANH MỤC VIẾT TẮT ST Tên viết tắt Tên đầy đủ Dich ra tiếng việt T (Nếu là tiếng anh) 1 iOS Iphone Opera System Hệ điều hảnh trên  nền di động của Apple 2 API Application Programming  Giao diện lập trình  Interface ứng dụng 3 JDT Java Development Toolkit Môi trường phát triển  Java 4 AWT Abstract Window Toolkit Công cụ trừu tượng  5 JNI Java Native Interface Giao diện Java  nguyên bản
  3. 7 RIM Research In Motion Công ty sản suất  BlackBerry 8 JVM Java Virtual Machine Máy ảo Java 9 SDK Software Developement  Công cụ phát triển  Kit phần mềm 10 IDE Integrated Development  Môi trường thiết kế  Environmen hợp nhất
  4. 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 đang phát  triển mạnh mẽ  chưa từng thấy với vô  vàng   các   nhãn   hiệu,   kiểu   dáng,   tính  năng...Đã  biến chiếc  điện thoại thành  một   thiết   bị   giải   trí   đa   phương   tiện  không thể  thiếu. Với lợi thế  nhỏ  gọn,  được mọi người sử dụng đem theo mọi  lúc   mọi   nơi,   nhưng   cũng   vì   nhỏ   gọn  như vậy cũng là một bất lợi về xử lý và tốc độ. Để đảm bảo một chiếc điện   thoại thông minh hoạt động tốt thì nó cần có một hệ điều hành quản lý thiết   bị. Đi kèm với sự  phát triển phần cứng trên thiết bị  động thì cuộc chiến  của các nhà phát triển các hệ điều hành trên điện thoại di động cũng diễn  ra hết sức khốc liệt. Hiện nay, các nền tảng di động lớn được biết đến  như 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à, màn hình đẹp và sắc nét cùng  với tài năng của "thánh"  Steve Jobs  đã khiến cho iPhone trở  thành hiện  tượng trên mọi thị trường, đặc biệt là ở Mỹ. Doanh số  bán ra của iPhone  tăng dần qua các năm, và dần dần thống lĩnh thị  trường của nhiều nước.   iPhone dù mỗi năm chỉ  ra một phiên bản mới nhưng sức nóng đủ  lan tỏa  khắp làng di động, do đó, iOS vẫn chưa bao giờ "già". iOS là hệ  điều hành "đóng" hoạt động trên iPhone, iPad, iPod. iOS đã  quyết định rất nhiều đối với sự thành công của Apple, với giao diện bóng  4
  5. bẩy, đẹp mắt, và dễ  sử  dụng. Tất cả  chỉ  là chạm và vuốt để  thực thi.   Cùng với chính sách hợp lý để  thu hút các lập trình viên viết  ứng dụng,  kho  ứng dụng Appstore ngày càng lớn khiến cho người dùng càng thêm   thích thú, mọi nhu cầu của từng người đều có thể  được đáp  ứng. Cũng  như  việc Apple cũng tung ra cập nhật, vá các lỗi liên tục khi phát hiện,   khiến cho iOS ngày càng trở nên "thông minh" hơn, an toàn hơn. Nhưng nếu gọi iOS là thống trị năm 2012 thì điều đó cũng là chưa thể.   Vì iOS chỉ  được cài giới hạn trên thiết bị  của Apple gồm những thiết bị  như  iPhone, iPad, iPod... Thị  phần của thiết bị  Apple trên thế  giới nói  chung là không lớn, số  liệu các bạn thấy trên các báo đa số  chỉ  thống kê   tại Mỹ, nhưng đã gọi là thống trị  thì phải là thống trị  trên thị  trường di  động toàn thế giới. 1.1.1 Android Mặc dù sinh sau đẻ muộn, nhưng Android đang có những bước tiến thần  tốc, trong thời gian ngắn đã đạt được nhiều điều khiến mọi hệ điều hành  di động mơ ước: khoảng 700.000 điện thoại Android được kích hoạt mỗi   ngày. Khi mà iOS ngày càng bành trướng mà Symbian lại không đủ  sức để  cạnh tranh. Các lập trình viên, các nhà sản xuất điện thoại chú ý đến   Android. Hệ  điều hành di động mở  được Google phát triển dựa trên nền  tảng Linux. Android  ngày càng lớn mạnh về  số  lượng và chất lượng bởi sự  linh  hoạt từ  nền tảng Google, phù hợp với cả  smartphone tầm thấp lẫn giá  cao. Hàng loạt các nhà sản xuất điện thoại di động sử dụng Android làm  hệ điều hành chính cho các sản phẩm của mình. Như HTC, Samsung, LG,  Motorola, Sony Ericsson... Từ điện thoại, cho đến máy tính bảng của các  5
  6. hãng này đều dùng hệ điều hành Android. Các nhà lập trình viết ứng dụng   ngày càng nhiều trên Android Market. Kho  ứng dụng đang cạnh tranh trực   tiếp với AppStore của Apple. Chính vì điều này mà đã khiến Android ngày  càng bành trướng trên thị  trường khắp các châu lục, và đến năm 2012,  Android sẽ là hệ điều hành thống trị. Nhưng các bạn có thể  thấy, dường như  Android đang  ở  trên đỉnh cao  của mình. Chính vì có quá nhiều thiết bị, mỗi thiết bị  có cấu hình riêng,  nhà sản xuất tùy biến riêng và việc có quá nhiều  ứng dụng, nhưng lại  không theo một chuẩn cụ thể nào. Khiến Android ngày càng bị phân mảnh  và rời rạc. Android được cập nhật quá thường xuyên, dẫn đến tình trạng trên thị  trường có nhiều phiên bản cùng tồn tại, được phát hành song song với   nhau. Google đang dần muốn kiểm soát và hạn chế sự phân mảnh, nhưng  đồng thời cũng làm mất dần tính "mở" vốn là triết lý cơ bản của Android. 1.1.2 Windows Phone Sau sự kiện Microsoft hợp tác cùng Nokia. Nokia sẽ chạy hệ điều hành   Windows Phone trên các smartphone của mình song song với Symbian và  MeeGo. Với lợi thế  là nhà sản xuất điện thoại chiếm thị  phần cao trên  thế giới. Windows Phone bắt đầu khiến các hệ điều hành di động khác lo  lắng. Windows Phone 7  không có gì giống Windows Mobile. Hệ  điều hành  mới này có một diện mạo hoàn mới, hợp thời, với giao diện Metro đầy   mới lạ, gần giống như một tờ tạp chí, và cực kỳ dễ sử dụng mặc dù cách   xử  lý mọi việc rất khác. Windows Phone 7 cũng đã tạo ra một sức hấp   dẫn mới cho làng công nghệ. Kho ứng dụng Marketplace tuy có khiêm tốn  nhưng rất nhiều phần mềm hữu ích và được kiểm soát bởi Microsoft. 6
  7. 1.1.3 Sysbian Symbian, hệ  điều hành di động được đánh giá là thân thiện, dễ  sử  dụng. Symbian rất mạnh đối với các dòng điện thoại sử  dụng màn hình  cứng, bàn phím T9 cơ  bản. Và kho  ứng dụng của Symbian trong 10 năm  qua không phải là ít. Những ứng dụng này đáp ứng không nhỏ trong công  việc, đời sống hằng ngày của mọi người. Từ  bản Symbian^3, giao diện đã thay đổi rất nhiều. Nhưng chưa rõ rệt  cho lắm. Cho đến bản Symbian Anna, Symbian Belle toàn bộ  đã khác:  Biểu tượng trau chuốt hơn, giao diện mượt mà hơn, loại bỏ  nhiều thứ  không cần thiết. Mọi sự cố gắng của Symbian khi thuộc về Nokia có vẻ  như  đang có sự  tiến bộ  rõ rệt. Có điều năm 2012 không phải là năm của  Symbian khi chính Nokia cũng đang xuống dốc. 1.1.4 BlackBerry Là dòng máy Smartphone cao cấp và nổi tiếng trên thế  giới do hãng  Research In Motion cung cấp. Ngoài những tính năng thông thường,  điểm  tạo nên sự  khác biệt của máy BlackBerry là kiểu thiết kế  rất đặc trưng;   pin   tốt   và   hơn   cả   là   dịch   vụ   Push   Mail   nổi   tiếng   và   thương   hiệu  BlackBerry được xây dựng rất thành công. BlackBery OS 6 được RIM công bố tại sự kiện Wireless Enterprise  Symposium (diễn ra từ 27 đến 29/4 tại Mỹ). RIM chưa đưa ra chi tiết về  hệ  điều hành mới, ngoài một đoạn video 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. 7
  8. 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  một số  đầu phát HD, HD Player, TV) phát 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 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 tạo nên một chuẩn mở  cho điện thoại di động trong tương lai. 1.2.2 Kiến trúc Hình 1.. Kiến trúc Hệ điều hành Android 8
  9. 1.2.2.1 Tầng Aplycation Hệ  điều hành Android tích hợp sẳn một số   ứng dụng cơ  bản như  email client, SMS, lịch điện tử, bản đồ, trình duyệt web, sổ  liên lạc và  một số   ứng dụng khác. Ngoài ra tầng này cũng chính là tầng chứa các  ứng dụng được phát triển bằng ngôn ngữ Java. 1.2.2.2 Tầng Applycation Famework Tầng này của hệ điều hành Android cung cấp một nền tảng phát triển  ứng dụng mở qua đó cho phép nhà phát triển ứng dụng có khả năng tạo  ra các ứng dụng vô cùng sáng tạo và phong phú. Các nhà phát triển ứng  dụng được tự do sử dụng các tính năng cao cấp của thiết bị phần cứng   như: thông tin định vị địa lý, khả năng chạy dịch vụ dưới nền, thiết lập   đồng hồ  báo thức, thêm notification vào status bar của màn hình thiết  bị… Người phát triển  ứng dụng được phép sử dụng đầy đủ  bộ  API được  dùng trong các ứng dụng tích hợp sẳn của Android. Kiến trúc ứng dụng   của Android được thiết kế  nhằm mục đích đơn giản hóa việc tái sử  dụng các component. Qua đó bất kì  ứng dụng nào cũng có thể  công bố  các tính năng mà nó muốn chia sẻ  cho các  ứng dụng khác (VD:  Ứng  dụng email có muốn các  ứng dụng khác có thể  sử  dụng tính năng gởi  mail của nó). Phương pháp tương tự  cho phép các thành phần có thể  được thay thế bởi người sử dụng. Tầng này bao gồm một tập các services và thành phần sau: 9
  10. 1. Một tập phong phú và có thể  mở  rộng bao gồm các đối tượng View   được dùng để xây dựng ứng dụng như: list, grid, text box, button và thậm chí  là một trình duyệt web có thể nhúng vào ứng dụng. 2. Content Provider: Cho phép các ứng dụng có thể truy xuất dữ liệu từ  các ứng dụng khác hoặc chia sẽ dữ liệu của chúng. 3. Resource Manager: Cung cấp khả  năng truy xuất các tài nguyên non­ code như hình ảnh hoặc file layout. 4. Notification Manager:  Cung cấp khả  năng hiển thị  custom alert trên  thanh status bar. 5. Activity Manager: Giúp quản lý vòng đời của một ứng dụng. 1.2.2.3 Tầng Library System C library: một thể  hiện được xây dựng từ  BSD của bộ  thư  viện hệ  thống C chuẩn (libc), được điều chỉnh để  tối  ưu hóa cho các  thiết bị chạy trên nền Linux. Media libraries: Bộ  thư  viện hổ  trợ  trình diễn và ghi các định dạng  âm than và hình ảnh phổ biến. Surface manager: Quản lý hiển thị nội dung 2D và 3D. LibWebCore: Một web browser engine hiện đại được sử  dụng trong  trình duyệt của Android lần trong trình duyệt nhúng web view được sử  dụng trong ứng dụng. SGL: Engine hổ trợ đồ họa 2D. 3D libraries:  Một thể  hiện  được xây dựng dựa trên các APIs của  OpenGL ES 1.0. Những thư viện này sử dụng các tăng tốc 3D bằng phần  cứng lẫn phần mềm để tối ưu hóa hiển thị 3D. 10
  11. FreeType: Bitmap and vector font rendering. SQLite: Một DBMS nhỏ gọn và mạnh mẽ. 1.2.2.4 Android Runtime Hệ  điều hành Android tích hợp sẳn một tập hợp các thư viện cốt lõi  cung cấp hầu hết các chức năng có sẵn trong các thư  viện lõi của ngôn  ngữ  lập trình Java. Mọi ứng dụng của Android chạy trên một tiến trình   của riêng nó cùng với một thể hiện của máy ảo Dalvik. Máy ảo Dalvik  thực tế là một biến thể của máy ảo Java được sửa đổi, bổ sung các công  nghệ  đặc trưng của thiết bị  di động. Nó được xây dựng với mục đích  làm cho các thiết bị  di động có thể  chạy nhiều máy  ảo một cách hiệu  quả. Trước khi thực thi, bất kì ứng dụng Android nào cũng được convert   thành file thực thi với định dạng nén Dalvik Executable (.dex). Định dạng  này được thiết kế  để phù hợp với các thiết bị  hạn chế về  bộ nhớ cũng  như  tốc độ  xử  lý. Ngoài ra máy  ảo Dalvik sử  dụng bộ  nhân Linux để  cung cấp các tính năng như thread, low­level memory management. 1.2.2.5 Linux Ken Hệ  điều hành Android được xây dựng trên bộ  nhân Linux 2.6 cho  những   dịch   vụ   hệ   thống   cốt   lõi   như:   security,   memory   management,   process   management,   network   stack,   driver   model.   Bộ   nhân   này   làm  nhiệm vụ  như  một lớp trung gian kết nối phần cứng thiết bị  và phần   ứng dụng. 11
  12. ̀ ợp tac gi Hình 1.2. Mô hinh h ́ ưa may ao Dalvik va Navite code ̃ ́ ̉ ̀ JNI:   Java   Native   Interface   (Tương   tự   khái   niệm   Application  Programming Interface). Java Native Interface: là một bộ  framework cho phép mã lệnh viết  bằng Java chạy trên máy  ảo java có thể  gọi hoặc được gọi bởi một   ứng dụng viết bằng native code (Ứng dụng được viết cho một phần   cứng cụ thể và trên một hệ điều hành cụ thể) hoặc những bộ thư viện  viết bằng C, C++ hoặc Assembly.  Bằng cách sử dụng JNI, Android cho phép các ứng dụng chạy trên  máy ảo Dalvik có thể sử dụng những phương thức được viết bằng các  ngôn ngữ cấp thấp như: C, C++, Assembly. Qua đó các nhà phát triển  ứng dụng có thể xây dựng ứng dụng dựa trên các bộ thư viện viết bằng  C, C++, Assembly nhằm tăng tốc độ thực thi của ứng dụng hoặc sử  dụng những tính năng mức thấp mà ngôn ngữ Java không hổ trợ. Tuy  nhiên người phát triển ứng dụng cần phải cân nhắc sự gia tăng độ phức  tạp của ứng dụng khi quyết định sử dụng các bộ thư viện này. 1.3 Ngôn ngữ lập trình JAVA 12
  13. 1.3.1 Giới thiệu Java là một công nghệ  xây dựng các  ứng   dụng   phần   mềm   có   vị   trí   rất   lớn  trong những năm cuối thế kỉ 20, đầu thế  kỉ  21. Nó được coi là công nghệ  mang tính cách mạng và khả  thi nhất  trong việc tạo ra các ứng dụng có khả năng chạy thống nhất trên nhiều  nền tảng mà chỉ cần biên dịch một lần.  Lần đầu tiên xuất hiện vào năm 1992 như  là một ngôn ngữ  dùng  trong nội bộ  tập đoàn Sun Microsystems để  xây dựng  ứng dụng điều   khiển các bộ  xử  lý bên trong máy điện thoại cầm tay, lò vi sóng, các   thiết bị điện tử dân dụng khác. Không chỉ là một ngôn ngữ, Java còn là  một nền tảng phát triển và triển khai ứng dụng trong đó máy ảo Java. Sun, công ty đã phát minh ra ngôn ngữ Java, chính thức ban hành bản  Java Development Kit 1.0 vào năm 1996 hoàn toàn miễn phí để các nhà  phát triển có thể tải về, học Java, xây dựng các ứng dụng Java và triển  khai chúng trên các hệ điều hành có hỗ trợ Java. Ban đầu, Java chủ yếu  dùng để phát triển các Applet, các ứng dụng nhúng vào trình duyệt, góp  phần làm sinh động các trang web tĩnh vốn hết sức tẻ nhạt hồi đó. Tuy   nhiên, cùng với sự  phát triển của công nghệ  thông tin và nhu cầu của   xã hội, Java Applet đã dần mất đi vị trí của nó và thay vào đó, các công  ty, cộng đồng ủng hộ Java đã phát triển nó theo một hướng khác. 1.3.2  Đặc trưng 6.Đơn giản 13
  14. Những người thiết kế mong muốn phát triển một ngôn ngữ dễ học   và quen thuộc với đa số người lập trình. Do vậy Java loại bỏ các đặc  trưng phức tạp của C và C++ như thao tác con trỏ, thao tác định nghĩa  chồng   toán   tử   (operator   overloading),…   Java   không   sử   dụng   lệnh  “goto” cũng như  file header (.h). Cấu trúc “struct” và “union” cũng  đượcloại bỏ khỏi Java. 7. Hướng đối tượng Java được thiết kế xoay quanh mô hình hướng đối tượng. Vì vậy   trong Java, tiêu điểm là dữ  liệu và các phương pháp thao tác lên dữ  liệu đó. Dữ liệu và các phương pháp mô tả trạng thái và cách ứng xử  của một đối tượng trong Java. 8.Độc lập phần cứng và hệ điều hành Đây là khả năng một chương trình được viết tại một máy nhưng có  thể  chạy được bất kỳ  đâu. Chúng được thể  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 của   Java chuyển mã nguồn thành dạng bytecode độc lập với phần cứng mà  có thể chạy trên bất kỳ CPU nào. Nhưng để  thực thi chương trình dưới dạng bytecode, tại mỗi máy  cần phải có trình thông dịch của Java hay còn gọi là máy ảo Java. Máy  ảo Java chuyển bytecode thành mã lệnh mà CPU thực thi được. 14
  15. 9.Mạnh mẽ Java là ngôn ngữ  yêu cầu chặt chẽ  về  kiểu dữ  liệu.Phải khai báo  kiểu dữ  liệu tường minh khi viết chương trình. Java kiểm tra lúcbiên  dịch và cả  trong thời gian thông dịch vì vậy Java loại bỏ  một một số  loạilỗi lập trình nhất định. Java không sử dụng con trỏ và các phép toán   con trỏ. Java kiểm tra tất cả  các truy nhập đến mảng, chuỗi khi thực   thi để  đảm bảo rằng các truy nhập đó không ra ngoài giới hạn kích   thước. Java kiểm tra sự  chuyển  đổi kiểu dữ  liệu từ  dạng này sang   dạng khác lúc thực thi. Cơ  chế  bẫy lỗi của Java giúp đơn giản hóa qúa trình xử  lý lỗi và   hồi phục sau lỗi. 10. Bảo mật Viruses là nguyên nhân gây ra sự  lo lắng trong việc sử  dụng máy  tính. Trước khi có Java, các lập trình viên phải quét virus các tệp trước  khi tải về  hay thực hiện chúng. Thông thường việc này cũng không  loại trừ hoàn toàn virus. Ngoài ra chương trình khi thực thi có khả năng   tìm kiếm và đọc các thông tin nhạy cảm trên máy của người sử  dụng  mà người sử dụng không hề hay biết. Java cung cấp một môi trường quản lý thực thi chương trình. Nó  cho rằng không có một đoạn mã nào là an toàn cả. Và vì vậy 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   15
  16. ngoài kích thước của mảng bằng kỹ  thuật 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ớ để giám sát việc vi  phạm giới hạn truy xuất trước khi nạp vào hệ thống. 11. Phân tán Java có thể  dùng để  xây dựng các  ứng dụng có thể  làm việc trên  nhiều phần cứng, hệ điều hành và giao diện đồ  họa. Java được thiết  kế  hỗ  trợ  cho các  ứng dụng chạy trên mạng. Vì vậy chúng được sử  dụng rộng rãi như  là công cụ  phát triển trên Internet, nơi sử  dụng  nhiều nền tảng khác nhau. 12. Đa luồng Chương trình Java đa luồng( Multithreading) để  thực thi các công  việc đồng thời. Chúng cũng 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  16
  17. 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 cho Collections framework vì  một số lý do dưới đây: Nó là ngôn ngữ  lập trình hướng đối tượng và các chức năng cung cấp  bởi Collections framework chỉ có thể được mang lại bởi các kỹ  thuật  hướng đối tượng. Nó là thành phần mở  rộng của chuẩn ANSI C vì vậy các chương trình  viết bằng java của framework này sẽ không bị mất đi tính năng nào và  người dùng được hưởng các lợi thế của ngôn ngữ java.Với ngôn ngữ  này, người dùng có thể lựa chọn cả lập trình 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 tác người dùng. Nó cho phép phát triển các 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 các thông tin lúc  run time giúp cho việc monitor ứng dụng viết bằng JAVA. 1.3.4 Mô hình làm việc Xcode 17
  18. Eclipse là phần mềm miễn phí, được các nhà phát triển sử dụng để xây  dựng những ứng dụng J2EE, sử dụng Eclipse nhà phát triển có thể tích hợp  với nhiều công cụ hỗ trợ khác để có được một bộ công cụ hòan chỉnh mà  không cần dùng đến phần  mềm riêng nào khác. Eclipse SDK bao gồm 3  phần chính: Platform,   Java   Development   Toolkit(JDT),   Plug­in   Development  Environment(PDE) Với JDT, Eclipse được xem như là một 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 các Plug­in vào  Eclipse Platform.         Eclipse Platform là nền tảng của toàn bộ phần mềm Eclipse, mục đích  của nó là cung cấp những dịch vụ  cần thiết cho việc tích hợp những bộ  công cụ  phát triển phần mếm khách dưới dạng Plug­in, bản thân JDT  cũng có thể được coi như là một Plug­in làm cho Eclipse như là một Java   IDE (Integrated Development Enviroment). Các thành phần chính của Eclipse: The Platform runtime: Công việc chính của Platform runtime là phát  xem plug­in nào đang có trong thư mục plug­in củaEclipse.Mỗi Plug­in  đều có 1 tập tin Manifest liệt kê những kết nối mà plug­in cần.Pug­in   chỉ được tảivào Eclipse mỗi khi thực sự cần thiết để  giảm lượng tài  nguyên yêu cầu và thời gian khởi tạo.. The workspace: Workspace chịu trách nhiệm quản lý tài nguyên người   dùng được tồ chức dưới dạng Project.  Mỗi Project là một thư mục con trong thư mục Workspace.  18
  19. ­ Workspace bảo quản cấp thấp lịch sử  những 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 những 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 vẫn có thể  sử  dụng AWT   hay SWING của Java thông qua việc cài đặt các Plug­ins. Team supost: Trang bị hệ thống quản trị để  quản lý dự án của người   dùng: Concurrent Version System(CVS). Help: Cung cấp hệ thống tài liệu mở rộng, có thể là định dạng HTML  hay XML. 19
  20. Chương 2: PHÂN TÍCH BÀI TOÁN 2.1 Giới 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 đườ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 biển số xe 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
4=>1