Bài viết của Hoàng Hải Đăng

Inject mọi thứ - ViewHolder và Dagger 2 (với Multibinding và AutoFactory)

Mục đích chính của Depedency Injection pattern được implement bởi Dagger 2 là tách riêng việc khởi tạo khỏi hành vi của đối tượng. Trong thực tế, điều này có nghĩa là tất cả các lời gọi toán tử new, newInstance sẽ không được gọi ở bất kỳ nơi nào khác ngoài Modules của Dagger. Cái giá của Dagger - ...

Tác giả: Hoàng Hải Đăng viết 15:54 ngày 12/08/2018 chỉnh sửa

Laravel Deep Dive

Laravel là một trong những framework php nổi tiếng nhất hiện nay. Nó hỗ trợ cho lập trình viên rất nhiều trong việc tổ chức cấu trúc cho project, xử lý truy vấn dữ liệu, xử lý các tác vụ liên quan đến queue, job,, load các package cần thiết cho project... Tuy nhiên nó cũng làm cho lập trình viên ...

Tác giả: Hoàng Hải Đăng viết 15:54 ngày 12/08/2018 chỉnh sửa

Quy hoạch động - một thuật toán thần thánh

Trong bài viết này, tôi sẽ giới thiệu với các bạn một thuật toán thần thánh: quy hoạch động. Nếu bạn tham gia các cuộc thi code, bạn nhất định phải biết thuật toán này. Gần một nửa các bài thi trong các cuộc thi code cần đến quy hoạch động. Tất nhiên, có những cách khác để giải bài toán đó. ...

Tác giả: Hoàng Hải Đăng viết 15:54 ngày 12/08/2018 chỉnh sửa

Hướng dẫn cách mở rộng disk Linux LVM khi mở rộng ổ cứng máy ảo

Bài viết này mình sẽ hướng dẫn các bạn cách nâng cấp ổ cứng server elastic search nói riêng và ổ cứng cho server Linux sử dụng LVM nói chung. I. Các bước chuẩn bị trước khi tiến hành nâng cấp. 1.Query get tổng số lượng các object trước khi tiến hành nâng cấp disk. (ví dụ cho trường hợp get số ...

Tác giả: Hoàng Hải Đăng viết 15:54 ngày 12/08/2018 chỉnh sửa

Rails 5 & Vue.js: Hết âu lo và hứng thú hơn với frontend

Khi Node xuất hiện, nó nhanh chóng trở thành một xu thế. Khi Angualar ra đời, dev sử dụng nó mọi lúc mọi nơi. Rồi sau đó đến React, Flux/Redux, nhưng vẫn không khiến "tôi" hứng thú với frontend. Lý do là mỗi khi "tôi" cố gắng tiếp cận những xu hướng mới đó, "tôi" thật sự rất đau đầu với những ...

Tác giả: Hoàng Hải Đăng viết 15:54 ngày 12/08/2018 chỉnh sửa

Giới thiệu về redux saga

Redux-Saga là một thư viện redux middleware, giúp quản lý những side effect trong ứng dụng redux trở nên đơn giản hơn. Bằng việc sử dụng tối đa tính năng Generators (function*) của ES6, nó cho phép ta viết async code nhìn giống như là synchronos. Saga không chỉ tồn tại trong thế giới javascript, ...

Tác giả: Hoàng Hải Đăng viết 15:53 ngày 12/08/2018 chỉnh sửa

[Bulk insert] Đôi chút về gem ''activerecord-import'' và cách sử dụng.

Khi phát triển phần mềm, việc ứng dụng sẽ có mốt số chức năng cần insert số lượng lớn bản ghi là điều dễ dàng gặp, ví dụ như thêm dữ liệu từ file excel, xml... hay khi ứng dụng được nâng cấp, đổi mã nguồn thì thường cần thiết phải convert một số lượng lớn dữ liệu từ hệ thống cũ. Nếu xây dựng hệ ...

Tác giả: Hoàng Hải Đăng viết 15:53 ngày 12/08/2018 chỉnh sửa

Kỹ năng giao tiếp trong dự án Offshore

Bài viết sau dịch từ 1 bài trên qiita: オフショア開発とコミュニケーション Từ các kinh nghiệm của tôi đặc biệt là vào thời điểm khi các dự án outsource ngày càng nhiều thì tôi cho rằng với các kỹ sư Nhật Bản thì điều quan trọng nhất là kỹ năng giao tiếp. Chúng ta thuộc về nhiều nền văn hóa khác nhau, nói những ...

Tác giả: Hoàng Hải Đăng viết 15:53 ngày 12/08/2018 chỉnh sửa

Bắt Đầu với Javascript (P4)

Trong phần này sẽ tiếp tục tìm hiểu về các câu lệnh, cấu trúc lệnh của javaScript. Trong javaScript kết thúc mỗi câu lệnh sẽ dùng dấu chấm phẩy (</p> <div class= Tác giả: Hoàng Hải Đăng viết 15:53 ngày 12/08/2018 chỉnh sửa

Khi nào thì sử dụng Automation Testing?

Automated test là phương pháp hữu dụng và ấn tượng, thường được sử dụng để giúp tiến hành test một cách hiệu quả. Tuy nhiên, automated test lại không phù hợp với tất cả các dự án. Nguyên nhân là do thiếu thời gian và thiếu kĩ thuật . Là quá trình kiểm tra hệ thống với dữ liệu đầu vào và đầu ra ...

Tác giả: Hoàng Hải Đăng viết 15:53 ngày 12/08/2018 chỉnh sửa