Tạo Bookshelf app với Lotus Framework (Phần 3)

Tiếp tục phần 2 Bây giờ chúng ta đi vào giai đoạn Tạo database cho app Cũng như các framework khác việc điều khiển và xử lý các vấn đề liên quan đến database được thông qua Model. Lotus Framework cung cấp Lotus model để giúp thao tác với database. Lotus Model có 2 khái niệm đó là entity ...

Tác giả: Tạ Quốc Bảo viết 16:01 ngày 07/09/2018

Swift_Tetris game

Giới thiêu Chắc hẳn tự viết ra 1 game là ước muốn của mọi lập trình viên từ khi mới biết đến lập trình.Trong bài giưới thiệu này, chúng ta sẽ cùng nhau thử viết 1 game nhỏ và làm quen với 1 ngôn ngữ lập trình mới của Apple - Swift. Trong tương lai, apple dự định sẽ dùng swift để thay thế Obj-C, ...

Tác giả: Trịnh Tiến Mạnh viết 16:01 ngày 07/09/2018

TÌM HIỂU VỀ KIỂM THỬ TỰ ĐỘNG( DỊCH)

Tìm hiểu về Kiểm thử tự động Mục Lục: 1.Kiểm thử tự động là gi? 2.Những lợi ích và bất lợi của việc kiểm thử tự động là gi? 3.Các kiểm nghiệm phù hợp và không phù hợp cho tự động hóa? 1.Kiểm thử tự động đây là gi? Là quá trình kiểm tra một hệ thống nào đó một cách tự động với ...

Tác giả: Tạ Quốc Bảo viết 16:00 ngày 07/09/2018

Tạo Bookshelf app với Lotus Framework (Phần 2)

Phần 1 mình đã giới thiệu sơ lược về cách khởi động Bookshelf app với Lotus. Bài lần này sẽ tiếp tục với Layout cho Bookshelf nha Dựa vào layout bên trên, có thể thấy là có 8 quyển sách được tạo ra, theo nguyên tắc cấu trúc HTML của 8 quyển sách là như nhau. Nó chỉ khác về nội dung. vì vậy ...

Tác giả: Vũ Văn Thanh viết 16:00 ngày 07/09/2018

Funny things about Rails scope and class method

When I first read about scope : All scope methods will return an ActiveRecord::Relation object which will allow for further methods (such as other scopes) to be called on it. That's means : scope is chainable (as far as i understood it) okay, then class method must be different ...

Tác giả: Vũ Văn Thanh viết 16:00 ngày 07/09/2018

Cách tạo 1 database với Lotus Framework v0.5.0

Lotus đã update với vesion 0.5.0 , nhiều tính năng tiện ích được cung cấp, trong đó Lotus đã cập nhật về migration để tạo table rất nhanh và tiện lợi nhé Ở bài này mình xin đi vào việc sử dụng sqlite để tạo database, áp dụng lotus-model để tạo entity, sử dụng repository để giao tiếp với ...

Tác giả: Vũ Văn Thanh viết 16:00 ngày 07/09/2018

Mẹo truyền cờ vào bundler thông qua bundle config

Từ khi nâng cấp lên OSX 10.11, mình khá là bực mình khi chạy bundle install thì gặp phải lỗi sau: In file included from binder.cpp:20: ./project.h:116:10: fatal error: 'openssl/ssl.h' file not found #include <openssl/ssl.h> ^ 1 error generated. make: *** [binder.o] Error 1 Lý ...

Tác giả: Bùi Văn Nam viết 15:59 ngày 07/09/2018

Tìm hiểu về JSX

1. Mở đầu ReactJS là một thư viện JavaScript được Facebook phát triển để xây dựng giao diện người dùng. Mặc dù mới chỉ xuất hiện nhưng ReactJS đã nhanh chóng thu hút được sự quan tâm đặc biệt và gây được tiếng vang lớn trong cộng đồng phát triển web. Nhắc đến ReactJS, sẽ thật thiếu sót khi ...

Tác giả: Tạ Quốc Bảo viết 15:59 ngày 07/09/2018

Tự động chụp lại screenshot khi scenario bị lỗi trên CircleCI

Hiện tại công ty của mình đang sử dụng Cucumber và Selenium để chạy các acceptance test. Mỗi khi có scenario nào fail trên CircleCI, thì bên mình sẽ chạy lại cái scenario đó dưới máy local để kiểm tra lại. Khoảng một tháng gần đây, sau khi áp dụng UI design mới thì gặp một vấn đề hết sức kì cục là: ...

Tác giả: Trịnh Tiến Mạnh viết 15:59 ngày 07/09/2018

Android từ cơ bản cho đến nâng cao - Android Gradle (P2 - Groovy Fundamentals)

Phần này sẽ đi vào tìm hiểu cơ bản về Groovy nhé. Bạn nào chưa đọc phần 1 thì có thể đọc tại đây Thực ra chúng ta không cần cài đặt Groovy vì Gradle đã cung cấp cho ta Groovy distribution luôn rồi và ta không cần phải cài đặtGroovy. Việc ta cần làm chỉ cần đặt Groovy code vào trong file build ...

Tác giả: Trịnh Tiến Mạnh viết 15:58 ngày 07/09/2018

Upload a File using Retrofit

Có rất nhiều docs hướng dẫn nhưng mình thấy upload như này hiệu quả nhất nên note lại Mình sẽ đi vào ví dụ luôn cho nhanh public interface ApiInterface { @Multipart @POST ("/api/Accounts/editaccount") Call<User> editUser (@Header("Authorization") String ...

Tác giả: Hoàng Hải Đăng viết 15:58 ngày 07/09/2018

String.xml trong Android

Những điều cần nhớ Hades 22-04-2017 Đừng dùng lại Đừng sử dụng lại strings cho nhiều màn hình khác nhau . 1 . Tưởng tượng rằng bạn có một hộp thoại loading trên 2 màn hình Sign in và Sign up. Vì cả 2 đều có chung một hộp thoại nên bạn quyết định sử dụng chung string - R.string.loading ...

Tác giả: Vũ Văn Thanh viết 15:58 ngày 07/09/2018

Gom Marker trong Android với Google Maps Android API – Google Maps Android Marker Clustering Utility

Trong một số ứng dụng sử dụng Google Maps Android API bạn có thể thấy các marker rải trên bản đồ, nhưng với số lượng lớn marker sẽ làm cho trải nghiệp người dùng không được tốt nhất. Vì thế bạn nên sử dụng thêm một tiện ích của Google Maps Android API để gom các marker lại, khi thu nhỏ bản đồ ...

Tác giả: Tạ Quốc Bảo viết 15:57 ngày 07/09/2018

DÙNG LET HAY KHÔNG?

Mở đầu Khi chúng ta (lập trình viên Ruby on Rails) viết test, cho dù sử dụng rspec hay minitest, đều sẽ dùng let rất nhiều. Cú pháp let giúp chúng ta viết code dễ dàng và tiện lợi hơn rất nhiều: def activable? inactive? && !blacklist? end describe '#activable?' do let(:inactive?) ...

Tác giả: Trần Trung Dũng viết 15:57 ngày 07/09/2018

Chia sẻ lên mạng xã hội Twitter và Facebook trong ứng dụng iOS

Từ phiên bản iOS 6, Apple đã giới thiệu một framework mới gọi là “Social Framework”. “Social Framework” giúp bạn có thể dễ dàng tích hợp các tính năng của các trang mạng xã hội vào ứng dụng của mình. Hiện nay, nó hỗ trợ Facebook, Twitter và Sina Weibo. Các framework cung cấp ...

Tác giả: Trịnh Tiến Mạnh viết 15:57 ngày 07/09/2018

Swift Automaton và ứng dụng trong chức năng đăng ký cho iOS app

Hi mọi người, lâu lâu chưa viết bài được nên cảm thấy bứt rứt kinh khủng Năm nay mình mới join Mercari, #1 unicorn startup của Japan nên mất tương đối thời gian làm quen với môi trường và cả cuộc sống mới. Tháng 10 vừa rồi cũng là đoạn khổ chiến để up sourcebase lên Swift 4 , RxSwift 4 và tối ...

Tác giả: Vũ Văn Thanh viết 15:56 ngày 07/09/2018

THREADING IN RAILS

Bài viết này được thực hiện từ năm 2012 với Ruby 1.9 và AR 3.x. Trên Ruby 2.x trở đi, Threadsafe là mặc định nên sẽ có một vài thông tin đã trở nên không cần thiết. Multi-threaded Rails Thread (1) hiểu đơn giản là 1 tiến trình hoàn thiện rất nhỏ được CPU thực hiện trong 1 khoảng thời gian. ...

Tác giả: Tạ Quốc Bảo viết 15:56 ngày 07/09/2018

[Android] Hiểu sâu hơn về CustomView và Hướng dẫn xây dựng thư viện UI IndicatorView

Các ứng dụng sử dụng Indicator Library: Github Hi anh em, tình hình là đợt vừa rồi mình có viết bài về Facebook Reaction được mọi người ủng hộ nhiệt tình nên quyết định viết thêm 2 hoặc 3 bài nữa về vấn đề Custom View cho anh em trơn tru hơn một chút về vấn đề này và có thể áp dụng nó ...

Tác giả: Trần Trung Dũng viết 15:56 ngày 07/09/2018

RUSSIAN DOLL CACHING

Bài viết được thực hiện tháng 01/2013 với AR 3.2. Bắt đầu từ AR 4.x trở đi, Russian Doll Caching được builtin sẵn trong Rails, và ta có thể sử dụng kỹ thuật này mà không cần phải cài thêm gem Caching là một trong những kỹ thuật được sử dụng nhiều trong các dự án Công Nghệ Thông Tin (CNTT) nhằm ...

Tác giả: Trần Trung Dũng viết 15:55 ngày 07/09/2018

App crash trên iOS 10 vì lỗi privacy description

Nếu app của bạn có sử dụng các thông tin liên quan đến user như là Camera hay Photo Library,... thì khi user sử dụng trên iOS 10, khả năng là app sẽ bị crash. Trong crash log sẽ có đoạn nội dung kiểu như này: Termination Reason: TCC, This app has crashed because it attempted to access ...

Tác giả: Bùi Văn Nam viết 15:55 ngày 07/09/2018