YellowCode.Books

Kotlin Bài 6: Các Kiểu Dữ Liệu Trong Kotlin

Kết thúc bài học về Dữ liệu & Kiểu dữ liệu hôm trước, bạn đã biết tại sao mà một ngôn ngữ lập trình định nghĩa ra Dữ liệu, và phân làm nhiều Kiểu dữ liệu rồi. Bạn còn sử dụng Biến và Hằng để chính thức giúp chương trình của bạn có được Dữ liệu để tương tác cũng như lưu trữ. Thông qua các khái niệm và các ví dụ từ bài học cũ này, bạn đã phần nào làm quen với một vài Kiểu dữ liệu mà Kotlin hỗ trợ. Sang bài học hôm nay, bạn sẽ được làm quen cụ thể từng Kiểu dữ liệu một, xem các kiểu này là gì và có khó áp dụng không nhé.

[Review Sách] Android Studio 3.4 Development Essentials – Kotlin Edition

Bắt tầu từ bài viết hôm nay của chuyên mục này, mình sẽ lần lượt giới thiệu với các bạn các quyển eBook về kỹ thuật hay về kỹ năng lập trình đang được bày bán trên Amazon. Các quyển sách này sẽ là các sách mà mình đã đọc qua, thậm chí có quyển đã được mình tham khảo và gạn lọc để lấy nội dung trong đó viết thành các bài học lập trình trên trang blog của mình.

Kotlin Bài 5: Khái Niệm Dữ Liệu, Kiểu Dữ Liệu & Khai Báo Biến

Như vậy bạn đã có trong tay các công cụ cần thiết để thử nghiệm lập trình với Kotlin rồi. Và bạn cũng đã thực thi vài dòng code rồi đấy thôi. Từ bài học hôm nay, chúng ta sẽ dần hé mở các nguyên tắc của các dòng code, để giúp bạn ngày càng sáng tỏ và thông thạo hơn đối với ngôn ngữ Kotlin. Nào, hãy bắt đầu với khái niệm Dữ liệu và Kiểu dữ liệu trong lập trình nhé.

Kotlin Bài 4: Làm Quen Với Ngôn Ngữ Kotlin

Bài trước các bạn đã cùng mình tạo mới project Android có hỗ trợ Kotlin, tuy nhiên với Android, có một điều rất thú vị là ngay khi bạn tạo xong một project, bạn hoàn toàn có thể thực thi ngay lên ứng dụng thật hay ảo mà không cần biết đến lập trình là gì cả.
Điều này làm cho các bạn nào mới tiếp cận với lập trình đều cảm thấy rất ngứa ngáy. Bạn sẽ muốn được thử nghiệm gõ vào các dòng code để xem như thế nào, thực thi chúng ra sao đúng không. Bạn đừng vội quá, bài học hôm nay sẽ giúp làm giảm triệu chứng ngứa ngáy của bạn một chút. Chúng ta sẽ cùng nhau tiếp cận ở mức làm quen sơ bộ về lập trình Kotlin, để xem ngôn ngữ này nó trông như thế nào, cách luyện tập ra sao, và dĩ nhiên chúng ta sẽ cùng thực thi code đó để xem sẽ ra kết quả là gì nhé.

Java Bài 47: Deadlock

Với việc kết thúc bài học hôm trước thì chúng ta cũng đã xong kiến thức về Đồng bộ hóa Thread. Bạn đã thấy vai trò rất đắc lực của từ khóa synchronized trong việc đảm bảo không xảy ra sự tranh chấp đối với tài nguyên dùng chung rồi đúng không nào. Quả thật synchronized rất tốt, nhưng nếu lạm dụng nó không đúng chỗ, bạn sẽ gặp một tình huống mà bài học hôm nay nhắm đến. Tình huống đó có tên là Deadlock.

Android Architecture Component – Phần 4: Tìm Hiểu Về Room

Với việc xem hết bài viết hôm nay, thì bạn cũng đã cùng mình đi qua tổng cộng 4 thành phần lớn trong kiến trúc mới này của Android rồi đấy. Mình xin nhắc lại rằng, với việc hiểu và áp dụng các thành phần mới này vào ứng dụng, sẽ làm cho ứng dụng của bạn trở nên: mạnh mẽ hơn, dễ kiểm lỗi hơn, và dễ bảo trì hơn. Trước khi đi vào tìm hiểu thành phần cuối cùng này, mình xin tóm tắt lại 3 phần trước đây như sau.

Java Bài 46: Đồng Bộ Hóa Tập 3 – Đồng Bộ Cooperation – Các Từ Khóa wait/notify/notifyall

Thật là một thời gian khá lâu cho bài học về Java phần tiếp theo này. Đây có thể được xem là bài viết Java khởi đầu cho năm mới, tuy nhiên lại là một chủ đề “còn nợ” lại từ năm cũ. Có thể vì thời gian đợi khá lâu sẽ làm bạn quên đôi chút. Mình xin nhắc lại là chúng ta đang nói về các cách thức Đồng bộ hóa thread trong lập trình Java. Chúng ta tìm cách làm sao để các Thread tuy được “tự do tự tại” trong việc thực thi các tác vụ song song, lại có thể biết tuân thủ theo các nguyên tắc trật tự nào đó khi chúng có sử dụng chung đến các đối tượng, hay chúng ta gọi là các tài nguyên. Bài hôm trước là một cách, hôm nay chúng ta đến với cách thứ hai.

Android Architecture Component – Phần 3: Tìm Hiểu Về Lifecycle Aware Components

Ở các phần trước, chúng ta đã cùng nhau nói đến cách sử dụng hai thành phần cơ bản trong bộ kiến trúc Android Architecture Component mà Google mang tới, đó là ViewModel và LiveData.
Quả thật hai thành phần ViewModel và LiveData cũng đã giúp ích chúng ta giải quyết rất nhiều yêu cầu cơ bản từ các ứng dụng hiện nay rồi. Thế nhưng bấy nhiêu đó thôi vẫn chưa nói hết sức mạnh của Android Architecture Component mang lại. Chúng ta còn phải nói nhiều hơn vể công dụng của kiến trúc mới này. Và hôm nay mình xin trình bày một khía cạnh khác nữa của nó, khía cạnh này có cái tên Lifecycle-Aware Components.

Android Studio 3.2 Có Gì Mới?

Thời gian trôi qua rất nhanh, nhanh đến nỗi mà mình đã khuyết hẳn một bài viết về Android Studio 3.1. Để rồi Android Studio 3.2 này ra đời rồi mình mới thấy bất ngờ. Nhưng may mà Android Studio 3.1 cũng không có nhiều những cái mới mẻ lắm, bạn có thể xem lại những cập nhật của phiên bản cũ 3.1 ở link này nếu muốn.

Các tính năng mới trên Android Studio 3.2 được nhắc đến từ sự kiện Google I/O 2018. Tập trung lớn nhất trên công cụ lập trình Android này là giúp các lập trình viên xây dựng các ứng dụng tốt nhất trên hệ điều hành Android 9 Pie, đồng thời theo sát tham vọng Android App Bundle. Ngoài ra còn có vô số cập nhật thú vị khác nữa. Vậy thì các khái niệm mình mới đưa ra là gì, và các tính năng mới của Android Studio 3.2 như thế nào, mình mời các bạn cùng đến với bài viết.

Java Bài 45: Đồng Bộ Hóa Tập 2 – Đồng Bộ Mutual Exclusive & Từ Khóa synchronized

Như vậy là sau khi kết thúc bài học mở màn về Đồng bộ hóa hôm trước, mình có nói rằng sẽ có hai cách thức để đồng bộ các Thread với nhau. Các cách đồng bộ này đều mang đến một mục tiêu chung là giới hạn các Thread truy cập vào cùng một tài nguyên dùng chung. Và bài học hôm nay mình sẽ trình bày cụ thể cách thức đầu tiên trong hai cách trên đây, cách thức này có cái tên Loại trừ lẫn nhau (Mutual Exclusive). Sau các bài học về đồng bộ này, bạn sẽ biết cách làm thế nào để tránh sự xung đột về tài nguyên hệ thống khi làm việc với Multithread, và cả biết xem khi nào thì nên dùng cách thức đồng bộ nào nữa đấy.