Giới thiệu Django REST framework
Tổng quan REST là viết tắt của REpresentational State Transfer (dịch nôn na là chuyển trạng thái đại diện) là một kiểu kiến trúc lập trình, nó định nghĩa các quy tắc để thiết kết các web service chú trọng vào tài nguyên hệ thống. Trong kiến trúc REST mọi thứ đều được coi là tài nguyên, chúng có ...
Một số thư viện hữu ích trong Android
Mở đầu Để giảm thời gian phát triển một ứng dụng Android, mình thường sử dụng các thư viện Android mã nguồn mở có sẵn cho các phần Networking, UI, Dependency Injection (DI), Reactive Library… Có rất nhiều thư viện để lựa chọn nhưng tiêu chí của mình là đơn giản, dễ xài, performance tốt và ...
Tìm Hiểu ECMAScript 6
Chào các bạn. Hôm nay mình sẽ giới thiệu tới các bạn những tính năng mới trong bản ECMAScript 6. Trước hết mình xin giới thiệu ECMAScript là gì và tiếp đó chúng ta sẽ đi tìm hiểu những update của ECMAScript từ bản 5 lên bản 6 thì có những thay đổi gì. ECMAScript được coi là một tập hợp các kỹ ...
Nestable - Drag & drop hierarchical list with mouse and touch compatibility
Chào mọi người Hôm nay mình sẽ giới thiệu với mọi người 1 jQuery plugin là Nestable hỗ trợ cho việc kéo thả danh sách theo thứ tự bậc thang. I.Mở đầu: Mở đầu mình xin giới thiệu về Nestable Nestable là 1 jquery plugin được viết trên nền jquery mặc dù không phải là 1 plugin quen thuộc như ...
RSpec: sự khác biệt giữa mocks và stubs
Trong bài viết này mình sẽ giới thiệu với bạn cách phân biệt mocks và stubs trong Rspec. Trước tiên, ta cần hiểu mock là gì, stub là gì. Trong cuốn Effective Testing with RSpec 3 có định nghĩa thế này: Stub Returns canned responses, avoiding any meaningful computation or I/O Code của nó ...
Tạo Configuration Object trong Ruby
Ta có thể thay đổi cách một ứng dụng hoạt động một cách dễ dàng mà không phải động vào source code thông qua việc chỉnh sửa một sỗ config được thiết lập sẵn. Việc thay đổi cách hoạt động của code thông qua config mang lại nhiều lợi ích cho chúng ta. Nó hạn chế việc thay đổi source code mà vẫn đảm ...
Shoryuken và SQS
Giải pháp Sidekiq Rails có nhiều giải pháp cho background job. Một trong số là Sidekiq. Sidekis có thể giải quyết hầu hết các vấn đề mà lập trình viên mắc phải. Nó đặc biệt có tác dụng khi phải chịu lượng lớn truy cập từ Rails. Tuy nhiên Sidekiq cũng có một số hạn chế như sau: Nếu bạn không ...
How to pod Library with Custom Code.
Đôi khi, thư viện không cung cấp đủ thông tin. (protocol, variable)... Buộc lòng chúng ta phải đi sửa thư viện và chèn thêm 1 số thông tin vào đó. Ở đây, mình sẽ lấy thư viện "PryntTrimmerView" để demo. Trong thư viện này, nó chỉ cung cấp protocol chỉ với 2 function. Nhưng chừ này lại không đủ để ...
Những điều thú vị có thể bạn chưa biết về Array trong Ruby
Chúng ta làm việc với array rất nhiều nhưng chắc hẳn có nhiều điều thú vị dưới đây mà bạn chưa biết đến. Hãy bắt đầu tìm hiểu nhé Bùi Văn Nam viết 16:23 ngày 12/08/2018
Journey to become Full Stack QA
Before talking about our story, let's find out what is Full-Stack Tester. As we know, fullstack developer is a developer can capture, set up each layer, each part of the program and the technologies used in that program from the back-end to the front-end. Similarly, the Full-Stack tester is a ...
Object và Class - Phần 2
Mỗi đối tượng tượng ghi nhớ class của nó bởi việc lưu một con trỏ đến cấu trúc RClass. Thông tin mà mỗi RClass chứa là gì? Chúng ta sẽ thấy gì nếu chúng ta có thể nhìn vào bên trong một class Ruby? Hãy xây dựng mô hình thông tin đại diện cho RClass. Mô hình này sẽ cho chúng ta một định nghĩa kỹ ...
[Swift] Localization with UI (XIBs and Storyboards)
Cách làm thông thường là sẽ tạo 1 connect đến variable trong file .swift: @IBOutlet weak var cancelButton: UIButton! Rồi sau đó sẽ gọi localization: self.cancelButton = NSLocalizedString("Cancel", comment: "") Chúng ta có 2 việc cần làm ở đây: 1. Đầu tiên mình sẽ định nghĩa 1 protocol như sau: ...
Xử lý các vấn đề ProGuard trên Android (Phần 1)
Tại sao là ProGuard ProGuard là một công cụ rút gọn (shrink), tối ưu hoá (optimize) và làm mờ (obfuscate) code. Mặc dù cũng có các công cụ khác cho developer, ProGuard thì có sẵn là một phần của Android Gradle build process và gửi kèm với SDK. Có nhiều lý do tại sao bạn có thể muốn bật ProGuard ...
Sử dụng Rspec viết unit test cho Controller trong ứng dụng Rails
Controller spec được tách nhỏ ra bởi phương thức controller, mỗi test case được dựa trên một action và có thể gửi kèm params hoặc không. Ví dụ như sau: it "redirects to the home page upon save" do post :create, contact: Factory.attributes_for(:contact) expect(response).to redirect_to ...
Tại sao 80% các ứng viên kỹ sư phần mềm bị người sáng lập Rails từ chối?
Dạo gần đây, tôi đã có dịp ngồi xuống với David Heinemeier Hansson và hỏi anh ta lý do tại sao anh ta lại thuê những kỹ sư phần mềm này mà không phải là những khác. Nếu bạn không biết anh ta, David là nhà sáng lập của Ruby on Rails đồng thời là CTO của Basecamp Câu trả lời dưới đây của anh ấy ...
Kiến thức nghiệp vụ phần 1: Hệ thống quản lý nhân sự
Tất cả những doanh nghiệp có sử dụng lao động thì đều phát sinh những công việc liên quan tới nghiệp vụ quản lý nhân sự. Như là quản lý các thông tin liên quan đến người lao động, quản lý tiền lương và điều chỉnh chiến lược của công ty. Quản lý nhân sự bao gồm hai công việc chính, đó là quản ...
Các loại test case trong kiểm thử phần mềm
Đảm bảo chất lượng phần mềm liên quan đến các cạnh tiếp cận khác nhau đến việc kiểm thử. Gần như là không thể kiểm thử tất cả mọi thứ nhưng chắc chắn bạn có thể tiến lại gần với việc đó bằng cách thu hẹp trong những loại test case khác nhau để thực hiện với những yêu cầu riêng biệt. Để tìm ra loại ...
Gợi ý cách chọn background khi thiết kế
Trong lĩnh vực thiết kế website, việc tạo nên một theme giới thiệu , giao diện đẹp hài hòa không thể nào thiếu được yếu tố background hay nền. Tất nhiên, lựa chọn background không hề dễ, nó đòi hỏi nhà thiết kế cần phải tuân thủ theo các đúng nguyên tắc, tránh mắc phải sai lầm khi thiết kế ...
Xử lý hash fallbacks
Có thể các bạn không biết, có nhiều cách để lấy một giá trị trong hash. Trong bài viết này, tôi sẽ nói về ba trong số chúng và những tác dụng của mỗi phương pháp. Phương thức #[] Cách đầu tiên cũng là cách được hầu hết developer biết đến và ưa thích, đó là phương thức #[]. Đây là phương thức ...
EXCEL MACROS VÀ LẬP TRÌNH VBA
Excel Macros là những chương trình nhỏ giúp lặp đi lặp lại những thao tác từ đơn giản đến phức tạp một cách tự động trong Excel. Ngoài Excel Macros, chúng ta còn có thể gặp Word Macro, PowerPoint Macro, Outlook Macro … VBA viết tắt của Visual Basic for Applications, là một ngôn ngữ lập ...