Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động

98 370 0
Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LỜI CẢM ƠN Lời đầu tiên, em xin chân thành cảm ơn trường Đại học Công nghệ thông tin và truyền thông, Đại học Thái Nguyên tạo điều kiện thuận lợi cho phép em hoàn thành báo cáo Em xin chân thành cảm ơn giúp đỡ đóng góp ý kiến nhiệt tình thầy - cô giáo môn Mạng Truyền thông – Khoa Công Nghệ Thông Tin - Đại học Công Nghệ Thông Tin Truyền Thông – Đại Học Thái Nguyên Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc đến thầy giáo hướng dẫn: Th.S Nguyễn Đức Bình, tận tụy giúp đỡ em suốt trình học tập nghiên cứu Em xin chân thành cảm ơn !!! LỜI CAM ĐOAN Em , Giáp Văn Trường, sinh viên trường Đại Học Công Nghệ Thông Tin Thái Nguyên, xin cam đoan: Những nội dung báo cáo thân em thực hướng dẫn trực tiếp thầy giáo hướng dẫnThS Nguyễn Đức Bình Mọi tham khảo dùng đồ án trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố Mọi chép không hợp lệ có thông tin sai lệch nào, em xin chịu hoàn toàn trách nhiệm trước Hội Đồng Nhà trường Thái nguyên, tháng năm 2012 Sinh viên Giáp Văn Trường MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN Sơ qua tình hình nghiên cứu nước Tính cấp thiết đề tài Mục tiêu đề tài Phương pháp phạm vi nghiên cứu .9 CHƯƠNG : NGÔN NGỮ LẬP TRÌNH OBJECTIVE C VÀ BỘ CÔNG CỤ HỖ TRỢ XCODE 20 2.4 Bộ công cụ hỗ trợ lập trình Xcode 32 2.4.3 Xcode 33 2.4.4Các mẫu ứng dụng 34 2.4.5Tổng quan Xcode Project 35 2.4.6Thêm Framework vào project 37 2.4.7 Iphone Simulator .38 2.4.9 Instrument 40 2.4.10 Xây dựng cài đặt ứng dụng 41 2.5 Mô hình MVC ( Model-View-Controller ) 42 CHƯƠNG 3: ỨNG DỤNG QUẢN LÝ ĐẶT PHÒNG CHO KHÁCH SẠN INTERCONTINENTAL HANOI WESTLAKE 45 3.2Phân tích hệ thống 53 3.2.1Tác nhân 53 3.2.2Đặc tả Use Case (Trường hợp) 56 3.3 Demo .85 KẾT LUẬN .87 TÀI LIỆU THAM KHẢO 89 PHỤ LỤC 90 Phụ lục 1: File khai báo Booking Deluxe Westlake 90 Phụ lục 2: File thực thi form Booking Deluxe Westlake 92 LỜI NÓI ĐẦU Dưới hướng dẫn thầy giáo ThS Nguyễn Đức Bình qua thời gian nghiên cứu, tìm hiểu em hoàn thành báo cáo đồ án tốt nghiệp Trong giới hạn báo cáo đồ án tốt nghiệp này, em có tìm hiểu vấn đề sau: + Iphone, Hệ điều hành IOS Framework hỗ trợ cho lập trình ứng dụng Iphone + Ngôn ngữ lập trình Objective C + Bộ công cụ lập trình với Objective C: Xcode + Phát triển ứng dụng Quản lý đặt phòng khách sạn Iphone Một lần nữa, em xin chân thành cảm ơn thầy giáo ThS Nguyễn Đức Bình, thầy cô khoa CNTT - Đại Học Công Nghệ Thông Tin Truyền Thông bạn giúp đỡ em hoàn thành báo cáo Thái nguyên, tháng năm 2012 Sinh viên thực Giáp Văn Trường DANH MỤC HÌNH ẢNH CÁC CHỮ VIẾT TẮT VÀ CÁC THUẬT NGỮ ĐƯỢC SỬ DỤNG TLS Kiểu bảo mật Transport Layer Security SSL Kiểu bảo mật Secure Sockets Layer ALAC Kiểu nén liệu Apple Lossless OpenAL Công nghệ lai tạo âm Open Audio Library SDK Gói phát triển phần mềm Software Development Kit IDE Mô hình phát triển tích hợp Intergrated Development Environment MVC Mô hình Model – View – Controller CMND Chứng minh nhân dân BPLT Bộ phận Lễ tân TỔNG QUAN Sơ qua tình hình nghiên cứu nước Trong xu phát triển nhanh chóng CNTT, lập trình ứng dụng cho thiết bị di động không xa lạ với Tuy nhiên lập trình ứng dụng hệ điều hành IOS (hay cụ thể cho điện thoại Iphone ) lại hướng mẻ với lập trình viên Việt Nam nói chung giới nói riêng Ngày 17/10/2007, Tổng Giám đốc Apple, Steve Jobs, tuyên bố hãng sẵn sàng chào đón hãng phần mềm thứ ba phát triển ứng dụng cho Iphone Đây cú ngoặt lịch sử Apple trước hãng muốn kiểm soát người dùng cài chạy điện thoại Iphone Đây cánh cở mở rộng cho nhà lập trình phát triển phần mềm ứng dụng thiết bị di dộng IOS hệ điều hành thiết bị di động Apple Ban đầu hệ điều hành phát triển để chạy Iphone, sau mở rộng để chạy thiết bị Apple iPod touch, iPad Apple TV Ngày 31 tháng 5, 2011, App Store Apple chứa khoảng 500.000 ứng dụng IOS, tải tổng cộng khoảng 15 tỷ lần Trong quý năm 2010, có khoảng 26% điện thoại thông minh chạy hệ điều hành IOS, sau hệ điều hành Android Google Symbian Nokia Tính cấp thiết đề tài Sự bùng nổ phát triển mạnh mẽ công nghệ khiến người khó thiếu điện thoại Cùng với phát triển ứng dụng di động ngày trở nên cần thiết Đặc biệt lập trình ứng dụng Iphone (trên hệ điều hành IOS) không gian hay thử thách với người lập trình hoàn toàn xa lạ có nhiều hội cho người thử sức Phiên Iphone đời năm 2007 Bên cạnh tính máy điện thoại thông thường (hoạt động băng tần GSM EDGE), Iphone trang bị hình cảm ứng, máy chụp hình, khả chơi nhạc chiếu phim (tương tự iPod), trình duyệt web,… Phiên thứ hai Iphone 3G mắt tháng năm 2008, trang bị thêm hệ thống định vị toàn cầu (GPS), mạng 3G tốc độ cao (HSPDA) Iphone thành công, lên trở thành điện thoại bán chạy thời đại: Sau năm, Iphone chiếm lĩnh tới 17% thị trường Smartphone, chí có lúc bán triệu ngày Và apple mở cửa, tạo điều kiện đội ngũ lập trình toàn giới tham gia vào thị trường cung cấp ứng dụng cho Iphone Apple chia lại cho nhà phát triển đến 70% doanh thu Mức chia lợi nhuận cao chợ ứng dụng Điều lý giải phần nguyên nhân bắt đầu có nhiều người tham gia phát triển ứng dụng cho App Store Là sinh viên, thực đề tài, tìm hiểu, nghiên cứu lĩnh vực này, em tin học hỏi nhiều kiến thức mới, nhiều kinh nghiệm thiết thực áp dụng vào thực tế, đem lại hiệu công việc sau Mục tiêu đề tài Qua thời gian thực đề tài, em tin nắm điểm quan trọng hệ điều hành IOS, thu nhiều kiến thức, kỹ kinh nghiệm việc lập trình ứng dụng thiết bị di động Nắm yếu tố tảng phát triển phần mềm ứng dụng Quản lý đặt phòng khách sạn Iphone Phương pháp phạm vi nghiên cứu Giờ hệ điều hành Mac OS chạy phần cứng (intel) nhiên là 100% chạy cho tất máy tính intel Chỉ số không nhiều dòng máy chạy thành công Mac OS Nhờ mà người lập trình cài đặt Xcode sử dụng object C Đó cách thức tiếp cận với môi trường lập trình ứng dụng cho Iphone em Phạm vi nghiên cứu: - Nghiên cứu hệ điều hành IOS - Nghiên cứu ngôn ngữ lập trình object C công cụ hỗ trợ Xcode - Nghiên cứu kỹ thuật lập trình thiết bị di động Iphone - Xây dựng tính cho ứng dụng: Đặt phòng khách sạn cho khách sạn Intercontinental Hanoi Westlake CHƯƠNG 1: IPHONE VÀ HỆ ĐIỀU HÀNH IOS 1.1 Iphone hệ điều hành iOS 1.1.1 Iphone Iphone mẫu điện thoại di động hãng điện tử Mỹ Apple Computer Phiên Iphone đời năm 2007 Bên cạnh tính máy điện thoại thông thường (hoạt động bốn băng tần GSM EDGE), Iphone trang bị hình cảm ứng, máy chụp hình, khả chơi nhạc chiếu phim (tương tự iPod), trình duyệt web, Phiên thứ hai Iphone 3G mắt tháng năm 2008, trang bị thêm hệ thống định vị toàn cầu (GPS), mạng 3G tốc độ cao (HSDPA) Iphone 3G S, phiên thứ ba, công bố vào ngày tháng năm 2009 Ngày 19 tháng 6, phiên phân phối Mỹ, Canada số nước châu Âu; ngày 26 tháng có mặt Úc; sau đó, phiên quốc tế Iphone 3G S phát hành vào tháng tháng năm 2009 Thay đổi đáng kể phiên điện thoại Apple nâng cao hiệu máy (S 3G S Speed - Tốc độ).Iphone 3G S trang bịbộ vi xử lý tốc độ 600 MHz (gấp gần 1,5 lần so với Iphone 3G), nhớ lên đến 32 GB, máy ảnh số 3.15 Mp, tích hợp la bàn số hàng loạt tính đáng giá nâng cấp khác tốc độ Wi-Fi, thời gian dùng pin v.v Trước đó, ngày 17 tháng năm 2009, Apple thông báo phiên 3.0 hệ điều hành cho Iphone (và iPod Touch) mắt thức vào ngày 17 tháng năm 2009 Iphone thông bố đời tháng năm 2010.Trong phiên Iphone thiết kế lại, vuông vắt có khía cạnh Về chức đáng ý, Iphone có chức quay phim HD, hình Rétina nhuyễn gấp so với hình đời trước chức FaceTime (gọi thấy người gọi qua Wi-Fi Kể từ đời, Iphone làm điên đảo giới với thiết kế độc đáo đường riêng màApple chọn.Thành công rực rỡ mà Iphone có 10 + Luồng kiện: Hành động tác nhân Phản ứng hệ thống Nhận yêu cầu Court từ User Kiểm tra tranh chấp + Biểu đồ trình tự: Hình ảnh 46: Biểu đồ trình tự Use Case Post + Biểu đồ cộng tác: Hình ảnh 47:Biểu đồ cộng tác Use Case Post 84 3.3 Demo 85 86 KẾT LUẬN Qua thời gian tìm hiểu, học tập, nghiên cứu dìu dắt tận tâm thầy Th.S Nguyễn Đức Bình, em hoàn thành đặt từ bắt đầu đồ án tốt nghiệp - Cụ thể, em nắm đạt được: + Vận dụng kiến thức học từ nhà trường để hoành thành đồ án + Hiểu Iphone, Hệ điều hành IOS Framework hỗ trợ cho lập trình ứng dụng Iphone Làm việc với ngôn ngữ hướng đối tượng Objective C công cụ hỗ trợ Xcode, Iphone SDK Các bước tạo ứng dụng chạy iPhone thực (từ viết code đến đăng kí lên Apple Store, nhận mã, điều chỉnh Xcode ) + Hoàn thành tính chương trình: Đặt - trả phòng, Dịch vụ; tính phụ khác - Tuy nhiên, em nhận thấy nhiều khuyết điểm lớn: + Do thời gian làm việc với ngôn ngữ lập trình Ojective – C nên khả vận dụng ngôn ngữ vào chương trình chưa linh hoạt, mã chương trình chưa tối ưu + Việc trao đổi Server Client dạng plain text, hoàn toàn không mã hóa + Hầu hết Textfield chưa bắt lỗi cú pháp +Chỉ tập trung thực tính đặt trả phòng, chưa thực tính khác, ví dụ: có gọi dịch vụ mà chưa có trả dịch vụ ko cần, chức đặt phòng mức bản, kiểm tra thời gian nhận phòng, chưa kiểm tra thời gian trả phòng để renew phòng.s Do thời gian có hạn, vốn kiến thức hạn chế nên tránh khỏi thiếu sót khuyết điểm nội dung lẫn câu chữ Em mong 87 nhận đóng góp quý báu thầy cô để báo cáo em hoàn thiện 88 TÀI LIỆU THAM KHẢO [1]Dave Mark, Jack Nutting, Jeff Lamarche, 2011, Beginning iPhone Development, published by Apress [2] Wei-Meng Lee, 2010, Beginning Iphone Sdk Programming With Objective-C,published by Wiley Publishing, Inc [3] Tech24.vn, “Lập trình hướng đối tượng với C++” [4]Pierre Chatelier, “From C++ to Objective-C” http://hedieuhanh.forumvi.net http://macvn.com http://tech24.vn http://www.insanelymac.com http://www.osx86project.org 89 PHỤ LỤC Ở đây, có nhiều file, nội dung số lớp phương thức dài nên em đưa lớp phương thức Phụ lục 1: File khai báo Booking Deluxe Westlake Đây file khai báo tất biến, hàm cần thiết để chạy chức Đặt phòng khu Deluxe Westlake // // BookingDeluxeWestlakeDetail.h // QLKS8 // // Created by mac on 5/14/12 // Copyright 2012 MyCompanyName All rights reserved // #import @interface BookingDeluxeWestlakeDetail : UIViewController < UIActionSheetDelegate, UIAlertViewDelegate> { UITextField *textFieldSoPhongCanDat; UITextField *textFieldNgayDen; UITextField *textFieldThangDen; UITextField *textFieldNamDen; UITextField *textFieldNgayDi; UITextField *textFieldThangDi; UITextField *textFieldNamDi; UITextField *textFieldHoTen; 90 UITextField *textFieldSoTaiKhoan; UITextField *textFieldMatKhau; UITextField *textFieldSoDienThoai; } @property (nonatomic, retain) IBOutlet UITextField *textFieldSoPhongCanDat; @property (nonatomic, retain) IBOutlet UITextField *textFieldNgayDen; @property (nonatomic, retain) IBOutlet UITextField *textFieldThangDen; @property (nonatomic, retain) IBOutlet UITextField *textFieldNamDen; @property (nonatomic, retain) IBOutlet UITextField *textFieldNgayDi; @property (nonatomic, retain) IBOutlet UITextField *textFieldThangDi; @property (nonatomic, retain) IBOutlet UITextField *textFieldNamDi; @property (nonatomic, retain) IBOutlet UITextField *textFieldHoTen; @property (nonatomic, retain) IBOutlet UITextField *textFieldSoTaiKhoan; @property (nonatomic, retain) IBOutlet UITextField *textFieldMatKhau; @property (nonatomic, retain) IBOutlet UITextField *textFieldSoDienThoai; //hide the keyboard - (IBAction)textFieldDoneEditing : (id)sender; //uppen view for the keyboard appearing - (IBAction)uppen; - (IBAction)ok; //down view for the textfield :" so phong can dat" appearing 91 - (IBAction)down; - (IBAction)vietinbank; - (IBAction)vietcombank; - (IBAction)acb; - (IBAction)techcombank; @end Phụ lục 2: File thực thi form Booking Deluxe Westlake Có tác dụng kết hợp biến phương thức có file header (file khai báo) để tạo chương trình chạy (vì file dài – gần 30 trang – nên em đưa phương thức chính) //hide keyboard - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ [textFieldSoTaiKhoan resignFirstResponder]; [textFieldMatKhau resignFirstResponder]; [textFieldSoPhongCanDat resignFirstResponder]; [textFieldHoTen resignFirstResponder]; [textFieldNgayDi resignFirstResponder]; [textFieldNgayDen resignFirstResponder]; [textFieldSoDienThoai resignFirstResponder]; [textFieldNamDen resignFirstResponder]; [textFieldNamDi resignFirstResponder]; [textFieldThangDen resignFirstResponder]; [textFieldThangDi resignFirstResponder]; 92 [self.view setFrame:CGRectMake(0, 0, 320, 460)]; } //down view - (IBAction)down { [self.view setFrame:CGRectMake(0, 0, 320, 460)]; } //lift up the view - (IBAction)uppen { [self.view setFrame:CGRectMake(0, -70, 320, 460)]; } //check errors - (void)kiemtraloi { //check dinh dang den va di //checkdate(); //chua dien het form khongloi1 = 1; 93 if (![textFieldSoPhongCanDat.text length] || ![textFieldSoDienThoai.text length] || ![textFieldNgayDi.text length] || ![textFieldNgayDen.text length] || ! [textFieldHoTen.text length] || ![textFieldSoTaiKhoan.text length] || ! [textFieldMatKhau.text length] || ![textFieldNgayDi.text length] || ! [textFieldNamDen.text length] || ![textFieldNamDi.text length] || ! [textFieldThangDi.text length] || ![textFieldThangDen.text length] ) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Lỗi !!!" message:@"Bạn chưa điền đủ thông tin" delegate:self cancelButtonTitle:@"Điền lại" otherButtonTitles:nil]; [alert show]; [alert release]; khongloi1 = 0; return; } //banks //kiem tra tai khoan va mat khau ngan hang NSString *strUrl = [NSString stringWithFormat:@"http://truong191949.hhdtech.com/? mod=banks&cmd=checkBank&so_tai_khoan=%@&mat_khau= %@",textFieldSoTaiKhoan.text, textFieldMatKhau.text]; NSURL *url = [ NSURL URLWithString:strUrl]; 94 NSString *result = [NSString stringWithContentsOfURL:url]; NSLog(@"%@", result); if ([result rangeOfString:textFieldSoTaiKhoan.text].location == NSNotFound || [result rangeOfString:textFieldMatKhau.text].location == NSNotFound) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Lỗi !!!" message:@"Điền sai thông tin ngân hàng" delegate:self cancelButtonTitle:@"Điền lại" otherButtonTitles:nil]; [alert show]; [alert release]; khongloi1 = 0; return; } else {//kiem tra tai khoan ngan hang, neu thay rang: so_tien=0 thi bao loi~ ! if ([result rangeOfString:@"het tien"].location != NSNotFound) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Lỗi !!!" message:@"Tài Khoản Ngân Hàng bạn không đủ !" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 95 [alert show]; [alert release]; khongloi1 = 0; return; } } //rooms /*kiem tra so luong phong NSString *strUrl1 = [NSString stringWithFormat:@"http://truong191949.hhdtech.com/? mod=rooms&cmd=checkSoLuongPhong&so_luong_phong = %@",textFieldSoPhongCanDat.text]; NSURL *url1 = [ NSURL URLWithString:strUrl1]; NSString *result1 = [NSString stringWithContentsOfURL:url1]; NSLog(@"%@", result1); int soPhongTrong = if ([result1 rangeOfString:@"hetphong"].location != NSNotFound) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Lỗi !!!" message:@"chúng còn: %@ phòng", delegate:self cancelButtonTitle:@"Điền lại" otherButtonTitles:nil]; [alert show]; 96 [alert release]; khongloi1 = 0; return; }*/ //register the bank - (IBAction)vietinbank { [self kiemtraloi]; if (khongloi1) { UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Tiền đặt phòng triệu đồng Bạn có muốn chuyển khoản triệu đồng vào tài khoản ngân hàng Vietinbank chúng tôi?" delegate:self cancelButtonTitle:@"Không!!" destructiveButtonTitle:@"Đồng ý!" otherButtonTitles:nil]; QLKS8AppDelegate *showTrenWindow = (QLKS8AppDelegate *) [[UIApplication sharedApplication] delegate]; [actionSheet showInView:showTrenWindow.window]; [actionSheet release]; } } //confirm register 97 - (void)actionSheet: (UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex { if (buttonIndex !=[actionSheet cancelButtonIndex]) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Chuyển khoản thành công!!!" message:@"Chào Mừng Bạn Tới Intercontinental Hanoi Westlake." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; [alert release]; dathanhtoan1 = 1; } 98 ... lập trình object C công cụ hỗ trợ Xcode - Nghiên cứu kỹ thuật lập trình thiết bị di động Iphone - Xây dựng tính cho ứng dụng: Đặt phòng khách sạn cho khách sạn Intercontinental Hanoi Westlake CHƯƠNG... Instrument 40 2.4.10 Xây dựng cài đặt ứng dụng 41 2.5 Mô hình MVC ( Model-View-Controller ) 42 CHƯƠNG 3: ỨNG DỤNG QUẢN LÝ ĐẶT PHÒNG CHO KHÁCH SẠN INTERCONTINENTAL HANOI WESTLAKE... nhanh chóng CNTT, lập trình ứng dụng cho thiết bị di động không xa lạ với Tuy nhiên lập trình ứng dụng hệ điều hành IOS (hay cụ thể cho điện thoại Iphone ) lại hướng mẻ với lập trình viên Việt Nam

Ngày đăng: 23/04/2017, 10:13

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan