[Android] Handling lifecycles with lifecycle-aware components
Bài viết được dịch tại: https://developer.android.com/topic/libraries/architecture/lifecycle Lifecycle-aware nhận các phản hồi về sự thay đổi trong trạng thái của vòng đời của các thành phần như activities hay fragments và thực hiện các hành động thích hợp. Component này giúp chúng ta ...
Hướng dẫn áp dụng tính năng Real Time bằng Action Cable qua ví dụ phòng chat nho nhỏ
Chào các bạn, hôm nay mình sẽ giới thiệu về Action Cable, WebSockets interface cho Rails mà nó kết hợp 1 ứng dụng Real-time với sức mạnh và tiền lợi của Rails. Bài viết này mình sẽ nói tổng quan về Action Cable, sau đó giới thiệu qua 1 ứng dụng chat nho nhỏ sử dụng Restful. Nhờ vào hướng dẫn của ...
Xây dựng thư viện javascript của riêng mình - Xây dựng thư viện crop ảnh
Xin chào các bạn! Thông thường khi cần có chức năng nào đó chúng ta thường lên mạng để tìm thư viện hỗ trợ chúng ta xử lý vấn đề đó. Ví dụ như crop ảnh chẳng hạn có rất nhiều thư viện có thể thực hiện rất hiệu quả yêu cầu này bạn có thể tìm hiểu trên mạng. Nhưng hôm nay, chúng ta sẽ cùng nhau tự ...
AJAX VÀ 5 GIAI ĐOẠN CỦA AJAX
1.Khái niệm về AJAX a, khái niệm cơ bản AJAX viết tắt từ Asynchronous JavaScript and XML, là bộ công nghệ giúp tạo ra các web động hay các ứng dụng giàu tính Internet, cho phép tăng tốc độ ứng dụng web bằng cách cắt nhỏ dữ liệu và chỉ hiển thị những gì cần thiết, thay vì tải đi tải lại ...
[FuelPHP] Validate dữ liệu
Validate (kiểm tra hay xác thực) dữ liệu đầu vào từ phía người dùng là vô cùng quan trọng của một ứng dụng để loại bỏ đi các nguy cơ tấn công vào hệ thống đồng thời chuẩn hóa dữ liệu để lưu vào database (DB). Đối với Laravel, công việc này thực hiện đơn giản với lớp Validator hoặc các Request đã ...
Launch Mode và Flag trong Android - Cái nhìn tổng quát nhất
Chắc hẳn trong chúng ta khi lập trình ứng dụng android, sau khi đã tìm hiểu hết toàn bộ component và cách sử dụng chúng các kiểu con đà điểu (từ những ví dụ demo cho tới những dự án thật có độ lớn vài chục ngàn dòng) thì sẽ đào sâu hơn vào phần cốt lõi của android. Một trong những cái mà mình thấy ...
Một số vấn đề gặp phải khi deploy project Laravel lên Heroku và cách giải quyết
Khi deploy một project Laravel lên Heroku, thường thì nó sẽ không thể chạy ngon ngay từ lần đầu được mà chắc chắn sẽ dính lỗi tùm lum, cho dù là các host thông thường cũng sẽ dính lỗi, lý do vì sao thì có lẽ do Laravel hơi khác biệt một chút so với các framework khác. Dưới đây là một số lỗi khó ...
Những điều cần biết về Memory Leak trong Android
Xây dựng một ứng dụng Android rất dễ nhưng làm cho thực sự chất lượng, tiêu tốn ít tài nguyên thì không dễ như vậy. Khi mới bắt đầu bước những bước chân đầu tiên trong sự nghiệp lập trình, hầu như chúng ta chỉ quan tấm đến việc làm sao xây dựng được những tính năng của ứng dụng, cái mà hiện hữu ra ...
10 vấn đề thường gặp của Git và cách khắc phục chúng
1: Discard local file modifications Đôi khi cách tốt nhất để giải quyết một vấn đề đó là đi sâu vào trong và tìm hiểu những dòng code. Và những thay đổi được thực hiện trong lúc đó đôi khi không tối ưu và trong trường hợp này, việc hoàn nguyên tệp về trạng thái ban đầu có thể là giải pháp nhanh ...
[Android] Kotlin và những điều kì diệu
Nếu bạn là một Android Developer thì chắc hẳn đã nghe hay sử dụng Kotlin rồi, nhưng bạn đã thực sự hiểu rõ và có hứng thú để học và xây dựng ứng dụng Android với Kotlin chưa. Ở bài này mình sẽ chia sẻ một vài thông tin có thể sẽ hữu ích với nhũng người bắt đầu học Kotlin mà mình lượm nhặt được ...
[Clean code] Chapter 2: Đặt tên có ý nghĩa
Tên xuất hiện mọi nơi trong phần mềm. Chúng ta có tên biến, tên hàm, tên đối số, tên lớp, và package. Chúng ta đặt tên cho file mã nguồn, đường dẫn chứa chúng... Chúng ta thực hiện đặt tên, đặt tên và đặt tên. Bởi vì chúng ta làm việc đặt tên rất nhiều nên hãy cố làm nó một cách tốt nhất. Một số ...
Direct Uploads với ActiveStorage
Active Storage là tình năng mới được giới thiệu từ Rails 5.2. Nó được dùng để upload các loại files lên các cloud storage như Amazon S3, Google Cloud Storage, Microsoft Azure Storage, ... hoặc lưu trữ trong máy local. Nó sẽ dùng để thay thế cho các gem upload file khác như carrierwave, paperclip, ...
Một số tiện ích của Firefox hỗ trợ kiểm thử phần mềm
Firefox là một trong những trình duyệt web tốt nhất để kiểm thử phần mềm vì nó cung cấp rất nhiều tính năng dưới dạng tiện ích bổ sung. Có nhiều tùy chọn có sẵn để bạn lựa chọn và cài đặt những cái bạn cần cho công việc kiểm thử. Dưới đây là một số công cụ bổ trợ Mozilla Firefox được sử dụng khá ...
Controlled Component và Uncontrolled Component trong React
React xử lý việc re-render một cách rất hiệu quả và tiết kiệm tài nguyên. Nó chỉ render thành phần có sự thay đổi dữ liệu. Nội dung của trang sẽ luôn được cập nhật một cách nhanh chóng và làm tăng hiệu quả người dùng. Có 2 cách được sử dụng cho việc quản lý sự thay đổi trạng thái của các phần tử ...
[ML-06] Chúng ta nên dùng số liệu nào để đo lường mô hình (model) và các vấn đề phân loại gặp phải như thế nào? (Phần 2)
Chào các bạn, trong bài viết trước chúng ta đã cùng nhau tìm hiểu về cách đánh giá mô hình thông qua độ chính xác, ưu và nhược điểm của metric này, đồng thời ta cũng đã hiểu về "Confusion matrix". Hôm nay ta sẽ tiếp tục tìm hiểu về các metric được tổng hợp từ Confusion matrix giúp cho việc đánh giá ...
Một số tính năng đáng chú ý trên Android P
Tại Google I / O, Google đã phát hành phiên bản beta đầu tiên của Android P, đưa AI vào cốt lõi của hệ điều hành và tập trung vào những trải nghiệm thông minh và đơn giản. Họ đã nói về một số tính năng mới nhất của Android trong các ghi chú và đi sâu vào API của nhà phát triển trong các lần đột ...
Bạn chọn Jinja template hay Django template cho dự án web Django ?
Nếu như bạn đã biết tới Django chắc bạn cũng đã biết, Django cho phép sử dụng các template engine khác thay cho Django template mặc định của framework. Jinja template là một engine nổi bật để sử dụng với các framework web Python. Lý do là bởi Jinja tương thích rất tốt với framework web Python. ...
Tạo một project React mới với Webpack 4 và Babel
Bài viết đc dịch từ: https://hackernoon.com/how-to-build-a-react-project-from-scratch-using-webpack-4-and-babel-56d4a26afd32 Trước khi bắt đầu, máy bạn phải có sẵn npm, nếu chưa có thì bạn có thể tìm nó ở đây Cấu trúc thư mục Bạn có thể khởi tạo thư cấu trúc thư mục như trên với lệnh: ...
Comb Sort
Sorting is one of the must known and well-used techniques in programming world. There are different sorting types with various run-time and space complexity. One of the initial sort technique is bubble sort . Today we will learn about Comb Sort which is not very popular. It is basically ...
Cùng tìm hiểu về RxJava (Phần 1)
Reactive programming là lập trình các luồng dữ liệu không đồng bộ. Chúng ta cùng xem xét các trường hợp: Người dùng mong muốn dữ liệu luôn được cập nhật liên tục (realtime). Họ muốn đơn hàng được xác nhận ngay lập tức. Họ cần thông tin về giá cả của sản phẩm phải luôn được cập nhật chính ...