Sử dụng thư viện Picasso trong ứng dụng Android

1. Picasso là gì Picasso là một thư viện Android mã nguồn mở rất phổ biến, dùng để load hoặc hiển thị hình ảnh trong ứng dụng Android. ... Picasso cho phép hiển thị các hình ảnh phức tạp trong ứng dụng của bạn — chỉ trong một dòng code! Lưu ý rằng Picasso sử dụng OkHttp (một thư viện ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

Sử dụng Sync Adapter để đồng bộ dữ liệu trong Android - Part 3 - Tạo Sync Adapter

Thành phần Sync Adapter trong app của bạn đóng gói code cho các tác vụ chuyển dữ liệu giữa device và server. Dựa trên lịch trình và trình kích hoạt bạn cung cấp trong app của mình, Sync Adapter Framework chạy code trong thành phần Sync Adapter. Để thêm thành phần Sync Adapter vào ứng dụng của bạn, ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

Một số câu hỏi phỏng vấn JavaScript hay và khó 2 - Chắc ai đó sẽ cần !

Xin chào bạn! Trong bài viết trước Một số câu hỏi phỏng vấn JavaScript hay và khó 1 - Chắc ai đó sẽ cần ! , mình đã giới thiệu với bạn một số câu hỏi phỏng vấn JavaScript khá hay (theo ý kiến chủ quan thôi nhé). Không biết bạn đã giải thích được chúng chưa? Những câu hỏi trắc nghiệm này khi mới ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

[JavaScript] Functional Programming

Lập trình hàm (Functional programming) không còn là cái tên lạ lẫm trong thời gian gần đây, nhiều lập trình viên đã và đang dần chuyển đổi theo mô hình lập trình này. Trong bài viết hôm nay, chúng ta sẽ cùng nhau tìm hiểu cơ bản về lập trình hàm trong JavaScript. Basic example Chúng ta sẽ xem ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

SqlAlchemy - Insert/Update by bulk

1. Đặt vấn đề Mình có hàng trăm nghìn tới hàng triệu bản ghi cần insert/update vào MySql một cách nhanh nhất. Việc đầu tiên ta nghĩ tới đó chính là Insert/Update theo bulk. Tại sao lại theo bulk mà không insert từng bản ghi? Vì nếu ta có 1 triệu bản ghi, nếu insert từng bản ghi sẽ cần 1 triệu lần ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

Từ PHP nhảy sang code Ruby thì có gì vui?!

Chào các bạn, đến hẹn lại lên hôm nay mình sẽ chia sẻ về một chủ đề mình cho rằng khá là thú vị dựa trên những trải nghiệm thực tế của bản thân khi chuyển sang học một ngôn ngữ mới. Nói một chút về cơ duyên này: Mình - 1 thằng coder PHP chính hiệu bỗng một ngày đẹp trời nhận được một lời đề ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

Bài 14: Event handling với VueJS

Chào mừng các bạn quay trở lại với series học VueJS với Laravel của mình, ở bài trước mình đã hướng dẫn các bạn về cách binding form input, bài này chúng ta sẽ cùng tìm hiểu cách xử lý các sự kiện khi người dùng tương tác như click hay bấm các phím trong VueJS nhé. Để bắt các sự kiện này ta dùng ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

CRUD với React và Ruby on Rails - Phần 1

Nội dung React là gì? Thiết lập một Rails API cơ bản Xây dựng controller Tích hợp react vào ứng dụng rails Xây dựng component đầu tiên Xây dựng trang hiển thị tất cả các dữ liệu Thêm mới dữ liệu Xóa dữ liệu Sửa dữ liệu React là gì? Reactjs là một thư viện JavaScript tạo ra ...

Tác giả: Tạ Quốc Bảo viết 17:54 ngày 12/08/2018

Sử dụng Cookie Authentication trong ASP.NET Core

Nếu các bạn đã từng làm việc với ASP.NET Core Identity thì có thể thấy nó là một bộ đầy đủ các tính năng về authentication cung cấp và bảo trì công việc login. Tuy nhiên, chúng ta có thể muốn tùy chỉnh logic authentication của riêng chúng ta với authentication dựa trên cookie. Bài viết này sẽ giới ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

BindingAdapter và InverseBindingAdapter trong Android

Nếu ai đã dùng DataBinding của Android thì không thể bỏ qua các tính năng của BindingAdapter và InverseBindingAdapter đem lại. Bài viết này mình sẽ tập trung 2 chức năng này. BindingAdapter và InverseBindingAdapter là cách thức để custom thuộc tính mới cho View , đại diện cho tính ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

Ag - The Silver Searcher

Tìm kiếm đoạn code nào đó là điều mà hầu hết chúng ta thực hiện hàng ngày. Cho dù đó là để refactor hoặc chỉ đơn giản là tìm nơi một biến, lớp, hoặc phương thức đã được thực hiện. Các công cụ tìm kiếm không tốt có thể khiến công việc của chúng ta khó khăn hơn mức cần thiết. Trong bài viết này, ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

Giới thiệu CoffeeScript 2 - Phần II

Ở bài trước mình đã giới thiệu các bạn những khái niệm cơ bản cuả CoffeeScript. Trong bài viết này mình sẽ đi sâu vào nhiều khía cạnh của việc sử dụng CoffeeScript. Đầu tiên các bạn nên chú ý: CoffeeScript sử dụng khoảng trắng để phân biệt giưã các blocks. Vì thế bạn không cần sử dụng ; để kết ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

ĐÁNH GIÁ HỆ THỐNG ĐỂ TĂNG HIỆU QUẢ CỦA KIỂM THỬ HIỆU SUẤT (PHẦN I)

Tìm hiểu các kỹ thuật để nắm bắt các chức năng của hệ thống một cách hiệu quả và mang lại kết quả tối ưu. Tìm hiểu các kỹ thuật để nắm bắt hoạt động của người dùng mong muốn một cách hiệu quả và mang lại kết quả tối ưu. Tìm hiểu các kỹ thuật để nắm bắt kiến trúc logic và vật lý của hệ thống ...

Tác giả: Trịnh Tiến Mạnh viết 17:54 ngày 12/08/2018

Ruby Metaprograming 2

Bài liên quan: Ruby Metaprograming 1 Bài viết được lược lại từ post này của tác giả Nikola Todorovic. Hẵn bạn thường nghe rằng metaprograming là 1 cái gì đó cao siêu chỉ dành cho các Ruby ninja , chứ ko phải dành cho người dùng bình thường. Nhưng thật sự metaprograming ko đáng sợ như thế. Post ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

Google Docs Very Very Lite With Action Cable in Rails 5 and AngularJS

Như tiêu đề, bài viết này mình sẽ hướng dẫn các bạn tạo ra một phiên bản google document cự kì thu nhỏ. Nó cho phép nhiều người cùng làm việc realtime trên textarea. Bắt đầu thôi nào ~.~ Các bạn đã biết kể từ khi Rails 5 được phát hành, với sự hổ trợ đắc lực của Action Cable thì việc tạo các app ...

Tác giả: Trịnh Tiến Mạnh viết 17:54 ngày 12/08/2018

Blockchain : Sự khác nhau giữa PoW và PoS

Khi nói về thế giới tiền điện tử , chắc hẳn bạn đã nghe nói về Mining, đặc biệt là 2 giao thức Proof of Work và Proof of Stake. Trong bài viết này , mình sẽ phân tích 2 khái niệm cơ bản PoW (Proof-of-Work) và PoS (Proof-of-Stake) để hiểu sự khác biệt, ưu và nhược điểm của cả 2 giao thức được sử ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

react-native-secure-storage

Hôm nay tôi xin phép giới thiệu với các bạn một package thường được sử dụng để lưu trữ an toàn. Nó được xây dựng dựa trên react-native-keychain và tương thích với redux-persist-sensitive-storage. Bước đầu tiên bạn cần làm là chạy lệnh sau: $ npm install react-native-secure-storage --save ...

Tác giả: Hoàng Hải Đăng viết 17:54 ngày 12/08/2018

So sánh các class level accessor trong Ruby on Rails

attr_accessor là sự kết hơp giữa attr_reader và attr_writer, nó là một marco rất hữu ích cung cấp getter và setter cho một instance variable. Nhưng đôi khi bạn muốn đạt được hiệu quả tương tự với các class variable. Có ít nhất ba cách để chúng ta có thể giải quyết vấn đề này là: attr_accessor, ...

Tác giả: Tạ Quốc Bảo viết 17:54 ngày 12/08/2018

Amazon Web Services for Essential - S3 and EC2

Chào các bạn, như bài lần trước mình có giới thiệu về 2 thành phần ban đầu trong AWS đó là IAM và VPC. Và trong bài viết này mình xin giới thiệu thêm cho các bạn về các thành phần sâu bên trong 1 VPC và là một trong những thành phần quan trọng nhất trong AWS đó là S3 và EC2. Nhắc lại 1 chút về ...

Tác giả: Bùi Văn Nam viết 17:54 ngày 12/08/2018

Rails AntiPattern: Duplicate Code Duplication (p1)

Nguyên Lý DRY: Don't Repeat Yourself Don't Repeat Yourself hay DRY là một nguyên lý cơ bản nhất của lập trình được đưa ra nhằm mục đích hạn chế tối thiểu việc viết các đoạn code lặp đi lặp lại nhiều lần chỉ để thực hiện các công việc giống nhau trong ứng dụng. Nguyên lý này được nhắc ...

Tác giả: Trịnh Tiến Mạnh viết 17:54 ngày 12/08/2018