Bắt Đầu với Javascript (P6)
Functions là một trong những khối xây dựng cơ bản trong JavaScript. Một function là một thủ tục JavaScript-một tập hợp các câu lệnh thực hiện một tác vụ hoặc tính toán một giá trị. Để sử dụng một function, bạn phải định nghĩa nó ở đâu đó trong phạm vi mà bạn muốn gọi nó. Trong phần này sẽ tìm hiểu ...
Xử lý multi items choice trong Recycler view
Trong khi làm project, sẽ có lúc bạn cần phải xử lý việc lựa chọn nhiều item (multi items choice) từ một list các item. Khi mà số lượng item tăng lên thì một lựa chọn tốt hơn là sử dụng recycler view để chứa các item vì recycler view có cơ chế tái sử dụng (recycle) view nên cho hiệu năng tốt hơn. ...
Làm việc với MSSQL trong Ruby với gem Tiny_tds
Trong bài viết này mình xin giới thiệu đến các bạn gem Tiny_tds để làm việc với MSSQL server trong dự án Ruby. Cài đặt. Trước tiên, phải cài đặt FreeTDS , với MacOS thì chỉ cần chạy lệnh đơn giản thế này: brew install freetds Sau khi cài đặt xong thì có thể kiểm tra bằng lệnh tsql -C ...
Android Architecture Components: Paging Library
Nhiều ứng dụng của chúng ta cần load rất nhiều data information từ Database. Queries đến Database có thể mất nhiều thời gian và sử dụng rất nhiều bộ nhớ. Do đó Google đã release thư viện mới là Paging Library có thể giúp bạn sử lý vấn đề này. Main component of Paging Library là PagedListAdapter ...
Load ảnh SVG từ sever với Androidsvg kết hợp với Glide
Xin chào mọi người, hôm trước mình gặp 1 bài toán là load 1 file ảnh từ sever về và hiển thị lên Imageview. Nhưng ảnh đó lại là ảnh svg. Ngồi hì hục mãi, cứ ngỡ là chỉ cần Glide là có thể load được lên như ảnh thường, lỗi này cũng do mình hơi chủ quan không xem lại document của glide. Sau 1 hồi ...
Design Pattern - Decorator
Tiếp tục chủ đề về design pattern, pattern của ngày hôm nay là Decorator, một pattern thuộc nhánh Structural Pattern. Định nghĩa Decorator là gì? Mình xin phép bê nguyên định nghĩa từ wikipedia cho tiện. In object-oriented programming, the decorator pattern is a design pattern that allows ...
Giới thiệu về hệ thống gợi ý (Recommender systems hoặc Recommendation systems)
I. Tổng quan về hệ thống gợi ý Hệ thống gợi ý (Recommender systems hoặc Recommendation systems) là một dạng của hệ hỗ trợ ra quyết định, cung cấp giải pháp mang tính cá nhân hóa mà không phải trải qua quá trình tìm kiếm phức tạp. Hệ gợi ý học từ người dùng và gợi ý các sản phẩm tốt nhất ...
How to parse HTML file in iOS
Chắc các bạn không còn xa lạ với khái niệm crawler dữ liệu, trên mạng có những trang web chuyên đi lấy dữ liệu của các trang web khác về làm dữ liệu cho trang web của mình, những trang này không tự tạo content mà chuyên đi chôm content từ các trang khác về thành content của trang mình. Cách làm của ...
Cài đặt Rails app trên AWS với Elastic Beanstalk và PostgreSQL
Trong bài viết này, sẽ đề cập đến công cụ Elastic Beanstalk của Amazon trong việc cài đặt một app Rails sử dụng database PostgreSQL Amazon đã mô tả Elastic Beanstalk như sau: AWS Elastic Beanstalk makes it even easier for developers to quickly deploy and manage applications in the AWS cloud. ...
Action trong Rxswift
Creating an Action Action là một class chung chung được định nghĩa là class Action<Input, Element>. Input là loại dữ liệu đầu vào được cung cấp cho chức năng. Element là loại phần tử được phát ra bởi các hàm trả về. Ví dụ đơn giản nhất của một Action không có input, thực hiện một số công ...
Assembly and how compilers work with it
Bài viết này chúng ta cùng tìm hiểu assembly là gì và trình biên dịch tạo ra nó như thế nào. Từ đó làm tiền đề để hiểu cách thức WebAssembly hoạt động. Trong bài viết về JIT, chúng ta đã nói về cách giao tiếp với máy giống như giao tiếp với người ngoài hành tinh. Chúng ta hãy nhìn vào cách não ...
Tải Video với Rails và Ziggeo (phần 3)
Chuẩn bị và tạo Video Callbacks được cấu hình cho mỗi ứng dụng, vì thế khi mở trang tổng quan, bạn chọn một ứng dụng và click vào Manage > Web Hooks . Ở đây nhập một URL và chọn "JSON encoding" từ dropdown. Bây giờ các sự kiện sẽ được chuyển tiếp tới /api/videocallbacks dưới dạng POST ...
Hibernate Caching - Bài 2: Second Level Cache
Chào các bạn! Chúng ta lại quay trở lại trong series hướng dẫn về Hibernate Caching. Trước khi đọc những gì mình viết dưới đây, hãy dành chút thời gian để nhớ lại những gì mình đã đề cập đến trong bài Hibernate Caching - Bài 1: Second Level Cache nhé. Link source code sample tại đây: ...
Docker là gì và làm gì?
Chắc các bạn đã nghe rất nhiều cụm từr này gần đây, vậy thực ra docker là gì? Một định nghĩa mà mình tìm hiểu thấy dễ hiểu là: Docker là một open platform cung cấp cho người sử dụng những công cụ và service để người sử dụng có thể đóng gói và chạy chương trình của mình trên các môi trường khác ...
Những điều bất ngờ cần phải chú ý khi bạn viết code javascript
1. So sánh 2 gía trị bằng nhau Trong javascript có thể so sánh giá trị bằng dầu (==) hoặc (===). Nhưng nó có một chút sợ biệt về việc sử dụng dùng 2 dầu bằng (==) "42" == 42 # true " 42 " == 42 # true Một bên là string còn một bên khác lá số, kết quả so sánh sẽ trả về true nếu giá ...
Upload file cùng với json sử dụng retrofit2
Retrofit là một thư viện giúp việc tương tác với server phổ biến nhất hiện nay. Việc upload file và gửi cùng với các thông tin khác lên server là một bài toán phổ biến khi làm việc với úng dụng client server. Trong hầu hết các tutorial của retrofit thì hầu hết mình nhận thấy các bài đều đề cập về ...
Làm chức năng search sử dụng RxJava operator.
Ngày nay thì gần như bất cứ ứng dụng nào cũng có hỗ trợ chức năng tìm kiếm, giúp cho bạn tìm thấy thứ mình cần 1 cách nhanh chóng. Do đây là 1 chức năng rất quan trọng nên chúng ta cần phải tìm ra cách để implement nó 1 cách tốt nhất có thể. Trong bài này, chúng ta sẽ cùng tìm hiểu cách để làm ...
Cơ bản về Golang language
Rất vui được gặp lại các bạn trong chủ đề giới thiệu ngày hôm nay của mình. Như tiêu đề mình đã nói, hôm nay mình xin được phép giới thiệu với các bạn một ngôn ngữ lập trình có tên là Golang(gọi tắt kaf Go). Về cơ bản thì ngôn ngữ này lấy cảm hứng dựa trên một ngôn ngữ cơ sở đó là ngôn ngữ lập ...
Filters trong Play Framework
Play cũng cấp một API Filter đơn giản cho việc apply global filter cho mỗi request. Filters so với các action composition API filter dành cho các mối lo ngại cho việc apply một cách không phân biệt vào tất cả các routes. Cho ví dụ, đây là một vào use cases thông thường cho filter: ...
Giới thiệu về Android Architecture Components (Phần II tiếp)
Dữ liệu bộ nhớ đệm Việc triển khai repository ở trên là tốt cho trừu tượng gọi đến Webservice nhưng vì nó chỉ dựa vào một nguồn dữ liệu, nó không đa chức năng cho lắm. Vấn đề với việc thực hiện UserRepository ở trên là sau khi tìm nạp dữ liệu, nó không lưu giữ dữ liệu đó ở bất cứ đâu. Nếu người ...