Angular - Viết unit test với Mock và Spy

Trước khi đào sâu vào chủ đề của bài viết, tôi sẽ giới thiệu qua về việc viết unit test trong Angular. Angular sử dụng Jasmine và Karma để viết và chạy test. Jasmine là một javascript testing framework hỗ trợ BDD (Behavior Driven Development), nó cố gắng mô tả các tests trong một định dạng ...

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

Generic Protocols Swift

Trước khi giới thiệu về Generic Protocol, mình tóm tắt và review 1 chút về Generic và protocol trong Swift Generic được dùng khi muốn viết 1 hàm, biến , class hay params ... 1 cách tổng quát nhất. 1 trong nhưng cách tạo Generic trong swift như sau: struct GenericStruct<T> { var ...

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

Functional programing paradigms in modern JavaScript: Pure functions

bản gốc https://hackernoon.com/functional-programming-paradigms-in-modern-javascript-pure-functions-797d9abbee1 JavaScrit đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất cho đến giờ. Nó có thể chạy trên trình duyệt, máy PC, mobile và cả một số thiết bị ngoài nữa. Hơn thế nữa, nó có ...

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

ブリッジSEとして、ベトナムでのオフショア開発を進めるときに気をつけること ! BrSE cần chú ý gì khi làm việc với Offshore

Translated from link : http://irodoruhito.hatenablog.com/entry/2017/03/27/000542 以前、ベトナムでのオフショア開発を行っている企業でブリッジSEとして働いていました。 日本で詳細設計書を作成し、ベトナムでコーディング、単体テストを行います。 その後、日本で再度テストを行い、納品と言う流れでした。 日本人エンジニアは日本語、ベトナム人エンジニアはベトナム語と英語だったため、エンジニア間で直接コミニュニケーションがとれません。 双方のエンジニア間では、ベトナム人翻訳者が活躍してくれていました。 ...

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

Tìm hiểu công cụ Owncloud - P1

Giới thiệu: OwnCloud là một công cụ cho phép mọi người có thể đồng bộ và chia sẻ dữ liệu, khá là giống với google drive. Bạn có thể chia sẻ một hay nhiều file và folder trên máy tính và đồng bộ chúng với OwnCloud server, sau đó những người khác có thể sử dụng phần mềm OwnCloud client để truy cập ...

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

Rubocop và file thay đổi

Là một rails developer thì chắc chằn bạn không hề lạ lẫm với Rubocop. Rubocop là một công cụ để kiểm tra code style dựa trên ruby-style-guide, xây dựng lên để phục vụ cho developers. Việc sử dụng Rubocop trong dự án sẽ giúp bạn tiết kiệm rất nhiều thời gian cho việc review coding convention, đảm ...

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

Sử dụng MySQL với Node JS Express

Xin chào các bạn, như lần trước mình đã giới thiệu cho các bạn directive dndLists trong angular và sử dụng nó để tạo ra một bản KANBAN. Các bạn có thể xem lại bài viết đó tại đây nếu như các bạn chưa biết. Hôm nay mình sẽ tiếp tục viết bài về việc sử dụng MySQL trong NodeJS Express. Cài thư viện ...

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

Gradient descent - Optimazation algorithm

Hello every body ^^, Have you ever heard about optimazation problem in predictor of machine learning? Before taking about that, we glide example below: An example of spam email classification First, some terminology. A predictor is a function f that maps an input x to an output y. In ...

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

Xây dựng ứng dụng Ruby trên môi trường App Engine linh hoạt

Quickstart này sẽ chỉ cho bạn làm thế nào để tạo ra một App Enginee nhỏ hiển thị những tin nhắn nhỏ. Trước khi bắt đầu Trước khi chạy và deploy ví dụ này, bạn hãy thực hiện theo các bước sau: Sử dụng Cloud Platform Console để tạo project Cloud Platform mới, tạo một ứng dụng App Engine và nhớ ...

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

Quản lý View Controller bằng Container View Controllers

Bạn đã bao giờ suy nghĩa rằng TabbarController và NavigationController đã làm việc như thế nào chưa? => cả hai cũng chỉ là subclass của UIViewController . Vậy điểm chung của các class đó là gì? Tất cả đều cho phép hiển thị nội dung theo form từ một hoặc nhiều ViewController. Ví dụ như ...

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

Implementing Facebook Kit for Phone Verification

Before we begin i assume you have the necessary prerequisites that is a Facebook App ID and enabled Facebook Kit on your account dashboard. If not you can follow this guide to do this. Now that we have that out of the way we can proceed into implementing the sdk without any further ado. Step 1 ...

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

Những thay đổi từ angular 4 lên angular 5

Angular 5 là phiên bản mới nhất của Angular. Phiên bản Angular 5 được chính thức phát hành vào tháng 9/10 năm 2017. Theo đánh giá của giới lập trình viên trên thế giới thì so với các phiên bản trước, Angular 5 mang lại cho lập trình viên cảm giác dễ sử dụng hơn cùng với một số các đặc tính mới được ...

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

Sử dụng SKStoreReviewController với điều kiện hiển thị đơn giản, tôi đã làm tăng được lượng review tốt một cách đáng kể

Từ iOS 10.3 trở đi Apple đã chia sẻ SKStoreReviewController - một system support việc review sao ngay trên app. Khi chúng ta đưa vào trong app thì ta không những làm cho lượng review của app được tăng lên mà còn tăng được cả những review tốt cho app của mình :slight_smile: Sử dụng ...

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

Play Framework - Unit testing view templates

Trên play framework, chúng ta có thể viết unit test cho view templates theo như hướng dẫn từ trang play framework như sau: https://www.playframework.com/documentation/2.6.x/JavaTest @Test public void renderTemplate() { Content html = views.html.index.render("Welcome to Play!"); ...

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

Cùng đi học Machine Learning - Phần 2 - Machine Learning Algorithms

Mở đầu Chào tất cả mọi người, chúng ta lại gặp nhau trong bài phần tiếp theo của seri "Cùng đi học Machine Learning". Ở phần trước, sau khi chúng ta đã "cưỡi ngựa xem hoa" về khái niệm Machine Learning thì chắc các bạn cũng đã tìm đọc vài bài viết, sách... về ML. Và chắc hẳn các bạn cũng dễ ...

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

API Authentication (Passport) trong Laravel

Laravel đã làm cho việc thực hiện xác thực qua các form đăng nhập truyền thống trở nên dễ dàng, nhưng AP I là về những cái gì? Các API thường sử dụng mã để xác thực người dùng và không duy trì trạng thái phiên giữa các yêu cầu. Laravel làm cho việc xác thực API trở nên dễ dàng bằng cách sử ...

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

Truyền đối số trong Java, có thể bạn chưa biết?

Tất nhiên, trong Java, các đối số luôn luôn được truyền bằng giá trị. Hãy cùng xem những gì đang thực sự hoạt động bên trong </p> <div class= Tác giả: Bùi Văn Nam viết 16:31 ngày 12/08/2018

Cải thiện hiệu suất khi dùng GraphQL trong Rails

Với việc sử dụng GraphQL, tốc độ truy xuất vào APi của ứng dụng đã nhanh hơn cách thông thường, tuy nhiên chúng ta vẫn cần phải cải thiên cho chúng. Trong phần này, chúng ta sẽ xem xét ba cách để tránh các vấn đề về hiệu suất với GraphQL trong ứng dụng Rails và sau đó là dùng một công cụ để giúp ...

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

Làm cốc trà đá bàn về bảo mật trong Rails

Ngày nay, hầu hết các frameworks phát triển web hay mobile đều hỗ trợ đỡ các developer trong việc xây dựng các ứng dụng an toàn. Nhưng bởi vì không có framework nào là hoàn hảo, nên việc developer hiểu rõ bản chất của framework mình đang sử dụng, cũng như các lỗ hổng có thể có của nó sẽ giúp ích ...

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

Triple Equals in Ruby

Với một số thành phần mà dùng === (Triple equal sign) thường bỏ qua hoặc sử dụng trong nền câu lệnh điều kiện. Bây giờ có một số bài viết về toán tử === nhưng câu hỏi đặt ra là === cho chúng ta có thể sử dụng nó đến đâu? Triple equal là gì? Trong một số trường hợp mặc định, toán tử === chỉ là ...

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