
Scope trong Laravel 5.5
Global Scopes Global Scopes cho phép bạn tạo các ràng buộc cho TẤT CẢ các truy vấn tới Model. Trong Laravel, chức năng soft delete sử dụng như một global scopes để thực hiện việc pull "non-deleted" từ các model. Viết một global scopes cho mình sẽ có thể cung cấp sự tiện lợi, dễ dàng , để đảm ...

WebRTC (phần 2) - Kiến trúc WebRTC
Phần 1 mình đã giới thiệu tổng quan về WebRTC Phần 2 mình sẽ chia sẻ kiến trúc của WebRTC Nắm được kiến trúc của WebRTC giúp chúng ta hiểu sâu và phát triển dễ dàng hơn ứng dụng của mình. Kiến trúc tổng quan như sau: Có 2 lớp riêng biệt (distinct layers): Browser deveopers sẽ quan ...

Giới thiệu thư viện validate cho Vue JS
Vue.js, gọi tắt là Vue, là một framework linh động dùng để xây dựng giao diện người dùng. Khác với các framework nguyên khối, Vue được thiết kế từ đầu theo hướng cho phép và khuyến khích việc phát triển ứng dụng theo các bước. Hôm nay mình xin phép được giới thiệu một thư viện validation cho ...

Tối ưu hóa việc sử dụng hình ảnh khi thiết kế web
Load ảnh lên trang web của bạn có thể là một vấn đề đối khi ít được developer chú ý, mà thường ốp bừa bãi ảnh lên mà bỏ qua yếu tố dung lương hoặc chất lượng của ảnh (đôi khi là cả hai). Để có thể vừa hiển thị những bức ảnh đẹp, chất lượng, vừa giảm bớt thời gian load ảnh cho browser nhằm tạo ra ...

Tạo Recyclerview adapters awesome với MultiViewAdapter
Hiện tại Recyclerview đã trở thành một widget quan trọng và phần lớn các app Android đều sử dụng. Nó là một công cụ mạnh mẽ, rất tiện lợi và có thể cover hầu hết các case mà lập trình viên muốn. Tuy nhiên vì sự linh hoạt của nó nên lập trình viên có thể vấp phải một vài khó khăn khi tạo ...

Backbone.js phần 3
Ở bài trước đã trình bày về phần trung tâm của backbone.js như là Model và Collection. Ở bài viết này sẽ trình bày về phần quyết định kiến trúc của Backbone.js là Backbone.Events Source code của lần này chi tiết ở đây Backbone.Events Backbone.js cung cấp component Model, Collection, View, ...

Full-width and Half-width check with Angular 4 Javascript
全角:Full-awidth 半角:Half-awidth I think that checking full-awidth and half-awidth character in most system is an important point. I will explain with the following simple steps: First we create a new component: $ ng g c zenkaku-hankaku After executing the above command, some of the ...

[Series AWS Product][ElasticBeanstalk] Triển khai nhanh dự án Rails lên AWS bằng ElasticBeanstalk
Triển khai một ứng dụng Rails có thể là một công việc khó khăn đối với các lập trình viên ít có kinh nghiệm về config server, hay cả đối với các nhà phát triển Rails dày dạn kinh nghiệm đôi lúc còn phải đau đầu vì những lỗi xảy ra trong quá trình config server. Nào là config Nginx, Unicorn, Redis ...

6 chức năng dễ gây nhầm lẫn của Ruby
Ruby là một ngôn ngữ ngắn gọn, tiện dụng, dễ dùng, dễ nghiện. Để có được sự tiện dụng này, những người thiết kế ngôn ngữ đã phải hy sinh một số chi tiết nhỏ, khiến cho đôi khi lập trình viên trở nên nhầm lẫn. Dưới đây là 6 tiện ích nhỏ của Ruby mà lập trình viên nên cẩn thận mỗi khi sử dụng. 1. ...

3 bước để sửa vấn đề Encoding trong Ruby
Developer thường rất ít khi để ý tới vấn đề encoding của string. Chúng ta chỉ nghĩ tới chúng khi encoding gặp vấn đề chúng ta nhận được 1 exception Encoding::InvalidByteSequenceError: "xFE" on UTF-8 hoặc 1 ký tự nào đó bị hiển thị sai như thế này chẳng hạn they’re Khi gặp vấn đề này chúng ...

GreenDAO ORM database with Reactive RxJava Android
Xin chào tát cả mọi người, hiện tại mình đang tìm hiểu RxJava với GreenDAO, thấy khá hay nên mình muốn chia sẻ cho các bạn cũng như ghi nhớ lại những kiến thức đã học được Về RxJava là gì, để làm gì, các bạn có thể tra cứu trên Google , khá nhiều, mình sẽ không nói trong bài này nữa. Hãy bắt đầu ...

Một số hàm xử lí object trong ruby bạn nên biết.
Xin chào các bạn, ruby là một ngôn ngữ hỗ trợ rất nhiều các hàm dựng sẵn hay bên trong các class, trong quá trình làm việc đôi khi chúng ta cần các hàm với chức năng tương tự nhưng lại không biết dẫn đến tốn nhiều thời gian cho việc code lại hàm mới, bài viết này mình sẽ tổng hợp một số hàm xử lí ...

Android - Speech Recognition
Tiếp nối bài viết về Web Speech Recognition, bài viết này của mình sẽ viết về Speech Recognition trên Android. Trên viblo cũng có mấy bài viết hướng dẫn sử dụng Speech Recognition trên Android, tuy nhiên các ví dụ trong đó đều yêu cầu sử dụng popup để bắt đầu nhận dạng giọng nói và chỉ cho phép ...

Top 5 open source ChatOps
Chat Bot mã nguồn mở là chương trình rất hữu ích để thực hiện các tác vụ tự động hoặc các tác vụ trong một cuộc trò chuyện nhóm như điện tín, IRC ... Dưới đây là danh sách các chương trình chat bot đã có giấy phép mã nguồn mở và được tự do deploy ở bất kỳ domain nào. 1. Lita ...

Tạo màn hình Splash Screen sử dụng Physics Animation
1. Giới thiệu Là một nhà phát triển, tôi cũng giống như mọi người khác luôn luôn cố gắng tìm hiểu và nghiên cứu các tính năng hay ho của các ứng dụng Android khác và thiết kế lại các tính năng đó trên ứng dụng của tôi. Ngày hôm qua tôi tải ứng dụng ShowBox, Một ứng dụng streaming phim và TV. ...

Cùng nhau học VueX (Phần 1)
Xin chào các bạn, lại đến dịp được update profile cho Viblo rồi =)). Cũng hơi cạn kiệt đề tài nên sẽ dùng một cái gì đó không mới lắm, nhưng mình cũng không thấy nhiều hướng dẫn khi tìm trên google lắm. Seri này chúng ta sẽ dùng VueX để xây dựng một công việc quá quen thuộc (thậm chí là nhàm chán) ...

Phần 4 - Setting project
Trong bài viết này, chúng ta sẽ tìm hiểu cách khai báo và cài đặt các thuộc tính trong Gradle và sử dụng chúng trong quá trình phát triển một Android project. Setting project properties Khi chúng ta muốn khai báo một thuộc tính trong Gradle chúng ta có thể sử dụng khối block ext{} trong ...

Tại sao phầm mềm lại có lỗi?
Bài viết sau dịch từ nguồn: http://www.softwaretestinghelp.com/why-does-software-have-bugs/ Lỗi phần mềm là gì? Lỗi phần mềm là một thất bại hoặc sai sót gây ra kết quả sai hoặc không mong muốn trong một chương trình. Đó là một lỗi khiến cho ứng dụng không thể vận hành như mong muốn. Tại sao ...

Làm thế nào để chuyển đổi testcases Manual sang kịch bản test Automation
Bài viết được dịch từ nguồn: http://www.softwaretestinghelp.com/how-to-translate-manual-test-cases-into-automation-scripts/ Đây là những điều cơ bản trả lời cho câu hỏi “Làm thế nào” cho nội dung của bài viết hôm nay mà tôi muốn chia sẻ với các bạn và tất nhiên nó không phải là một ...

SwipeBack ViewController trong Navigation
Làm thế nào để swipeback và detect action swipe của viewcontroller ở trong Navigation. Bởi default, khi add 1 viewcontroller vào Navigation thì chức năng swipe sẽ được tự động enable. Tuy nhiên, trong trường hợp mình custom nút back thì chức năng này sẽ bị disable. Vậy để có thể enable chức năng ...