Open-Closed Principle

Tiếp nối loạt bài viết dịch cuốn sách "Agile Software Development, Principles Patterns and Practices", ngày hôm nay, chúng ta đến với nguyên tắc thức hai trong thiết kế linh hoạt, đó là OCP. Nguyên tắc đóng mở - Open-Closed Principle Dutch Door - (danh từ) Một cánh cửa được chia làm hai ...

Tác giả: Trịnh Tiến Mạnh viết 12:34 ngày 12/08/2018

Typehead.js - AutoComplete Suggestion

Trong bài viết này tối sẽ giới thiệu cách tạo một công cụ gợi ý tìm kiếm sử dụng Jquery. Các bạn có thể dễ dàng và nhanh chóng tìm kiếm được trên google nhiều công cự để làm gợi ý tìm kiếm trên google. Có rất nhiều thư viện cũng như jquery plugins. Nhưng trong bài này tôi xin giới thiệu Twitter ...

Tác giả: Tạ Quốc Bảo viết 12:34 ngày 12/08/2018

Giới thiệu Default method trong Java 8

Java 8 mới được ra mắt với nhiều cải tiến so với các phiên bản gần đây. Một trong những thay đổi lớn nhất là khái niệm về interface, chúng ta đều biết rằng từ phiên bản 7 về trước, java không cho phép viết định nghĩa (definition) 1 method trong interface mà chỉ cho phép miêu tả nó (declaration), ...

Tác giả: Trịnh Tiến Mạnh viết 12:34 ngày 12/08/2018

Hướng dẫn sử dụng Predicate(vị ngữ) trong java 8

Trong toán học, một Predicate thường được hiểu là một giá trị Boolean hàm P:X ? {true, false}. Được gọi là vị ngữ trên X. Một cách không chính thống, một vị ngữ là đúng hay sai phụ thuộc vào các biến của nó. Nó có thể được coi như là 1 thao tác hay một hàm trả về giá trị đúng hoặc sai Trong Java ...

Tác giả: Hoàng Hải Đăng viết 12:34 ngày 12/08/2018

Những trở ngại sẽ gặp phải khi triển khai TDD (Phần 2)

Bài viết sau dịch từ 1 blog trên trang http://qiita.com/ TDDを行った時にぶつかった7つの壁 Bài dịch này là phần 2 cũng là phần cuối của bài. Bạn có thể đọc phần 1 tại đây Mặc dù nếu là người review code thì sẽ hiểu mã kiểm thử, tuy nhiên cùng một đoạn mã kiểm thử, những thành viên khác nhau sẽ có những ...

Tác giả: Trịnh Tiến Mạnh viết 12:34 ngày 12/08/2018

Javascript ES6 – Khi jS không còn là đồ chơi

Việc sử dụng Javascript trong quá trình phát triển các ứng dụng web là rất phổ biến. Hầu như không có ứng dụng web nào có thể bỏ qua ngôn ngữ này. Trong các sản phẩm được code dựa trên PHP, Java hay .Net hiện nay thì Javascript chủ yêu vẫn là một thứ “đồ chơi” nhằm bổ sung các hiệu ứng ...

Tác giả: Trịnh Tiến Mạnh viết 12:34 ngày 12/08/2018

Zsh 1 Trình shell vô đối (Phần 2)

Trong phần trước Zsh 1 trình shell vô đối (phần 1), mình đã giới thiệu với các bạn về Zsh và 1 số tính năng độc đáo của chương trình này. Trong phần này, mình xin tiếp tục giới thiệu 1 số chức năng độc đáo khác của Zsh . 7. Command/Process substitution (thay thế lệnh) Thực ra cái này dịch ...

Tác giả: Hoàng Hải Đăng viết 12:34 ngày 12/08/2018

Cơ bản về Typeahead.js Autocomplete Suggestion và Bloodhount

Typeahead.js phiên bản cải tiến bao gồm công cụ gợi ý Bloodhound có thể tìm kiếm và sắp xếp dữ liệu của bạn. Typeahead Js là công cụ tìm kiếm tương tự như google, facebook, twitter, gmail tự động gợi ý. Nó hoàn thành chuỗi đầy đủ khi bạn gõ. Bạn cần JQuery Typeahead JS Plugin Bloodhound ...

Tác giả: Hoàng Hải Đăng viết 12:34 ngày 12/08/2018

TreeView in ios

Sau 1 tháng OT trả góp dòng dã, hnay mới lại nâng mông lên nghiên cứu monthly report tháng này. Làm project củ chuối này thấy có cái treeview khá là hay bên bê sang đây cho ae tham khảo và học tập. Khi xem qua treeview này cảm giác khá kì công và hiệu ứng cũng khá đẹp. Ae nào custom đc cho dễ dùng ...

Tác giả: Tạ Quốc Bảo viết 12:34 ngày 12/08/2018

sự khác nhau của == , ===, eql?, equal? trong so sánh và sự khác nhau của << & += trong việc nối string

1.Sự Khác Nhau Của == , ===, Eql?, Equal? Trong So Sánh Điểm giống nhau cơ bản giữa chúng là chúng đều dùng để so sánh và trả về giá trị là true hoặc false. == — generic equality: So sánh có cùng giá trị hay không. Đây là cách so sánh phổ biến và cơ bản nhất trong hầu hết các ngôn ngữ ...

Tác giả: Trịnh Tiến Mạnh viết 12:33 ngày 12/08/2018

Mysql stored procedure

I. MySQL: Stored Procedure là gì? Stored Procedure được định nghĩa như một tập các khai báo sql được lưu trữ ngay trong cơ sở dữ liệu (database) và sau đó, được triệu gọi bởi một program, một trigger hay thậm chí là một stored procedure khác. Stored Procedured cho phép truyền tham số. ...

Tác giả: Trịnh Tiến Mạnh viết 12:33 ngày 12/08/2018

Sử dụng layout trong ruby on rails

1. Giới thiệu Layout được sử dụng phổ biến nhằm giảm bớt sự lặp lại của các đoạn code view dùng chung. Mô hình thông thường của layout có dạng: <%= render "shared/header" %> Hello World <%= render "shared/footer" %> Tuy nhiên mô hình này khá dài dòng và khó khăn trong ...

Tác giả: Bùi Văn Nam viết 12:33 ngày 12/08/2018

Sử dụng OpenGL trong android phần 1

**Tổng Quan Về OpenGL: ** OpenGL - Open Graphics Library Là Một Tiêu Chuẩn Kỹ Thuật Đồ Họa Có Mục Đích Định Ra Một Giao Diện Lập Trình Ứng Dụng API Đồ Họa 3 Chiều. OpenGL Cũng Có Thể Được Dùng Trong Các Ứng Dụng Đồ Họa 2 Chiều. Giao Diện Lập Trình Này Chứa Khoảng 250 Hàm Để Vẽ Các Cảnh Phức Tạp ...

Tác giả: Bùi Văn Nam viết 12:33 ngày 12/08/2018

Migrations với Core Data trong lập trình ứng dụng iOS

Là một lập trình viên iOS, nếu muốn thao tác với cở sở dữ liệu có lẽ chúng ta ngay lập tức sẽ nhớ tới Core Data. Đôi khi trong quá trình làm việc với ứng dụng sử dụng Core Data, bạn có thể sẽ muốn có những thay đổi trong data model của bạn. Tuy nhiên, nếu ứng dụng của bạn đã chạy, bạn có thể sẽ ...

Tác giả: Bùi Văn Nam viết 12:32 ngày 12/08/2018

Phân tích lỗi xảy ra khi trùng class name trong thư mục `lib` của Rails

Trong một dự án, mình từng gặp trường hợp khi đặt tên class là Error:Api thì bị báo lỗi, nhưng khi đổi tên thành Error:Response thì lại không còn lỗi nữa. Lúc đó không biết nguyên nhân tại sao, chỉ note lại để tìm hiểu khi có thời gian. Sau này thì khách hàng đã tìm ra lý do và viết bài hướng dẫn ...

Tác giả: Hoàng Hải Đăng viết 12:32 ngày 12/08/2018

Active Record Associations

Source: http://guides.rubyonrails.org/association_basics.html Sau bài viết này bạn sẽ biết: Làm thế nào để khai báo mối quan hệ giữa các Active Record models. Giữa các Active Record cóc các kiểu quan hệ nào. 1 Why Associations? Tại sao chúng ta cần liên kết giữa các model ? Vì chúng ...

Tác giả: Bùi Văn Nam viết 12:32 ngày 12/08/2018

Datatables rails

1 Giới thiệu DataTables là một plug-in cho thư viện jQuery. Đây là một công cụ tuyệt vời, nhất là đối với các trang quản lý hơn nữa việc cài đặt và sử dụng lại rất đơn giản. Datatables có những ưu điểm nổi bật như phân trang, tìm kiếm sắp xếp một cách nhanh chóng dựa trên ưu điểm của ajax và có ...

Tác giả: Trịnh Tiến Mạnh viết 12:31 ngày 12/08/2018

Phân quyền trong Linux

Trong bài viết này tôi sẽ giới thiệu với các bạn cách phân quyền trên linux. Đây là một kỹ thuật không mới nhưng nó có thể hơi trừu tượng với những người mới chuyển từ windown sang Linux. Ngoài ra bài viết còn giới thiệu các kiến thức về loại người dùng, nhóm người dùng trong hệ thống, cách quản ...

Tác giả: Hoàng Hải Đăng viết 12:31 ngày 12/08/2018

Code Concerns in Rails 4 Models

Warm up Different models in your Rails application will often share a set of cross-cutting concerns and you may have not noticed that there's a folder called 'concerns' was added from Rails 4. In fact, this feature has been here for a long time and it is pretty simple but powerful concept. ...

Tác giả: Hoàng Hải Đăng viết 12:31 ngày 12/08/2018

Hướng dẫn làm game online multiplayer trong unity sử dụng unity Networking

Chào các bạn , hôm nay tôi sẽ chia sẻ cách làm một game online nhiều người chơi trong Unity . Có nhiều cách để làm game online trong Unity nhưng trong bài này tôi sẽ giới thiệu cách sử dụng Unity Networking để làm . Chúng ta tạo một project mới trong Unity. tạo một server : Trong project ...

Tác giả: Trịnh Tiến Mạnh viết 12:30 ngày 12/08/2018