[Android Smaller APK] Part1: Anatomy of an APK

Tôi đọc thấy bài blog khá hay từ trang Android developer về vấn đề tối ưu file APK, sau đây tôi muốn chia sẻ với các bạn loạt bài này: Part1: Anatomy of an APK (Phân tích, giải phẫu một file APK) Par2: Minifying Code (Thu gọn mã nguồn) Part3: Removing unused resources (Loại bỏ các ...

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

Hướng Dẫn Cài Đặt Google Play Services trên Genymotion Step by Step

Với nhiều tính năng giả lập và sự dễ dàng sử dụng, đặc biệt là các phiên bản free Genymotion giờ đây đã trở thành phần mềm giả lập thiết bị Android phổ biết nhất hiện nay, cho phép những nhà phát triển ứng dụng chạy trực tiếp ứng dụng của họ trên máy tính của họ. Mặc dù gần như đầy đủ những tính ...

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

[Estimation Part_2] Software development estimation methodologies (Các phương pháp estimation dự án phần mềm)

Trong phần trước tôi đã giới thiệu các điểm cần chú ý để có một bản Softare Estimation chính xác. Các bạn có thể tham khảo lại bài viết tại link dưới sau [Estimation Part_1] Key factor for success Estimation in Software Development. Bài viết này tôi sẽ tiếp tục giới thiệu tới các bạn về các phương ...

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

Sử dụng git trong ubuntu

I. GitHub là gì Github http://github.com , còn được gọi là social network dành cho developer đi vào hoạt động tháng 2 năm 2008. Là một dịch vụ sử dụng hệ thống quản lý phân tán GIT giúp người dùng lưu trữ source code cho các dự án. Tính năng của GIT có mọi tính năng của một source control ...

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

Tìm hiểu về Repository Pattern trong Laravel ( Part II )

Trong bài viết trước, chúng ta đã tìm hiểu khá chi tiết về khái niệm Dependency Injection, và đó sẽ là nền tảng để trong bài viết này, chúng ta sẽ đi sâu vào tìm hiểu cụ thể về khái niệm, cũng như ví dụ thực tế về Repository Design Pattern. Repository Design Pattern là gì Repository Design ...

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

Phát triển server-side bằng Swift, tại sao không ?

Nếu như nhiều anh em lập trình iOS thậm chí còn chưa thuần thục với ngôn ngữ Swift, thì thời gian vừa rồi Apple lại tiếp tục làm một điều gần như ngược hẳn với phong cách của hãng. Họ công bố mã nguồn của Swift trở thành mã nguồn mở, và cho phép các lập trình viên thoải mái sử dụng. Với động thái ...

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

Tìm hiểu về Unique Identifiers trên ios

Ngày 21 tháng 3, 2013 Apple thông báo rằng từ ngày 01 tháng 5, 2013 tất cả các ứng dụng truy cập UDID của thiết bị sẽ không được chấp thuận and các nhà phát triển nên chuyển sang sử dụng "Vendor or Advertising identifiers introduced" trên iOS 6. Như vậy uniqueIdentifier đã không còn được sử dụng ...

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

Laravel Beauty: Tìm hiểu về Facade

Laravel Beauty: Recipes & Best Practices Laravel Beauty: Tìm hiểu về Service Container Laravel Beauty: Tìm hiểu về Service Provider Laravel Beauty: Tìm hiểu về Facade Laravel Beauty: Tìm hiểu về Contract Thông qua các bài viết trước đây trong series Laravel Beauty , mình đã ...

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

Sử dụng Calabash cho Android

Testmunk Android cho phép bạn viết các trường hợp thử nghiệm chức năng tự động mà bạn có thể chạy trên các thiết bị Android khác nhau với các phiên bản hệ điều hành khác nhau. Mục tiêu của chúng tôi là bạn có thể giảm thời gian kiểm tra của bạn rất nhiều. Sau khi cài đặt, bạn sẽ có thể viết ...

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

10 Lỗi thường gặp khi sử dụng Bootstrap

Khi nhìn sơ qua, Bootstrap có vẻ đơn giản. Sự thật là, cũng không quá khó để bắt đầu dùng Bootstrap. Có tài liệu tốt ở đây, Bootstrap documentation, nhiều ví dụ về HTML, CSS, và JavaScript. Đa số những lỗi quan trọng đều được đề cập trong tài liệu trên, nhưng cũng có những lỗi khá nhạy cảm, hoặc ...

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

Common Mistakes in RoR

1. ActiveRecord transaction for saving multiple object Whenever saving multiple objects in a single request,the ActiveRecord::Base::transaction method is here to support atomicity. So, if any record has not saved the entire transaction, will get rolled back and nothing will be saved into ...

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

Fabric-Crashlytics: thống kê crash

Farbic: Một công cụ phân tích ứng dụng cho các nhà phát triển. Thông qua đó các nhà phát triển có thể xem xét những báo cáo trong ứng dụng, chạy phân tích ứng dụng và thu thập dữ liệu. Nếu bạn là một nhà phát triển mobile thì không thể bỏ qua công cụ này, nó giúp bạn theo dõi và thống kê các ...

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

Tìm hiểu thiết kế hướng đối tượng trong Rails Phần 2

Tìm hiểu thiết kế hướng đối tượng trong Ruby on Rails (Phần II) I. Giới thiệu Trong phần trước đã giới thiệu qua về thiết kế hướng đối tượng. Trong bài viết này, chúng ta sẽ tìm hiều một vài quy tắc trong thiết kế, đó là: Thiết kế class với chỉ mục đích duy nhất II. Nguyên tắc 1: Thiết kế ...

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

Cách viết JavaScript hiện đại: Phần 1: Tổng hợp các điểm mới có thể thực hành ngay

Nguồn: 旧石器時代のJavaScriptを書いてる各位に告ぐ、現代的なJavaScript超入門 Section1 ~すぐにでも現代っぽく出来るワンポイントまとめ~ Lời mở đầu Trên mạng ngập tràn đủ loại thông tin và các hướng dẫn về JavaScript cũng rất nhiều, trong đó bao gồm nhiều thông tin đã cũ. Bài viết này tổng hợp các khác biệt giữa các cách viết Javascript cũ và ...

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

Hướng dẫn kiểm thử tự động cho Android (continuous integration testing)

Nguồn : http://travis-ci.org http://developer.android.com/training/testing/start/index.html Nội dung Giới thiệu Android testing và Continuous Integration service (gọi tắt là CI) Viết testcase đơn giản để chạy thử Tích hợp với một CI service (cụ thể là Travis-CI) và chạy. 1. Giới ...

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

Những mục tiêu theo từng giai đoạn của một tester (Từ Beginer đến Professional )

Hiện tại, bạn đang là một tester?</br> Bạn đang có những trải nghiệm thú vị khi mới bước vào nghề? </br> Hoặc bạn đã gắn bó với nó đủ lâu và đang cảm nhận thấy sự nhàm chán, muốn thay đổi, tìm định hướng tiếp theo?</br> Bạn đang có muôn vàn câu hỏi đặt ra quanh nghề nghiệp của ...

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

Old School Clock with CSS3 and jQuery

CSS3 transform: rotate transform: rotate; là một tính năng mới của CSS3 cho phép bạn giải quyết các vấn đề tốt hơn. Transform cũng sẽ cho phép bạn mở rộng quy mô, nghiêng và dịch (move) các đối tượng trong trang web của bạn. Tất cả những điều này được làm hoạt hình hóa bởi tính năng của ...

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

Design Pattern - Factory Method

Để hiểu hơn về factory, hãy cùng bắt đầu với một vấn đề trong lập trình. Hãy tưởng tượng bạn được yêu cầu build một mô hình cuộc sống trong một cái ao, với những chú vịt. Bạn sẽ làm thế nào ? Đầu tiên hãy xây dựng class cho chú vịt Duck class Duck def initialize ( name ) @name ...

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

Cài đặt Odoo 8/9 trên Docker

Docker là một trong những giải pháp đóng gói và cài đặt có xu hướng phát triển mạnh hiện nay. Tôi đã có vài lần giới thiệu và seminar về khả năng của Docker. Sau tôi sẽ hướng dẫn cài đặt Odoo 8/9 trên Server Ubuntu chỉ bằng vài bước đơn giản. Tôi sử dụng Ubuntu 15.10, bạn có thể xem cách cài ...

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

TELECOM - Tìm hiểu công nghệ GPRS

Overview Nói đến GPRS chắc hẳn chúng ta không nhiều thì ít đều đã từng trải nghiệm rồi. Nhưng chúng ta đã hiểu được GPRS có thể làm được những gì? Chúng có lợi ích ra sao? GPRS - General Packet Radio Service là một dịch vụ dữ liệu di động truy cập đến GSM và IS-136 điện thoại người dùng di ...

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