
Tạo lập mail server trên hệ thống GNU/Linux (Phần 3)
Đây là bài tiếp của bài sau đây MTA - Postfix (tiếp) Nếu ta sử dụng domain ảo, các phần sau đây sẽ phải để rỗng local_recipient_maps = mydestination = Sau đó ta sẽ set một vài thông số như sau: # how long if undelivered before sending warning update to sender delay_warning_time = 4h # ...

Pthreads - Đa luồng trong PHP. Tại sao không?
Các PHP Developers hiếm khi sử dụng đa luồng. Sự đơn giản của chương trình đồng bộ, đơn luồng chắc chắn rất hấp dẫn, nhưng đôi khi việc sử dụng đa luồng có thể mang lại một số cải tiến hiệu suất đáng kể. Trong bài viết này, tôi sẽ giới thiệu cho các bạn cách tạo luồng trong PHP với pthreads ...

Build API with Rails 5
The project here will be based on the project that I build myself. We will try to get the most of configuration that goes with API using Rails 5. Before we can build API with gem rails_api but since it is integrated into rails itself we can build API with flag --api. The advantage of using this ...

Tìm hiểu về khởi tạo (Initialization) trong Swift (part 1/3)
Thông thường khi code, chúng ta sẽ phải liên tục khởi tạo các instance của class, structure hoặc enum. Khởi tạo là thời điểm chúng ta quản lý giá trị của các property, gán các giá trị mặc định cho các property này. Tuy nhiên, khác với Objective-C trước đây, Swift là ngôn ngữ “an toàn”, ...

Sử dụng bounded wildcard hiệu quả trong java
Kiểu Parameterized là kiểu bất biến, bất cứ hai kiểu khác nhau Type1 và Type2, List<Type1> không thể là subtype củaList<Type2>. Trong khi điều đó thực sự trái ngược List<String> không phải là một subtype của List<Oject>. Bạn có thể thêm bất kỳ object vào trong ...

Reactive programing with Java [Part 2]
Chào mọi người, tiếp tục về chủ đề xoay quanh Reactive Programing , hôm nay tôi sẽ tiếp tục đi sâu vào hơn các khái niệm sử dụng trong phương thức lập trình mới mẻ, hiện đại và mạnh mẽ này. Ở phần trước, tôi đã giới thiệu về các khái niệm cơ bản về Reactive Programing , bản chất, ưu điểm và cách ...

Tìm hiểu về cơ sở dữ liệu không gian [part 1]
Chào mọi người, trong bài viết này mình sẽ khái niệm cơ bản tới mọi người về cơ sở dữ liệu không gian. Mình thấy chủ đề này khá rộng rãi và hay cho những người nghiên cứu về hình học, không gian ứng dụng cho các bài toán về tính toán và lưu trữ dữ liệu không gian. CSDL không gian: Là một hệ ...

Symfony components: OptionsResolver
Mình là một PHP programmer nhưng bài viết viết PHP lại khá ít (03/19 bài). Sau một khoảng thời gian viết về các ngôn ngữ linh tinh, hôm nay mình sẽ quay về với ngôn ngữ mà có lẽ là mình thạo nhất nhé. Chẳng là vừa rồi mình có viết một PHP package làm việc với OneSignal API. Nên mình có tìm hiểu ...

Tìm hiểu WebGL Phần 5: Các ví dụ về chuyển đổi vị trí, tương tác, phóng to thu nhỏ
Tiếp nối các ví dụ về WebGL ở phần này ta sẽ đi vào các ví dụ về chuyển động, tương tác với các mô hình đồ họa của WebGL. Nhắc lại các bước để tạo một ứng dụng WebGL bao gồm: Chuẩn bị canvas và WebGL context. Tạo dữ liệu hình học cho mô hình cần vẽ., tạo các buffer object để bind với các dữ ...

Async với PromiseKit trong ứng dụng iOS
1.1. Synchronous & Asynchronous: Đã là lập trình viên chắc các bạn đều biết về "đồng bộ" (Synchronous) và "bất đồng bộ" (Asynchronous). Dưới đây là phần định nghĩa của 2 thuật ngữ này trên trang code24h.com Synchronous có nghĩa là xử lý đồng bộ, chương trình sẽ chạy theo từng bước và ...

Spring hibernate pagination with taglib (Phân trang trong Spring Mvc )
Hi all, Tiếp tục chuỗi bài học mình đang vọc vạch về Spring Mvc. Với dev hai từ "phân trang" đã quá quen thuộc. Bài toán cụ thể là khi dữ liệu bản ghi trả về rất lớn, nếu chúng ta hiển thị toàn bộ dữ liệu đó ra một page mà không có phân trang thì sao???. Giả sử nếu có 10^6 bản ghi, và người dùng ...

PHP part1. làm quen với PHP
Tổng quan về PHP để làm quen và hiểu sơ lược một cách nhanh chóng về PHP thì chúng ta sẽ lần lượt đi trả lời các câu hỏi dưới đây, từ đó chúng ta có thể hiểu sơ lược về PHP. PHP là gì ? PHP (Hypertext Preprocessor) là một ngôn ngữ lập trình mã nguồn mở được thực thi trên máy chủ. Tập tin ...

Ẩn/Hiện thanh toolbar khi scroll trên recycle view
Để control được việc ẩn / hiện của toolbar hoặc bất kì một view nào trong quá trình scroll recycleview thì việc đầu tiên chúng ta cần làm là tạo một recycle view và một thanh toolbar đơn giản. Đầu tiên là việc import thư viện: ..... dataBinding { enabled = true } ..... ...

Vòng đời của một React Component
constructor(props) Được gọi khi một thể hiện của component được tạo ra. Có thể dùng để khởi tạo state cho component. Cũng có thể dùng để "bind" các hàm của component. Nếu phải cài đặt hàm này thì phải khai báo 1 tham số props cho nó và phải gọi super(props) đầu tiên. Nếu không làm gì ...

Cache trong Laravel 5.3
Xin chào các bạn. Hôm nay mình sẽ tiếp tục về series về Laravel 5.3. Và hôm nay mình sẽ giới thiệu với các bạn về Cache trong laravel và cách sử dụng Cache. 1. Cấu hình Laravel cung cấp một API thống nhất cho các hệ thống cache khác nhau. Cấu hình cho cache được đặt trong file config/cache.php. ...

Tìm hiểu về thư viện baum tree
Chúng ta có 1 menu đa tầng kiều như sau : root |_ Child 1 |_ Child 1.1 |_ Child 1.2 |_ Child 2 |_ Child 2.1 |_ Child 2.2 Thiết kế một hệ thống menu đa tầng không giới hạn (chia làm nhiêu cấp ông , cha, con , cháu, chắt ...v.v..v..) Cần phải quản lý truy xuất dữ liệu ...

Cách sử dụng Custom Render trong Xamarin Form
Bài viết này sẽ hướng dẫn: Làm thế nào để tạo ra một Custom Render cho một Custom Xamarin.Forms Control dùng để hiển thị một Preview Video Stream bằng camera của thiết bị. Trước khi tiến hành thiết lập, chúng ta sẽ cùng xem sơ đồ dưới đây để tìm hiểu về mối quan hệ giữa View và các control native ...

Sai lầm trong dự án dẫn đến thất bại
Trong thực tế có rất nhiều nguyên nhân gây ra các khó khăn trong một dự án phần mềm. Những khó khăn này nếu không được xử lý sẽ dẫn đến việc chi phí dự án tăng vọt và trượt thời hạn cam kết, làm cho dự án thất bại giữa chừng, hoặc vẫn “hoàn thành” nhưng không đạt một phần hoặc thậm chí ...

Sử dụng Rails URL Helpers trong Javascript với JsRoutes
Khi chúng ta muốn sử dụng resource routing của Rails (ví dụ: "/blogs/new" hoặc "/blogs/2/edit", ...), chúng ta thường sử dụng path như new_blogs_path, blog_path(id). Nhưng khi chúng ta làm việc với javascript, thì sẽ không sử dụng các path như trong rails được, vậy thay vì sử dụng path route của ...

Một cuộc hành trình trên Main Thread của Android - PSVM
Từ PSVM đến looper và handler. Có một bài viết trên codinghorror nói về việc tại sao chúng ta lại cần phải đọc source code. Một trong những mặt tốt của Android là nó có tính chất mở. Khi đối diện với những lỗi liên quan đến cách mà chúng ta tương tác với main thread, tôi đã quyết định tìm hiểu ...