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 ...

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

Ứ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 ...

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

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. ...

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

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ác giả: Hoàng Hải Đăng viết 14:45 ngày 12/08/2018

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 ...

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

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 ...

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

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 ...

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

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_ ...

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

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ác giả: Trịnh Tiến Mạnh viết 14:45 ngày 12/08/2018

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 ...

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

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ác giả: Bùi Văn Nam viết 14:45 ngày 12/08/2018

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 ...

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

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 ...

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

Ứ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ác giả: Trịnh Tiến Mạnh viết 14:44 ngày 12/08/2018

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 ...

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

[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 ...

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

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 ...

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

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 ...

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

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 ...

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

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 ...

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