Facebook''s Shimmer Library
Shimmer is an Android library that provides an easy way to add a shimmer effect to any view in your Android app. It is useful as an unobtrusive loading indicator, and was originally developed for Facebook Home. You can easily implement Facebook Shimmer to let the users know your app is performing ...
Viết Rspec cho Controller
Viết Rspec là 1 phần không thể thiếu trong quá trình phát triển ứng dụng, bên cạnh những phần test logic trong Model thì phần viết test cho controller cũng là 1 phần khá quan trọng của việc viết Rspec. Tổ chức test. 'Describe' và 'Context' là 2 thành phần giúp cho phần tổ chức test của chúng ...
Convert SharePreferences Android sang kotlin
Những gì cần tìm hiểu đã có hết trong bài viết này rồi: https://viblo.asia/p/toi-uu-android-shared-preferences-924lJM8bZPM Hôm nay mình sẽ mạn phép dùng bài viết của tác giả ở trên để hướng dẫn các bạn convert SharePreferences của Android sang Kotlin 1.1. Phần khởi tạo SharedPrefs companion ...
Internationalization (i18n) trong angular 5
I18n sẽ giúp cho website trở nên đa dạng hơn về mặt ngôn ngữ để tiếp cận người dùng trên toàn thế giới , trong angular cũng vậy. Trong angular i18n sẽ có các công dụng sau: Hiển thị ngày, số, phần trăm và đơn vị tiền tệ ở định dạng. Dịch văn bản trong template Xử lý văn bản thay thế. 1. ...
Ansible Fundamentals - Ad-hoc Commands
Introduction. Việc triển khai và quản lý servers một cách đáng tin cậy và hiểu quả không phải là một công việc đơn giản. Khi những công cụ như Ansible chưa xuất hiện, luôn có một rào cản giữa các quản trị viên hệ thống (system administrators) với các nhà phát triển (developers) cũng như người ...
Thiết lập đa ngôn ngữ trong ứng dụng theo setting
1. Thiết lập đa ngôn ngữ trong setting Nếu chỉ thiết lập đa ngôn ngữ theo ngôn ngữ của máy thì chắc mọi đã có thể làm được rồi, ở đây mình xin giới thiệu 1 cách thiết lập đa ngôn ngữ mà không theo ngôn ngữ máy, nó được chỉnh trong setting của ứng dụng chẳng hạn. 2. Khó khăn trong thiết lập ...
tools:title="LayoutPreview"
Chắc hẳn các bạn khi bắt đầu phát triển ứng dụng Android đều bắt đầu bằng việc xây dựng các layout với giá trị hard-coding như android:text="Họ và tên", android:text="Ngày sinh"... Sau đó chúng ta có thể là nhận được các lời chỉ bảo hoặc đọc từ các hướng dẫn trên mạng và chuyển các giá trị ...
Working with Forms AngularJS
AngularJS là một phần gắn bó với công việc hàng ngày của mình, hôm nay mình muốn chia sẻ một vài kiến thức về Forms trong AngularJS theo cách nhìn nhận mà mình đọc được trong sách, hy vọng giúp ích cho mọi người. Preparing the Example Project Đầu tiên chúng ta sẽ có một file html là forms.html ...
Installing Multiple Versions of Node.js
Khi phát triển ứng dụng Nodejs, bạn có bao giờ đối mặt với trường hợp là phải cài đặt nhiều vesion của Node. Điều này xảy ra khi bạn có nhiều project và chúng yêu cầu nhiều version node khác nhau. Chúng ta phải cực nhọc cài bằng tay những version node và basing chúng tới những project. Điều này rất ...
What are the differences between variables created using let, var or const?
Scope var If a variable is created inside a function, it is scoped to the function If a variable is created outside of any function, it is scoped to the global object let & const let and const are block scoped let and const are only accessible within ...
Xcode Interface Builder Tips And Tricks
Đối với iOS Developer, việc hàng ngày phải sử dụng đến xcode để xây dựng lên các giao diện. Chắc hẳn mỗi người cũng có các tips riêng dành cho mình, hôm nay tôi đọc được blog này với các tips rất thú vị khi sử dụng Interface Builder trong Xcode. Để dễ dàng chọn một đối tượng khi nó nằm phía ...
RxSwift: Transforming Operators
Chuyển đổi các Element Thêm ví dụ mới này vào playground: example(of: "toArray") { let disposeBag = DisposeBag() // 1 Observable.of("A", "B", "C") // 2 .toArray() .subscribe(onNext: { print($0) }) .addDisposableTo(disposeBag) } Đây là những gì bạn vừa làm: ...
Kiểm tra Cơ sở dữ liệu (Dữ liệu) với Các Mẫu Thử nghiệm Phần II
1.Thử nghiệm trigger Kiểm tra các yêu cầu về quy ước code đã được tuân theo trong giai đoạn coding của trigger Kiểm tra xem các trình kích hoạt được thực hiện cho các giao dịch DML tương ứng đã hoàn thành các điều kiện yêu cầu. Kiểm tra cập nhật dữ liệu một cách chính xác khi chúng đã được ...
Recyclerview sử dụng sao cho hiệu quả
RecyclerView là một wedget được sử dụng rất phổ biến để hiện thị một danh sách trong các ứng dụng android. Nó là một phiên bản nâng cấp của ListView giúp cho việc quản lý và hiển thị danh sách dữ liệu một cách hiệu quả và đơn giản . Việc sử dụng RecyclerView không quá khó đối với các lập trinh ...
Shift Left Testing - Bí quyết cho Phần mềm thành công
Shift Left Testing, một thần chú DevOps mới trong phát triển phần mềm: Khi tôi sử dụng thuật ngữ 'Shift Left', có thể bạn đang tự hỏi không biết Shift Left có liên hệ gì tới một phần mềm? Khoảng 2 thập kỷ trở về trước gần như là không có ‘Testing Phase’ (pha kiểm thử) riêng cho việc ...
Sử dụng Angular Material Paginator với ASP.NET Core và Angular
Trong bài viết này tôi muốn giới thiệu tới các bạn làm thế nào để phân trang sử dụng table của Angular Material với Angular cùng với ASP.NET Core WebAPI. Với Angular Material Table và Paginator Module nó là khá dễ để cài đặt phân trang trong một cách hay, như vậy bạn có thể sử dụng nó trên phía ...
Selenium Basic: Textbox, dropbox,checkbox and radio button
package learnSelenium; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.suppor ...
Hướng dẫn tạo tài khoản AWS Free 1 năm
1. Các bạn truy cập địa chỉ aws.amazon.com và click vào nút Create AWS Account như hình. 2. Chọn I am a new user, nhập vào email đăng ký sau đó bấm vào nút Sign in using our secure server (vâng, là sign in chứ ko phải sign up hay register gì đâu) 3. Nhập địa chỉ email và password của ...
Blockchain và những thay đổi của nền kinh tế hiện nay
Câu hỏi “ Blockchain sẽ thay đổi nền kinh tế như thế nào?” được đặt ra trên Quora. Sau đây là câu trả lời của Samantha Radocchia, đồng sáng lập Chronicled. Hãy nghĩ đến cách mà kinh tế chia sẻ đã bùng nổ trong thập kỷ vừa qua. Nếu bạn đã từng đi Uber hay Grab, hoặc thuê Airbnb, ...
Các kiểu dữ liệu của Google Cloud Bigquery
Bigquery suppost nhiều kiểu dữ liệu, có thể là những kiểu cơ bản như Interger, Boolean, hay những kiểu phức tạp hơn như Array, Struct. Chúng ta sẽ đi tìm hiểu khái quát từng kiểu dữ liệu. Khi lưu trữ cũng như truy vấn dữ liệu, hãy chú ý tới các thuộc tính của kiểu dữ liệu sau: Property ...