Tìm hiểu về lý thuyết đồ thị với Ruby
Trong bài viết này, chúng ta sẽ cùng tìm hiểu về lý thuyết đồ thị với Ruby. Là một lập trình viên, chắc hẳn các bạn đã ít nhiều nghe nói về cây nhị phân. Nó có dạng như sau: Cây nhị phân thực tế chính là một phiên bản của đồ thị, qua đó các bạn có thể hình dung được mức độ phổ biến rộng rãi của ...
Làm thế nào để đếm quan hệ trong Eloquent một cách hiệu quả?
Bài toán được đặt ra như sau: Bạn muốn lấy ra danh sách các bài viết và số lượng comment của mỗi bài viết đó? Dĩ nhiên trong Model của bạn thiết kế là 1 bài Post sẽ có nhiều Comment // Post model public function comments() { return $this->hasMany('Comment'); } Bạn có thể giải quyết ...
[SLIDE] Docker in Real Life
Những năm gần đây docker đang trở thành một xu thế mới rất mạnh mẽ, được ứng dụng nhiều trên môi trường development cũng như production. Docker giúp developer xây dựng môi trường phát triển một ứng dụng nhanh nhất có thể, với tư tưởng: Write once, run anywhere Ở bài viết này, tôi xin ...
Dịch sách P1. Don’t make me think – Tiếng Việt
Mọi người thường hỏi tôi một câu rất “triết học”: Hey, điều gì là quan trọng nhất mà tôi nên làm để tạo ra một website dễ sử dụng nhất có thể. Câu trả lời rất đơn giản, không phải là “Mọi thứ chỉ đc quyết định sau 2-3 clicks”, “Nói ngôn ngữ của người dùng” hoặc ...
Effective JavaScript - Chapter 1 - Accustoming Yourself to JavaScript (Part I)
JavaScript được thiết kế để mang lại cảm giác quen thuộc. Với cú pháp (syntax) gợi nhớ về Java và hàm dựng vốn dĩ đã phổ biến ở rất nhiều ngôn ngữ scripting (function, array, dictionary và regular expression), JavaScript dường như là một cái gì đó dễ học với bất cứ ai đã có một chút kinh nghiệm về ...
Xây dựng API sử dụng Laravel và GraphQL
Chắc hẳn các bạn đã từng nghe về GraphQL GraphQL là một trong những đứa con của facebook được facebook tạo ra từ năm 2012 và được giới thiệu trước công chúng trong sự kiện React.js Conf 2015 nếu các bạn vẫn chưa biết hoặc muốn hiểu rõ hơn về GraphQL thì có thể tham khảo bài viết tổng quát ...
Kiến thức phỏng vấn iOS _ Phần 2: Grand Central Dispatch (GCD) và ứng dụng
Tiếp theo phần 1, hôm nay chúng ta sẽ đi qua phần 2 của series này là Grand Central Dispatch(GCD) và ứng dụng nó vào thực tiễn. 1. Grand Central Dispatch(GCD) là gì? Grand Central Dispatch(GCD) là 1 một low-level API được xây dựng bởi Apple, dùng để làm cái mà người ta thường gọi là đa nhiệm ...
Kotlin trong android: Tại sao lại là Kotlin?
Xin chào các ban ! Vào thời điểm hiện tại, cả cộng đồng lập trình Android đang nóng hơn bao giờ hết về một ngôn ngữ lập trình mới, đó là Kotlin. Vậy kotlin có những đặc điểm gì mà khiến các nhà phát triển quan tâm đến vậy? Chúng ta cùng tìm hiểu một chút về vẻ đẹp của "Người ấy " nhé! Kotlin là một ...
Tạo notification trong Rails với gem ActivityNotification và ActionCable.
Ngày hôm nay, mình xin giới thiệu 1 kĩ thuật có thể được sử dụng để xây dựng tính năng thông báo real-time trong Rails, sử dụng gem ActivityNotification và ActionCable của rails 5. Ta thêm gem vào Gemfile, chạy bundler và sau đó chạy các hàm generate để khởi tạo các file cần thiết cũng như model ...
Top 10 Things To Know in DevOps
DevOps is a Modern software engineering Culture and Practices to develop a software where the development and operation teams work hand in hand as one unit, unlike the traditional ways i.e. Agile Methodology where they worked individually to develop a software or provide required services. ...
[React] Cách gọi và làm việc trực tiếp với 1 component cụ thể (render).
Trong bài toán với mô hình như sau: Bình thường khi addition_category có sự thay muốn render lại categories_object thì sẽ phải render lại condition_form => không tốt, Phương pháp: component cha sẽ chứa tất cả các con trỏ của các object con. Khi muốn render lại chỉ cần tìm lần lượt theo các ...
5 method trong Ruby mà bạn nên dùng
Object#tap Vào một ngày đẹp trời, bạn implement code cho function login bằng Omniauth, class Use cần method như sau: def self . from_omniauth auth user = find_or_initialize_by email : auth . info . email user . name = auth . info . name user . provider = auth . provider user . ...
Core Data Asynchronous Fetching
Việc fetch dữ liệu không đồng bộ cho phép các developers thực hiiện fetch request mà không chặn Managed Object Context trong suốt quá trình fetch. Là một tính năng bổ sung, việc fetch data không đồng bộ có thể bị cancel bởi người dùng và cung cấp report về tiến độ thông qua NSProgress. Khi bạn thực ...
Sự kế thừa của scope trong AngularJS
Trong angularJS, một scope con luôn kế thừa mọi thứ từ scope cha(trường hợp ngoại lệ là khi sử dụng thuộc tính isolate trong directives để tạo ra một directive cô lập không kế thừa từ nguyên mẫu). Sự kế thừa trong scope rất đơn giản và thường chúng ta không cần biết rõ quá trình gì đang xảy ra cho ...
Test Strategy trong mô hình Agile
Trong mô hình Agile, phần mềm được phát triển qua từng sprint ngắn, mỗi sprint tập trung vào một vài yêu cầu hay còn được gọi là user story do đó một cách hiển nhiên là tài liệu không thực sự có vai trò quan trọng như các mô hình trước kia cả về số lượng và nội dung. Trước đây chúng ta cho rằng ...
SECURING AMAZON WEB SERVICES
Welcome to the complete guide to securing Amazon Web Services. As I was researching how to secure my AWS resources, I realized there isn't a one-stop guide for securing every piece of AWS. I've compiled from around the web (including great resources from Amazon, Evident.io, and others) to build ...
Fragment và cơ chế BackStack và sử dụng fragment hiệu quả nhất P1
Với việc càng ngày càng nhiều mẫu mã thiết bị Android ra đời thì người ta đã nghĩ ra những cách khác nhau để bố trí giao diện ứng dụng sao cho phù hợp để tận dụng diện tích màn hình. Một trong số đó là Fragment. Bài viết này chúng ta sẽ cùng tìm hiểu về nó. Fragment là gì? Vòng đời của ...
RFP with Rxjs - Hot vs Cold Observable
Chào các bạn, hôm nay chúng ta lại gặp lại nhau trong phần thứ 4 của series về lập trình FRP bằng Rxjs. Ở các bài lần trước thì tôi đã cung cấp cho các bạn những khái niệm căn bản nhất về FRP cũng như cách sử dụng Rxjs. Mặc dù vậy, thực tế việc ứng dụng FRP trong code dự án, hay cụ thể là Reactive ...
Create and run Rails app using Docker
Trong docker 1 image chỉ chứa 1 container. Đây là cách để thao tác đơn giản và dễ dàng lắp ghép với nhau hơn. Tuy nhiên, nếu yêu cầu 1 hệ thống gồm nhiều containers phức tạp và liên kết chặt chẽ với nhau vê thứ tự, config, … thì docker là không đủ. Và thế là chúng ta có thêm docker-compose. ...
Bước đầu tìm hiểu về Angular2
Angular 2 là một open source Javascript framework, được sử dụng để đơn giản hóa quá trình binding Javascript object và các thành phần của HTML. Sau đây là một "Customer" function đơn giản với thuộc tính "CustomerName". Chúng ta sẽ tạo ra một object "Cust" của class "Customer" function ...