
Tìm hiểu về Virtual-DOM
Thời gian gần đây, trong quá trình tìm hiểu về ReactJS, có một khái niệm được nhắc đến khá nhiều: Virtual-DOM. Vậy Virtual-DOM là gì, nó có những đặc điểm và lợi ích như thế nào? Chúng ta cùng tìm hiểu nhé. 1. Virtual-DOM là gì? Virtual-DOM, đúng như tên gọi của nó, DOM-ảo. Ảo, có nghĩa là ...

Dependency Injection in Objective C - Typhoon Framework
Giới thiệu Typhoon Framework là 1 thư viện dependency injection (DI) cho Cocoa và CocoaTouch. Với ưu điểm là nhẹ và dễ sử dụng. Git: https://github.com/typhoon-framework/Typhoon 1. Dependency Injection là gì? Là 1 design pattern thực thi inversion of control (IoC). Một "injection" là việc ...

XỬ LÝ MULTI-PROCESS VỚI FORK()
Bài viết này được thực hiện từ năm 2012 với Ruby 1.9 và AR 3.x. Trên Ruby 2.x trở đi, Threadsafe là mặc định nên sẽ có một vài thông tin đã trở nên không cần thiết. Related: THREADING IN RAILS What is fork() on Unix fork là 1 cách xử lý multi-process trong Unix, hoạt động theo kiểu sinh ra ...

iOS Multilanguage Application
Toàn cầu hoá có 1 vai trò rất quan trọng trong việc mở rộng thị trường cho ứng dụng của bạn. Thay vì chỉ hỗ trợ ngôn ngữ bản địa, hỗ trợ các ngôn ngữ phổ biến khác trên thế giới sẽ giúp ứng dụng của bạn được nhiều người biết đến và sử dụng hơn. Trong khuôn khổ bài viết này, tôi sẽ hướng dẫn các ...

Tìm hiểu Directives và Templates trong angularjs
AngularJS Directives Directives là gì? Directives là thành phần mở rộng HTML và có thể coi là các thuộc tính của các thẻ HTML mà Angular nó định nghĩa thêm Cách khai báo một directives trong angularjs Để khai báo là một Directive Controller thì chúng ta khai báo ng-controller ví dụ: ...

[Android/2D Graphics] Phân tích và mô phỏng nút cảm xúc của Android Facebook Application
Video demo: Tình hình là đợt vừa rồi mình có ngó Kiaplog profile của anh Huy Trần, lướt lướt thấy có chủ đề Phức tạp hoá vấn đề: Phân tích và mô phỏng nút cảm xúc của Facebook có lượng kipalog khiếp quá nên nhảy vào xem luôn. Đọc xong mà thấy mở mang đầu óc, nhưng tiếc là lâu chưa xem ...

Ý tưởng Interest group 10: God Want
Thành viên: Lê Văn Nghĩa, Đinh Thanh Tâm, Lê Văn Ban, Nguyễn Thị Ngọc, Phạm Cẩm Anh. Group 10 đưa ra 1 ý tưởng mới trong việc kết nối giữa khách hàng và các nhà cung cấp. Cùng với sự phát triển của Internet, mua bán online đã dần trở nên phổ biến. Thay vì phải mất thời gian đến các cửa hàng để ...

Ứng dụng BDD trong lập trình iOS
Testing đóng 1 vai trò quan trọng trong quá trình phát triển phần mềm. Hôm nay tôi sẽ giới thiệu với các bạn ứng dụng BDD test trong lập trình iOS. Giả sử ta muốn test 1 phép cộng đơn giản: File H // // ViewController.h // HelloKiwi // // Created by nguyen hai dang on 1/23/15. // ...

Sử dụng RecyclerView
RecycleView là một viewGroup mới được giới thiệu trong Android L ( API 21 ). Đây là một viewGroup có chức năng tương tự như ListView nhưng tỏ ra mạnh mẽ, linh hoạt hơn rất nhiều. ListView chỉ hỗ trợ bạn scroll các item trong listView theo chiều dọc mà không hỗ trợ scroll theo chiều ngang. ...

Làm nhiều hơn việc acceptance test với Capybara và Rspec.
TL;DR Cần thu thập thông tin của các đối tượng search theo keyword trên google => Viết script trên frameword Capybara để làm tự động, thay vì làm bằng tay. Background Như các bạn đã biết (cũng như dành cho các bạn chưa biết :D), đã code là phải có test, mà đã web là phải có acceptance. ...

Đồng bộ với iCloud
iCloud là dịch vụ điện toán đám mây được Apple đưa vào hoạt động từ tháng 10 năm 2011. Cho tới tháng 7 năm 2013, dịch vụ đã có hơn 320 triệu người sử dụng (wiki). Dịch vụ cho phép sao lưu không dây (wireless) dữ liệu và cấu hình của các thiết bị iOS thay vì phải sử dụng iTunes trên Mac hay ...

Elixir cho dân Ruby - Phần 3
Chưa xem phần 2? Xem phần 2 Trong bài viết này tôi giới thiệu cho các bạn về khái niệm function arity, một cách gọi mĩ miều của số lượng argument của hàm. Tại sao arity lại quan trọng trong Elixir? Function Arity là cái tên hoành tá tràng của "Hàm này có bao nhiêu argument". Với ví dụ sau: ...

Building Rails application with EmberJS
Hiện nay, xu thế phát triển chung của các ứng dụng web là phân tách riêng biệt hai phần: Front-end và Back-end để nâng cao hiệu năng hoạt động của web. Phía server (Back-enduery) bao gồm Controller và Model thường chỉ đóng vai trò truy xuất và quản lý dữ liệu vào ra của ứng dụng trong khi phía View ...

Request "lạ"
Nếu là một web developer thì bạn cũng ít nhiều phải đụng chạm tới proxy/load balancer hay app server. Trong rất nhiều thao tác với phần này thì việc thường xuyên kiểm tra log để phát hiện ra những điều bất thường là thao tác không thể bỏ qua. Ngữ cảnh Một khi website/service đã public thì có ...

SO SÁNH MỘT SỐ CÔNG CỤ KIỂM THỬ ỨNG DỤNG WEB
LỜI NÓI ĐẦU Như các bạn biết đã có nhiều bài viết chi tiết về các công cụ kiểm thử rồi, nhưng nội dung dưới đây Tôi sẽ giới thiệu để chúng ta hiểu rõ hơn về “ Các công cụ kiểm thử ứng dụng web” và so sánh chúng với nhau. I . So sánh một số công cụ kiểm thử ứng dụng web ...

Làm ứng dụng AR Location-based trên Android không dùng SDK
Ý tưởng của app này rất đơn giản, bật camera lên, khi bạn xoay camera về hướng nào thì các địa điểm trong thế giới thực sẽ hiện thông tin lên. Lý thuyết Augmented Reality sẽ chuyển đổi toạ độ thực tế thành toạ độ điểm x,y hiển thị trên camera. Trong AR Location-based, toạ độ thực tế chính ...

Quản lý bộ nhớ trong lập trình blackberry
Như đã giới thiệu ở bài trước kiến trúc của blackberry: Vì vậy quản lý bộ nhớ trong lập trình blackberry tương ứng với quản lý bộ nhớ với ngôn ngữ C++, QML (interface) và của QT Framework. Bài viết này tôi sẽ giới thiệu với các bạn cách quản lý bộ nhớ của QTFramework với ngôn ngữ C++. ...

Validate đăng kí user và TDD
Giới thiệu Việc xác thực quá trình đăng kí mới là công việc mà coder nào cũng phải gặp, thậm chí nó quen thuộc đến mức như cầm đũa hàng ngày vậy. Chúng ta có thể thực hiện việc validate ngay trên viewcontroller, tuy nhiên cách này khó test và sẽ khó quản lý nếu có nhiều điều kiện đầu vào. Cách ...

Overview of Android Studio
1.Introduction 1.1 A new integrated development environment Android Studio là một môi trường phát triên tích hợp (IDE) được phát hành bởi Google trong sự kiện Google I/O vào cuối tháng 5 năm 2013. Thương hiệu IDE mới này được thực hiện riêng cho việc phát triển android và có ý định thay thế cho ...

Làm việc với Maps trên iOS 7 với MapKit
MapKit Framework được xây dựng dựa trên data và APIs của Apple Maps, cung cấp cho các iOS developers một cơ chế đơn giản để tích hợp Maps trong các ứng dụng. Yếu tố cốt lõi của MapKit Framework từ điểm nhìn của các app developer là MKMapView class. Class này là subclass của UIView, cung cấp 1 ...