1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thực tập tốt nghiệp báo cáo thực tập tốt nghiệp tìm hiểu lập trình android

18 16 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

Thông tin cơ bản

Tiêu đề Tìm hiểu lập trình Android
Tác giả Đặng Thanh Phương
Người hướng dẫn ThS. Lê Bá Cường
Trường học Học viện Kỹ thuật Mật mã
Chuyên ngành Công nghệ thông tin
Thể loại Báo cáo thực tập tốt nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 18
Dung lượng 492,8 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT Mà ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ THỰC TẬP TỐT NGHIỆP BÁO CÁO THỰC TẬP TỐT NGHIỆP Tìm hiểu lập trình Android Ngành Công nghệ thông tin Mã số 7 48 02 01 Sinh viên thực hiện[.]

Trang 1

 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ

 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 

THỰC TẬP TỐT NGHIỆP BÁO CÁO THỰC TẬP TỐT NGHIỆP Tìm hiểu lập trình Android

 Ngành: Công nghệ thông tin

Mã số: 7.48.02.01

  Đặng Thanh Phương – CT030144

   Đơn vị thực tập:

  Công tyTNHH Công nghệ Hola 360

   Người quản lý thực tập:

  ThS Lê Bá Cường

Trang 2

Hà Nội - 2023

Mục lục

DANH MỤC HÌNH ẢNH iii 

LỜI MỞ ĐẦU iv 

CHƯƠNG 1 Giới thiệu chung về Cơ sở thực tập 1

1.1 Thông tn doanh nghiệp 1

1.1.1 Giới thiệu chung 1

1.1.2 Thông n liên hệ 2

1.2 Thông tn về đơn vị hực ập 2

CHƯƠNG 2 Nội dung thực tập 3

2.1 Training 3

2.1.1 Quy trình thực hiện công việc 3

2.1.2 Văn hoá code 3

2.2 Các công nghệ sử dụng 3

2.2.1 Ngôn ngữ Kotlin 3

2.2.2 Mô hình MVVM 4

2.2.3 Kiến trúc phần mềm Clean Architecture 5

2.2.4 Các công cụ ch hợp khác 6

2.3 Sản phẩm 10

CHƯƠNG 3 Kết quả thực tập 11

3.1 Kế quả đạ được : 11

3.2 Khó khăn : 11

3.3 Hướng phá riển 11

3.4 Đánh giá về công y 12

Trang 3

TÀI LIỆU THAM KHẢO 13

DANH MỤC HÌNH ẢNH

Hình 1 Sơ đồ Clean Architecture 5

Trang 4

LỜI MỞ ĐẦU

Sau quá trình học tập xuyên suốt bốn năm tại trường, thì năm thứ năm tại kỳ thứ hai chính là thời gian mà khoá Công nghệ thông tin, trường Học viện kỹ thuật Mật Mã, dành cho sinh viên đi thực tập Thực tập tốt nghiệp là cách tốt nhất để sinh viên có thể học hỏi kinh nghiệm thực tế và vận dụng những kiến thức đã học tại trường Quá trình thực tập tốt nghiệp cũng là quá trình đào tạo một nhân viên mới trong công ty Sinh viên thực tập sẽ làm việc cùng với các nhân viên trong công ty Hiện nay, có nhiều hình thức thực tập, đại đa số sinh viên thực tập sẽ được trả lương và cam kết sử dụng của doanh nghiệp sau khi tốt nghiệp Đối với sinh viên thì hoạt động thực tập tốt nghiệp có vai trò quan trọng không chỉ với quá trình học tập mà còn với cả sự nghiệp của sinh viên sau này Kết quả thực tập tốt nghiệp thường được tính điểm với trọng số tương đối lớn trong học kỳ, ảnh hưởng đến kết quả xếp loại tốt nghiệp của sinh viên Quá trình thực tập áp dụng các kiến thức học được trong nhà trường vào thực tế công việc giúp sinh viên nhận biết được điểm mạnh, điểm yếu của mình và cần trang

 bị thêm những kiến thức, kỹ năng gì để đáp ứng nhu cầu công viêc Đây là cơ hội để  bạn công việc hàng ngày tại một công ty, văn hóa và môi trường làm việc, cũng là cơ  hội để bạn hiểu thêm về lĩnh vực ngành nghề mà bạn định hướng

Thực tập giúp nhân viên mở rộng mối quan hệ trong thời gian thực tập: việc này cực kỳ quan trọng Cho dù sau này bạn làm trong lĩnh vực gì, ngành nghề gì đi nữa,

mở rộng các mối quan hệ sẽ tạo cho bạn nhiều lợi thế sau này Khi bạn đi thực tập có thể vận dụng thời gian này để làm quen với các anh, chị đồng nghiệp, học hỏi và xây dựng mối quan hệ Những biểu hiện tốt trong quá trình thực tập có thể giúp bạn được giữ lại làm nhân viên chính thức sau khi ra trường

Trang 5

Thị trường lao động hiện nay ngày càng gay gắt, rất nhiều sinh viên sau khi ra trường thất nghiệp một thời gian dài Chính vì vậy, từ đầu năm 2022 tới nay em đã đến

nhiều điều từ kiến thức công việc, kinh nghiệm sống, cách làm việc từ các anh, chị trong công ty Giúp em áp dụng được các kiến thức đã học vào thực tiễn, hiểu rõ hơn

về công việc thuộc chuyên ngành mà em đang theo học và định hướng rõ hơn về công việc sau khi ra trường

Trong thời gian quá trình thực tập tại công ty, em được anh Manager người quản

lý trực tiếp giao cho công việc nghiên cứu xây dựng quy trình ứng cứu sự cố xử lý sự

cố an toàn an ninh mạng Các quy trình đã được nghiên cứu đánh giá và áp dụng ở  chính công ty Vì vậy, em đã quyết định chọn đề tài “Tìm hiểu lập trình Android”, để  báo cáo kết quả trong quá trình thực tập tại Công ty TNHH Hola 360 Đề tài bao gồm

3 phần:

● Chương 1: Giới thiệu chung về địa điểm thực tập

● Chương 2: Nội dung thực tập

● Chương 3: Kết luận

Em xin cảm ơn tập thể anh chị ở công ty TNHH Công nghệ Hola 360 đã giúp đỡ em trong quá trình thực tập tại đây

 Đặng Thanh Phương

Trang 6

CHƯƠNG 1 Giới thiệu chung về Cơ sở thực tập 1.1 Thông tin doanh nghiệp

1.1.1 Giới thiệu chung  Công ty TNHH là công ty có hai thành viên trở lên, thành viên chịu trách nhiệm về các khoản nợ và các nghĩa vụ tài sản khác của doanh nghiệp trong phạm vi số vốn đã cam kết góp vào doanh nghiệp, nhưng không quá 50 thành viên.Phần vốn góp của tất

cả các thành viên dưới bất kỳ hình thức nào đều phải đóng đủ ngay khi thành lập công ty

tương đối nhỏ Và không ngừng mở rộng quy mô qua các năm Cho tới nay số lượng thành viên của công ty đã lên tới hơn 50 người Công ty chuyên làm product bao gồm các sản phẩm về web, app android và app ios Cho tới nay công ty đã triển khai trên

500 ứng dụng với người dùng là khách hàng trên toàn cầu Hướng phát triển của công

ty là không ngừng sáng tạo để tạo ra những ứng dụng theo phương châm: “sang, xịn, mịn, và có tính ứng dụng cao” để phục vụ người dùng một cách tốt nhất

Trong năm 2016, công ty được thành lập và mục tiêu đề ra: bắt đầu cho khởi nguồn của ý tưởng và sự nhiệt huyết, lên kế hoạch phát triển dài hạn và thực hiện mục tiêu ngắn hạn Năm 2017, khởi tạo đội ngũ với mục tiêu: phát triển đội ngũ nhân lực và tìm hiểu mở rộng thị trường sản xuất sản phẩm Năm 2018, duy trì đà tăng trưởng: thực hiện kế hoạch phát triển dài hạn và duy trì đà tăng trưởng của năm 2017 Năm 2019, khó khăn và thử thách: một năm đầy thử thách từ kinh tế cho tới con người Nhưng cũng mở ra một con đường mới cho phát triển sản phẩm Thay vì tiếp tục phát triển ứng dụng sử dụng trong nước, công ty chuyển sang đánh trọng tâm vào thị trường châu Âu, phát triển các ứng dụng phù hợp với thị hiếu của thị trường nước ngoài Năm

2020, cơ hội phát triển: vượt qua ảnh hưởng và khó khăn của đại dịch covid-19, dù  phải thực hiện “work from home” nhưng toàn đội vẫn hoàn thành tiến độ công việc  Năm 2021, chuyển đổi cơ cấu sản xuất: tập chung phát triển sản phẩm phục vụ tốt cho người dùng và tái cơ cấu lại hệ thống nhân sự Năm 2022, phát triển nhân lực: tập chung phát triển nguồn nhân lực “lấy con người làm chung tâm” Thực hiện kế hoạch

Trang 7

ngắn hạn, lên kế hoạch dài hạn Mở rộng quy mô công ty, mở rộng thị trường, tạo ứng dụng mới trên nhiều lĩnh vực

Công ty chia ra làm 2 bộ phận bao gồm: bộ phận Hr và bộ phận Dev với chức vụ cao nhất là tổng giám đốc - người trực tiếp điều hành công ty và đạo diện về mặt pháp

lý của công ty Bộ phận hr bao gồm: nhân viên hr và nhân viên kế toán Bộ phận dev đợcc chia ra thành 4 team gồm: team Android – chuyên làm về mảng phát triển ứng dụng Android, team Ios – chuyên làm về mảng phát triển ứng dụng Ios, team web –  chuyên làm về mảng phát triển website và cuối cùng là team Backend

1.1.2 Thông tin liên hệ

● Đại diện pháp luật: Ngô Quốc Hoàn

1.2 Thông tin về đơn vị thực tập

Team Android là một trong số các team của công ty, chuyên làm các sản phẩm phát triển ứng dụng trên Android từ các ứng dụng giải trí như nghe nhạc, xem phim cho tới các ứng dụng học tập và game Team android là một đội ngũ phát triển đầy tâm huyết

và tính sáng tạo Các thành viên luôn làm việc với sự nhiệt tình và tính ham học hỏi, không ngừng sáng tạo

Trang 8

CHƯƠNG 2 Nội dung thực tập 2.1 Training

2.1.1 Quy trình thực hiện công việc Tìm hiểu về cách viết báo cáo, cách thức log time, các nội quy, quy định của công

ty về công việc, cách ứng xử trong công ty…

Tuỳ vào từng mục đích mà có các cách báo cáo khác nhau nhưng mọi việc chao đổi liên quan tới công việc đều phải thực hiện qua mail nội bộ để có thể dữ lại làm bằng chứng và bảo mật tuyệt đối cho công ty Trong công ty tuyệt đối không được dùng điện thoại để ghi hình, mạng công ty sẽ chặn 1 số trang web để tăng tính bảo mật cho công

ty Không tự tiện mang máy tính cá nhân vào công ty, không cắm bộ nhớ ngoài vào máy tính của công ty, không được phép mang dự án ra ngoài công ty khi chưa được  phép Hàng ngày trước khi về phải log time báo cáo lại những gì đã thực hiện trong ngày và những gì chưa hoàn thành theo tiến độ, lý do, vướng mắc, cách khắc phục 2.1.2 Văn hoá code

Phải code theo đúng rule chung của công ty Từ việc đặt tên biến tới cách comment, số lượng dòng code trong 1 class,…

2.2 Các công nghệ sử dụng

Theo yêu cầu của công ty là sử dụng công nghệ mới, hiện đại, thì em có đưa ra một

số công nghệ được sử dụng như sau:

2.2.1 Ngôn ngữ Kotlin Kotlin là một loại ngôn ngữ lập trình dạng tĩnh và được sử dụng dành cho những

ứgdụng thuộc dạng đa nền tảng hiện đại Hiện nay, người ta đã chính thức phát hành  phiên bản 1.0.Kotlin và nó được tạo ra cũng như phát triển bởi các đội ngũ lập trình nằm trong nhóm JetBrains Sự xuất hiện của ngôn ngữ lập trình Kotlin đã khiến cho ngôn ngữ Java trong Android bị “soán ngôi” Từ đó, Kotlin trở thành một trong những ngôn ngữ thông dụng hơn với Android Kotlin đã được thiết kế với khả năng tương tác cùng với java code cũng như có thể khai thác những gì có ở bên trong Java Class Library Từ đây, sẽ phát sinh định nghĩa Kotlin Android là gì? Hãy cùng tìm hiểu định

Trang 9

nghĩa này nhé! Kotlin Android bạn có thể một cách đơn giản là một trong những ứng dụng của Android có khả năng sử dụng ngôn ngữ lập trình Kotlin Sau khi trở thành ngôn ngữ lập trình cơ bản của Android vào năm 2019 thì Kotlin được Google hỗ trợ  rất đầy đủ để có thể được tham gia đầy đủ vào các gói cài đặt của IDE để có thể thay thế cho trình biên dịch của Java dạng tiêu chuẩn

Ưu điểm: code ngắn gọn dễ hiểu, được sự hậu thuẫn mạnh của google với những api được phát triển mới hàng năm phụ giúp rất nhiều cho việc code một cách dễ dàng hơn mà java không có

2.2.2 Mô hình MVVM 

Kể từ khi Microsoft cho ra mắt hai nền tảng phát triển ứng dụng mới đó là WPF và Silverlight Trên nên tảng đó đã có nhiều thay đổi trong việc xử lý sự kiện và binding

dữ liệu, giữa các tầng của ứng dụng với nhau Vì vậy, nảy sinh ra nhu cầu phải có một

mô hình phát triển ứng dụng mới phù hợp hơn Do vậy Model – View – ViewModel (MVVM) pattern ra đời và ngày càng trở nên phổ biến, phát triển hơn

Mô hình MVVM cho phép tách biệt dữ liệu (Model), mã thực thi (logic hay ViewModel) và giao diện người dùng (View)

View: Mô hình mvvm cho phép tách biệt dữ liệu (Model), mã thực thi (logic hay ViewModel) và giao diện người dùng (View)

Model: Mô hình mvvm cho phép tách biệt dữ liệu (Model), mã thực thi (logic hay ViewModel) và giao diện người dùng (View)

ViewModel: Mô hình mvvm cho phép tách biệt dữ liệu (Model), mã thực thi (logic hay ViewModel) và giao diện người dùng (View)

Ưu điểm:

đồng nghĩa bạn sẽ phải thay đổi ở Controller

chẽ với nhau

nhiều code được viết thêm vào

Trang 10

 MVC phù hợp với các dự án lớn Với các dự án nhỏ, mô hình này khá cồng kềnh và tốn nhiều thời gian trong việc trung chuyển dữ liệu

 Nhược điểm:

đồng nghĩa bạn sẽ phải thay đổi ở Controller

chẽ với nhau

nhiều code được viết thêm vào

kềnh và tốn nhiều thời gian trong việc trung chuyển dữ liệu

2.2.3 Kiến trúc phần mềm Clean Architecture

Clean Architecture là kiến trúc phần mềm thiết kế dựa trên Dependency Rule, được đề xuất vào năm 2012 bởi Robert C Martin

Clean architecture không bị giới hạn trong một ứng dụng mà nó còn có thể được áp dụng cho cả một hệ thống (tập các ứng dụng) Đây cũng là một trong những điểm vượt trội so với MVC, MVP hay MVVM.

Trang 11

 b) Sơ đồ Clean Architecture

Hình 1 Sơ đồ Clean Architecture

Đầu tiên thì ta cần biết Dependency rule là gì?, ta sẽ tìm hiểu nó thông qua sơ đồ ở trên:

 Mô hình sẽ chia thành nhiều vòng tròn, mỗi vòng tròn tương ứng với 1 layer

 Vị trí của vòng tròn nói lên cấp (level) của chúng, vòng tròn càng xa tâm thì có cấp càng cao

 Dependency rule là quy tắc quy định rằng:

o Layer trong (level thấp hơn) không được chứa source code của layer ngoài (có level cao) hơn

o Bất cứ thay đổi ở layer ngoài không làm ảnh hưởng tới layer trong, có nghĩa là sự phụ thuộc hướng vào trong

 Clean architecture thông thường chia thành 4 layer: entities, use cases, interface adapters và Frameworks and drivers Nhưng tuỳ theo hệ thống, chúng ta có thể chia thành nhiều layer hơn nhưng phải tuyệt đối tuân thủ vào dependency rule

 Khi chúng ta đi vào trong từ layer level cao xuống các layer thấp hơn, mức độ trừu tượng hoá sẽ được tăng lên (mức độ phụ thuộc giảm đi)

c)Ưu điểm

 Giúp business logic trở nên rõ ràng

 Với việc tách biệt thành các layer và tuân theo dependecy rule, hệ thống của chúng ta sẽ dễ dàng test, maintain và thay đổi

 Khi một thành phần như giao diện, database work…bị lỗi thời, chúng ta có thể

Trang 12

d) Nhược điểm

 Clean architecture do phân tách cấu trúc thành nhiều tầng nên dẫn đến việc số lượng code sinh ra là rất lớn, không phù hợp cho các dự án nhỏ

 Khó hiểu, khó áp dụng với những người mới bắt đầu

2.2.4 Các công cụ tích hợp khác  Ngoài các công cụ chính để phát triển ứng dụng android, cần tích hợp một số công

cụ thông minh tự động khác

Figma – công cụ thiết kế giao diện: Với thành công của phiên bản dùng thử vào cuối năm 2015, Figma đã chính thức ra mắt vào tháng 09 năm 2016 và tạo được vị trí riêng của mình trong cộng đồng thiết kế Đến tháng 10 năm 2019, Figma Community ra đời Từ đây, các nhà thiết kế có thể xuất bản tác phẩm của mình để người khác xem và phối lại

Tháng 04 năm 2021, Figma phát triển FigJam, một công cụ cho phép người dùng

sử dụng các công cụ ghi chú, vẽ hay thêm các biểu tượng cảm xúc vào các dự án cộng tác

Ưu điểm:

windown, macos, linux,…

trong thời gian thực Với Figma, làm việc nhóm từ xa trở nên dễ dàng khi nó cho phép những người khác trong dự án có thể cộng tác về thiết kế, cung cấp  phản hồi, kiểm tra tiến độ công việc hoặc gắn cờ các vấn đề có thể xảy ra theo thời gian thực

suất làm việc Việc quản lý màu sắc, nội dung hình ảnh hay hoạt ảnh đều trở  nên dễ dàng hơn bao giờ hết

cùng lúc cũng được tích hợp trên Figma Với tính năng này, bạn có thể sáng

Trang 13

tạo nhiều layout với các kích thước khác nhau trên cùng một sản phẩm mà không cần phải tạo thêm tệp mới

dạng vector nên chất lượng của hình ảnh sẽ không bị giảm khi bạn thay đổi kích thước của chúng Hình ảnh xuất ra cũng sẽ giữ được độ sắc nét với nhiều

Jira - ứng dụng quản lý theo dõi tiến trình dự án

Tính năng:

 phù hợp với nhiều loại hình dự án, nhiều đối tượng người dùng

liệu

chính xác và hiệu quả

sử dụng Thành phần cơ bản:

Trang 14

 Roles: Xác lập các role của dự án, Mục này xác nhận ai tham gia vào dự án, những người add vào role thì mới có thể tạo Resource Allocation và project team sau này Nhiều người có thể vào 1 role

work 

của dự án Ai là team lead của group nào thì sẽ được approve worklog cho member của group đó Project management được quyền approve cho toàn bộ thành viên dự án

lấy từ file kế hoạch doanh số Nếu dự án làm theo Scrum thì sẽ là Product của Sprint tương ứng

việc, điều kiện, xác nhận, và sau chức năng Trang này sẽ cung cấp một cái nhìn tổng quan và các bước cơ bản cho từng phần của công việc của bạn

Bitbucket - dịch vụ web giúp lưu trữ mã nguồn và tất cả các phiên bản thực hiện trên code, phát triển bởi công ty Atlassian

Bitbucket cho phép người dùng quản lý các phiên bản phân tán (Git hoặc Mercurial) của các thành viên trong dự án Theo đó thì người đứng đầu dự án có thể theo dõi, đánh giá tiến độ công việc và kịp thời đưa ra các phương án tối ưu để cải tiến

mã nguồn

Tính năng nôt bật:

giúp mọi người trong nhóm chia sẻ kiến thức lẫn nhau

 branch cụ thể

gần như chính xác những gì mà developer đang muốn tìm kiếm

Ngày đăng: 16/05/2023, 16:25

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w