
Refactoring Fat Model
In the Ruby on Rails project it is a common practice to keep controller as small as possible and by doing that we push all the logic into model. Eventually as the application grow the model class became litter with code that has nothing to do with data persistence at all. This result in slow and ...

iOS Animation - Phần 2: View Animation với hiệu ứng Spring
Hôm nay mình xin được tiếp tục với chủ đề về View Animation: Hiệu ứng Spring. Hiệu ứng Spring Dùng để tạo hiệu ứng dao động lò xo tắt dần khi kết thúc animation. Nó giúp tạo cảm giác thật cho các animation. Có một animation từ điểm A tới điểm B và được thêm hiệu ứng Spring thì sự di ...

Mobile Testing
Mobile Testing: Giới thiệu tổng quan về kiểm thử ứng dụng trên mobile Một vài hoặc tất cả các loại kiểm thử có thể được thực hiện tùy thuộc vào yêu cầu kiểm thử thiết bị di động của bạn: Kiểm thử chức năng (Functional testing) Kiểm thử hiệu năng (Performance testing) Kiểm thử bảo mật ...

Các vấn đề cần chú ý khi lập trình meta trong Ruby
Tài liệu: Things to Consider when Metaprogramming in Ruby Lập trình meta trong Ruby là một chủ đề phân cực. Mục đích chính của lập trình meta trong ruby là việc viết code sinh ra code ở thời điểm đang chạy. Lập trình meta làm cho code ngắn gọn và linh hoạt hơn. Tuy nhiên, nó không phải là không có ...

Hướng dẫn tích hợp Spring Framework vào Wicket Framework
Trong các dự án về Web sử dụng Wicket Framework, để việc khởi tạo các component của dự án được thực hiện tự động thì hiện tại có thể tích hợp các framework seasar hoặc spring. Trong bài viết này tôi sẽ trình bày cách tích hợp Wicket + Spring Để tạo project wicket tự động bạn có thể tham khảo ...

[Mikrotik] Giới thiệu và cài đặt hotspot
1. Wifi hotspot là gì Wifi hotspot là điểm truy cập mạng không dây công cộng, được thiết lập ở các nơi cần cung cấp dịch vụ truy cập không dây - wifi cho người dùng như: quán cafe, ga tàu, bến xe, khách hàng đến công ty giao dịch Thông thường, khi cung cấp dịch vụ wifi hotspot, người dùng ...

Tips to work effectively in Japanese companies
Each environment has its offices style and different working methods. In this article, I will mention a culture with a modern blend of tradition, a method of work worthy of our admiration and learning. It is the country of sunrise, Japan. Working in a Japanese environment is not easy, requiring ...

Notification with actioncable
Ngày hôm nay mình xin giới thiệu về 1 kĩ thuật được hỗ trợ rất mạnh từ bản Rails 5, đó là Action Cable. Cụ thể mình sẽ hướng dẫn các bạn sử dụng tính năng này để thực hiện chức năng thông báo trong ứng dụng realtime. Trước hết chúng ta cùng tìm hiểu qua một số khái niệm cơ bản 1. Websocket ...

Tìm hiểu về kiểm thử Responsive cho Website - Responsive Web Design Testing (Phần 1)
Trong thời đại ngày nay, việc sử dụng các thiết bị di động để truy cập Internet đã vô cùng phát triển và trở nên rất phổ biến. Hầu hết mọi người sử dụng internet đều mong muốn một phiên bản tương thích trên điện thoại di động. Tuy nhiên, không phải bất cứ website nào cũng có phiên bản ...

10 đặc tính chất lượng đánh giá của một yêu cầu phần mềm
I. Giới thiệu Yêu cầu phần mềm là tất cả các yêu cầu về phần mềm do khách hàng (người sử dụng phần mềm) nêu ra, bao gồm các chức năng của phần mềm, hiệu năng của phần mềm, các yêu cầu về thiết kế và giao diện, các yêu cầu đặc biệt khác. Mục đích của yêu cầu phần mềm là xác định khả năng đáp ứng ...

DỰ ĐOÁN 7 XU HƯỚNG WEB DESIGN TRONG NĂM 2017 (PART 2)
Link http://brian.hatenablog.jp/entry/web-trend-for-2017 5. Thiết kế Parallax theo hướng phát triển Nhà thiết kế web thường có suy nghĩ trăn trở là làm thế nào gắn chuyển động sống động vào trong một design tĩnh đơn thuần. Và thiết kế Parallax đã ra đời, giải quyết triệt để vấn đề đó ...

Kiểm thử tích hợp là gì và nó được thực hiện như thế nào?
Kiểm thử tích hợp là gì và nó được thực hiện như thế nào? Nền tảng Chúng ta đã học về nhiều mô hình vòng đời phát triển phần mềm khác nhau. Tất cả những mô hình vòng đời phát triển phần mềm đều có kiểm thử tích hợp như một trong các lớp của nó. Theo quan điểm của tôi, kiểm thử tích hợp ...

Optimizing Performance trong ReactJS
Trong React, nó sử dụng những kĩ thuật thông minh nhằm tối thiểu số lượng các DOM được thực thi để update UI. Trong nhiều ứng dụng, việc sử dụng React tăng tốc độ UI mà không cần phải làm nhiều việc để tối ưu hóa performance. Tuy nhiên, vẫn có một số cách để tăng tốc độ cho ứng dụng của bạn I, ...

Ruby Metaprogramming - The Basics
Qua 3 bài trong loạt bài về metaprogramming trong ruby, tôi đã nói về eval, send, define_method, hẳn bạn đã thấy sự kì diệu mà metaprogramming mang lại cho chúng ta. Nhưng đi sâu thêm một chút nữa, có lẽ chúng ta nên tìm hiểu và nên biết tại sao metaprogramming có thể hoạt động được và nó đã hoạt ...

Cờ vua: Máy tính với Con người
Bài viết được dịch từ bài "Chess: Computer v. Human" của tác giả Jeff Atwood Cờ vua: Máy tính với Con người Gần đây tôi có đến thăm Bảo tàng lịch sử máy tính ở gần San Jose, nơi có một triển lãm mới về lịch sử máy tính chơi cờ vua. Mặc dù tôi hoàn toàn không hứng thú với cờ vua như một trò ...

Xây dựng dự án Java bằng Gradle
Bài viết này sẽ cung cấp cho người đọc cách xây dựng 1 dự án Java và sử dụng công cụ Gradle để biên dịch. Yêu cầu trước khi tham khảo bài đọc này bao gồm những thông tin sau: đã cài đặt Eclipse. đã cà đặt JDK 1.6 hoặc mới hơn. đã tạo dự án Java bằng Eclipse (đường dẫn tời thư mục dự án ...

Functional Programming with Ruby
Continue with functional programming: Monads In this post I will try to get a grasp at Monads with Ruby. Monads is a very important concept in functional programming. So what is monad and what is it for? Monads can be thought of as composable computation descriptions. The essence of monad ...

Mobile Security
Ở hình vẽ trên ta có thể thấy được xu hướng người dùng mobile vượt xa pc qua các năm. Vì mobile cầm tay, tiện lợi và có thể sử dụng được mọi lúc mọi nơi, nơi lưu trữ thông tin không thua pc nên người dùng càng ưa chuộng. Tuy nhiên, gần đây nhiều bài báo phản ánh tình trạng người dùng bị mất ...

(UX) Pagination - Phân trang: Điểm nên và không nên trong UX
Khi người dùng sử dụng cuộn chuột để cuộn đến cuối của trang web, thường sẽ thấy 1 dãy số. Nó chính là pagination. Được sử dụng để phân chia nội dung web thành nhiều phần riêng biệt khác nhau và được đánh số thứ tự. Nó xuất hiện khi nội dung web quá dài. Những cách phân trang hiện nay thường làm ...

Sử dụng thư viện Android Networking để lấy dữ liệu JSON từ server
Hiện nay, JSON là một kiểu mô tả dữ liệu được sử dụng phổ biến, nhiều công ty sử dụng JSON để gửi dữ liệu cho các ứng dụng Android, iOS hay WindowPhone. Để có thể đọc được dữ liệu dạng JSON cho ứng dụng Android có rất nhiều cách, bạn có thể sử dụng apache (hiện nay không còn phổ biến nữa) hoặc sử ...