
Firebase -Redux Saga
Bài này mình xin được viết vài đoạn code nho nhỏ về xài Firebase với Redux Saga. Món này chả có gì đặc biệt cả chỉ là do trước mình làm cái chatApp với firebase + reduxThunk thì đơn giản tà tà. Nhưng khi làm với Redux-Saga thì có vài điểm nó không support dễ dàng như Thunk Đầu tiên là config các ...

5 quan niệm sai lầm khi làm việc với Javascript
Javascript, trên thực tế mang lại cho lập trình viên rất nhiều những hiểu lầm, mặc dù tâm ảnh hưởng của loại ngôn ngữ này rất rộng và được áp dụng rộng rãi ở hầu hết các website. Không nói đến việc mọi người cho rằng Javascript có liên quan đến Java, hay người dùng có thể thực hiện kiểm soát truy ...

Single Dispatch and Double Dispatch with Visitor Design Pattern in Java [Part 2]
Ở bài trước, mình đã giới thiệu về khái niệm single dispatch và double dispatch, chúng ta cũng đã biết rằng java chỉ hỗ trợ single dispatch, nên để có thể sử dụng được double dispatch trong java, chúng ta phải có cách tiếp cận khác, một trong số đó là sử dụng design parttern, mà cụ thể ở đây là ...

Background job trong Ruby on Rails
I. Background Job là gì? Là một tiến trình xử lý ngoài luồng request/response thông thường của một trang web. Thông thường, các trang web nhận request từ người dùng, thực hiện xử lý logic sau đó trả về một response. Đây là mô hình bình thường mà một trang web được xây dựng. Background job theo ...

Viết Rspec trong Ruby on Rails (Phần1)
Trong bài viết này, mình sẽ giới thiệu về cách sử dụng Rspec để kiểm thử chức năng của ứng dụng web Ruby on Rails. Có thể việc viết test sẽ gặp nhiều khó khăn khi mới bắt đầu, tuy nhiên cũng có khá nhiều resources hỗ trợ việc viết test dễ dàng hơn. Hi vọng bài viết này sẽ có ích với các bạn mới bắt ...

Cách sử dụng VimeoNetworking iOS
VimeoNetworking là SDK của Vimeo cho phép chúng ta sử dụng các API của Vimeo. (vimeo là trang web chia sẻ video như Youtube nhé.) 1. Tạo App trên Vimeo Bước 1: truy cập trang web: https://developer.vimeo.com/apps, chọn Create App Điền đầy đủ thông tin sau đó chọn Create App (các bạn ...

CẮT ẢNH VỚI CARRIER WAVE TRONG RAILS (CROPPING IMAGES)
Chúng ta thương thấy khi upload một ảnh (thường là avatar có kích thước quá lớn) các trang web thường cung cấp tùy chỉnh ảnh hay còn gọi là copping. Kỹ thuật cropping được áp dụng rất nhiều trong thực tế, vậy trong rails chúng ta làm thế nào? Sau đây là bài hướng dẫn cropping images trong rails ...

Làm việc với Email trong môi trường development.
Bài viết là kinh nghiệm mình đúc rút ra được sau khi dự án mình từng làm bị dính phốt với gửi mail trong môi trường phát triển (dev). Mình tin chắc không ít các bạn đang xem bài viết này đã, đang và sẽ gặp phải. Và nếu các bạn chưa tìm ra được solution thì hãy đọc kỹ những gì mình chia sẻ dưới đây ...

Life cycle của AutoLayout trong UIView
Auto Layout là một trong những khái niệm cơ bản và quan trọng nhất trong iOS. Do vậy việc nắm vững và hiểu rõ vòng đời nó là rất cần thiết đối với lập trình viên iOS, giúp tiết kiệm thời gian và tránh bug ảnh hưởng đến UI và performance của app của bạn. Bài viết này sẽ giới thiệu tổng quan về các ...

Top 10 Gem hữu dụng trong việc lập trình web bằng Rails!
Mình đã code bằng Ruby on Rails trong kha khá thời gian và đã giải quyết nhiều bài toán khá phức tạp bằng cách sử dụng framework tuyệt vời này. Dựa trên kinh nghiệm làm việc với RoR, mình đã lập nên một danh sách các Gem mà mình cho là hữu ích nhất. Trong bài viết này, mình muốn chia sẻ danh sách ...

REST Assured vs. JMeter: A Comparison of REST Test Tools
Việc kiểm tra các API (REST) có thể là một việc phức tạp. Nhiều người sử dụng những cách thủ công để test các REST API mà bỏ qua những cách mà có thể giúp họ tiết kiệm thời gian. Bất kỳ REST API service nào đang được test đúng cách sẽ cần: Kiểm tra xem API service có tuân thủ các tiêu chuẩn REST ...

Project documentation - The easy way
When working on a project, many of us, developers, often think of two things as the most painful task. One of those is certainly, writing unit test for a project, and another one is, (yes, you guessed it right) writing documentation. Writing documentation can be a hassle, but keeping the ...

Đăng nhập trên firebase bằng custom token
Trong sử dụng Firebase Realtime Database , sẽ có lúc chúng ta cần bắt buộc người dùng phải đăng nhập vào hệ thống Firebase mới có quyền đọc/ghi dữ liệu. Bởi nếu không, cứ ai có thông tin config về tài khoản firebase của bạn đều có thể làm việc này, dẫn đến nguy cơ mất an toàn về bảo mật thông tin ...

Random numbers thật đơn giản với Swift 4.2
Làm việc với giá trị ngẫu nhiên trong Swift thường khiến chúng ta gặp 1 chút khó khăn bởi vì Swift chưa cung cấp API native cho việc lấy ra giá trị ngẫu nhiên. Do đó, chúng ta đành phải sử dụng các API của C do hệ điều hành cung cấp, và việc đọc chúng cũng không được tự nhiên cho lắm (vd: ...

Dependency Management for iOS : CocoaPods vs. Carthage
Giới thiệu. Đối với các lập trình viên việc tái sử dụng code không chỉ giúp tiết kiệm được thời gian, chi phí cho công việc phát triển phần mềm, tập trung vào phát triển các tính năng chính mà còn góp phần giảm bớt sự nhàm chán khi phải làm đi làm lại các công việc lặp lại trong các dự án khác ...

Phát hiện Memory leaks với Unit Testing
Ở bài trước, tôi đã giới thiệu về Memory leaks và một số phương pháp để phát hiện. Phần này chúng ta sẽ tìm hiểu về phương pháp cụ thể là Unit testing. Chúng ta đã biết về cách hoạt động của cycles và weak references, chúng ta có thể viết code để kiểm tra các retain cycles. Ý tưởng là sử dụng các ...

Tìm hiểu về các tính năng cơ bản của Jmeter - Phần 1
Tìm hiểu về các tính năng cơ bản là điều cần thiết và có lợi nhất khi bắt đầu sử dụng một công cụ bất kỳ nào đó. Vì vậy, trong bài viết này chúng ta sẽ thảo luận về một số tính năng cơ bản của Jmeter nhưng rất quan trọng để sử dụng nó. Nếu bạn là người mới và chỉ mới bắt đầu học Jmeter, thì ...

Tổng hợp các thủ thuật để trở thành một lập trình viên Android thực thụ
Để trở thành một lập trình viên Android trong thời đại 4.0 là một việc tương đối dễ dàng nhưng để có thể thành công và nổi trội hơn phần còn lại, chúng ta sẽ phải cố gắng rất nhiều, phải luôn giữ vững niềm đam mê, sư cống hiến và kiên trì để đạt được mục tiêu. Không có bất kỳ lối tắt nào dẫn đến ...

Sự khác biệt giữa QA và QC (Test Engineer) trong Kiểm Thử Phần Mềm
QA được dùng để nói về quy trình đảm bảo chất lượng theo các tiêu chuẩn, quy trình và thủ tục phù hợp cho dự án và được triển khai chính xác. Quy trình này có thể được thực hiện qua đội ngũ QA Engineer, hoặc manager, hoặc có thể là từ client (với client thì hoạt động này gọi là Acceptance ...

Nguyên lý SOLID
Hầu như các lập trình viên đều biết đến 4 tính chất cơ bản trong OOP: Tính trừu tượng Tính bao đóng Tính kế thừa Tính đa hình Tuy nhiên, ngoài 4 khái niệm này, thế giới OOP còn rất rộng lớn, mà một trong những khái niệm cũng nổi tiếng không kém 4 tính chất kia, đó là nguyên lý ...