
Nghệ thuật viết code đẹp - Phần II: Nên viết comment như thế nào?
Bài viết này là phần 2 trong series Nghệ thuật viết code đẹp, tiếp nối Nghệ thuật viết code đẹp - Phần I: Viết flow điều kiện và vòng lặp dễ hiểu. Phần này được viết với mong muốn chia sẻ về cách xác định xem trường hợp nào chúng ta nên viết comment vào source code cho hiệu quả, tránh thiếu cũng ...

EvenBus trong Android
Evenbus là gì ? EventBus đã được giới thiệu trong Google IO 2013. EvenBus là thư viện làm đơn giản giao tiếp giữa các phần trong ứng dụng của bạn. Ví dụ, để gửi dữ liệu từ Activity tới Service đang chạy, hoặc gửi dữ liệu giữa các Fragment. Thông thường chúng ta hay truyền thông qua Intent, nhưng ...

Real Time Rails Chat Application (Part 2)
Link phần 1: https://viblo.asia/raincatcher/posts/oOVlYEzal8W Trong phần này, chúng ta sẽ bắt đầu tạo conversation để gửi tin nhắn, kèm theo các chức năng close, minimum, ... Bắt đầu 1 conversation Thêm vào routes.rb Rails . application . routes . draw do root 'home#index' ...

Pattern Matching in MySQL
MySQL cung cấp chuẩn SQL pattern matching dựa trên Regular Expression được mở rộng tương tự như những biểu thức được sử dụng bởi các tiện ích Unix như vi, grep và sed. LIKE pattern SQL pattern matching cho phép bạn sử dụng _ để match tất cả các kí tự đơn và % để match một số các kí tự tùy ...

The only proper PDO tutorial
1. Giới thiệu Original English version is of phpdelusions.net, I just want to practice and share it in Vietnamese. Đã có rất nhiều tutorial về PDO, tuy nhiên không may mắn là hầu hết các bài viết đó đều không chỉ ra được lợi ích thực sự của PDO hay thậm chí còn đưa ra rất nhiều bad ...

Tìm hiểu về JQuery part 1
jQuery là một Framework được xây dựng dựa trên các tính năng của JavaScript. Vì thế trong khi phát triển các ứng dụng sử dụng jQuery, bạn có thể sử dụng tất cả các hàm và các tính năng khác được bổ trợ trong JavaScript. jQuery làm đơn giản hóa việc truyền tải HTML, xử lý sự kiện, tạo hiệu ứng động ...

Variables & Scope trong Ruby
Hi, new members. Lần này mình muốn bàn về chủ đề Variables & Scope In Ruby. Một chủ đề khá thú vị Tạ Quốc Bảo viết 15:00 ngày 12/08/2018

Sử dụng và custom griddle trong reactjs
Griddle là 1 component tạo ra table hiển thị dữ liệu, có hỗ trợ tìm kiếm , phân trang 1.Cài đặt gói griddle: npm install --save griddle-react@beta import vào project: mport React from 'react'; import Griddle from 'griddle-react'; Sử dụng render ra bảng: <Griddle ...

Manage packages dependencies with NPM
Node Package Manager (NPM) là một ứng dụng dòng lệnh CLI (Command line interface) dùng để quản lý các package, thư viện và các phụ thuộc của chúng. Công cụ này cho phép publish các package của bạn lên trang chủ NPM và tìm kiếm, cài đặt các module, package do những người khác up lên. Trong bài ...

Sử dụng docker-compose cho dự án Laravel
Chủ đề mà mình muốn đề cập đến đó build một môi trường cho dự án Laravel một cách nhanh bằng docker-compose. Khỏi cần phải nhắc đến docker là gì nữa nhỉ, vì chỉ cần search key word "docker viblo" là đã ra một list những bài viết về docker rồi, nên mọi người có thể tìm hiểu căn bản trước nhé. Vậy ...

Cấu hình để Angular 2 chạy với Rails
Chúng ta sẽ sử dụng Angular CLI để có thể khởi tạo nhanh chóng một project Angular. Để cài đặt Angular CLI thì chúng ta cần phải cài đặt npm trước: npm -v # Kiểm tra chúng ta đã cài đặt npm chưa sudo apt-get install npm # Nếu chưa thì cài đặt npm sudo npm install -g angular-cli # Cài đặt Angular ...

JavaScript với khả năng tiếp cận tư tưởng
Hôm nay mình muốn giới thiệu với mọi người về một bài viết về JavaScript https://www.sitepoint.com/writing-javascript-with-accessibility-in-mind/ Các mẹo của JavaScript mục đích để cải thiện khả năng truy cập của các thanh phần JavaScript và cung cấp cho người dùng các phương thức tương tác tốt ...

Java 8 Comparator, Làm thế nào để sắp xếp List
Bạn muốn sắp xếp một List của bạn, hãy tìm hiểu bạn sẽ có nhiều cách để có thể có được danh sách mình mong muốn. Trong bài viết này chúng ta sẽ thấy vài ví dụ về cách sắp xếp một danh sách trong Java 8 Sắp xếp một List theo Alphabetically List<String> cities = Arrays.asList( ...

Google Maps Android GeoJSON Utility
Giới thiệu GeoJSON là một phần mở rộng của định dạng dữ liệu JSON và là kiểu dữ liệu địa lý. Sử dụng tiện ích này, bạn có thể lưu trữ các đặc điểm địa lý theo định dạng GeoJSON và biến chúng thành một layer trên bản đồ. Để thêm và xóa dữ liệu GeoJSON của bạn từ bản đồ, hãy gọi addLayerToMap () và ...

Làm việc với background worker trong rails
Background worker luôn là điều cần thiết cho tất cả các dự án, và nhiều ứng dựng, mã chạy ngầm (background code) nó có tầm quan trọng tương đương với những đoạn mã mặt ngoài của web( các mã để xây dựng nên mặt ngoài của 1 ứng dụng web). Việc viết background worker lần đầu tiên có thể khá khó ...

React Performance Tuning
React là một thư viện Javascript được thiết kế với mục tiêu tối ưu hiệu năng của các ứng dụng. React sử dụng một số kỹ thuật để giảm thiểu cost của các DOM operations được yêu cầu để update UI xuống mức thấp nhất có thể. React cũng cung cấp các tools và các phương pháp để tăng performance khi có ...

React Redux Starter Kit
Chắc hẳn các bạn đã quen với react.js và redux. React Redux Starter Kit là một bộ công cụ giúp chúng ta code Front-end với rất nhiều các công nghệ mới. Nó giúp cho chúng ta phát triển, quản lý Front-end một cách dễ dàng hơn. Bắt đầu chính là bước cài đặt và bật server lên để chạy thử. Tất cả đều có ...

Laravel: Task Scheduling
Hôm nay mình sẽ giới thiệu cho các bạn về 1 tính năng khá hay của Laravel. Đó là Task Scheduling (Lập lịch làm việc) ### **Introduction** Trước đây, có thể bạn đã từng tạo một Cron cho một tác vụ nào đó mà bạn muốn lập lịch để chạy trên server của bạn. Tuy nhiên, sẽ khá phiền phức nếu bạn ...

Publish-Subcribe Pattern on Rails
Publish-Subcribe là mẫu gửi thông điệp mà publishers không gửi trực tiếp đến subscribers. Thay vào đó, gửi các thông điệp (sự kiện) mà không hề biết gì về bên nhận. Bên nhận chỉ nhận thông điệp mong muốn, mà không hề biết về thông tin bên gửi. Để thực hiện được điều đó, message brocker orevent ...

Tấn công CSRF và cách phòng chống
1 Giới thiệu về CSRF Cross-Site Request Forgery (CSRF) là một hình thức tấn công nhằm vào người dùng nhằm thực thi các hành động không mong muốn trên ứng dụng web dựa vào quyền chứng thực của người dùng. Các cuộc tấn công CSRF nhằm vào việc thực hiện các yêu cầu thay đổi trạng thái, chứ không ...