Unit Testing in Swift

Trong bài viết về UI Testing lần trước, tôi có đề cập Unit test. Vậy Unit testing là gì? Trong ngành Computer programming, Unit Testing là phương pháp kiểm thử mà từng đơn vị mã nguồn (unit), bộ một hoặc nhiều module cùng với dữ liệu liên quan, quy trình sử dụng và vận hành được kiểm tra để xác ...

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

Tìm hiểu GraphQL (Phần 1): GraphQL vs Rest Api

GraphQL là một tiêu chuẩn API mới cung cấp một giải pháp hiệu quả, mạnh mẽ và linh hoạt hơn thay thế cho REST. Nó đã được phát triển bởi Facebook và hiện nay được duy trì bởi một cộng đồng lớn của các công ty và cá nhân từ khắp nơi trên thế giới. Cốt lõi của GraphQL là cho phép client có thể ...

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

Threads, Processes, Parallel Programing in Ruby (part2)

Chạy nhiều processes Đôi khi, bạn muốn chia 1 task thành nhiều đoạn với process-size hoặc muốn chạy 1 thread riêng biệt mà không phải viết bằng Ruby. Không vấn đề gì, Ruby cung cấp cho bạn 1 số phương pháp để sinh process cũng như quản lí chúng. Sinh process mới Có 1 số cách để sinh process ...

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

React Patterns

1. Stateless function Stateless function là một cách tuyệt vời để define một reuseable components. Nó không có state, lifecycle của react, nó chỉ là một function. const Greeting = () => <div>Hello World!</div> Trường hợp nó nhận vào props và context. const Greeting = ...

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

Blockchain - hacking smart contract with Ethernaut CTF (Part 1)

Những năm gần đây, Blockchain và các ứng dụng của nó nổi lên như một xu thế công nghệ của tương lai. Áp dụng Blockchain , ta có thể giải quyết được rất nhiều vấn đề mà các công nghệ hiện tại không làm được, mà trong đó nổi bật nhất là không còn trung gian giao dịch, không cần tin tưởng vào một ...

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

Fast Android Networking Library (FAN)

Hôm nay mình xin giới thiệu Fast Android Networking (FAN) - một thư viện mới chuyên về network cho Android. Trước nay khi nói về xử lý network cho Android chúng ta thường lựa chọn những cái tên quen thuộc như Volley, Retrofit, hoặc các bạn pro có thể tự tay code. Tuy nhiên, với FAN, chúng ta có ...

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

Prototype Pattern trong ruby

Tiếp nối cho serive về Design Pattern mình tìm hiểu và muốn chia sẽ. Bài viết này mình sẽ chia sẽ về Prototype pattern trong ruby. Nó thuộc nhóm Creational Patterns. và là một pattern điển hình của lập trình hướng đối tượng OOP. Ý tưởng của pattern này liên quan đến việc khởi tạo một Object mới ...

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

Thiết lập tên miền cho website Shopify

Tên miền là một trong những yếu tố quan trọng nhất của một website. Tên miền mặc định của Shopify sẽ có dạng: store-name.myshopify.com. Để thiết lập tên miền của bạn cho website Shopify bạn có thể mua một tên miền mới hoặc chuyển hướng tên miền bạn đang sở hữu sang Shopify. Mua tên miền mới ...

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

Spring boot with quartz

Bài trước chúng ta đã tìm hiểu về SpringBoot-gradle-redis tham khảo : https://viblo.asia/p/springboot-gradle-redis-gDVK28pAlLj cùng với seri springBoot-gradle, bài này tôi sẽ giới thiệu về springBoot with quartz... - project struture của chúng ta sẽ có cấu trúc thư mục như sau: - Gradle ...

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

[Translate] Clean code JS - SOLID (End)

SOLID Nguyên lí đơn trách nhiệm (Single Responsibility Principle) Như đã được nói đến trong cuốn Clean Code, "Chỉ có thể thay đổi một lớp vì một lí do duy nhất". Thật là hấp dẫn để nhồi nhét nhiều chức năng vào cho một lớp, giống như là khi bạn chỉ có thể lấy một chiếc vali cho chuyến bay ...

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

Why inner AsyncTask class should be static or leaks might occur? and solution for update UI

The reason is When Activity is destroyed, AsyncTask (both static or non-static) still running If inner class is non-static (AsyncTask) class, it will have reference to the outer class (Activity). If a object has no references point to it, Garbage Collected will release it. If a object is ...

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

Deep Link Trong Android

Trong bài viết này tôi và các bạn chúng ta sẽ cùng nhiều tìm hiểu Deep Link trong Android Bạn đã thử đặt cho mình một câu hỏi như này chưa !! Tôi có thể mở ứng dụng của tôi bằng cách click vào một URL không ?? Có. Với deep linking chúng ta hoàn toàn có thể làm được điều đó. Bạn không cần ...

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

[Translate] Clean code JS - Part 4

Biến Sử dụng tên biến có nghĩa và dễ phát âm Không tốt: const yyyymmdstr = moment ( ) . format ( 'YYYY/MM/DD' ) ; Tốt: const currentDate = moment ( ) . format ( 'YYYY/MM/DD' ) ; Sử dụng cùng từ vựng cho cùng loại biến Không tốt: getUserInfo ...

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

Parcelable trong Kotlin? Đã có @Parcelize

Bạn dùng cách nào để truyền data giữa các activity khi code Android bằng Kotlin? Với các kiểu nguyên thủy thì bạn có thể thực hiện ngay thông qua Bundle bundle . putString ( "A_STRING" , "some string" ) bundle . putInt ( "A_NUMBER" , 1234 ) bundle . put ( ...

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

API - Yếu tố sống còn của thế giới điện toán

Trong quá trình dịch tài liệu , trao đổi với khách hàng tôi đã gặp rất nhiều cụm từ API và cũng chỉ mang mác hiểu về nó như là 1 yếu tố không thể thiếu trong các công đoạn phát triển phần mềm. Vậy API thực sự là gì, công dụng của nó đến đâu mà tần suất xuất hiện cũng như tầm quan trọng của nó lại ...

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

ASP.NET MVC Tip #12 – Giả mạo Controller Context (2)

Chúng ta hãy xem các ví dụ cụ thể về việc sử dụng lớp FakeControllerContext để mô phỏng các hàm cơ bản của ASP.NET khác nhau. Testing Form Parameters Hãy tưởng tượng rằng bạn muốn kiểm tra hành vi của một controller action khi bạn truyền các tham số form khác nhau cho action. Hơn nữa, hãy tưởng ...

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

How to secure sensitive data from your mobile application [Part 1]

Trong bối cảnh các ứng dụng di động ngày càng xâm nhập sâu và đóng vai trò quan trọng trong hầu hết các công việc hằng ngày của chúng ta, người ta không ngừng suy nghĩ ra nhiều cách để làm cho cuộc sống tiện lợi và thoải mái nhất chỉ với một chiếc smart phone. Tôi còn nhớ khoảng hơn chục năm trước, ...

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

Database: Pagination in Laravel

Trong các framework khác việc phân trang khá là đau đầu. Paginator của laravel được tích hợp với query builder , Eloquent ORM và cung cấp sử dụng rất thuận tiện, dễ dàng phân trang với kết quả truy xuất từ db. Phần gen HTML của paginator được tích hợp với Bootstrap CSS framework. Paginating ...

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

Tổng hợp Keywords trong Swift

Chào mọi người hôm nay mình xin phép clone 1 bài từ tác giả Jordan Morgan (link bài viết gốc ở đây) tổng hợp về các keywords trong Swift, hy vọng nó sẽ giúp ích cho các bạn trong phỏng vấn cũng như trong công việc. Trong quá trình dịch có thiếu sót gì mong được các bạn bổ sung thêm (yaoming). ...

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

Cách tiếp cận trong bài toán khai phá và phân tích dữ liệu trong Machine Learning

Khi làm bài giảng về ML trong bài toán hồi qui tuyến tính thì tiện thể viết luôn 1 số ý kiến để các bạn mới tiếp cận có thể tham khảo cho dễ hiểu. Thời gian trước khi vào ĐN làm một buổi training thì cũng đã hướng dẫn cho các bạn ĐN biết cách phân tích dữ liệu và xử lý trong bài toán hồi qui tuyến ...

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