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

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

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

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

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

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

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

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

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

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

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

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ị </p> <div class= Tác giả: 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 ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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