Tìm hiểu về App Shortcuts trong Android N

Android N giới thiệu nhiều tính năng mới rất mạnh mẽ, hôm nay tôi sẽ nói về một thứ rất đơn giản, nhưng lại rất hữu ích. App Shortcuts Sẵn sàng từ Android API Version 25, App Shortcuts giúp cho người dùng thực hiện hành động cụ thể bên trong App từ bên ngoài App. Thực hiện long tap trên icon ...

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

.nil? .empty? .blank? vs .present?

Đối với những bạn mới học ruby (hay làm quen với rails) thì sau đây là 4 hàm cơ bản nhưng nhưng giúp ta fix được 96,69% các bug xảy ra trong tương lai các sản phẩm mà ta góp công nặn ra sau này :F*c*palm 1. nil? Dùng khi bạn muốn check nil? của bất kỳ object nào. và trả về boolean, nếu ...

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

Mở đầu về NodeJs

Chào các bạn, Bài này tôi sẽ giới thiệu cho các bạn về các đặc điểm của NodeJs, cách cài đặt và chạy ứng dụng đầu tiên. 1. Node.js là gì? Node.js là 1 server-side platform được build trên Chome JavaScript runtime ( V8 Engine)., nhằm mục đích phát triển ứng dụng nhanh chóng và scalable. Node.js ...

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

Tìm hiểu RxSwift bài 2 - các khái niệm cơ bản trong Rx

Hôm nay chúng ta sẽ đi tìm hiểu tiếp về Rx cũng như thư viện Rx swift sau loạt bài giới thiệu trước . Hãy tìm hiểu xem Rx là cái chi chi. In computing, reactive programming is a programming paradigm oriented around data flows and the propagation of change. This means that it should be possible ...

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

Create a task to run in an Interval

Khi chúng ta phát triển ứng dụng với java thỉnh thoảng chúng ta sẽ gặp những bài toán tạo một xử lý chạy trên background trong một khoảng thời gian. Ví dụ: gửi dữ liệu lên server hay clean application... Trong bài viết này mình xin giới thiệu với các bạn 3 cách để có thể giải quyết bài toán này ...

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

Xây dựng app chat đơn giản với Firebase(Phần 3)

Tiếp theo phần 2, phần này mình sẽ tiếp tục đề cập đến các tính năng chat : Server side -Đầu tiên phải nhắc đến lưu lưu trữ thông tin ở trên Firebase , nó sẽ nằm ở trong Database , tab Data , dưới đây là dữ liệu của app mình làm : Như các bạn thấy thì nó không sẽ không lưu dưới dạng ...

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

Improving Webpack build performance and verbosity

In previous article we set up a simple single page application with routing and web pack builds. Now we extend the application with better logic and using more web pack features and tools. Analyzing the builds Currently app is relatively small and we don’t get any really big files. ...

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

Số chữ số 0 liên tiếp cuối cùng của n!

Chúng ta sẽ bắt đầu với một bài toán nhỏ như sau: Cho một số tự nhiên n, hãy tìm số chữ số 0 liên tiếp cuối cùng của n! (giai thừa) Straight-forward Một cách đơn giản và trực diện nhất, đó chính là brute-force, nhân tất vào, rồi đếm số chữ số 0 def trailing_zeros ( n ) : if n ...

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

Xây dựng ứng dụng tìm kiếm đơn giản với Rails và Typeahead.js

Giới thiệu chung Trong bài viết này mình sẽ viết một ứng dụng tìm kiếm đơn giản sử dụng Rails và thư viện Typeahead.js Chúng ta có thể thấy search là một phần rất phổ biến trong các trang web hiện nay, hầu như các trang web đều hỗ trợ tính năng này. Nhưng thực tế để tạo ra thành phần search ...

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

Different ways of Reading a text file in Java

Đọc, ghi file là một phần cần thiết trong các ứng dụng. Hôm nay mình xin chia sẻ một số cách đọc dữ liệu từ file text sử dụng ngôn ngữ java mà mình biết. Có một vài cách để đọc file văn bản thuần túy trong java như : BufferedReader, FileReader, Scanner. Mỗi tiện ích này lại có những khả năng khác ...

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

Vuejs với Rails

Vuejs được biết đến là một progressive framework dùng để xây dựng giao diện người dùng và được sử dụng rộng rải với cộng đồng php cụ thể là framework laravel việc sử dụng nên vuejs trên rails vẫn còn ít nên tôi sẽ demo cho các bạn một ví dụ nhỏ việc kết hợp vuejs và rails Đầu tiên chúng ta có ...

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

Giới thiệu về AngularJS

1. Lịch Sử Của AngularJS AngularJS là một dự án mã nguồn mở được phát triển đầu tiên bởi Miško Hevery một nhân viên của Google. Hevery bắt đầu nghiên cứu và phát triển dự án vào năm 2009 và phiên bản 1.0 được cho ra mắt vào năm 2012. Do sự hữu ích của dự án này nên Google quyết định là ...

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

Những lỗi cơ bản thường gặp với lập trình viên Rails (Phần cuối)

Rubu and Rails cung cấp khả năng kiểm thử tự động vô cùng mạnh mẽ và hiệu quả. Rất nhiều lập trình viên Rails sử dụng kiểu TDD và BDD để viết nên những bộ test vô cùng tinh vi, họ còn tạo cho chúng ta những framework kiểm thử vô cùng mạnh mẽ cùng với gem như rspec hay cucumber. Mặc dù việc viết ...

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

It’s Okay to “Forget” What You Read !

Bản thân mình không phải là mẫu người quá đam mê đọc sách (chỉ đọc vừa đủ với bản thân), nhưng tự nhận là người rất tôn trọng những người viết sách, người yêu sách, người mê đọc sách. Thời đại công nghệ phát triển, bản thân việc viết và đọc sách cũng đã có nhiều thay đổi, bạn có thể đọc sách theo ...

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

Immutable.js

Nếu bạn quan tâm đến vấn đề tối ưu hóa khi viết một ứng dụng React thì Immutable.js là một thư viện không thể thiếu, đấy là một thư viện tuyệt vời. Immutable.js cung cấp các collection immutable, persistent: Immutable: Mỗi khi được tạo, collection không thể thay đổi vào bất cứ lúc nào. ...

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

Functional pattern: flatMap

Trong bài, chúng ta xem xét cách mà flatMap hoạt động, tương tự như map() trong Array, nhưng linh hoạt hơn. Cả hai map () vàflatMap () đều lấy một hàm f làm tham số để control cách dịch một mảng đầu vào sang một mảng đầu ra: Với map (), mỗi phần tử của mảng đầu vào được dịch chính xác sang ...

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

Some combining operators of RxJava

Combining operators kết hợp nhiều luồng dữ liệu để tạo ra một luồng dữ liệu. 1. concat() Như tên của method, bạn có thể sử dụng concat() để kết hợp hai hay nhiều luồng dữ liệu để phát ra dữ liệu đồng thời nhưng không xen kẽ nhau. Observable<Integer> observer1 = Observable.from(new ...

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

Sai lầm từ sự lạm dụng 1 số mẫu thiết kế trên mobile, hiện đã trở nên lỗi thời – Phần 3

MultiTouch Gesture – ngôn ngữ cử chỉ trên màn hình cảm ứng đa điểm, bao gồm hầu hết các loại smart phone và máy tính bảng hiện nay đã thay đổi một cách toàn diện tương tác giữa con người và các thiết bị cầm tay cá nhân. Nếu nói chuyện với những người vài thập kỷ trước, luôn cầm trên tay 1 cuốn sổ ...

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

Bắt đầu với Lập trình Shell

Mặc dù chúng ta đã quá quen với shell script. Nhưng sau đây, tôi vẫn muốn giới thiệu về cách để viết 1 shell script cho những bạn đang cần nó. Bước 1: dùng bất cứ chương trình gì có thể soạn thảo . Ví dụ: vi Bạn nên dùng gedit để viết shell vì khi viết shell nó sẽ hiện màu sắc phân biệt ...

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

Single Page Application Concept Với Simple Demo (no framework)

Dạo gần đây có thể bạn nghe thấy một cái tên đang nổi trong xu hướng phát triển web - Single page application. Mặc dù concept này đã ra đợi hơn chục năm nay. Cũng không ít website đã áp dụng kỹ thuật này. Vậy nó là gì ? Tại sao nó lại trở thành xu hướng. Bài viết này mình cùng tìm hiểu concept ...

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