PhpUnit Testing in Laravel 5.4 (P1)

Introduction Laravel được xây dựng với sự kiểm tra. Trên thực tế, hỗ trợ thử nghiệm với PHPUnit được đưa ra ngoài và tệp phpunit.xml đã được thiết lập cho ứng dụng của bạn. Khung này cũng được vận chuyển với các phương pháp trợ giúp thuận tiện cho phép bạn kiểm tra ứng dụng của mình. Một tệp ...

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

Let''s Learn Numpy

Numpy là gì? Numpy là một package chủ yếu cho việc tính toán khoa học trên Python. Vì Numpy hỗ trợ mạnh mẽ việc tính toán với matrix, vector và các các hàm đại số tuyến tính cơ bản nên nó được sử dụng nhiều trong việc implement các thuật toán Machine Learning. Khởi tạo vector và matrix Row ...

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

Tạo tree node model với ancestry - Rails

Giới thiệu Hôm nay tôi sẽ giới thiệu đến các bạn một công cụ trong Rails - giúp chúng ta dễ dàng hơn trong việc phân cấp có tính kế thừa( hoặc là cấu trúc tree) cho một single model - Ancestry. Việc phân cấp này cần thiết khi chúng ta có nhiều records cùng được định nghĩa bởi một model, mà ta ...

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

Laravel: Tìm hiểu về HTTP Requests (Phần 2)

Phần 1: https://viblo.asia/p/laravel-tim-hieu-ve-http-requests-phan-1-XL6lAwzDKek Tài liệu: https://laravel.com/docs/5.4/requests Chúng ta sẽ cùng tiếp tục đến với phần 2: Retrieving Input **Retrieving All Input Data** Bạn có thể lấy tất cả dữ liệu input như một ```array``` bằng cách sử dụng ...

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

Khiếm khuyết và thất bại trong kiểm thử phần mềm phát sinh từ đâu và khi nào?

1. Lỗi trong đặc tả, thiết kế và thực hiện của phần mềm và hệ thống Lỗi khi sử dụng hệ thống Điều kiện môi trường Hư hỏng cố ý Hậu quả tiềm ẩn của các lỗi trước đó a. Lỗi trong đặc tả và thiết kế của phần mềm: Đặc điểm kỹ thuật cơ bản là một tài liệu bằng văn bản mô tả các khía cạnh ...

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

Tìm hiểu SmartPointer trong C++ - Phần 1

Một điều mà nó có thể nhanh chóng làm cho source code C++ của bạn trở lên phức tạp rối rắm đó chính là vấn đề về quản lý bộ nhớ. Trong quá trình lập trình, các lập trình viên sẽ mong muốn giảm thiểu tối đa các ảnh hưởng của việc quản lý bộ nhớ lên quá trình lập trình. Smart Pointers được tạo ra ...

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

Làm thế nào để làm website chạy được khi không có mạng??

Các website có nhiều nội dung tĩnh như trang blog, tin tức, tutorials, ... Các website ứng dụng không cần tương tác với remote database trên server (sử dụng database tại trình duyệt để thay thế). Hoặc chỉ đồng bộ local - remote khi có kết nối mạng Để website của chúng ta có thể chạy được ...

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

Computer vision - Image processing - Walk around part

I. Visual perception The human visual system (HVS) HVS bao gồm 2 thành phần chính: Mắt (có nhiệm vụ nhận ra cảm biến) Não (bộ xử lý) Cả 2 bộ phận trên đều được kêt nối bởi dây thần kinh thị giác. Hình ảnh được người xem biến thành thông tin như thế nào? ...

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

Mật khẩu người dùng được Devise lưu và bảo mật như thế nào.

I.Devise gem và và bcrypt Hiện nay với các ứng dụng sử dụng Framework Rails, chúng ta thường sử dụng gem devise cho module đăng kí, đăng nhập ( Devise hiện tại đang là gem được sử dụng nhiều nhất cho tính năng đăng nhập, theo thống kê năm 2016). Với module mã hóa mật khẩu người dùng và kiểm tra ...

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

Doorkeeper is an OAuth 2 provider for Rails

I. Cài đặt Doorkeeper là một gem làm cho bạn dễ dàng tương tác chức năng của nhà cung cấp OAuth 2 đối với ứng dụng Rails hoặc Grape của bạn. Thêm vào Gemfile gem 'doorkeeper' Chạy lệnh để khởi tạo: rails generate doorkeeper:install Thao tác này sẽ cài đặt trình khởi tạo ...

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

Hiệu suất của việc đóng gói nội dung trong RecyclerView

Note : Khi mà RecyclerView đang đóng gói thông tin của nó, nó sẽ không tái chế nữa. Mọi bản ghi trong bộ dữ liệu đều có một mục View được lưu trong bộ nhớ miễn là RecyclerView nằm trong bố cục layout. ***Giải thích : *** Ý tưởng căn bản của một RecycleView rất đơn giản. Bạn có một ...

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

Xây dựng ứng dụng NodeJs cơ bản(Part 0)

Installing Node and Sublime text Trước khi xây dựng ứng dụng bạn cần phải cài đặt môi trường và IDE (ở đây mình khuyến khích dùng sublime text để code). Để cài đặt môi trường, bạn hãy truy cập vào các trang sau để download nodejs và sublime text vềm sau đó cài . https://nodejs.org/en/ ...

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

Tải Video với Rails và Ziggeo (phần 1)

Tôi nhớ có đợt hầu như không có ai thực sự xem video trên Internet vì tốc độ kết nối quá chậm. Sau đó, tốc độ bắt đầu tăng dần và tôi có thể tải xuống các bản nhạc, mất khoảng 4-5 phút để tải xuống một bài hát duy nhất trong khi nghe một bài khác. Trong năm 2005 YouTube nổi lên và nội dung video ...

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

Làm việc với kiểu dữ liệu JSON trong MySQL

Cơ sở dữ liệu SQL có xu hướng cứng nhắc. Nếu bạn đã làm việc với họ, bạn sẽ đồng ý rằng thiết kế cơ sở dữ liệu mặc dù nó có vẻ dễ dàng hơn, là thực tế phức tạp hơn nhiều. Cơ sở dữ liệu SQL tin vào cấu trúc, đó là lý do tại sao nó được gọi là ngôn ngữ truy vấn có cấu trúc. Ở phía bên kia đường ...

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

Xây dựng chatbot Facebook, Skype với api.ai (part 2)

Nếu như ai đã có đọc bài viết trước của mình thì chắc hẳn cũng đã tạo được một con chatbot đơn giản. Để tiếp nối bài viết hôm trước, hôm nay mình xin trình bày cách tích hợp chatbot của bạn vào facebook messager và skype. Các bạn có thể tạo con bot này ra nghịch, tư vấn bán hàng, tán gái, blo bla ...

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

Tìm hiểu về http caching

. Mở đầu Trong các ứng dụng web, caching là một vấn đề cực kỳ quan trọng để tối ưu hóa performance. Có rất nhiều cách để caching -Page Caching -Action Caching -Fragment Caching -Russian Doll Caching -Managing dependencies -Low-Level Caching -SQL Caching Nhưng hôm nay mình xin giới thiệu về ...

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

Xây dựng một ứng dụng web so sánh chỉ số của các loại tiền số với Vue.js

Vue.js là một Javascript framwork đơn giản cho phép bạn xây dựng các ứng dụng web động với tầng fron-end. Đã có rất nhiều bài viết so sánh nó với React và Angular. Là một lập trình viên back-end và là một người không có kinh nghiệm làm việc với với web application phía front-end. Tôi tìm thấy ...

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

Sử dụng SASS để viết CSS hiệu quả

1. SASS là gì? SASS là phần mở rộng của CSS cho phép bạn sử dụng các qui tắc như nested, variable, mixin, import ... nhằm viết CSS nhanh hơn và có cấu trúc rõ ràng hơn. 2. Ưu điểm Ưu điểm: Tương thích hoàn toàn với CSS. Có thêm phần mở rộng: variable, nesting, mixin... Nhiều chức năng ...

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

Các thủ thuật khi dùng Active Record

Việc viết code trong sáng và tái sử dụng là điều mà tất cả các lập trình viên nên làm. Đối với việc sử dụng Active Record cũng vậy, mình sẽ hướng dẫn các bạn một 5 trick phổ biến để viết code dễ hiểu và trong sáng hơn. 1. Sử dụng câu lệnh truy vấn có điều kiện với bảng liên kết Ở ví dụ dưới đây ...

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

Cách test những Fragment một cách đơn lẻ

Tất cả chúng ta đều biết rằng Unit Test là rất quan trọng trong quá trình phát triển dự án. Ngay từ khi bắt đầu chúng ta thấy rằng chúng ta chưa cần phải viết test tích hợp. Việc đầu tiên là phải viết test cho UI. Vậy chúng ta cần gì để sẵn sàng cho việc viết UI Unit tests. Trong Android, UI ...

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