Tìm Hiểu Phát Triển Ứng Dụng Di Động Android.pdf

14 11 0
Tìm Hiểu Phát Triển Ứng Dụng Di Động Android.pdf

Đ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

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM THỰC TẬP TỐT NGHIỆP Đề tài Tìm hiểu phát triển ứng dụng di động Android Công ty thực tập Công ty Trách nhiệm[.]

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM THỰC TẬP TỐT NGHIỆP Đề tài: Tìm hiểu phát triển ứng dụng di động Android Công ty thực tập: Công ty Trách nhiệm hữu hạn Kỹ thuật số TYME Lớp: SE501.N11.PMCL Sinh viên thực hiện: Hồ Hữu Thịnh – 19522275 TP.Hồ Chí Minh, ngày 25 tháng 12 năm 2022 Thực tập tốt nghiệp Hồ Hữu Thịnh NHẬN XÉT CỦA KHOA Thực tập tốt nghiệp Hồ Hữu Thịnh LỜI MỞ ĐẦU Ngày nay, ngành lập trình ứng dụng phận khơng thể thiếu ngành công nghiệp phần mềm Với tốc độ phát triển kỹ thuật công nghệ, tốc độ phát triển ngành lập trình ứng dụng di động tăng trưởng nhanh chóng Lập trình viên ứng dụng di động sinh nhu cầu sử dụng thiết bị điện thoại người ngày tăng Và họ nguồn nhân lực quan trọng cho việc phát triển ngành lập trình ứng dụng di động sau Việt Nam ngoại lệ, công ty công nghệ lớn, đa quốc gia tập trung vào mảng phát triển ứng dụng di động như: Tiki, Shopee, Gojek, Vì lý này, em định chọn lập trình di động làm định hướng cho việc học tập phát triển ngành nghề tương lai Trong trình học tập trường, em có định hướng trở thành lập trình viên ứng dụng di động, em đăng ký học mơn nhập mơn lập trình di động, lập trình ứng dụng di động, ngơn ngữ lập trình java, phát triển ứng dụng di động thiết bị di động… Tuy nhiên học tập trường chưa đủ em muốn có thêm nhiều kinh nghiệm thực tế, muốn trải nghiệm dự án thực tế môi trường chuyên nghiệp, với mong muốn đó, em định đăng ký môn thực tập doanh nghiệp em may mắn đậu vào TYME - cơng ty có mơi trường làm việc đại, chuyên nghiệp - nơi giúp em thực dự định Thực tập tốt nghiệp Hồ Hữu Thịnh LỜI CẢM ƠN Trân trọng gửi lời cảm ơn CÔNG TY TRÁCH NHIỆM HỮU HẠN KỸ THUẬT SỐ TYME tạo điều kiện cho em có hội thực tập cơng ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình anh mentor anh chị trainer, em tiếp thu kiến thức quan trọng để làm ứng dụng di động Chân thành cảm ơn anh chị nhóm trainer dành nhiều thời gian, cơng sức để hướng dẫn em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Ngơ Đình Duy Quang - mentor đồng hành em thời gian vừa qua, hướng dẫn, giúp đỡ cho em tận tình lúc khó khăn cơng việc việc làm quen với môi trường mới; cảm ơn anh chị team HR traning tụi em TYME phong cách làm việc Cảm ơn anh trainer: anh Trí, anh Hiếu, anh Long, anh Đạt, anh Sơn, chị Hưng có buổi training bổ sung kiến thức cho tụi em Cuối cùng, em cảm ơn hai team Titan Kirin giúp đỡ em tháng vừa qua Cũng xin cảm ơn thầy cô khoa Cơng nghệ phần mềm nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Hồ Hữu Thịnh TP HCM, tháng 12 năm 2022 Thực tập tốt nghiệp Hồ Hữu Thịnh MỤC LỤC CHƯƠNG I: GIỚI THIỆU CÔNG TY I Giới thiệu công ty TNHH Kỹ thuật số Tyme Sản phẩm công ty II Nội dung thực tập Tìm hiểu công ty môi trường làm việc Nghiên cứu kỹ thuật III 2.1 Các công cụ làm việc 2.2 Học tập kiến thức phục vụ cho công việc trở thành lập trình viên Android 2.3 Thực dự án thực tế 10 Chi tiết dự án “Send money with QR code” 11 Giới thiệu tính send money 11 Vấn đề đặt 11 Cách thức thực hoá 11 Quy trình thực 12 Thực tập tốt nghiệp I Hồ Hữu Thịnh GIỚI THIỆU CÔNG TY Giới thiệu công ty TNHH Kỹ thuật số Tyme Tyme Group tập đoàn chuyên xây dựng ngân hàng kỹ thuật số công nghệ cao chủ yếu nhắm đến các thị trường có tốc độ phát triển nhanh Có trụ sở Singapore với Trung tâm Phát triển Sản phẩm & Công nghệ Việt Nam, Tyme thiết kế, xây dựng thương mại hóa ngân hàng kỹ thuật số cho thị trường nổi, với chuyên môn đặc biệt việc phục vụ nhóm dân cư chưa phục vụ đầy đủ chưa có điều kiện tiếp cận với ngân hàng Tyme sở hữu tảng cơng nghệ tài sản trí tuệ tồn cầu, đồng thời hợp tác với đối tác ngân hàng fintech nước để mắt ngân hàng kỹ thuật số Được thành lập vào năm 2016, Tyme Việt Nam Trung tâm Phát triển Công nghệ & Sản phẩm TymeGroup, với sứ mệnh toàn cầu trở thành người xây dựng ngân hàng nối tiếp, định hình tương lai ngân hàng thơng qua công nghệ Sản phẩm công ty Tyme Group cung cấp dịch vụ ngân hàng quốc gia: - - Nam Phi (TymeBank): có trụ sở Nam Phi, ngân hàng kỹ thuật số phát triển nhanh giới, với triệu khách hàng kể từ mắt vào tháng năm 2019 Philippines (GoTyme): có trụ sở Philippines, liên doanh Tập đoàn Gokongwei Tập đoàn Tyme, mắt vào năm 2022 Thực tập tốt nghiệp II Hồ Hữu Thịnh Nội dung thực tập Đợt thực tập với chủ đề “Lập trình ứng dụng di động” nhằm mục đích giúp sinh viên thực tập đào tạo tồn diện lập trình ứng dụng thiết bị di động, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc mơi trường chun nghiệp Tìm hiểu cơng ty môi trường làm việc Thời gian: ngày Nội dung: Tìm hiểu cơng ty, cách tổ chức phịng ban công ty Được nghe người phụ trách giới thiệu cơng ty, q trình thành lập phát triển, giá trị cốt lõi, quy trình làm việc từ cao xuống thấp, cách thức tổ chức cơng ty Ngồi ra, thực tập sinh giới thiệu cách thức làm việc công ty thời gian làm, quy định cần phải tuân thủ, cách sử dụng email công việc, phong cách làm việc chuyên nghiệp Kết quả: Hiểu thêm công ty Tyme, trình thành lập phát triển Có thêm kỹ việc sử dụng email công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Nghiên cứu kỹ thuật 2.1.Các công cụ làm việc Thời gian: ngày Nội dung: Tìm hiểu cơng cụ sử dụng q trình làm việc Khoảng thời gian này, mentor hướng dẫn thực tập sinh h tìm hiểu cơng cụ giúp ích cho cơng việc sau Một số phần mềm số như: - - - Bitbucket: Đây công cụ quản lý source code sử dụng phổ biến môi trường doanh nghiệp Điểm mạnh so với cơng cụ quản lý source code khác có lẽ nằm tính bảo mật khả tương thích với sản phẩm hệ sinh thái Atlassian Fork: Công cụ git GUI giúp trực quan hoá thao tác với git Jira: công cụ theo dõi quản lý lỗi, vấn đề dự án để làm quy trình phát triển trở nên dễ dàng Confluence: không gian làm việc nhóm, nơi kết hợp kiến thức cộng tác nhóm Các Pages cung cấp cho nhóm bạn nơi để tạo, nắm bắt cộng tác dự án ý tưởng Các Spaces giúp cấu trúc, tổ chức chia sẻ công việc, thành viên nhóm có khả hiểu biết quy định tiếp cận thông tin cách thuận lợi nhanh chóng Android studio: IDE hỗ trợ phát triển ứng dụng hệ sinh thái Android Mockoon: Công cụ hỗ trợ tạo mock api, giả lập response từ server trả Kết quả: Làm quen với công cụ làm việc nêu Thực tập tốt nghiệp Hồ Hữu Thịnh 2.2.Học tập kiến thức phục vụ cho công việc trở thành lập trình viên Android Thời gian: tuần Nội dung: Ngơn ngữ lập trình Kotlin, hệ điều hành Android, architecture pattern… Android Là hệ điều hành dựa tảng Linux thiết kế dành cho thiết bị di động có hình cảm ứng điện thoại thơng minh máy tính bảng Android phát triển Android Inc với hỗ trợ tài từ Google sau Google mua lại vào năm 2005 Ngơn ngữ lập trình Kotlin Là ngơn ngữ lập trình đa tảng, kiểu tĩnh, có mục đích chung với suy luận loại Kotlin thiết kế để tương tác với Java phiên JVM thư viện tiêu chuẩn Kotlin phụ thuộc vào thư viện lớp Java Ưu điểm lớn Kotlin có lẽ coroutines, tính hỗ trợ lập trình khơng đồng bộ, làm cho tác vụ phổ biến lệnh gọi mạng cập nhật sở liệu trở nên đơn giản hiệu Architecture pattern and Clean architecture Tìm hiểu mẫu kiến trúc để xây dựng dự án Android: MVP, MVVM, MVI MVP (Model-View-Presenter) lâu đời nhất, sinh cần phải giải vấn đề khớp nối chặt chẽ với kiến trúc MVC Trong cấu trúc MVP, presenter thao túng model cập nhật view View Presenter tách biệt với hoàn toàn giao tiếp với qua thông qua interface MVVM (Model-View-ViewModel) mơ hình mơ hình MVP, Trong kiến trúc này, vai trị quan điểm mơ hình giống MVP Trách nhiệm View tương tác với yếu tố UI trách nhiệm Model là nhà cung cấp liệu Thành phần ViewModel Đây thành phần xử lý logic sử dụng mơ hình để truy xuất liệu khơng giống Presenter, tồn có thay đổi khơng bị ảnh hưởng với vòng đời View MVI (Model-View-Intent) là mơ hình dành cho Android Người dùng thực hành động Intent → Intent trạng thái đầu vào cho model → Model lưu trữ trạng thái gửi trạng thái yêu cầu đến View → View Tải trạng thái từ Model → Hiển thị cho người dùng Clean architecture Android gồm có thành phần chính: Thực tập tốt nghiệp Hồ Hữu Thịnh Clean architecture in android - - - Presentation Layer: Layer định hiển thị nhận input từ giao diện người dùng Tầng thường implement kiến trúc MVP, MVVM, MVC, MVI, … Domain layer: lớp chứa tất model toàn bussiness logic ứng dụng, coi nơi chứa policy layer khác nơi chứa chế Domain layer nằm khơng biết layer khác bên Đây module cấp cao, không phụ thuộc vào implementation module cấp thấp mà phụ thuộc thông qua abstraction Mỗi usecase đảm nhiệm nhiệm vụ (Single responsibility principle) Data layer lớp cung cấp cách thức để truy cập nguồn liệu room database internet Các triển khai sử dụng Repository pattern Thực hiện: Đọc tài liệu hướng dẫn xem cách triển khai trực tiếp bên source code công ty Kết quả: Hiểu cách áp dụng kiến trúc phù hợp xây dựng ứng dựng Android đồng thời nâng cao kỹ lập trình với ngơn ngữ Kotlin Thực tập tốt nghiệp Hồ Hữu Thịnh 2.3.Thực dự án thực tế Sau tháng training thực hành, thực tập sinh nắm kiến thực Kotlin Android Trong tháng thứ hai, trainer hướng dẫn thực tập sinh áp dụng kiến thức học để thực project Android Chi tiết dự án cách thực nói cụ thể chương III 10 Thực tập tốt nghiệp III Hồ Hữu Thịnh Chi tiết dự án “Send money with QR code” Giới thiệu tính send money Tính Send money cho phép người dùng hệ thống ngân hàng TymeBank gửi tiền cho người dùng khác thông qua số điện thoại (trong trường hợp người gửi tiền số tài khoản người nhận người nhận khơng có số tài khoản) - Nếu số điện thoại số điện thoại người dùng TymeBank, tiền chuyển trực tiếp vào tài khoản Nếu số điện thoại số điện thoại người dùng TymeBank, tiền gửi dạng voucher, người dùng cầm mã đến đại lý PicknPay để quy đổi thành tiền mặt phải trả khoản phí Quy trình hoạt động send money Vấn đề đặt Với quy trình kể ta dễ dàng nhận thấy người dùng cần thực thao tác chuyển tiền đến cho người nhận chưa kể trình thao tác, khơng may nhập sai số điện thoại phiền dẫn đến trải nghiệm khơng tốt cho người dùng Giải pháp ta cân nhắc đến thực chuyển tiền thơng qua mã QR, quy trình diễn so với quy trình cũ Quy trình send money với QR code so sánh với quy trình truyền thống Cách thức thực hố Chia nhóm thực tập sinh khác thực với hỗ trợ từ anh chị mentor trainor 11 Thực tập tốt nghiệp Hồ Hữu Thịnh Quy trình thực - Tìm hiểu business logic tính send money Thiết kế UI cho tính Thực viết code cho tính xử lý logic liên quan Hoàn thành tiến hành update code lên Bitbucket Pair review với anh chị trainor, mentor 12 Thực tập tốt nghiệp Hồ Hữu Thịnh TÀI LIỆU THAM KHẢO [1] [Online] Available: Tyme Vietnam - Tyme Vietnam [2] [Online] Available: Collaboration software for software, IT and business teams (atlassian.com) [3] [Online] Available: Android Mobile App Developer Tools – Android Developers [4] [Online] Available: Stack Overflow - Where Developers Learn, Share, & Build Careers [5] [Online] Available: Medium – Where good ideas find you [6] [Online] Available: Clean Coder Blog 13 Thực tập tốt nghiệp Hồ Hữu Thịnh TỔNG KẾT Như vậy, vòng tháng ngắn ngủi, thực tập sinh kịp hồn thành tính Send mone via QR code Sau trình bày với anh công ty, ý tưởng đánh giá cao đưa đến người dùng thời gian sớm Chân thành cảm ơn giúp đỡ anh mentor, anh chị nhóm trainer hỗ trợ feature team Cảm ơn thầy cô giúp em hoàn thành báo cáo 14 ... thành lập trình viên ứng dụng di động, em đăng ký học môn nhập môn lập trình di động, lập trình ứng dụng di động, ngơn ngữ lập trình java, phát triển ứng dụng di động thiết bị di động? ?? Tuy nhiên học... trình ứng dụng phận khơng thể thiếu ngành công nghiệp phần mềm Với tốc độ phát triển kỹ thuật công nghệ, tốc độ phát triển ngành lập trình ứng dụng di động tăng trưởng nhanh chóng Lập trình viên ứng. .. đa quốc gia tập trung vào mảng phát triển ứng dụng di động như: Tiki, Shopee, Gojek, Vì lý này, em định chọn lập trình di động làm định hướng cho việc học tập phát triển ngành nghề tương lai Trong

Ngày đăng: 01/02/2023, 21:19

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

Tài liệu liên quan