Local Storage, Session Storage và Cookie
Bạn bị lẫn lộn giữa session storage , local storage và cookies ? Bài viết dưới đây sẽ giúp bạn hiểu rõ được sự khác nhau giữa 3 cách lưu trữ này. Các kiểu không gian lưu trữ khác nhau có sẵn cho các dữ liệu có thể trên máy chủ hoặc máy khách, cho phép chúng ta chọn lựa theo nhu cầu. 1. Local ...
Full-Text Search trong Ruby on Rails sử dụng Elasticsearch
Ngày nay, rất nhiều trang web cung cấp cho người dùng tính năng tìm kiếm, khi người dùng nhập từ khoá, hệ thống sẽ đưa ra các gợi ý hay là các kết quả với từ khoá mà người dùng nhập vào sẽ được highlight lên trông rất trực quan. Nếu người dùng nhập sai chính tả thì việc tự động giúp người dùng sửa ...
Input & output in Ruby
Trong phần này chúng ta sẽ tìm hiểu về hệ thống nhập xuất trong Ruby. Khi chạy một chương trình thì chương trình có thể nhận các dòng dữ liệu đi vào, có thể là từ bàn phím, file hoặc từ chính một chương trình khác. Tương tự, chương trình cũng có thể xuất các dòng dữ liệu đi ra ngoài, thường là sẽ ...
ResponseModel in Swift!.
trong quá trình phát triển dự án, chắc chắn nhiều bạn mới(trong đó có mình) gặp khó khăn với việc tạo model, điển hình là việc lấy data từ server về -> model mình muốn. vì swift là ngôn ngữ POP vậy thì mình áp dụng mình sẽ tận dụng sức mạnh của POP. tạo 1 protocol ResponseModel với mục đích, ...
Làm thế nào để Estimation trong kiểm thử phần mềm?
Estimation được hiểu ngắn gọn đó chính là ước lượng, vậy để ước lượng thời gian kiểm thử cần biết những yếu tố gì? Ước lượng kiểm thử (Test Estimation) phần mềm là gì? Ước lượng kiểm thử là một hoạt động quản lý xấp xỉ thời lượng công việc sẽ được thực hiện. Ước tính nỗ lực để kiểm tra là một ...
Tìm hiểu về module ActiveModel
1. Khái niệm : Active Model là một thư viện chứa các modules khác nhau được sử dụng trong phát triển các class nhằm cung cấp các chức năng tương tự như Active Record. 2. Chức năng : Thông thường đa số model phải lưu trữ dữ liệu vào db nhờ ActiveRecord, nhưng trong một số trường hợp chúng ...
Gem CanCanCan trong rails
Cancancan là một thư viện phân quyền cho ruby on rails, nó hạn chế các tài nguyên mà một user được phép truy cập. Tất cả các quyền hạn được quy định ở một nơi duy nhất (là class Ability) và riêng biệt với controllers, views và database queries Nó bao gồm 2 phần chính: The authorizations ...
Shared memory với Ashmem
Android ashmem Một tính năng mà google được thêm vào kernel linux là ashmem. Chúng ta có thể tạo ra một vùng nhớ mới bằng cách sử dụng lớp MemoryFile hoặc ashmem_create_region trên layer native, nhưng vì lý do bảo mật, chúng ta không thể mở vùng nhớ đó Giải pháp là tạo ra một service tạo vùng và ...
5 sai lầm phổ biến của javascript dev mới
Không phải tất cả các điểm dưới đây thực sự là những sai lầm nhưng tránh chúng sẽ làm cho bạn một lập trình tốt hơn cho chắc chắn. 1. Truthy And Falsy Values Đây là một trong những sai lầm phổ biến mà mỗi lập trình viên đã có thể làm ít nhất một lần trong sự nghiệp viết mã của họ. Hãy nhìn vào ...
Top 10 thư viện IOS mà tôi biết.
Trong các project về ios thì các bạn không thể bỏ qua được các thư viện thường dùng để giảm thiểu thời gian và công sức cho bạn khi giải quyết các vấn đề trong dự án của mình. Sau đây mình xin giới thiệu về 20 thư viện mà mình biết và đã tiếp xúc. Alamofire Khi nói đến các thực hiện request ...
Xây dựng ứng dụng Web sử dụng Laravel 5 và AngularJS - phần 2
Chào các bạn! Trong phần một, ,mình đã tạo ra migration và seeder, chúng ta đã có một database đầy đủ dữ liệu. Trong phần 2 này, mình sẽ tiến hành tạo ra router, controler RESTful, các function để thao tác với database một cách chi tiết nhất. Các bạn có thể xem lại phần 1 tại đây. Chúng ta bắt ...
Ckeditor trong rails
Giới thiệu Xin chào các bạn hôm nay mình xin giới thiệu đến các bạn một GEM rất hữu ích trong việc chỉnh sửa và soạn thảo nội dung văn bản của ứng dụng sử dụng Ruby On Rails đó là Ckeditor. Ckeditor là một gem rất hữu ích trong việc soạn thảo các form text. Nó hỗ trợ rất nhiều trong việc tạo ra ...
Google Place API (P1) - Place Autocomplete
Google Place API là một trong những hàng trăm API tuyệt vời mà Google cung cấp cho nhà phát triển phần mềm, với thông tin chi tiết về hơn 100 triệu địa điểm. Google Place API gồm có 3 công cụ: Place Picker, Place Autocomplete, Place Details: Place Picker cho phép người dùng tìm kiếm các địa ...
Bảo mật trong ứng dụng Ruby On Rails
Framework được thiết kế với mục đích chính là để giúp các web developer xây dựng các ứng dụng web. Mặc dù có rất nhiều Framework có sẵn nhưng khản năng phát hiện ra các lỗ hổng như CSRF hoặc giả mạo nội dung (chúng ta không nói về XML Entity và Paramater Pollution) là rất cao. Mặc dù được trang bị ...
Concern is not concerning
A few weeks ago, while working in project, I also stumbled upon a nice refactoring pattern that I didn’t know. This pattern is based on the simple idea of Ruby modules and mixins, but is particularly handy when it comes to dealing with class methods and callbacks. It is using ...
Tránh Viết SQL Khi Sử dụng ActiveRelation
ActiveRelation, công cụ tìm kiếm và truy vấn của ActiveRecord, là một công cụ mạnh mẽ và linh hoạt. Thay vì... ... viết 1 chuỗi SQL trực tiếp vào bên trong ActiveRelation#where Person.where("name = #{ params[:name] } AND hidden_at IS NULL") Hoặc ... viết 1 chuỗi SQL và sử dụng 'array ...
Tìm hiểu về blocks và yield trong Ruby
Về cơ bản, blocks trong ruby là một cách để nhóm các câu lệnh sao cho chúng ta có thể kết hợp với các lời gọi phương thức như thể chúng là các tham số. Ruby cung cấp hai cách để viết blocks là: Sử dụng dấu {} đối với những blocks ngắn gọn có thể viêt trên một dòng. array = [1,2,3,4] Sử ...
Tìm hiểu Sed cơ bản
1. Giới thiệu Đối với những hệ điều hành nhân Linux, sed stream editor thường được trang bị đi kèm. Đây là một trình biên soạn văn bản thực hiện những thao tác chỉnh sửa đối với dữ liệu đến từ một đầu vào chuẩn hoặc một file text. sed sẽ tiến hành chỉnh sửa lần lượt từng dòng và theo cách thức ...
Tìm hiểu về gradle
Trong quá trình phát triển phần mềm, việc tự động hóa quá trình build và quản lý các thư viện rất quan trọng, nhằm tối ưu hóa công đoạn biên dịch, đóng gói; thuận tiện hơn cho việc phát triển phần mềm, cũng như maven và gradle cũng là một trong những công cụ đó. Năm 2000, Apache Ant ra đời như ...
Understanding Spring AOP
Chúng ta đã quá quen thuộc với khái niệm OOP "lập trình hướng đối tượng". Vậy AOP là gì? mục đích của AOP là như thế nào? AOP là từ viết tắt của Aspect Oriented Programing " Ngôn ngữ hướng khía cạnh" AOP phát triển dựa trên OOP chứ không phải ra đời nhằm thay thế OOP, đó là phần bổ sung cho OOP ...