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

Yarn: Package manager cho JavaScript

Bài dịch từ trang Code.Facebook Trong cộng đồng Javascript, có hàng trăm ngày đoạn code được các coder chia sẻ để chúng ta có thể tránh việc viết lại các components cơ bản, libraries hoặc frameworks. Mỗi đoạn code này lại phụ thuộc tuần tự vào các đoạn code khác, và những dependencies này được ...

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

[Android] Runtime permisstion (PermissionsDispatcher).

I.Giới thiệu Từ phiên bản Android 6.0 (Marshmallow) trở đi sẽ được tích hợp chức năng kiểm soát quyền truy cập Permissions cho các ứng dụng. Quyền truy cập được gộp thành các nhóm ( Permission Group), Với tính năng mới này người dùng có thể thay đổi quyền truy cập của ứng dụng bất cứ khi ...

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

Các loại kiểm thử phần mềm - Phần I

Trong bài viết này mình xin giới thiệu với các bạn cái loại kiểm thử phần mềm , trong phần 1 này mình xin giới thiệu với các bạn 3 loại đầu tiên : 1.Test smoke (test sơ lược) Định nghĩa : Test sơ lược còn được gọi là "Build Verification Testing" là một loại kiểm thử bao gồm một tập các bài ...

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

Sử dụng rack-mini-profiler để theo dõi, kiểm tra performance của Rails App

Giới thiệu MiniProfiler là một công cụ đơn giản để theo dõi thời gian server xử lý và render các thành phần html, query database, thời gian trình duyệt load trang, xử lý DOM, hiển thị nội dung. Đây là một công cụ tốt được sử dụng cho việc tìm kiếm những điểm nghẽn trong các ứng dụng của bạn. Rất ...

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

Node.js Tutorial: Phần 5: Express route

Route là một thành phần cực kỳ quan trọng của một website, nó giúp website biết được người dùng truy cập đến nơi nào của trang web, từ đó phản hồi lại một cách thích hợp. Trong ExpressJs, route được tích hợp sẵn và dễ dàng sử dụng. Bài viết này hãy cùng mình đi tìm hiểu về route trong Express nhé. ...

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

Bluetooth

1 . Cài đặt Tạo 1 project và đặt tên là AndroidConnection acitivity_main.xml định nghĩa như dưới đây: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" ...

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

Tìm hiểu về Model trong Backbone.js

Giới thiệu Khi chúng ta nói về bất kỳ mô hình MVC thì Model chắc chắn là một phần quan trọng nhất trong kiến trúc của các ứng dụng. Model là nơi chứa tất cả các dữ liệu ứng dụng. Cùng với việc giữ dữ liệu, class Model thực hiện các hành động khác nhau trên dữ liệu. Các hành động như khả năng xác ...

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

4 JavaScript Design Patterns You Should Know

Mỗi developer luôn cố gắng viết các đoạn code có thể bảo trì, dễ đọc và có thể sử dụng lại được. Cấu trúc của code trở nên quan trọng hơn khi ứng dụng ngày càng lớn. Các mẫu thiết kế (design patterns) đã chứng minh được vai trò quan trọng của mình trong việc giải quyết này. Mặc dù có một loạt ...

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

Task and back stack trong android

Một ứng dụng android thường sẽ bao gồm nhiều activity. Mỗi activity nên được thiết kế xung quanh một kiểu hành động cụ thể mà người dùng có thể thực hiện và bắt đầu các activity khác. Ví dụ: một ứng dụng email có thể có một activity để hiển thị một danh sách các thư mới. Khi người dùng chọn một ...

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

[Memento Pattern] Sử dụng NSKeyedArchiver

Một trong những cách triển khai của Memento pattern là Archiving . Nó chuyển đổi object thành 1 stream có thể save và restore lại nhưng không phơi bày các private properties ra các external class . Ta có nhiều lựa chọn để lưu mảng các objects. NSUserDefaults : lưu app ...

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