Android Data Binding với Kotlin
Với các bạn Android dev chắc hẳn đều ít nhất đã nghe qua hoặc sử dụng thư viện Android Data Binding Hôm nay mình xin giới thiệu với các bạn những thay đổi khi dùng data binding trong android bằng kotlin. Nếu bạn làm app android bằng Java thì bạn chỉ cần thêm đoạn code dưới đây vào ...
SOLID Principles #2: Open/Closed Principle
Chào mừng các bạn tiếp tục với series SOLID Principles của mình. Bài trước mình có giới thiệu với mọi người về nguyên tắc đầu tiên là Single Responsibility Principle. Ngay tiếp theo đây, trong bài viết mình sẽ giớii thiệu tới các bạn nguyên tắc tiếp theo, cùng đón đọc nhé! Định nghĩa: a ...
Rails Stack Trace
1. Stack Trace là gì: Trong quá trình lập trình Rails, thỉnh thoảng ta sẽ thấy những thông báo lỗi như thế này. Thông báo lỗi đang hiển thị Stack Trace, bao gồm 3 phần ApplicationTrace (được hiển thị mặc định), Framework Trace và Full Trace. Stack Trace là thứ tự chi tiết các ...
Sử dụng passport.js xây dựng kịch bản đăng ký và đăng nhập
Passport.js là một trong những module phổ biến của Nodejs , và cũng là middleware hết sức linh hoạt và có khả năng tùy biến cao. Passport.js được sử dụng với nhiều kịch bản xác thực như Facebook, Google+, Twitter hay thậm chí là sử dụng kiểu xác thực thông qua local username - ...
Sử dụng flyway library cho việc setup integration test
Có thể các bạn đã nghe hoặc sử dụng flyway rồi, tuy nhiên ở bài viết này mình dùng flyway phục vụ cho mục đích khác, phục vụ để setup integration test. Tuy nhiên, trước khi bắt đầu mình vẫn muốn giới thiệu sơ về flyway. Flyway là một công cụ open-source dùng để migration data, cấu hình cực kì ...
Tìm hiểu Queue trong Laravel
Laravel Queue là gì? Một hàng đợi (queue) là một danh sách những việc cần làm (job) được quản lý theo thứ tự. Khi chúng ta muốn thêm một công việc (job) vào hàng đợi, job phải implement interface IlluminateContractsQueueShouldQueue. Laravel Queue driver được sử dụng để quản lý các job như thêm ...
Taking Advantage of Kotlin part 1
Kể từ Google I/O 2017, Kotlin đã ngày càng được sử dụng rộng rãi hơn trong phát triển ứng dụng, các phiên bản cập nhật cũng ngày càng mang lại nhiều tiện ích cho dev. Bài viết này mình xin giới thiệu các chuyển từ Java sang Kotlin cùng với một số tips cho người mới. Configure Kotlin Đầu tiên để ...
Ruby_Cloud development environment (Cloud9)
Development Environment Môi trường phát triển thì tùy vào thói quen của từng developer có thể tùy chỉnh khác nhau. Nhưng nói chung thì được chia thành 2 môi trường là: môi trường sử dụng Text editor & command line; và IDE (Integrated Development Environment) - môi trường phát triển tích ...
Ruby hijacking
Bài viết tham khảo từ bài phát biểu của @tagamoris (Fluentd maintaine, Treasure Inc) và @joker1007 (CTO Repro) tại Ruby kaigi 2018. https://www.slideshare.net/tagomoris/hijacking-ruby-syntax-in-ruby Trong ruby core có tồn tại sẵn class Binding. Các object của class Binding đóng gói ngữ cảnh ...
Fast JSON API serialization với Rails
Giới thiệu Nếu các bạn đã từng làm việc với Rails5 api thì chắc cũng từng ít nhất 1 lần sử dụng Activemodel Serializer, và hôm nay tôi sẽ giới thiệu cho các bạn 1 thư viện "tương tự" nhưng tốc độ thì vô cùng nhanh như cái tên của nó fast_jsonapi "A lightning fast ...
Pass argument into Rake Task
Rake task là một cách tuyệt vời để nâng cao (hoặc thậm chí tự động hóa) công việc của bạn trong một dự án ruby. Bởi vì chúng ta thường xuyên maintainance hoặc chạy các job về data migration với một số lượng data rất lớn. Những lúc như vậy Rake task là sự lựa chọn tối ưu cho bạn. Nhưng khi làm ...
Firebase Cloud Messaging
Firebase Clound Messaging (FCM) là giải pháp tin nhắn đa nền tảng cho phép bạn phân phối tin nhắn đáng tin cậy mà hoàn toàn không tốn một chi phí nào. Sử dụng FCM , bạn có thể thông báo tới ứng dụng client rằng một email mới hay dự liệu mới đã sẵn sàng để đồng bộ. Bạn có thể gửi tin nhắn thông ...
Những điều cần biết khi học PHP
Để bắt đầu với một ngôn ngữ thì không đâu chuẩn chỉ bằng trang chủ của nó, và PHP cũng vậy. Tuy nhiên, để ngồi đọc hết chỗ text trong document ấy thì rất là gian nan. Vì vậy mình xin tổng hợp một số mục mà mình nghĩ là tiêu biểu khi tìm hiểu về ngôn ngữ PHP. Các đặc điểm cơ bản của lập trình ...
Thao tác với NSAttributedString sử dụng thư viện SwiftRichString
Như ta đã biết đối tượng NSAttributedString của framework UIKit cho phép quản lý các ký tự và các thuộc tính của từng ký tự này trong chuỗi. Thư viện SwiftRichString cung cấp các cơ chế tiện ích cho phép người lập trình dễ dạng định nghĩa và tương tác với NSAttributedString, định hình string ...
Phần1: Vẽ các hạt ngẫu nhiên
Hiệu ứng này được tạo ra từ các hạt di chuyển ngẫu nhiên, và khi chúng tới gần nhau thì sẽ được liên kết với nhau bằng một đoạn thẳng, nên việc đầu tiên chúng ta cần làm là vẽ ra các hạt ngẫu nhiên trên khung hình. Để có thể sử dụng các bạn cần khai báo thẻ canvas trong tập tin HTML: ...
Active Record Association: Relation (PART 1)
Mở đầu Trong rails, một association giúp kết nối giữa 2 hoặc nhiều model Nó giúp việc truy vấn cơ sở dữ liệu đơn giản và dễ dàng hơn, code ngăn gọn hơn. this is example for use or not active record The Types of Associations Rails hỗ trợ 6 loại assocications: belongs_to has_one ...
[Series-DesignPatternInRuby] Adapter Pattern
Nói về Adapter trong thực tế thì chúng ta có cả hàng đống ví dụ mà chúng ta gặp trong cuộc sống hằng ngày, chúng ta sử dụng hằng ngày nó nhưng không hề để ý. Trong trường hợp mà chúng ta muốn cắm một cái sạc pin 3 chân vào 1 cái ổ cắm 2 chân, khi mà thiết kế của 2 thành phần không giống nhau ...
Ruby_Functional Testing
Trong bài Ruby_Unit testing thì mình đã tìm hiểu cách kiểm tra code đối với model, trong bài này sẽ tìm hiểu cách kiểm tra code trên controller – hay còn gọi là Functional Testing. Khi tạo một controller thì Rails sẽ tự động tạo ra một file dùng để test controller này. Ngoài ra, khi ...
Tích hợp framework front-end vào dự án Rails
Xu hướng của lập trình web hiện nay đã khác trước rất nhiều, khi mà phần lớn các xử lý logic phần lớn nằm ở phía front-end làm cho gánh nặng càng ngày càng đè lên vai JavaScript (JS) thì các công cụ hỗ trợ cho JS như typing, task runner, test tools,... và rất nhiều thứ, nói chung là không thể thiếu ...
Code Android năng suất hơn với các Android Studio plugin
Android Studio là một IDE vô cùng mạnh mẽ, nó bao gồm một giao diện đơn giản và linh hoạt cho việc thiết kế UI cho các loại thiết bị. Ta có thể kéo thả các view và widgets trong layout editor và customise chúng với một vài dòng xml. Nhưng ta vẫn luôn muốn nhiều hơn thế, để có thể làm việc hàng ...