1. Trang chủ
  2. » Tất cả

Báo Cáo Thực Tập Lập Trình Ứng Dụng Android.pdf

17 17 0

Đ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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP LẬP TRÌNH ỨNG DỤNG ANDROID Công ty thực tập Công ty TNHH LINE Việt Nam Người phụ trách Trần Hùng Anh Thực tập sinh Bùi Dương[.]

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP LẬP TRÌNH ỨNG DỤNG ANDROID Công ty thực tập : Công ty TNHH LINE Việt Nam Người phụ trách : Trần Hùng Anh Thực tập sinh : Bùi Dương Duy Khang TP Hồ Chí Minh, tháng 12 năm 2022 LỜI MỞ ĐẦU Ngày nay, ngày nhiều lĩnh vực xã hội thực công chuyển đổi số Hầu hết dịch vụ chuyển sang tảng trực tuyến hay công cụ phần mềm đặc biệt chuyển thành phần mềm thiết bị điện thoại di động Các thiết bị di động có đa dạng hệ điều hành khác nhau, dẫn đến hệ điều hành cần kit phát triển riêng Tuy nhiên phần đa thị trường hệ điều hành thuộc iOS Android Đặc biệt Android hệ điều hành trải dài nhiều phân khúc giá, nói Android hệ điều hành di động sử dụng rộng rãi giới Cũng lý kỹ lập trình ứng dụng Android kỹ mà nhiều công ty cần để thực việc chuyển đối số dịch vụ hay tăng khả cung cấp sản phẩm Sau khoảng thời gian học tập trường, có mong muốn tham gia trải nghiệm quy trình cơng nghệ, phương thức xây dựng phát triện ứng dụng Android thực tế Em chọn tham gia thực tập cơng ty TNHH LINE Việt Nam vị trí Android Fresher để thực mong muốn Bùi Dương Duy Khang LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty TNHH LINE Việt Nam 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 chị team Appdev, em tiếp thu kiến thức quan trọng để làm ứng dụng Android có hiệu cao Chân thành cảm ơn anh chị nhóm train cho fresher bỏ nhiều thời gian, công sức để hướng dẫn chúng em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Trần Hùng Anh, training Android, hướng dẫn, giúp đỡ cho em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với mơi trường mới, góp ý hỗ trợ chỉnh sửa slide thuyết trình chỉnh sửa tài liệu dự án; cảm ơn anh Nguyễn Anh Khôi, training em thêm kiến thức Android framework ngơn ngữ lập trình Kotlin anh chị khác team AppDev góp ý, hỗ trợ em bổ sung chỉnh sửa kiến thức thuyết trình Cũng xin cảm ơn thầy 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 Bùi Dương Duy Khang Tp Hồ Chí Minh, ngày 13 tháng 12 năm 2022 Bùi Dương Duy Khang NHẬN XÉT CỦA KHOA Bùi Dương Duy Khang MỤC LỤC MỤC LỤC Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty TNHH LINE Việt Nam Sản phẩm công ty Chương 2: Nội dung thực tập Tìm hiểu cơng ty kỹ công ty Nghiên cứu kỹ thuật Thực thuyết trình 13 Lịch làm việc 13 TÀI LIỆU THAM KHẢO 15 TỔNG KẾT 16 Bùi Dương Duy Khang Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty TNHH LINE Việt Nam Công ty TNHH LINE Việt Nam trung tâm phát triển Tập đoàn LINE Việt Nam sát cánh tập thể kỹ sư LINE toàn cầu để xây dựng tối ưu ứng dụng, dịch vụ đa dạng quanh hệ sinh thái LINE Sản phẩm cơng ty Tập đồn LINE có nhiều sản phẩm công nghê khác phục vụ cho nhiều mặt đời sống Các sản phẩm bật kể đến 2.1 LINE LINE ban đầu ứng dụng cung cấp dịch vụ nhắn tin, gọi thoại miễn phí dành cho người dùng LINE phát triển ban đầu nhằm hỗ trợ giao tiếp hoàn cảnh thiên tai Nhật Bản gặp phải thiên tai kép động đất, sóng thần Hiện LINE phát triển với nhiều tính hơn, phát triển trở thành mạng xã hội Bùi Dương Duy Khang 2.2 LINE NEWS LINE NEWS dịch vụ cung cấp chọn lọc nội dung tin tức phổ biến Châu Á nhằm mục đích cung cấp nội dung có giá trị làm phong phú thêm sống hàng ngày 2.3 LINE Doctor Bùi Dương Duy Khang LINE Doctor ứng dụng cung cấp dịch vụ y tế từ xa cho phép người dùng đặt lịch hẹn, toán, nói chuyện với bác sĩ thơng qua gọi video Có thể nói ứng dụng hỗ trợ nhận tư vấn y tế nhà bạn khơng có thời gian đến bệnh viện muốn tránh đám đông 2.4 LINE MUSIC LINE MUSIC ứng dụng hỗ trợ nghe nhạc trực tuyến Nhật Bản với 70 triệu hát, tiếng Nhật tiếng nước Người dùng nghe hát thịnh hành, xem video âm nhạc tận hưởng tính hát theo Bùi Dương Duy Khang Bùi Dương Duy Khang Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Lập trình game 3D Android” 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 game 3D Android, đồ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 phát triển game chuyên nghiệp Tìm hiểu cơng ty kỹ công ty Thời gian : ngày Nội dung : Giới thiệu công ty, cách tổ chức cơng ty Được giới thiệu q trình hình thành, phát triển công ty Đồng thời giới thiệu công cụ giao tiếp sử dụng công ty Nhận thiết bị cung cấp để làm việc tiến hành cài đặt tài khoản, hoàn thành yêu cầu workflow cần thiết Kết : Hiểu thêm cơng ty LINE Việt Nam, q trình thành lập phát triển Có thêm hiểu biết chức trang web công ty sử dụng Calendar, Mail, Confluence,… Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc Thời gian : tuần Nội dung : Tìm hiểu cơng cụ sử dụng trình làm việc Trong thời gian thực hành công cụ công ty sử dụng nhứ confluence, slack, LINE, Mail Đọc quy định tin nhắn, tạo thread Tìm hiểu vềcơng cụ dùng để lập trình, phát triển ứng dụng Android Android Studio, git enterprise edition, Thực : Thực hành sử dụng phần mềm nêu Kết : Hiểu biết thêm nguyên tác, cách sử dụng phần mềm phát triển, quản lý mã nguồn, quản lý án 2.2 Tìm hiểu ngôn ngữ Kotlin Thời gian : tháng Nội dung : Được học ngôn ngữ Kotlin từ đến nâng cao - Cú pháp Kotlin Bùi Dương Duy Khang 10 Tìm hiểu cú pháp Kotlin cách khai báo biến, vòng lặp, câu lệnh điều kiện, … Tìm hiểu cách biên dịch từ Kotlin sang Java, cách sử dụng Java song song với Kotlin project - Hướng đối tượng Kotlin Hướng đối tượng phương pháp lập trình sử dụng rộng rãi nên Kotlin có hỗ trợ Tìm hiều cách tạo, tính chất class, interface, abstract class, mối quan hệ, access modifier, - Collection, lamda expression Kotlin Tìm hiểu collection hỗ trợ kotlin list, mutable list, set, mutabel set, map, … tìm hiểu lamda expression việc sử dụng collection - Đa luồng, race condition, coroutine Kotlin Tìm hiểu việc kotlin có hỗ trợ chế Thread coroutines nhằm quản lý tác vụ đa luồng Tìm hiểu cách tạo coroutines, scope, job, cách xử lý race condition Kotlin sử dụng biến Atomic, sử dụng withContext hay sử dụng Channel Thực : - Học đầy đủ kiến thức yêu cầu - Tự thực hành, làm thuyết trình Kotlin cho team Kết : - 2.3 Hiểu cấu trúc cú pháp Kotlin Hiểu cách biên dịch từ Kotlin sang Java Học thêm coding convention LINE Hiểu sử dụng coroutine, làm tiền đề cho việc tối ưu đa luồng ứng dụng Android sau Lập trình Android Nội dung: Các kiến thức để xây dựng ứng dụng Android - Android components Tìm hiểu công dụng, cách sử dụng android component hay android entry points tức Activity, Service, Content Provider, Broadcast receiver Đây thành phần quan trọng cấu thành nên ứng dụng android số sử dụng cơng nghệ nhằm đơn giản hóa việc sử dụng Bùi Dương Duy Khang 11 - View, View Group Custom View Tìm hiểu cách mà View đưa lên hình, tức bước onLayout, onMeasure, onDraw Cách áp dụng chúng để tạo nên Custom View hay Custom View Group - Layout Android Tìm hiểu layout trịn Adnroid Layout ViewGroup Nên có bước khởi tạo giống ViewGroup Nên dựa vào tìm hiểu điểm mạnh yếu layout cung cấp sẵn Android Linear Layout, Frame Layout, Relative Layout, Constraint Layout, - Các kiến trúc thường dùng Android Tìm kiến trúc thường sử dụng ứng dụng Android MVC, MVVM, MVP Cũng xem qua kiến trúc phổ biết MVI/ Repository model - Android lifecycle Tìm hiểu vịng đời Activity, Fragment ảnh hưởng lớn đến việc phát triển ứng dụng Android Ví dụ biết Fragment khởi tạo gắn vào Activity, … - Memory leak Android Tìm hiểu memory leak Android Lý hình nên memory leak mà Kotlin Java hỗ trợ Garbage Collection Tìm hiểu cơng cụ sử dụng nhằm phát memory leak Thực : - Học đầy đủ kiến thực Android - Tự thực hành hồn thiện, tiến hành thuyết trình cơng nghệ tìm hiểu Kết : 2.4 Hiểu thực ứng dụng Android Hiểu chức class Android Framework Hiểu lifecyle component Android Có thể áp dụng cách tìm giải memory leak Android vào thực tế Jetpack Android Bùi Dương Duy Khang 12 Nội dung : Tìm hiểu cơng nghệ Jetpack Google Android - Navigation Component Navigation Component thư viện hỗ trợ cho việc navigation Activity hay Fragment với Navigation Component hỗ trợ đáp ứng đựng Navigation Principle Google cung cấp Dễ dàng quản lý phương pháp cũ việc Intent, Fragment manager,… - Work Manager Work Manager thư viện hỗ trợ cho Background task mà cần độ persistence cao (tức tồn qua ngắt process reset thiết bị) - Retrofit Retrofit thư viện hỗ trợ kết nối API với RestFul API Giúp giảm bớt boiler plate code việc tử dụng okhttp Ngồi cịn tìm hiểu thêm Moshi Converter, thư viện hỗ trợ convert từ file JSON sang object class định nghĩa - Room database: Room database thư viện hỗ trợ cho việc lưu trữ liệu local storage sử dụng SQLite Việc sử dụng Room database giúp hạn chế boiler plate code nhằm kết nối với SQLite tạo nên database - Data binding: Là phương pháp liên kết biến file xml cung cấp Google nhằm việc giảm bớt code gán từ biến lên giá trị thành phần inflate từ file xml Tuy nhiên phương pháp khó sử dụng dự án lớn mà phù hợp dự án tầm nhỏ trung Do việc binding dễ gây lỗi build yêu cầu phải build lại, gây tốn thời gian build lại dự án lớn Thực hiện: - Học đầy đủ kiến thực yêu cầu Bùi Dương Duy Khang 13 - Tự thực hành hồn thiện, tiến hành thuyết trình cơng nghệ tìm hiểu Kết quả: - Hiểu cơng nghệ mới, điểm mạnh, điểm yếu - Hiểu cấu trúc, cách hoạt động công nghệ Thực thuyết trình Sau tháng thực thuyết trình cơng nghệ hay ngơn ngữ lập trình Kotlin đồng thời trình bày giao báo cáo cho người hướng dẫn để có điều chỉnh kịp thời kiến thức Các thuyết trình thực sau • Coroutines Kotlin: Nội dung thuyết trình bao gồm Coroutine scope, suspend function, visualize coroutine, race conditions, • Navigation Component: Nội dung thuyết trình navigation principle, thành phần, cách hoạt động Navigation Component, cách sử dụng Navigation Component, • Work Manager: Nội dung thuyết trình lý sử dụng, cách hoạt động Work Manager, thành phần Work Manager cach sử dụng Work Manager • Các lưu ý layout Constrain Layout: Nội dung thuyết trình bao gồm bước tải screen lên hình, lưu ý sử dụng layout, double taxation, tree hierarchy, cách hoạt động Constrain Layout, cách sử dụng Constraint Layout Lịch làm việc Tuần Công việc - - Người hướng dẫn Mức độ hoàn thành Nhận xét người hướng dẫn Tìm hiểu cơng ty, cách Anh Hồng tổ chức cơng ty Ngọc Thành Làm quen với công cụ làm việc công ty Học cách trao đổi, làm Bùi Dương Duy Khang 14 việc qua Mail, Slack, Confluence, Tìm hiểu ngơn ngữ lập Anh Nguyễn trình Kotlin Anh Khơi Tìm hiểu ngơn ngữ lập trình Kotlin nâng cao Chuẩn bị thuyết trình lần Kotlin Học Android: - Components - Lifecycle 6,7,8 - MVVM, MVC, MPV - Layouts - Navigation Thuyết trình Android lần - Chủ đề: Navigation component Học Android: - Data Binding 9,10,11 - View Binding - Memory leak - Work Manager Thuyết trình Android lần 12 - Chủ đề: Work Manager Học Android: - View, View groups 13,14,15 - Custome view - Layout Process - Constraint Layout Thuyết trình Android lần - Chủ đề: Các lưu ý 16 layout Contrains Layout 17, 18, Tìm hiểu, báo cáo cấu trúc 19, 20 chức project LINE 3,4 - Anh Nguyễn Anh Khôi Anh Nguyễn Anh Khôi Anh Nguyễn Anh Khôi Anh Nguyễn Anh Khôi Anh Nguyễn Anh Khôi Anh Nguyễn Anh Khôi Anh Trần Hùng Anh Anh Trần Hùng Anh Anh Trần Hùng Anh Bùi Dương Duy Khang 15 TÀI LIỆU THAM KHẢO Phần báo cáo [1] LINE, LINE|always at your side Phần Android [1] Google, Kotlin coroutines on Android | Android Developers [2] Google, Guide to app architecture | Android Developers [3] Google, Documentation | Android Developers [4] Google, Background Work Overview | Android Developers Phần Kotlin [1] Google, Kotlin coroutines on Android | Android Developers [2] Google, Learn the Kotlin programming language | Android Developers Bùi Dương Duy Khang 16 TỔNG KẾT Như vậy, vòng tháng ngắn ngủi, em có cho tảng kinh nghiệm vững việc xây dựng ứng dụng Android Các thuyế trình trình bày giúp khắc sâu kiến thức training áp dụng kiến thức vào dự án thực Chân thành cảm ơn giúp đỡ anh chị team Appdev nhiệt tình hỗ trợ, trao đổi kiến thức để em hồn thành khóa fresher (thực tập) Bùi Dương Duy Khang ... Dương Duy Khang Chương 2: Nội dung thực tập Đợt thực tập với chủ đề ? ?Lập trình game 3D Android” 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 game 3D Android, đồng thời rèn... Hiểu sử dụng coroutine, làm tiền đề cho việc tối ưu đa luồng ứng dụng Android sau Lập trình Android Nội dung: Các kiến thức để xây dựng ứng dụng Android - Android components Tìm hiểu cơng dụng, ... hiểu công cụ sử dụng nhằm phát memory leak Thực : - Học đầy đủ kiến thực Android - Tự thực hành hoàn thiện, tiến hành thuyết trình cơng nghệ tìm hiểu Kết : 2.4 Hiểu thực ứng dụng Android Hiểu

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

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w