[Góc chia sẻ - P2] Tổng hợp những ứng dụng Android đi kèm mã nguồn để tham khảo nâng cao kỹ năng code!

Xin chào tất cả các bạn! sau phần 1, mình đã nhận được một lượng like và clip bài viết khủng, và bên cạnh đó, có nhiều bạn cũng mong muốn mình sưu tầm thêm. Và hôm nay, mình tiếp tục chia sẻ phần 2 của bộ sưu tập, phần này sẽ bỏ qua các project có cấp độ Beginner. Chúng ta sẽ bắt đầu với project ...

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

Audit database P1

Audit là hành động theo dõi, nó đóng vai trò như một chiếc camera ghi lại những thao tác, hành động tác động trực tiếp lên dữ liệu. Đây không phải là cơ chế phân quyền người dùng, điều khiển truy cập... nó chỉ tương tự như việc ghi lại log, giúp người quản trị cơ sở dữ liệu theo dõi, kiểm soát ...

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

Single Table Inheritance (STI) trong Rails

1. Single Table Inheritance là gì ? STI về cơ bản là ý tưởng sử dụng một bảng duy nhất để phản ánh cho nhiều model được kế thừa từ một model cha. Nó là một thành phần của ActiveRecord::Base. Trong cơ sở dữ liệu, model con dược xác định bởi trường type. Trong Rails bạn chỉ việc thêm trường type ...

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

Security với single-page web app.

Ngày nay, xu thế xây dựng website theo dạng kiểu single-page web app ngày càng phổ biến. Đi kèm với nó là việc xây dựng một cơ chế bảo vệ thích hợp cho ứng dụng, ít nhất là để có khả năng tránh được các loại hình tấn công phổ biến hiên nay. Bài viết sẽ được dành để liệt kê một vài phương thức tấn ...

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

ReactJs với Rails

ReactJs là gì? Một số cách tích hợp ReactJs vào Rails Các bước xây dựng ứng dựng web đơn giản ReactJs với Rails ReactJs là gì ? Reactjs là một thư viện JavaScript tạo ra bởi Facebook Khái niện trên trang web chính thức 'A JavaScript library for building user interface' ,là một thư viện ...

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

Tổng hợp về chuẩn hóa cơ sở dữ liệu

Mục tiêu của chuẩn hóa Loại bỏ dư thừa dữ liệu Loại bỏ update anomaly Loại bỏ insertion anomaly Loại bỏ deletion anomaly Các dạng chuẩn hóa dữ liệu Chuẩn hoá là quá trình tách bảng (phân rã) thành các bảng nhỏ hơn dựa vào các phụ thuộc hàm. Các dạng chuẩn là các chỉ dẫn để thiết kế các bảng ...

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

Đôi điều về lodash

Lodash là một thư viện mạnh của Javascript, nó cung cấp nhiều tiện ích cho developer như cải thiện hiệu suất, đơn giản code, làm code trông dễ nhìn hơn. Lodash có tiền thân chính là underscore tuy nhiên hiệu năng đã được cải thiện hơn. Có thể nói răng lodash chính là LINQ trong Javascipt. Lodash ...

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

Smart KeyPaths in Swift 4

Swift đã chính thức được ra mắt cùng với khá nhiều tính năng mới. Có 1 phần chức năng mới mà mọi người ít để ý đến: KeyPaths. Nó có khá nhiều điều thú vị để khám phá mà trước đó tôi không nhận ra. KeyPath là 1 cách an toàn riêng để truy vấn đế 1 thuộc tính và lấy kết quả. Bạn hoàn toàn có thể làm ...

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

[JAVa học code IOS]- Demo kết hợp textField-Laybel-Button

1 . Thiết kế giao diện đơn giản. Gồm button, text field, laybel 2 .Ánh xạ. Tiến hành ánh xạ các button, text field, label. @IBOutlet weak var nameTxt: UITextField! @IBOutlet weak var mailTxt: UITextField! @IBOutlet weak var submitBtn: UIButton! @IBOutlet weak var ...

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

VPN site to site with OpenVPN in Mikrotik

Ngày nay, nhu cầu có 1 modem đáp ứng được về số lượng user lớn, giá thành rẻ là luôn luôn cần thiết đối với mỗi công ty. Chính vì thế nên Mirotik nổi lên như ứng viên số một đáp ứng được 2 tiêu chí nói trên. Nhưng để control được mikrotik thì các bạn phải bỏ thời gian nghiên cứu rất nhiều chứ không ...

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

[VueJS] Giao tiếp giữa các component

Component là một trong những tính năng quan trọng nhất trong Vue mà mình cần phải biết. Nó giúp cho việc kế thừa các thành phần HTML cơ bản, dễ dàng đóng gói và tái sử dụng code. Ở mức cao hơn thì component như là custom elements mà trình biên dịch của Vue sẽ gắn các xử lý vào đó. Trong một ...

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

7 methods của Ruby ít được biết đến nhưng rất hữu ích

Ruby vốn được biết đến là một ngôn ngữ lập trình với cú pháp rất đơn giản và dễ hiểu. Điều này giúp code của các lập trình viên trở nên tốt hơn và "clear" hơn rất nhiều so với các ngôn ngữ lập trình khác. Tuy nhiên liệu chúng ta đã khám phá hết được những thứ tuyệt vời mà Ruby mang lại? Trong bài ...

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

Cách tạo Database Searches với Full-Text Search trong MYSQL

Giới thiệu Full-text search, hoặc FTS, là một kỹ thuật được sử dụng bởi các công cụ tìm kiếm để tìm kết quả trong một cơ sở dữ liệu. Bạn có thể sử dụng nó để kết nối các kết quả tìm kiếm trên các trang web như cửa hàng, công cụ tìm kiếm, báo chí và nhiều hơn nữa. Cụ thể hơn, FTS lấy ra các ...

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

Làm hoặc không làm. Đừng "thử" - Object#try

I.Mở đầu Sử dụng method Object#try khá phổ biến khi ta code Rails app. Nó giúp cover được cái thằng nil value, hoặc cung cấp 1 interface động cho các Object khác nhau - gọi ra method mà nó không nhất thiết phải được implement. Túm lại là nó giúp ta tránh được cái lỗi NoMethodError ...

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

Nên Học React.js hay AngularJS

Đây là một câu hỏi tương tự như dạng các câu hỏi cuộc chiến lựa chọn ngôn ngữ hay language war và với dạng câu hỏi này thì thường sẽ không chỉ có một câu trả lời duy nhất mà còn phụ thuộc vào ý kiến cá nhân từng người. Trong bài viết ngắn gọn này mình sẽ đưa ra một số thống kê trên internet gần đây ...

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

Laravel 5.4 Helper P.3 (end) - Miscellaneous

P.3 Các hàm khác abort() Hàm abort ném về một HTTP exception nó sẽ được render bởi exception handler: abort(401); Ngoài ra nó còn cho phép đoạn text khi có response texception: abort(401, 'Unauthorized.'); abort_if() Hàm abort_if trả về một HTTP exception nếu biểu thức có giá trị ...

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

Những mạng xã hội mà bạn nên tham gia

Ngày nay, nhu cầu kết nối và chia sẻ thông tin giữa con người với nhau là rất lớn, đó là một trong những lý do vì sao Facebook đã trở thành hệ thống mạng xã hội lớn nhất hành tinh, với hàng tỉ người sử dụng thường xuyên mỗi ngày. Thế nhưng, không phải ai cũng biết rằng bên cạnh Facebook còn có ...

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

4 bước để trở thành lập trình viên iOs

Ngày nay, nguồn tài liệu học lập trình di động tràn ngập trên mạng, do vậy mà các học viên dễ bị “hụt chân” vào trong biển thông tin này, nhất là đối với học viên tìm hiểu học lập trình iOS. Vậy làm thế nào để trở thành lập trình viên iOS giỏi, bạn phải bắt đầu từ đâu và lưu ý những ...

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

UX Case study -Câu chuyện xây dựng ngôn ngữ design của Airbnb

Lời bình: Ngôn ngữ design (Visual Design Language) đặc biệt có ý nghĩa với các đơn vị làm sản phẩm, có thể kể đến như sau: Nó là một ngôn ngữ, mà ngôn ngữ là 1 thứ để giao tiếp. Nó sẽ giúp giao tiếp giữa team UX, marketing, boss, tech.. Nó chấm dứt những định kiến cá nhân và ý thích cô đơn về ...

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

Ruby Hash[key] So sánh :symbol và “string”

Gần đây có một cuộc thảo luận trên kênh Trailblazer Gitter về Hashes như một params, làm thế nào để gán chúng, và như thường lệ một cuộc tranh luận bùng nổ và nó đã tạo ra một cuộc thi đo lường: cách nào tốt hơn và nhanh hơn. Đối với những người thiếu kiên nhẫn: về hash nhỏ sẽ không có gì quan ...

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