
Xây dựng 1 thư viện nhỏ hỗ trợ tạo query SQLite (Phần 1 - Giới thiệu về thư viện QueryHelper tự tạo)
Bạn gặp khó khăn hay chán ngán việc phải tự tạo các câu lệnh select sql ! Dưới đây mình sẽ hướng dẫn các bạn tạo và sử dụng thư viện hỗ trợ tạo câu lệnh query SQLite ! Class chính của thư viện QueryHelper 1.1. Join bảng 1.1.1. Khi chỉ cần select 1 bảng -> chúng ta chỉ cần truyền tên bảng cần ...

Ứng dụng nguyên tắc Gestalt trong thiết kế UX
Nguyên tắc Gestalt: Cơ sở cho 1 thiết kế UX tốt Đối với các developer, sẽ là thách thức để tạo ra 1 sản phẩm có trải nghiệm người dùng tốt. Vì vậy, nếu chúng ta có những nguyên tắc để dựa vào trong khi thiết kế, việc này sẽ dễ dàng hơn rất nhiều. Nguyên tắc Gestalt là 1 ví dụ bởi khi áp dụng 1 ...

Sử dụng Feedly đọc tin tức RSS
I.Giới thiệu Trong xã hội internet đang phát triển rất mạnh mẽ hiện nay vấn đề quản lý tìm kiếm chọn lọc tiếp cận thông tin là vô cùng cần thiết. Thông tin có ở rất nhiều nơi từ mạng xã hội facebook, line, zalo... cho đến các website tin tức, nội dung thì đa dạng phong phú và rất chi tiết. ...

Bảy nguyên tắc làm nên một cuộc họp hiệu quả
MỞ ĐẦU Khi tham gia vào một tổ chức, chắc chắn chúng ta sẽ phải tham gia vào các cuộc họp, họp lớn, họp nhỏ, họp nội bộ, họp toàn công ty... Có 2 kiểu người trên thế giới này: Người thích các cuộc họp và người không thích họp. Đa số nhân viên đi làm đều phải dành hàng tiếng đồng hồ cho việc họp ...

Tổng quan về Bluetooth Smart hay Bluetooth Low Energy(BLE) – Part 2 Sử dụng BLE trong lập trình Android.
I. Tổng quan Android 4.3 (API Level 18) cung cấp API cho các lập trình viên, có thể thao tác với phần cứng Bluetooth thông qu BLE, điều này cho phép chúng ta phát triển các ứng dụng dùng BLE để trao đổi thông tin với các thiết bị BLE xung quanh. Như chúng ta đã biết, trong tương tác BLE, thiết ...

Cải thiện hiệu năng Rails app với cache
Khi mà application còn nhỏ và chỉ có một số lượng khách ghé thăm hạn chế thì mọi chức năng luôn hoạt động nhanh gọn và trôi chảy. Ở tình trạng này ta không cần phải bỏ nhiều công sức để lo lắng cho performance và optimization, mặc dù thời gian xử lý cũng là một yếu tố cạnh tranh. Nhưng theo thời ...

Thói quen khiến hiệu suất công việc của bạn trì trệ
Lý do tôi viết bài viết này cũng bởi vì: Tôi là một người “unproductive – hiệu suất kém”. Chính là tôi đó các bạn ạ. Tôi ngủ quá nhiều. Tôi nói quá nhiều. Tôi đọc quá nhiều. Tôi nghe nhạc cả ngày luôn. Tôi xem phim. Tôi mua cả đống các thứ đồ đạc để biến tôi thành zombie:v Tất cả các ...

Upload multi files using retrofit
Xin chào tất cả các bạn, Ở bài viết đầu tiên mình đã hướng dẫn các bạn sử dụng và upload single file với retrofit Ở bài này mình sẽ hướng dẫn các bạn upload multi files với retrofit Đầu tiên khởi tạo server. $data = []; if(isset($_FILES['uploaded_file']) && is_array($_FILES['uploaded_ ...

Node.JS Yargs - Build interactive command line tools (Part II)
Như trong phần I mình đã giới thiệu qua về module Yargs của Node.JS cũng như giới thiếu một số methods của nó. Hôm nay mình tiếp tục chia sẻ tiếp những methods còn lại của module Yargs này nhé. Yargs methods .command(cmd, desc, [Builder], [Handler]), .command(cmd, desc, [Module], ...

Tìm hiểu sâu về Ruby Modules
Modules có một cấu trúc ngôn ngữ linh hoạt, nó được ứng dụng một cách rộng rãi trong nhiều trường hợp khác nhau, chẳng hạn như namespacing, inheritance và decorating. Tuy nhiên, một số deverloper vẫn đang còn mơ hồ về cách làm việc của modules và cách chúng tương tác với code riêng của họ. Bài ...

Sử dụng factory method thay cho contructor trong java.
Cách thức thông thường đối với một class là cho phép một client tạo một instance của chính class đó thông qua một public constructor, Một class có thể cung cấp một public static factory method, nó đơn giản là một static method trả về một instance của class. Dưới đây là một ví dụ đơn giản từ Boolean ...

Tùy biến layout của UICollectionView
UICollectionView là một trong những đối tượng quen thuộc đối với lập trình viên iOS. Trước hết ta tự đặt ra câu hỏi "Vì sao cần phải tùy biến bố cục của UICollectionView". Mặc dù bản thân UIKIT của iOS đã cung cấp sẵn flow layout giúp hiển thị các đối tượng thành phần dưới dạng lưới (grid ...

Lập trình Android sử dụng Gmail API
Quickstart Lấy SHA1 từ keystore keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore -list -v Trong đó androiddebugkey chính là tên alias của keystore của bạn tạo ký app Còn ~/.android/debug.keystore là đường dẫn tới file keystore của bạn Còn bạn copy paste nguyên ...

Ứng dụng Công nghệ phần mềm hướng tác tử trong Thương mại điện tử (Phần 2 - tiếp theo)
Trong phần trước, tôi đã thực hiện tìm hiểu về Đàm phán trong Thương mại điện tử, các bạn có thể xem tại: https://viblo.asia/dang.thi.my.dung/posts/eXoKWkMoKLO Nội dung tiếp theo của tuần này sẽ là Ứng dụng để xây dựng mô hình đàm phán trong Thương mại điện tử. 5. Xây dựng mô hình một hệ thống đa ...

Tìm hiểu mã nguồn mở PHP CMS Drupal hướng dẫn tìm hiểu Views, sức mạnh kinh khủng của Drupal - bài 9
Tiếp theo loạt bài viết về Drupal : Loạt bài đều nói về Drupal 8 nhé các bạn. Bài 1 Bài 2 Bài 3 Bài 4 Bài 5 Bài 6 Bài 7 Bài 8 Tổng quan Những ai sử dụng Drupal và muốn hợp tác trường kỳ với Drupal có thể nói chỉ vì 1 lý do: Views của Drupal. Không ai mà sử dụng Drupal lại ...

[Java] Log4j hello world example
Bài hướng dẫn này, chúng tôi sẽ giới thiệu cho các bạn cách sử dụng log4j 1.2.x để log error hoặc debug message trong Java. 1. Project Directory 2. Tải Log4j Khai báo dependencies: pom.xml <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifa ...

Những lưu ý khi thiết kế "Walkthrough": Hướng dẫn người dùng
Nếu app của bạn là 1 sản phẩm mới, thì việc giới thiệu qua app cho người dùng là điều tất yếu. Mà hình hướng dẫn sẽ xuất hiện lần đầu tiên khi người dùng sử dụng app. Họ sẽ xem trước được những tính năng cơ bản và những cách sử dụng căn bản thông qua việc xem hướng dẫn này. Nó thực sự là điều cần ...

Kiểm thử Agile - Yes or No ?
Với những ai đang làm trong môi trường phát triển phần mềm, chắc chắn không dưới một lần đã nghe qua từ “Agile“ . Ngày nay, từ “Agile” được sử dụng một cách rộng rãi (đôi khi còn bị sử dụng sai nữa). Nó là một phương thức mới về quản lý dự án, nơi mà thiết lập những ...

Vì sao nên dùng phân tích tác động trong kiểm thử?
Phát triển phần mềm là một quá trình liên tục, liên tục sửa đổi, cải tiến và thêm tính năng mới, tất cả nỗ lực chỉ để mang lại giá trị gia tăng cho người sử dụng. Tính liên tục này là cần thiết, nhưng nó cũng có những hạn chế. Đó là đối lúc gây khó khăn để đánh giá hậu quả mà những thay đổi tác ...

Haskell and Category theory
While I am trying to study Haskell, I always stumble with the expression "Category Theory". But when I am trying to read books about Category Theory, it is more often so abtract that I find myself get lost and have to review more basic concepts from Mathematics such as Set theory or functions to ...