Tổng quan về migration trong ruby on rails

Xin chào các bạn đã đến với chủ đề Migration của mình, chắc hẳn trong các bạn hầu hết đều đã từng mắc hoặc thắc mắc về các lỗi cơ bản của Migration khi lập trình bằng rails. Đầu tiên mình xin được giới thiệu qua về Migration. Dưới đây là một ví dụ (ở đây mình chỉ dùng rails 5 nhé) của ...

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

Tìm hiểu bản chất vòng lặp foreach trong php

Chắc hẳn ai cũng biết đến vòng lặp foreach. Đây là một vòng lặp vô cũng hữu ích để duyệt một mảng trong PHP. Hôm nay chúng ta cùng nhau tìm hiểu bản chất của vòng lặp này nhé! Ở mỗi vòng lặp foreach php sẽ tạo ra các bản sao để chúng ta lấy dữ liệu của phần tử đang lặp đó, bản sao này sẽ được ...

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

Một vài lưu ý khi sử dụng Shell Script (phần 4)

Phần trước: Một vài lưu ý khi sử dụng Shell Script (phần 3) sed là một text editor thường được cài sẵn trong máy của bạn và có thể giúp bạn tăng hiệu suất làm việc lên cao hơn. sed giúp giải quyết những tasks nhàm chán một cách đơn giản hơn, mà bạn cũng không cần tốn quá nhiều thời gian để ...

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

Tìm hiểu GET và POST trong PHP

Bộ mã nguồn web viết bằng PHP và được đưa lên host chính là Server, còn khi truy cập web thì người dùng chính là Client.Khi đăng nhập hay đăng kí tài khoản hay comment thì dữ liệu sẽ được Client gửi lên Server. Server nhận được thông báo qua 2 phương thức : GET và POST. Phương thức GET Phương ...

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

GMAIL LIKE CHAT APPLICATION IN RUBY ON RAILS

Chúng ta sẽ đi tìm hiểu cách thêm tính năng nhắn tin vào một ứng dụng rails đã có sẵn. Dưới đây là màn hình của một ứng dụng rails đơn giản mà sử dụng Devise để xác thực người dùng. Trên trang chủ hiển thị các user khác ngoài user đang đăng nhập Để các user có chat với những người dùng khác. ...

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

Tạo môi trường develop NodeJS với Docker

Ngày nay, việc phát triển web có rất nhiều lựa chọn, không còn gói gọn trong những stack lâu đời như LAMP, Ruby on Rails ... nữa. Đặc biệt nổi lên gần đây là MEAN Stack (MongoDB, ExpressJS, AngularJS, NodeJS), sử dụng hoàn toàn 1 loại ngôn ngữ là Javascript để phát triển website (à đương nhiên vẫn ...

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

Cách tạo widget trong wordpress

Xin chào các bạn. Hôm nay mình sẽ viết về cách để tự tạo một widget trong WordPress. Như chúng ta đã biết, hiện này WordPress là một CMS rất phổ biến. Với các bạn là coder thì việc sử dụng API của WordPress để phát triển thêm tính năng mình thích. Các Function is_active_widget() the_widget() re ...

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

$scope.apply trong AngularJS

Nếu như bạn đã viết một khối lượng lớn code AngularJS thì bạn hẳn phải biết về một scope hay sử dụng là $scope.apply(), theo như giới thiệu thí nó là một phương pháp dùng để cập nhật các bindings nhưng tại sao nó tồn tại và khi nào được sử dụng? và hôm nay chúng ta sẽ nghiên cứu kỹ khi nào thì sử ...

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

Giới thiệu về laravel scout trong laravel 5.3

Là một trong số những tính năng mới được giới thiệu trong laravel 5.3 - phiên bản mới nhất của framework hết sức thông dụng này, Laravel Scout hỗ trợ giải pháp tìm kiếm full textsearch, giúp ta dễ dàng đánh index và tìm kiếm trong nội dung của Eloquent Model. Laravel Scout hiện tương thích với 2 ...

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

Những thư viện Ruby hữu dụng mà hầu như các dự án đều sử dụng

Khi bạn làm việc với một ngôn ngữ lập trình yêu thích của mình, bạn thường tìm kiếm các công cụ hỗ trợ để giúp cho công việc của mình trở nên dễ dàng hơn. Trong thế giới Ruby, các công cụ này (gems) được tạo ra và cập nhật hàng ngày, nhưng chỉ có một số trong số chúng là tốt. Dưới đây tôi sẽ giới ...

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

Mô hình MVVM trong Android

MVVM là gì? Model-View-ViewModel là một cách tiếp cận architecural sử dụng để tóm tắt các trạng thái và hành vi của một view, trong đó cho phép chúng tách biệt sự phát triển của giao diện người dùng từ logic kinh doanh. Điều này được thực hiện bằng việc giới thiệu một ViewModel, có trách nhiệm ...

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

1Using C code in Python

Ta thường sử dụng C/C++ cho những công việc yêu cầu tốc độ xử lý cũng như hiệu năng cao. Vậy làm thế nào để ta có thể gọi các hàm được cung cấp trong các thư viện C từ Python? Bài viết này trả lời câu hỏi trên. Python cung cấp module ctypes để ta có thể giao tiếp với các thư viện ngoài của C. ...

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

Sử dụng Cucumber để viết unit test trong Rails

Giới thiệu Ngày nay xu hướng phổ biến của các chuẩn mới về sản xuất phần mềm là yêu cầu các developers viết test unit khi cài đặt source code. Đối với những hệ thống phát triển dựa trên framework Ruby on rails thì có rất nhiều gem có thể hỗ trợ việc viết test unit: RSPEC, CUCUMBER, ...

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

Giới thiệu về Elixir (Phần 2) - Ecto Library trong Elixir

Bài trước chúng ta đã tìm hiểu những khái niệm sơ khai nhất về 1 ứng dụng Elixir. Trong bài này ta sẽ nghiên cứu về cách làm việc với Database khi phát triển ứng dụng Elixir. Và bộ thư viện Ecto sẽ giúp chúng ta thực hiện phần việc này. Nói ngắn gọn thì Ecto là thư viện chính của Elixir để thao ...

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

Cách dùng CSS để đặt một element ở vị trí chính giữa

Khi sử dụng CSS trong phát triển giao diện website, có một số cách để đặt một element (child element) ở vị trí chính giữa của window hoặc chính giữa một element khác (parent element). Chúng ta hay cùng tìm hiểu một vài cách sau: 1. Trường hợp đã biết giá trị awidth và height của child element ...

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

Phân quyền trong Rails sử dụng Pundit

I. Giới thiệu Với mỗi ứng dụng web bất kì, phân quyền cho người dùng là việc làm không thể thiếu. Đối với các ứng dụng sử dụng ruby on rails, chúng ta có một số thư viện hỗ trợ việc phân quyền như cancancan, pundit, authorite... Những thư viện này sẽ giúp chúng ta tách hoàn toàn phần logic phân ...

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

The Quality of Software Design - Part 2

Part 2. The Utopia of Reuse Khi bàn về chất lượng thiết kế phần mềm, tiếp sau Correctness, Robustness, có rất nhiều thuật ngữ khác nhưng có lẽ phải kể đến Extendibility (Tính mở rộng) và Reusability (Tính tái sử dụng). Tôi nghĩ các bạn đều hiểu đại khái ý nghĩa của những từ này. Nói một cách đơn ...

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

Giới thiệu angular js 2

Chào các bạn! Như tiêu đề, hôm nay mình xin giới thiệu đôi nét cơ bản về angular js 2 Như các bạn đã biết , @Angular2@ vừa được release cách đây không lâu sau một thời gian phát hành bản beta. Vậy angular 2 có những đặc điểm gì mà chúng ta cần phải lưu tâm, có những đặc điểm gì vượt trội so ...

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

Form và Form Validation trong SpringMVC

Chào các bạn. Có lẽ giới lập trình chúng ta đã quá quen với từ "validate" dữ liệu rồi. Chúng ta sẽ không bàn bạc về khái niệm cũng như những lợi ích của nó nữa vì nó vốn đã quá rõ ràng rồi. Bài viết ngày hôm nay của tôi sẽ hướng dẫn các bạn tạo form và validate form trong java SpringMVC nói riêng. ...

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

Firebase Cloud Messaging Tutorial for Android

Xin chào bạn bè, Hiện tại có rất nhiều cách hướng dẫn push GCM điển hình chúng ta đã biết với 2 cách sau đây. Google Cloud Messaging Hướng dẫn cho Android Ứng dụng Android Push Notification sử dụng GCM Tutorial Nhưng bây giờ google có một sự thay thế đó là dễ dàng hơn gcm. Trong ...

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