Cucumber cơ bản- Ngôn ngữ Gherkin

Cucumber là một công cụ kiểm thử tự động acceptance test dựa trên việc thực thi các functions. Kịch bản test unit (scenarios) sẽ được viết trước và thể hiện nghiệp vụ, sau đó source code mới được cài đặt để pass qua tất cả các stories đó. Ngôn ngữ được cucumber sử dụng là ...

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

Đồng bộ dữ liệu Core Data với Parse Service (Phần 1)

Ở trong bài viết trước tôi đã trình bày về cách tạo 1 ứng dụng lưu dữ liệu trực tiếp lên Parse Service, việc này giúp cho dữ liệu luôn được đồng bộ giữa nhiều thiết bị, tuy nhiên việc này có hạn chế là chương trình không thể hoạt động nếu không có mạng internet. Trên thực tế, các chương trình đều ...

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

[CakePHP] Xuất dữ liệu ra Excel sử dụng thư viện PHPExcel (p2)

Ở phần 1 tôi đã trình bày sơ qua về cách tích hợp PHPExcel vào CakePHP. Bài này tôi xin chia sẻ thêm một vài tính năng khác như cách thiết lập awidth, height của dòng cột, cố định vị trí dòng cột, hay style cho cell dữ liệu để nội dung được thân thiện hơn, hay phục vụ cho việc in ấn file. Việc ...

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

Vấn đề adjustViewBounds của ImageView trong API level 17 trở xuống

Chào các bạn, hôm nay mình muốn chia sẻ với các bạn một vấn đề nhỏ liên quan đến ImageView mình đã gặp phải trong quá trình làm. Có lẽ vấn đề này các bạn ít quan tâm vì ít dùng đến. Tuy nhiên, mình hi vọng khi các bạn gặp phải sẽ không mất thời gian để tìm hiểu giải quyết vấn đề. Vấn đề mình muốn ...

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

AWS CloudFormation

AWS CloudFormation AWS CloudFormation cung cấp cho các nhà phát triển và quản lý hệ thống một phương pháp khởi tạo và quản lý dễ dàng các nguồn tài nguyên AWS, cung cấp cũng như cập nhật chúng một cách có thứ tự và dễ dự đoán. Bạn có thể sử dụng các template mẫu của AWS CloudFormation hoặc sử ...

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

KVC and KVO in iOS

1. Introduction “KVC“ and “KVO” KVC (Key-Value-Coding) and KVO are one of the most popular concept that iOS’s developers usually listen about. But for understanding their meaning and how to use them the right way is very important for whom, who want to make your code ...

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

Human Reaction, Animal Reaction or React.Js

Creating an dynamic web application always involved working with Backend development Frontend development In the backend we need programming language such as PHP, Ruby, Python, Perl ...etc. That can run on server in order to generate webpage and send back to client . As for the ...

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

Top Pageについて

初回である今回はTop Pageの機能について紹介します。 まずは投稿上部のそれぞれのタブにどういった記事が表示されているかを紹介します。 ### New Posts ユーザーの投稿した最新の投稿が表示されています。 ### Follow 自分がフォローしているユーザーの投稿を新着順に表示しています。 ### Top Clips ユーザーにクリップされた回数が多い投稿順に並べられています。 有用な記事を素早く簡単に見つけることが出来ます。 クリップ機能について詳しくはこちら! ### Top ...

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

Java Synchronized Blocks

Khi chúng ta bắt đầu 2 hay nhiều Thread trong cùng 1 chương trình, có thể xảy ra tình huống nhiều Thread cố gắng truy cập vào cùng 1 file hay 1 đối tượng nhất định gây ra tình trạng xung đột dữ liệu, mất dữ liệu. Ví dụ, nếu nhiều luồng cố gắng để ghi vào cùng một tập tin, vì vậy tập tin có thể bị ...

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

$templateCache trong AngularJS

Introduction Trong AngularJS, có rất nhiều cách để bạn có thể customize templates trong hệ thống của bạn. Bài viết này sẽ giới thiệu cách sử dụng và các điểm khác nhau giữa các cách dùng template . Sử dụng Templates với String Khởi tạo trang index < ! DOCTYPE html > < ...

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

Xu hướng thiết kế Website năm+ 2015

1. Làm cho mọi thứ lớn và đơn giản hơn Thay vì giới hạn độ rộng layout (fixed layout) như trước đây xu hướng tràn trang(fluid layout) ngày càng chiếm ưu thế. Các hình background website ngày càng lớn hơn và được đặt dọc theo website sau khi đã làm mờ đi chút ít nhằm tạo nên hiệu ứng thị sai ...

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

Cài đặt môi trường Apache, MySQL và APC trên OSX 10.10 Yosemite

Trong bài Cài đặt và sử dụng nhiều phiên bản PHP trên Mac OS X 10.10 Yosemite trước chúng ta đã cài đặt và sử dụng web server apache với nhiều phiên bản php để thuận tiện cho việc phát triển web. Trong bài này chúng ta sẽ cùng nhau cài đặt các thành phần cần thiết khác bao gồm: MySQL, Virtual Hosts ...

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

Tập hợp Open Source Library "khủng" nhất dành cho Android

1. Nguồn gốc Bài viết được dịch từ blog rất nổi tiếng trên qiita "イマドキなイカした Android のオープンソースライブラリ集". (Đăng ngày 23-11-2014, edit lần cuối vào 7-5-2015) Link gốc: http://qiita.com/KeithYokoma/items/fb6872a72a75e9b6f2e6 2. Môi trường phát triển Android SDK Android SDK Installer: Nếu ...

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

Difference between sh and bash?

Đây là 1 câu hỏi trên stackoverflow và câu trả lời nằm ở đây What is sh? sh (Shell Command Language - Ngôn ngữ thông dịch lệnh) là một ngôn ngữ lập trình được mô tả bởi chuẩn POSIX. Nó có nhiều phiên bản cài đặt (ví dụ ksh88, dash,…). bash có thể được xem là 1 phiên bản cài đặt của ...

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

Sử dụng Capistrano 3 để deploy

Có nhiều phương pháp deploy ứng dụng lên server. Bạn có thể deploy bằng tay, hay sử dụng các tool tự động hoá như Capistrano, Chef, Ansible, Fabric, ... Bài viết này hướng dẫn các bạn deploy một ứng dụng lên server sử dụng capistrano 3 "A remote server automation and deployment tool written ...

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

Giới thiệu về DynamoDB (Phần 1)

Giới thiệu DynamoDB là môt dịch vụ quản lý NoSQL có khả năng đáp ứng hiệu suất cao và nhanh kèm theo khả năng mở rộng. Nếu bạn là một nhà phát triển, bạn có thể sử dụng DynamoDB để tạo ra một bảng có khả năng lưu trữ và truy xuất bất kỳ số lượng dữ liệu, mà vẫn có thể phục vụ cho bất ...

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

ការកសាងតំបន់បណ្តាញដោយប្រើប្រាស់AngularJs នឹង Rails

ជំហាានដំបូងនៃការបង្កើតនេះតម្រូវឲ្យយើងបង្កើតគម្រោងកម្មវិធីRailsជាមុនសិនដោយខ្ញុំនិងបង្កើតកម្មវិធីធម្មតាមួយដើម្បីជាគំរូសម្រាប់លោកអ្នកដើម្បីយកគំរូតាម។ដោយនៅក្នុងការកសាងគម្រោងនេះយើងចាត់ទុកថាលោកអ្នកមានការយល់ដឹងខ្លះអំពីAngularJs នឹង Railsហើយ។ បង្កើតគម្រោងកម្មវីធី Rails៖ $rails new AngularJsRails ...

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

ES6 với những ưu điểm tuyệt vời thay thế thư viện Underscore.js

Khi lập trình ứng dụng với Javascrip các nhà phát triển thường phải xem xét lựa chọn cho mình một thư viện *.js chuẩn. Ra đời từ khá sớm cùng với nhiều tiện ích Underscore.js đã được nhiều lập trình viên yêu thích và tín dùng. Tuy nhiên, khi dự án ở vào thời điểm cần bảo trì hoặc cấu trúc lại ...

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

Corona SDK tutorial: game Flappy Bat phần 2

Tiếp tục bài tutorial hướng dẫn về game flappy bird bằng corona sdk, như trong bài viết trước chúng ta đã tạo được màn hình start của game, sử dụng physics để tạo chuyển động cho ground và sử dụng animation cho text. Người đọc có thể tham khảo lại ở đây: https://viblo.asia/TienNM87/posts/ojaqG0o ...

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

7 trở ngại bạn sẽ gặp phải khi triển khai TDD

Bài viết sau dịch từ 1 blog trên trang http://qiita.com/ TDDを行った時にぶつかった7つの壁 Tôi bắt đầu biết đến TDD (Test – Driven Development) vào khoảng năm 2004- 2005 gì đó ( Tôi cũng không nhớ rõ nữa). Khi đó tôi đã nghĩ mình có thể quản lý dự án bằng phương pháp này. Ngay sau đó tôi đã triển khai TDD ...

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