Phát triển Mạng Xã Hội Từ Thiện Đa Nền Tảng trên React Native

Phát triển mạng xã hội từ thiện đa nền tảng với React Native. Ứng dụng kết nối cộng đồng, hỗ trợ hoạt động thiện nguyện hiệu quả, dễ dàng.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2022

95
0
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI NÓI ĐẦU

MỤC LỤC

LỜI CẢM ƠN

DANH MỤC BẢNG

DANH MỤC HÌNH ẢNH

1. CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1.1. Tổng quan đề tài

1.2. Lý do chọn đề tài

1.3. Mục đích đề tài

1.4. Đối tượng và phạm vi đề tài

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Giới thiệu React Native

2.2. Kiến trúc React Native

2.3. Chương trình “Hello World” đơn giản

2.4. .NET Core web API

2.5. HTTP status code

3. CHƯƠNG 3: MẠNG XÃ HỘI TỪ THIỆN

3.1. Giới thiệu hệ thống

3.2. Phân tích hệ thống

3.3. Biểu đồ Use Case của hệ thống

3.4. Đặc tả use case

3.5. Lược đồ cơ sở dữ liệu

3.6. Danh sách api mạng xã hội từ thiện

3.7. Các tính năng đã phát triển

3.7.1. Login với google và user

3.7.2. Trích dẫn tin tức từ nhiều nguồn

3.7.3. Chi tiết từng bài viết

3.7.4. Danh sách bài đăng

3.7.5. Comment bài viết

3.7.6. Danh mục đấu giá bài đăng

3.7.7. Màn hình thông báo center

3.7.8. Màn hình thông tin Account, User

4. CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

4.1. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Mạng Xã Hội Từ Thiện Đa Nền Tảng Giới Thiệu Tổng Quan

Mạng xã hội từ thiện là một nền tảng quan trọng, nơi tập hợp và chia sẻ thông tin về các hoạt động từ thiện từ nhiều nguồn khác nhau. Mục tiêu chính là xây dựng một cộng đồng có chung chí hướng từ thiện, nơi mọi người có thể đăng bài, thảo luận và cùng nhau hỗ trợ những hoàn cảnh khó khăn. Ứng dụng này không chỉ cung cấp thông tin mà còn tạo điều kiện cho người dùng tham gia đấu giá từ thiện, kêu gọi quyên góp một cách minh bạch và dễ dàng. Đây là cầu nối giữa các mạnh thường quân và những người cần giúp đỡ, tạo ra một hệ sinh thái từ thiện bền vững. Theo tài liệu gốc, ứng dụng hướng tới mục tiêu 'xây dựng khối cộng đồng từ thiện thể hiện qua các bài đăng có ý nghĩa và giá trị'.

Ngày nay, việc áp dụng công nghệ thông tin vào các hoạt động từ thiện là vô cùng cần thiết. Với sự phát triển mạnh mẽ của internet và mạng xã hội, nhu cầu nắm bắt thông tin từ thiện mới nhất và chia sẻ sự yêu thương ngày càng tăng cao. Điều này thúc đẩy sự ra đời của các website và ứng dụng trực tuyến liên quan đến từ thiện. Mạng xã hội từ thiện đóng vai trò như một trung tâm kết nối, nơi các nhà hảo tâm có thể dễ dàng tìm thấy những hoàn cảnh cần giúp đỡ và theo dõi quá trình hỗ trợ. Ứng dụng cần đảm bảo tính an toàn giao dịchbảo mật thông tin cho người dùng. Việc tích hợp các tính năng mạng xã hội như bình luận, thích (like), và chia sẻ (share) giúp lan tỏa thông tin một cách nhanh chóng và hiệu quả. Việc tối ưu hóa hiệu năngkhả năng mở rộng là rất quan trọng để đáp ứng nhu cầu ngày càng tăng của người dùng. Các tổ chức phi chính phủ (NGO) và các dự án từ thiện cũng có thể tận dụng nền tảng này để tăng cường kết nốigây quỹ cộng đồng.

1.1. Vai Trò Của Ứng Dụng Từ Thiện Đa Nền Tảng Hiện Nay

Trong bối cảnh dịch bệnh và các khó khăn xã hội, ứng dụng từ thiện đóng vai trò quan trọng trong việc kết nối cộng đồng và hỗ trợ những người gặp hoàn cảnh khó khăn. Các ứng dụng này không chỉ cung cấp cơ hội quyên góp trực tuyến mà còn phát triển nhiều tính năng và hình thức khác nhau để giúp đỡ các gia đình khó khăn, đồng hành cùng họ vượt qua thử thách.Theo tài liệu gốc, vào thời điểm dịch bệnh, 'nhiều ứng dụng thiện nguyện ra đời nhằm giúp các cá nhân, tổ chức có thể làm từ thiện tại nhà'. Các ứng dụng này mang đến cơ hội quyên góp và xây dựng nền tảng giúp truyền thống tương thân tương ái của dân tộc Việt Nam. Đây là tiền đề góp phần giữ gìn vẻ đẹp của hoạt động từ thiện, xóa bỏ rào cản về địa lý và tài chính, mang lại cơ hội giúp đỡ cho bất kỳ ai có lòng tốt. Vì vậy, nền tảng kết nối từ thiện cần được phát triển mạnh mẽ để đáp ứng nhu cầu ngày càng cao của xã hội.

1.2. Tại Sao Cần Phát Triển Mạng Xã Hội Từ Thiện React Native

Mặc dù đã có một số ứng dụng thiện nguyện, nhu cầu của các nhà hảo tâm vẫn rất cao, và tính phân loại thông tin trở nên cần thiết hơn bao giờ hết. Ứng dụng cần đóng vai trò như một cầu nối hiệu quả giữa các nhà hảo tâm và người kêu gọi từ thiện. React Native là một lựa chọn phù hợp để phát triển ứng dụng đa nền tảng, giúp tiếp cận được nhiều người dùng hơn trên cả hệ điều hành Android và iOS. Quan trọng hơn, nền tảng cần phải xây dựng một giao diện người dùng (UI) thân thiện và trải nghiệm người dùng (UX) tốt để khuyến khích mọi người tham gia vào các hoạt động từ thiện.

II. Thách Thức Phát Triển Ứng Dụng Từ Thiện Đa Nền Tảng React Native

Phát triển một mạng xã hội từ thiện đa nền tảng không phải là một nhiệm vụ dễ dàng. Có nhiều thách thức cần vượt qua để đảm bảo ứng dụng hoạt động hiệu quả và mang lại giá trị thực sự cho cộng đồng. Một trong những thách thức lớn nhất là đảm bảo tính minh bạchbáo cáo minh bạch trong các hoạt động quyên góp. Người dùng cần có sự tin tưởng vào nền tảng để sẵn sàng đóng góp tài chính. Việc quản lý và phân phối quyên góp một cách hiệu quả và công bằng cũng là một vấn đề cần được giải quyết. Ngoài ra, việc đảm bảo an toàn giao dịchbảo mật thông tin cá nhân của người dùng là vô cùng quan trọng. Theo tài liệu, ứng dụng phải được xem như cầu nối giữa các nhà hảo tâm và người kêu gọi từ thiện, nơi họ có thể dễ dàng gửi lời động viên và theo dõi diễn biến của các hoàn cảnh sau khi được giúp đỡ.

Một thách thức khác là thu hút và duy trì sự tham gia của người dùng. Nền tảng cần cung cấp những tính năng mạng xã hội hấp dẫn, khuyến khích người dùng tương tác và chia sẻ thông tin. Việc xây dựng một cộng đồng từ thiện mạnh mẽ đòi hỏi sự nỗ lực và kiên trì. Bên cạnh đó, việc tích hợp các API tích hợp thanh toán an toàn và tin cậy là điều cần thiết để tạo điều kiện thuận lợi cho việc quyên góp. Khả năng hỗ trợ đa ngôn ngữ cũng là một yếu tố quan trọng để mở rộng phạm vi tiếp cận của ứng dụng.

2.1. Làm Sao Để Đảm Bảo Tính Minh Bạch Trong Từ Thiện

Để xây dựng lòng tin từ người dùng, ứng dụng từ thiện cần đảm bảo tính minh bạch trong mọi hoạt động. Điều này bao gồm việc công khai thông tin về các dự án từ thiện, cách sử dụng quyên góp, và kết quả đạt được. Các báo cáo tài chính cần được cung cấp một cách chi tiết và dễ hiểu. Bên cạnh đó, việc cho phép người dùng theo dõi quá trình hỗ trợ các hoàn cảnh khó khăn cũng là một cách để tăng cường tính minh bạch. Ứng dụng cần tích hợp hệ thống quản lý quyên góp hiệu quả và cung cấp báo cáo thống kê chi tiết về các hoạt động từ thiện.

2.2. Làm Sao Để Thu Hút Người Dùng Tham Gia Mạng Xã Hội Từ Thiện

Để thu hút và duy trì sự tham gia của người dùng, mạng xã hội từ thiện cần cung cấp những tính năng hấp dẫn và hữu ích. Điều này bao gồm việc cho phép người dùng chia sẻ thông tin về các hoàn cảnh khó khăn, tạo các nhóm từ thiện, và tham gia các sự kiện gây quỹ cộng đồng. Việc tích hợp các tính năng mạng xã hội như bình luận, thích (like), và chia sẻ (share) giúp tăng cường sự tương tác người dùng. Ứng dụng cũng cần cung cấp thông báo (notifications) kịp thời về các hoạt động từ thiện và các cơ hội giúp đỡ người khác.

III. Phát Triển Mạng Xã Hội Từ Thiện Với React Native Phương Pháp Tiếp Cận

Sử dụng React Native để phát triển mạng xã hội từ thiện mang lại nhiều lợi ích, bao gồm khả năng phát triển ứng dụng đa nền tảng và tận dụng các công nghệ web quen thuộc. Quá trình phát triển bao gồm việc thiết kế giao diện người dùng (UI) thân thiện và trải nghiệm người dùng (UX) tốt, xây dựng các API để tương tác với cơ sở dữ liệu, và tích hợp các API tích hợp thanh toán an toàn. Việc tối ưu hóa hiệu năngkhả năng mở rộng là rất quan trọng để đảm bảo ứng dụng hoạt động mượt mà và đáp ứng nhu cầu ngày càng tăng của người dùng. Theo tài liệu, việc xây dựng một giao diện người dùng (UI) thân thiện và trải nghiệm người dùng (UX) tốt là rất quan trọng để khuyến khích mọi người tham gia vào các hoạt động từ thiện. Bên cạnh đó, việc tích hợp các API tích hợp thanh toán an toàn và tin cậy là điều cần thiết để tạo điều kiện thuận lợi cho việc quyên góp.

Việc tích hợp các tính năng định vị địa lý (geolocation)bản đồ (map) có thể giúp người dùng tìm kiếm các dự án từ thiện và các tổ chức từ thiện gần đó. Việc cung cấp các công cụ tìm kiếm (search)bộ lọc (filter) giúp người dùng dễ dàng tìm kiếm thông tin từ thiện phù hợp với sở thích và mối quan tâm của mình. Việc phân loại (categorization) thông tin từ thiện cũng giúp người dùng dễ dàng tìm thấy những gì mình cần. Việc đảm bảo thiết kế responsive giúp ứng dụng hiển thị tốt trên mọi thiết bị.

3.1. Thiết Kế UI UX Thân Thiện Cho Ứng Dụng Từ Thiện React Native

Thiết kế giao diện người dùng (UI)trải nghiệm người dùng (UX) là yếu tố then chốt để thu hút và giữ chân người dùng. Giao diện cần đơn giản, dễ sử dụng, và trực quan. Các chức năng quan trọng như quyên góp, chia sẻ thông tin, và tìm kiếm dự án từ thiện cần được đặt ở vị trí dễ thấy và dễ truy cập. Việc sử dụng màu sắc và hình ảnh phù hợp cũng góp phần tạo nên một trải nghiệm người dùng tích cực. Cần chú trọng đến việc thiết kế thiết kế responsive để đảm bảo ứng dụng hiển thị tốt trên mọi thiết bị, từ điện thoại thông minh đến máy tính bảng.

3.2. Tích Hợp API Thanh Toán An Toàn Và Tin Cậy Cho Quyên Góp

Việc tích hợp các API tích hợp thanh toán an toàn và tin cậy là điều cần thiết để tạo điều kiện thuận lợi cho việc quyên góp. Các API này cần đảm bảo tính an toàn giao dịchbảo mật thông tin cá nhân của người dùng. Các phương thức thanh toán phổ biến như thẻ tín dụng, ví điện tử, và chuyển khoản ngân hàng cần được hỗ trợ. Việc cung cấp thông tin rõ ràng về các khoản phí và chính sách hoàn trả cũng giúp tăng cường sự tin tưởng của người dùng. API của PayPal là một lựa chọn tốt để tích hợp thanh toán trực tuyến.

IV. Các Tính Năng Quan Trọng Của Mạng Xã Hội Từ Thiện React Native

Một mạng xã hội từ thiện đa nền tảng cần có các tính năng quan trọng để đáp ứng nhu cầu của người dùng và mang lại giá trị thực sự cho cộng đồng. Các tính năng này bao gồm quản lý người dùng, kết nối tổ chức từ thiện, kêu gọi ủng hộ, chia sẻ thông tin, quản lý quyên góp, báo cáo minh bạch, định vị địa lý, và thông báo đẩy (push notifications). Việc cung cấp các công cụ tìm kiếm (search)bộ lọc (filter) giúp người dùng dễ dàng tìm kiếm thông tin từ thiện phù hợp với sở thích và mối quan tâm của mình. Theo tài liệu, ứng dụng cung cấp các tính năng như 'chia sẻ thông tin những hoàn cảnh khó khăn cần được giúp đỡ' và 'tạo điều kiện để các nhà hảo tâm có thể làm từ thiện một cách dễ dàng, thoải mái nhất'.

Việc tích hợp các tính năng mạng xã hội như bình luận, thích (like), và chia sẻ (share) giúp tăng cường sự tương tác người dùng. Việc cung cấp thông báo (notifications) kịp thời về các hoạt động từ thiện và các cơ hội giúp đỡ người khác cũng là một yếu tố quan trọng. Bên cạnh đó, việc đảm bảo an toàn giao dịchbảo mật thông tin cá nhân của người dùng là vô cùng quan trọng.

4.1. Quản Lý Tài Khoản Người Dùng Phân Quyền Trong Ứng Dụng

Hệ thống quản lý người dùng cần cho phép người dùng tạo tài khoản, xác thực người dùng, và phân quyền người dùng một cách dễ dàng. Người dùng cần có thể chỉnh sửa thông tin cá nhân, thay đổi mật khẩu, và quản lý các thông báo (notifications). Việc phân quyền người dùng giúp kiểm soát quyền truy cập và đảm bảo tính bảo mật của ứng dụng. Các quản trị viên có thể được cấp quyền quản lý người dùng, quản lý nội dung, và quản lý các hoạt động từ thiện.

4.2. Báo Cáo Thống Kê Phân Tích Dữ Liệu Về Hoạt Động Từ Thiện

Việc cung cấp báo cáo thống kê chi tiết và phân tích dữ liệu về các hoạt động từ thiện giúp người dùng và các tổ chức từ thiện đánh giá hiệu quả của các dự án từ thiện và đưa ra các quyết định sáng suốt. Các báo cáo này có thể bao gồm thông tin về số lượng người dùng tham gia, số tiền quyên góp, số lượng người được giúp đỡ, và các kết quả đạt được. Việc phân tích dữ liệu giúp xác định các xu hướng và các cơ hội để cải thiện hiệu quả của các hoạt động từ thiện.

V. Ứng Dụng Mạng Xã Hội Từ Thiện Đa Nền Tảng Kết Quả Nghiên Cứu

Việc phát triển mạng xã hội từ thiện đa nền tảng mang lại nhiều kết quả tích cực cho cộng đồng. Ứng dụng này giúp tăng cường kết nối giữa các nhà hảo tâm và những người cần giúp đỡ, tạo ra một môi trường từ thiện minh bạch và hiệu quả. Việc cung cấp các công cụ tìm kiếm (search)bộ lọc (filter) giúp người dùng dễ dàng tìm kiếm thông tin từ thiện phù hợp với sở thích và mối quan tâm của mình. Theo tài liệu, ứng dụng hướng tới mục tiêu 'tạo nên một cộng đồng chung một chí hướng từ thiện' và 'cung cấp thông tin, nơi các mạnh thường quân biết chỗ để cho, các người gặp khó khăn biết chỗ để lấy'.

Ứng dụng cũng giúp các tổ chức phi chính phủ (NGO) và các dự án từ thiện tăng cường khả năng gây quỹ cộng đồng và mở rộng phạm vi tiếp cận. Việc cung cấp báo cáo thống kê chi tiết và phân tích dữ liệu giúp các tổ chức từ thiện đánh giá hiệu quả của các dự án từ thiện và đưa ra các quyết định sáng suốt. Việc đảm bảo an toàn giao dịchbảo mật thông tin cá nhân của người dùng cũng góp phần xây dựng lòng tin và khuyến khích mọi người tham gia vào các hoạt động từ thiện.

5.1. Đánh Giá Hiệu Quả Gây Quỹ Cộng Đồng Thông Qua Nền Tảng

Việc đánh giá hiệu quả gây quỹ cộng đồng thông qua nền tảng cần dựa trên các chỉ số cụ thể, chẳng hạn như số tiền quyên góp được, số lượng người tham gia quyên góp, và thời gian cần thiết để đạt được mục tiêu gây quỹ. Việc so sánh kết quả với các phương pháp gây quỹ truyền thống cũng giúp đánh giá hiệu quả của nền tảng. Bên cạnh đó, việc thu thập phản hồi từ người dùng và các tổ chức từ thiện cũng giúp cải thiện nền tảng và tăng cường hiệu quả gây quỹ.

5.2. Mức Độ Tương Tác Tham Gia Của Người Dùng Trên Mạng Xã Hội

Việc đánh giá mức độ tương tác người dùng và tham gia trên mạng xã hội cần dựa trên các chỉ số như số lượng người dùng hoạt động hàng ngày, số lượng bình luận, thích (like), và chia sẻ (share), và thời gian trung bình mà người dùng dành cho ứng dụng. Việc so sánh kết quả với các mạng xã hội khác cũng giúp đánh giá hiệu quả của nền tảng. Bên cạnh đó, việc thu thập phản hồi từ người dùng và các tổ chức từ thiện cũng giúp cải thiện nền tảng và tăng cường tương tác người dùng.

VI. Tương Lai Mạng Xã Hội Từ Thiện Đa Nền Tảng React Native

Tương lai của mạng xã hội từ thiện đa nền tảng là rất hứa hẹn. Với sự phát triển không ngừng của công nghệ, ứng dụng này có thể được tích hợp thêm nhiều tính năng mới và cải tiến để đáp ứng nhu cầu ngày càng cao của người dùng. Việc tích hợp trí tuệ nhân tạo (AI) có thể giúp tự động hóa các quy trình, cung cấp thông tin từ thiện phù hợp với sở thích của người dùng, và phát hiện các hoạt động từ thiện gian lận. Theo tài liệu, ứng dụng hướng tới mục tiêu 'xây dựng khối cộng đồng từ thiện thể hiện qua các bài đăng có ý nghĩa và giá trị' và 'trở thành một hành động thiết thực, một nghĩa cử cao đẹp mà cá nhân đều có thể làm trong thời từ thiện'.

Việc mở rộng phạm vi tiếp cận của ứng dụng thông qua hỗ trợ đa ngôn ngữthiết kế responsive cũng là một hướng đi quan trọng. Việc tích hợp các API tích hợp thanh toán an toàn và tin cậy giúp tạo điều kiện thuận lợi cho việc quyên góp. Việc cung cấp báo cáo thống kê chi tiết và phân tích dữ liệu giúp người dùng và các tổ chức từ thiện đánh giá hiệu quả của các dự án từ thiện và đưa ra các quyết định sáng suốt.

6.1. Tích Hợp Trí Tuệ Nhân Tạo AI Để Cá Nhân Hóa Trải Nghiệm Từ Thiện

Việc tích hợp trí tuệ nhân tạo (AI) có thể giúp cá nhân hóa trải nghiệm từ thiện cho từng người dùng. AI có thể phân tích dữ liệu về sở thích, mối quan tâm, và lịch sử quyên góp của người dùng để đề xuất các dự án từ thiện phù hợp. AI cũng có thể giúp tự động hóa các quy trình như xác minh tính hợp lệ của các tổ chức từ thiện và phát hiện các hoạt động từ thiện gian lận.

6.2. Mở Rộng Phạm Vi Tiếp Cận Thông Qua Hỗ Trợ Đa Ngôn Ngữ

Việc mở rộng phạm vi tiếp cận của ứng dụng thông qua hỗ trợ đa ngôn ngữ là một hướng đi quan trọng để tiếp cận nhiều người dùng hơn trên toàn thế giới. Việc cung cấp hỗ trợ đa ngôn ngữ giúp người dùng dễ dàng tìm kiếm thông tin từ thiện và tham gia các hoạt động từ thiện bằng ngôn ngữ mẹ đẻ của họ. Điều này đặc biệt quan trọng đối với các dự án từ thiện quốc tế.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI từ nội dung tài liệu gốc; tài liệu do người dùng đóng góp và được kiểm duyệt trước khi xuất bản. Báo lỗi nội dung.

18/09/2025
Phát triển mạng xã hội từ thiện đa nền tảng dựa trên react native

Trích đoạn nội dung tài liệu

Chương 1: GIỚI THIỆU ĐỀ TÀI 1. Tổng quan đề tài Trong cuộc sống của chúng ta có rất nhiều hoàn cảnh khó khăn, những mảnh đời cần được giúp đỡ. Ngày nay có các nhà hảo tâm mang tấm lòng yêu thương giúp đỡ những người có hoàn cảnh đó. Hoạt động từ thiện ngày nay một trong những hành động tích cực và yêu thương người đang được lan rộng.

Cùng với quá trình toàn cầu hóa và sự phát triển của công nghệ thông tin, mạng internet trên thế giới và Việt Nam ngày càng phát triển mạnh mẽ. Sự tham gia của các cá nhân trên mạng ngày càng tích cực; và nhu cầu chia sẻ thông tin, kết nối bạn bè là nhu cầu thiết yếu thúc đẩy sự ra đời và phát triển của các mạng xã hội. Từ những yếu tố trên, nhu cầu nắm bắt những thông tin từ thiện mới nhất, chia sẻ sự yêu thương của các nhà hảo tâm ngày càng to lớn, hàng loạt những website, ứng dụng trực tuyến liên quan tới từ thiện được tạo ra. Lý do chọn đề tài Vừa qua, vào thời điểm dịch bệnh xảy ra lên đến đỉnh điểm, thời gian giãn cách xã hội kéo dài ở các thành phố lớn làm cho các cá nhân, tổ chức muốn đứng ra kêu gọi và triển khai từ thiện cũng trở nên khó khăn do những quy định gắt gao của Chỉ thị 16.

Đứng trước những khó khăn trên, nhiều ứng dụng thiện nguyện ra đời nhằm giúp các cá nhân, tổ chức có thể làm từ thiện tại nhà. Không chỉ mang đến cơ hội quyên góp tiền, các ứng dụng này đã phát triển với nhiều tính năng cùng các hình thức khác nhau để giúp đỡ những gia đình khó khăn, đồng hành cùng họ tìm thấy được những lạc quan và niềm tin để vững tâm vượt qua đại dịch. Không dừng lại ở đó, những phát triển công nghệ cũng đã được vận dụng trong nhiều ứng dụng thiện nguyện mang tính lâu dài, xây dựng nên nền tảng giúp truyền thống tương thân tương ái của dân tộc Việt Nam. Trong tương lai, đây sẽ là tiền đề sẽ góp phần giữ gìn được vẻ đẹp vốn có của hoạt động từ thiện, đồng thời xóa bỏ mọi rào cản về địa lý hay cả những mặc cảm về tài chính mang lại cơ hội giúp đời, giúp người cho bất kỳ ai có lòng tốt.

Tuy nhiên, dù đã có một số ứng dụng thiện nguyện, nhưng nhu cầu của các nhà hảo tâm vẫn rất cao và tính phân loại càng cần thiết. Ứng dụng phải được xem như cầu nối giữa các nhà hảo tâm và người kêu gọi từ thiện, các nhà hảo tâm có thể dễ dàng gửi 10 những lời động viên cũng như theo dõi được diễn biến của các hoàn cảnh sau khi được giúp đỡ. Chính vì những lý do trên, chúng em quyết định chọn đề tài “Phát triển mạng xã hội từ thiện đa nền tảng dựa trên react native” để thực hiện. Mục đích đề tài Chúng em chọn đề tài này, với mục đích xây dựng một ứng dụng mạng xã hội từ thiện chia sẻ thông tin những hoàn cảnh khó khăn cần được giúp đỡ, cũng như tạo điều kiện để các nhà hảo tâm có thể làm từ thiện một cách dễ dàng, thoải mái nhất.

Ở đây, mọi người có thể trao đổi, bàn bạc với nhau để đi tới những quyết định thiện nguyện thống nhất. Hơn nữa, với tính năng chia sẻ những hoàn cảnh khó khăn từ ứng dụng đến các nền tảng xã hội sẽ càng giúp lan tỏa và kết nối những tấm lòng hảo tâm một cách mạnh mẽ. Đây cũng là một hành động thiết thực, một nghĩa cử cao đẹp mà cá nhân đều có thể làm trong thời từ thiện 4. Đối tượng và phạm vi đề tài Phạm vi nghiên cứu: các nền tảng mạng xã hội ở Việt Nam.

Đối tượng nghiên cứu: mạng xã hội từ thiện và tình hình phát triển mạng xã hội từ thiện tại Việt Nam. Khách thể nghiên cứu là người dùng trên các nền tảng mạng xã hội ở Việt Nam. 11 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Giới thiệu React Native React native là một công cụ giúp chúng ta xây dựng các ứng dụng trên môi trường native với lập trình đa nền tảng.

Nó là một framework mã nguồn mở do Facebook phát triển, cho phép bạn phát triển phần mềm trên điện thoại di động Android và IOS bằng Javascript. React native tương tự như React, vì vậy chúng sử dụng các native components thay vì các web components. Do đó, để hiểu rõ về cấu trúc của React native, chúng ta cần phải có các kiến thức cơ bản về các khái niệm cơ bản của React như là JSX, components, props hay là state. React Native được Facebook phát hành lần đầu tiên dưới dạng một dự án mã nguồn mở vào năm 2015.

Chỉ trong vài năm, nó đã trở thành một trong những giải pháp hàng đầu được sử dụng cho mobile development. Việc phát triển React Native được sử dụng để cung cấp năng lượng cho một số ứng dụng di động hàng đầu thế giới, bao gồm Instagram, Facebook và Skype. Kiến trúc React Native Khi khởi chạy một React Native app, phần code JS sẽ được package (được gọi là JS Bundle) và được tách riêng ra với phần Native Code (Android/IOS) Lúc này, app sẽ được thực thi bởi 3 threads sau: 1. JS thread (Javascript thread/ Main thread): Được sử dụng bởi JS Engine, dùng để chạy JS bundle 2.

Native/UI thread: Được sử dụng để khởi chạy các native module, các tiến trình render UI, animations, gesture handle,. Shadow thread: Được sử dụng để tính toán Layout của element trước khi render ra màn hình.1: Kiến trúc cũ React Native (nguồn: https://viblo.asia/p/mot-chut-ve-kien- truc-moi-cua-react-native-Az45bRXO5xY) Đối với kiến trúc cũ, ngay cả đối với một tương tác bất kì lớn nhỏ nào, nó sẽ phải đi qua tất cả các luồng trên, thực tế thì điều này không quá tệ nhưng performance hoặc đặc biệt là một vài frames sẽ bị drop vì responses không được đồng bộ với main thread trừ khi đây là những thao tác thực sự được đồng bộ hóa. Vì thế, một kiến trúc React Native mới đã được đề ra. Bốn thành phần chính của kiến trúc mới: - JSI: ở kiến trúc hiện tại, JS Thread giao tiếp với Native/UI Thread qua một thứ gọi là Bridge, dữ liệu được gửi từ thread này qua bridge sẽ được seralized thành JSON và được decode ở thread bên kia.

Có thể hiểu là JS thread không biết Native thread đang làm gì và ngược lại, tất cả đều phải đợi data từ Bridge trả về. - Fabric: là một rendering system, thứ sẽ thay thế cho UI manager hiện tại. Nhờ JSI loại bỏ Bridge, nên các hành vi người dùng như cuộn, kéo thả,. sẽ được Fabric ưu tiên thực hiện sync (Đồng bộ) trên JS thread hoặc Native thread, trong khi những tasks khác như gọi API sẽ được thực thi async (bất đồng bộ).

- Turbo Modules: Ở kiến trúc hiện tại, tất cả Native Modules được sử dụng bởi JavaScript (Bluetooth, Camera, Location,.) phải được khởi tạo trước khi app khởi động xong. Có nghĩa là kể cả khi người dùng không có nhu cầu sử dụng những module này thì nó vẫn được khởi tạo lúc app khởi động. Với Turbo 13 Modules, giờ đây các Native Modules được lazy-loaded (nghĩa là khi nào cần mới dùng tới) thay vì load tất cả trong khi khởi động. - CodeGen: JavaScript là một ngôn ngữ kiểu động (Dynamically typed language), còn JSI thì lại được viết bằng C++, một ngôn ngữ kiểu tĩnh (Statically Typed Language).

Vấn đề giờ là cần phải đảm bảo giao tiếp thông suốt giữa cả hai. Đó là lí do kiến trúc mới cũng bao gồm luôn một static type checker gọi là CodeGen. CodeGen sẽ sử dụng TypeScript/Flow để generate nhiều native code ở build time hơn thay vì ở run time. Tóm lại thì Codegen giúp: code size nhỏ hơn, thực thi nhanh hơn, ít lỗi hơn.

Javascripts JavaScript là ngôn ngữ lập trình phổ biến nhất trên thế giới trong suốt 20 năm qua. Nó cũng là một trong số 3 ngôn ngữ chính của lập trình web: 1. HTML: Giúp bạn thêm nội dung cho trang web. CSS: Định dạng thiết kế, bố cục, phong cách, canh lề của trang web.

JavaScript: Cải thiện cách hoạt động của trang web. JavaScript có thể học nhanh và dễ dàng áp dụng cho nhiều mục đích khác nhau, từ việc cải thiện tính năng của website đến việc chạy game và tạo phần mềm nền web. Hơn nữa, có hàng ngàn mẫu template JavaScript và ứng dụng ngoài kia, nhờ vào sự cống hiến của cộng đồng, đặc biệt là Github. 14 JavaScript có rất nhiều ưu điểm khiến nó vượt trội hơn so với các đối thủ, đặc biệt trong các trường hợp thực tế.

Sau đây chỉ là một số lợi ích của JavaScript: 1. Bạn không cần một compiler vì web browser có thể biên dịch nó bằng HTML; 2. Nó dễ học hơn các ngôn ngữ lập trình khác; 3. Lỗi dễ phát hiện hơn và vì vậy dễ sửa hơn; 4.

Nó có thể được gắn trên một số element của trang web hoặc event của trang web như là thông qua click chuột hoặc di chuột tới; 5. JS hoạt động trên nhiều trình duyệt, nền tảng, vâng vâng; 6. Bạn có thể sử dụng JavaScript để kiểm tra input và giảm thiểu việc kiểm tra thủ công khi truy xuất qua database; 7. Nó giúp website tương tác tốt hơn với khách truy cập; 8.

Nó nhanh hơn và nhẹ hơn các ngôn ngữ lập trình khác.2: JavaScript (nguồn: https://mona.media/thiet-ke-website-bang-ngon-ngu- javascript/) 2. Hook Từ phiên bản 16.8 trở đi, chúng ta đã có thể sử dụng state trong stateless (functional) component, việc mà từ trước tới nay ta bắt buộc phải khai báo Class. Cộng với việc không sử dụng Class kế thừa từ React Component nữa nên giờ đây kích thước bundle sẽ được giảm đáng kể bởi code sử dụng Hooks. 15 Để có thể thay thế được Class thì React Hooks cung cấp cho chúng ta một bộ các built-in Hooks, giúp chúng ta sử dụng được các thành phần tạo nên React, có 2 loại built-in đó là: Basic Hooks và Additional Hooks 2.

useState và useEffect useState nhận đầu vào là giá trị khởi tạo của 1 state và trả ra 1 mảng gồm có 2 phần tử, phần tử đầu tiên là state hiện tại, phần tử thứ 2 là 1 function dùng để update state.3: Ví dụ useState useEffect cho phép ta có thể thực hiện công việc call API. Để tránh việc hàm useEffect luôn chạy vào mỗi khi có thay đổi State thì ta có thể truyền vào tham số thứ 2 trong useEffect đó là 1 array, trong array này ta có thể truyền vào đó những giá trị mà useEffect sẽ subcribe nó, tức là chỉ khi nào những giá trị đó thay đổi thì hàm useEffect mới được thực thi. Hoặc bạn cũng có thể truyền vào 1 array rỗng thì khi đó nó sẽ chỉ chạy 1 lần đầu tiên sau khi render.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ