Alias và Delegate trong rails
Delegate Trong lập trình ruby, có rất nhiều cách giúp bạn chuyển tiếp đối tượng. Delegate là một trong những cách đó. Delegate giúp gọi các public methods của object khác giống như là của chính mình. Delegate rất hữu ích với Active Record associations. ví dụ: Ta có bảng Candidate chứa : ...
Endcoding nhạc sử dụng LAME MP3
I. LAME MP3 là gì LAME là một trong hầu hết các codec âm thanh lossy phổ biến. Nó cho phép bạn nén các file audio sang định dạng MPEG-1 / MPEG-2 định dạng, được lưu trữ trong các tập tin MP3. LAME cung cấp một loạt các bitrate nén: 8-320 kb / s và lấy mẫu giá: 8-48 kHz. Do sự phổ biến codec ...
Tổng hợp về rails generate migration
Đối với những ai làm rails thì chắc có lẽ đã quá quen thuộc với câu lệnh rails generate migration ... thường dùng để thay đổi DB. Sau đây mình sẽ tổng hợp lại những câu lệnh mà mình thường dùng. **Tạo migration thay đổi db ** #tạo migration rails generate migration class_name class_name ...
Loose Coupling & Dependencies Management
What is depedencies? Object Oriented applications modeling real world problem by using objects and the interactions between those objects provide solutions. These interactions are inescapable. A single object cannot know everything, so inevitably it will have to talk to another object. Well ...
The Safe Navigation Operator (&.) in Ruby
Một trong những bổ sung thú vị nhất của Ruby 2.3.0 là Safe Navigation Operator(&.). Ban đầu Hày tưởng tượng bạn có một account một owner và bạn muốn lấy được các owner của addrress. Nếu như bạn muốn được an toàn và không có nguy cơ lỗi nil bạn sẽ viết một cái gì đó dạng như: if ...
Khi backend developer: Xây dựng giao diện của 1 website - viết tiếp
Bài trước https://viblo.asia/ho.xuan.vinh/posts/JlkzymgazZW Cũng như bài trước, tiếp nối những trăn trở khi một backend developer đi code frontend. Biết là muôn vàng khó khăn vậy đó nhưng mà con đường nào thì cũng có lối. Vậy thì chọn lối nào. Phần trước có nói về vue.js một javascipt framework ...
Artificial Intelligence - Uninformed search (AI to ML part 3)
Chào mọi người, hôm nay mình sẽ bắt đầu với 1 vài giải thuật tìm kiếm cơ bản nhất trong trí tuệ nhân tạo nhé. Trước tiên, vì sao chúng ta cần biết về các giải thuật tìm kiếm: Ví dụ 1: Tìm tên bài hát (ez => tìm kiếm) Ví dụ 2: Đang ở Bách Khoa muốn tìm đường sang Nông Nghiệp tán gái (tìm kiếm ...
AI Conversation (I)
Mở đầu Dạo này mình có hứng thú với những thứ ảo ảo kiểu như Cortana hay Siri, (Google now thì ko biết nói chuyện chém gió nên không hứng thú) nên có tìm hiểu về vấn đề này. Nó được gọi là những trợ lý ảo, 1 hình thức nâng cao hơn của những ứng dụng giao tiếp, trả lời tự động, hay botchat. Qua ...
[AngularJS toàn tập] Phần 11 : ng-model-options trong AngularJS
Ở các phần trước mình đã hướng dẫn các bạn về một directive quan trọng đó là ng-model, và cũng có một vài ví dụ cho bạn về chủ đề này. Để tiếp tiếp tục AngularJS toàn tập thì trong bài này chúng ta sẽ tìm hiểu 1 directive rất quan trọng và liên quan đến ng-model đó chính là ng-model-options trong ...
Rails API errors response
I. Mở đầu Xin chào các bác (lay2) Hôm nay em sẽ xin trình bày một vấn đề khi xây dựng API với Rails - Errors response Đối với những newbie, khi lần đầu viết Rails API để phục vụ cho Mobile client, ta sẽ gặp vấn đề khi định nghĩa response trả về cho phía client. Với cá nhân em, thì ...
[Xamarin Android] Sử dụng thư viện native trong Xamarin Android P.1
Như chúng ta đã biết, Android là một nền tảng có thể thiên biến vạn hoá rất nhiều thứ, nếu chưa nắm được làm những việc đó như thế nào, thì chúng ta đã có những developer có tâm đi trước chúng ta tạo ra những thư viện cho Android để giúp ta làm việc biến hoá đó dễ dàng hơn. Nhưng, những thư viện đó ...
không ai quan tâm đến code của bạn đâu
Bài này được dịch từ bài viết https://mortoray.com/2015/04/20/nobody-cares-about-your-code/ Không ai quan tâm đến code của bạn. Đây thực sự là một sự thực khó chấp nhận trong sự nghiệp làm lập trình của tôi. Tôi đã dành ra rất nhiều thời gian và công sức để code của mình hoàn thiện hơn, quy củ ...
Object Oriented Programming with Ruby (Part 1)
Đây là bài viết được dịch từ một cuốn sách, các bạn có thể xem ở đây: Object Oriented Programming with Ruby Trong phần này sẽ giới thiệu cho bạn một cái nhìn tổng quan về lập trình hướng đối tượng (Object Oriented Programming). Object Oriented Programming, thường được gọi với cái tên OOP, là ...
Một số điều một lập trình viên phải biết về SQL sever
6. SQL functions thường hiếm khi có hiệu năng tốt If you do want to reuse code, consider stored procedures and views instead. (Granted, they can come with their own performance drawbacks, but I’m just trying to get you started on the right foot as quickly as possible here, and functions ...
Sắp xếp Collection trong Java
Để sort một array, chúng ta có thể dùng method sort trong gói java.util.Arrays Ví dụ: int [] array = new int[]{1, 2, 4, 1, 3, 5, 7, 6}; Arrays.sort(array); for (int x : array) { System.out.println(x); } Kết quả: 1 1 2 3 4 5 6 7 Gói Java.util.Arrays còn hỗ trợ 1 số phương thức sort khác ...
Mở rộng Scrum một cách đơn giản với khái niệm của khung làm việc Nexus
Thông thường, Scrum hiệu quả đối với nhóm từ 3-9 thành viên, nhưng trong một số trường hợp, có một số team cần làm việc chung vì sự phức tạp và độ lớn của sản phẩm đó. Kinh nghiệm thực tiễn tốt nhất chỉ ra rằng Scrum không hiệu quả cao cho các nhóm lớn và 1 Product Owner, 1 Scrum Master cho nhóm ...
Scala.js basic tutorial
Với step-by-step tutorial chúng ta sẽ bắt đầu với việc setup Scala.js sbt project và kết thúc với việc tương tác với user và viết unit testing. Code được viết trong tutorial này cũng được public trên GitHub với mỗi step là 1 commit, các bạn có thể tham khảo thêm ở repo: scalajs-tutorial Để đi ...
Cài đặt squid proxy server trên Pfsense
Hướng dẫn sử dụng Squid server trên Pfsense( Phần 1 ): I. Cài đặt: B1: Đăng nhập vào trang quản trị Pfsense bằng trình duyệt web (Chrome hoặc firefox) B2: Chọn mục System -> Package Manager B3: Chọn mục "Available Packages" Tìm đến gói cài đặt "squid" và chọn "Install" Mất vài phút để thực ...
Libgdx cài đặt và một vài vấn đề phát sinh
Chào các bạn, thời gian gần đây mình có nhận được yêu cầu làm 1 dự án sử dụng 1 engine nhẹ như native để làm game cho android, và sự lựa chọn của mình đó chính là libgdx. Trong quá trình mình tiếp cận với libgdx thì mình thấy có 1 vài vấn đề, vì vậy mình muốn viết bài này vừa là để hướng dẫn ...
What is Vue.js?
-Vue ( /vjuː/) là một progressive framework dùng để xây dựng giao diện người dùng. Core của Vue chỉ tập trung vào lớp view ("View" trong mô hình MVC) và nó rất dễ để làm quen hay tích hợp với các thư viện hoặc các project đang hoạt động. Vue là một thư viện JS nhỏ gọn so với những thư viện khác như ...