Giao tiếp giữa các services trong mô hình Microservices

Ở các app được thiết kế theo mô hình monolithic, 1 component sẽ invoke 1 component khác bằng cách sử dụng language-level method hoặc call function. Có 2 cách cụ thể để bạn có thể làm điều này: Coupled way: Tạo instance objects (ví dụ new Classname()) Decoupled way: sử dụng Dependency ...

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

Tất cả những gì bạn cần biết về Performance Test Plan

Performance Testing - Kiểm thử hiệu năng đã trở thành một tiến trình không thể thiếu trong vòng đời kiểm thử phần mềm. Để thực thi cần chuẩn bị tài liệu một cách tổng quát và chi tiết nhất. Nó bao gồm tất cả các hoạt động được thực hiện trong quá trình Performance Testing, các điều kiện tiên quyết ...

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

Tính mod của tổng và tích với số nguyên lớn

Trong lập trình khi tính toán số học thường xảy ra hiện tượng tràn số. Đó là hiện tượng xảy ra khi một phép tính số học cố gắng tạo ra một giá trị số nằm ngoài phạm vi có thể được biểu diễn với một số bit nhất định – có thể lớn hơn giá trị lớn nhất hay nhỏ hơn giá trị nhỏ hơn được thể hiện. Khi ...

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

inject và each_with_object

Bài viết giới thiệu về phương thức inject và each_with_object là những phương thức thao tác vòng lặp và một số ví dụ giúp bạn hiểu khi nào thì sử dụng chúng. Inject Như được định nghĩa trong document Combines all elements of enum by applying a binary operation, specified by a block or a ...

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

Java awt game -> JumpyBox

Chào các bạn, cách đây vài năm game Flappy Bird đã đột nhiên trở thành một hiện tượng thú vị. Sự thành công từ chính cách chơi đơn giản đến bất ngờ của nó cũng đã làm nhiều người ngạc nhiên. Trong trí nhớ của mình thì người người, nhà nhà thi đua và đọ điểm với nhau </p> <div class= Tác giả: Trịnh Tiến Mạnh viết 18:25 ngày 12/08/2018

Redux-Saga

Các bạn chắc hẳn đã có lúc gặp phải vấn đề trong việc quản lý và kiểm soát các request API. Trong redux có thư viện là redux-saga giúp bạn giải quyết những khó khăn trên. nó sẽ giúp giúp quản lý những side effect trong ứng dụng redux trở nên đơn giản hơn. Bằng việc sử dụng tối đa tính năng ...

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

Unicode trong python 2 (Phần 2)

Tiếp nối phần trước Unicode trong python 2 (Phần 1) thì phần này tiếp tục nêu ra một số trường hợp gặp lỗi khi tương tác với dữ liệu dạng Unicode 3. Các vấn đề xảy ra khi làm việc với Unicode(Tiếp) 3. Hàm ép kiểu str() Hàm str() của python 2.7 sẽ ép kiểu của tham số đầu vào về kiểu str. Chúng ...

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

Hoisting trong javascript

Đoạn code sau in ra gì. a = 2 ; var a ; console . log ( a ) ; Nhiều lập trình viên sẽ nghĩ là undefined vì var a xuất hiện sau a = 2, và đương nhiên biến đó sẽ được định nghĩa lại theo tự nhiên, và sẽ là undefined. Nhưng kết quả là 2. Tiếp tục một ví dụ nhỏ nữa. console . ...

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

Docker Hub''s free auto-build service

Cũng như tiêu đề, trong bài viết này, chúng ta sẽ đề cập đến dịch vụ build docker container tự động của Docker Hub The Docker Hub provides an auto-build mechanism which can build your images as soon as you commit code to a Github or Bitbucket repo. Docker hiện tại đang nhận được rất nhiều sự ...

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

Redux saga in react native

Redux Redux là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Được dựa trên nền tảng tư tưởng của kiến trúc Flux do Facebook giới thiệu, do vậy Redux thường là bộ đôi kết hợp hoàn hảo với React (React Js và React Native) và đương nhiên khi nhắc đến reactJs điều ...

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

Recurrent Neural Network(Phần 1): Tổng quan và ứng dụng

Bài viết này dành cho những bạn đã có kiến thức cơ bản về mạng thần kinh Neural Network. Nếu bạn chưa có cái nhìn nào về Neural Network thì hãy tham khảo bài viết tóm tắt kiến thức về Artificial Neural Network của tôi tại đây hoặc nếu quá khó hiểu thì bạn có thể tham khảo video này. Để có thể ...

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

Tổng quan về Scrum (Phần I)

Nếu đã từng tìm hiểu về quy trình phát triển phần mềm, hẳn là bạn đã từng biết đến rất nhiều mô hình phát triển phần mềm như Waterfall, V model, mô hình xoắn ốc hay mô hình tiếp cận lặp... Và gần đây chúng ta thường nghe tới thuật ngữ như Scrum. Vậy Scrum là gì? mô hình phát triển phần mềm Scrum có ...

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

FastJsonApi-khám phá và trải nghiệm

Nếu là 1 dev server, thì có lẻ bạn đã quá quen với thứ gọi là api.Và nếu là 1 dev ruby on rails, chắc hẳn khi nhắc đến api các bạn sẽ nghĩ ngay đến Active Model Serializer(AMS).Vậy bạn đã nghe đến fastjson api và đã từng thử nghiệm nó chưa.Hôm nay mình xin giới thiệu một số nét về fastjson api mà ...

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

Mẹo tối ưu hóa HTML/CSS/JS

Tối ưu hóa trâng web là một điều mà mọi lập trình viên đều hướng đến , điều này giúp cho trang web của bạn cải thiệu hiệu năng , giảm thời gian chờ và được ưu tiên trong các bộ máy tìm kiếm ... ví dụ như của Google </p> <div class= Tác giả: Tạ Quốc Bảo viết 18:25 ngày 12/08/2018

Java và Kotlin part 1

Khi bạn cần phát triển một android application. Có lẽ sẽ có ngay một ngôn ngữ lập trình hiện lên trong suy nghĩ của bạn và đó là java. Tuy nhiên dù trên thực tế đa phần ứng dụng android hiện nay được viết bằng java, thì java cũng không phải lựa chọn duy nhất cho bạn. Bạn có thể lập trình ...

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

Tạo secret key mã hoá data dựa trên Elliptic Curve Cryptography

Dữ liệu ngày càng quan trọng hơn bao giờ hết và đảm bảo an toàn thông tin, an toàn dữ liệu là bài toán quan trọng với những ứng dụng hay những nền tảng web yêu cầu bảo mật dữ liệu. Đơn cử như khi bạn xây dựng các API phục vụ cho các App truy xuất dữ liệu từ server chúng ta vẫn thường dùng các ...

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

Generators trong JS

Hiểu đơn giản function trong js khi được thực thi sẽ đảm bảo tính run to completion (các code khác sẽ không thể can thiệp và làm gián đoạn quá trình chạy của function đó ) Tuy nhiên generator function là 1 function có chức năng tạm ngưng thực thi trước khi hàm kết thục và có thể tiếp tục chạy ở 1 ...

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

Return trong shellscript

Là một java dev nên khi mới tiếp cận với shellscript tôi luôn có tư tưởng tiếp cận nó giống với java. Với một logic phức tạp sẽ tách thành các method nhỏ để xử lý rồi trả về kết quả. Ví dụ để tính tổng của 2 số sẽ viết như sau. Tạo file return_test.sh có nội dung: #!/bin/bash add() { ...

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

React Native hoạt động như thế nào ?

Chắc hẳn rất nhiều dev đã nghe tới React Native, nhưng nó hoạt động như thế nào ? Nó khác gì so với ReactJS dành cho web development ? Bài viết này sẽ giúp chúng ta đi vào trả lời một phần vấn đề trên!!!. Let's GOOOOOOOOOOOOOO </p> <div class= Tác giả: Hoàng Hải Đăng viết 18:25 ngày 12/08/2018

Caching trong ruby 5.2

Dưới đây là bài dịch từ nguồn caching-in-ruby-on-rails và được trích một phần từ quyển "learn ruby 5.2" Tóm tắt sơ bộ Thông thường các lập trình viên khi triển khai tối ưu performance, thường sẽ lưu tâm đến vấn đề đánh index trong database, sau đó là đến caching. Và mục đích của bài viết này là ...

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