Trong dự án asp net core, khi các bạn sử dụng Generic Repository Pattern, làm cách nào để register generic interface và implementation generic interface bằng cách sử dụng ASP.NET Core DI container? Ok, với một interface đơn giản và implementation của nó, ta sử dụng như sau serviceCollection.AddSingleton<IService, MyService>(); Vậy còn kiểu Generic thì sao? Chúng ta […]
Author: batagic
Cấu hình Virtual Host trong XAMPP
Virtual Host (Vhost) là một cấu hình trong Apache để cho phép nhiều domain cùng chạy trên một máy chủ. Để dễ hình dung hơn khi các bạn chạy webapps ở môi trường phát triển sẽ có url localhost:1234. Giờ ta có thể làm url trở nên thân thiện hơn bằng các chuyển nó thành […]
Tool get truyện cho kindle
Rảnh rỗi ngồi làm cái tool cho anh em cùng đam mê kéo sách về đọc chơi (thực ra là phục vụ con kindle của mình là chính). Sẽ update dần các web nhiều truyện cho ae. Các chức năng chính: – Download truyện xuất ra file: docx Sites hỗ trợ: – Bạch ngọc sách […]
Technical debt hay câu chuyện về nợ kĩ thuật
Bài viết này chúng ta sẽ làm rõ các vấn đề 1. Technical debt là gì? 2. Khi nào gặp? 3. Phòng tránh và hạn chế như nào? 4. Làm sao để thay đổi? Technical debt là gì? – Khi nào gặp? Theo dịch thuật, technical debt có nghĩa là nợ kĩ thuật. Diễn giải […]
Cài đặt và cấu hình Apache, MySQL trên macos
OSX 10.10 Yosemite được cài đặt sẵn Apache 2.4. Để khởi động web server, các bạn chỉ việc mở Terminal (/Applications/Utilities/Terminal) và gõ: sudo apachectl start Tương tự khi muốn restart và stop Apache sudo apachectl stop sudo apachectl restart Sau khi start Apache, bạn có thể mở trình duyệt lên và gõ thử localhost sẽ xuất hiện […]
Unit Of Work và Repository Pattern – Song kiếm hợp bích
Ở bài trước mình đã giới thiệu với các bạn về UnitOfWork Design Pattern. Nhắc lại vể lợi ích của UOW Quản lý danh sách các đối tượng logic nghiệp vụ được thay đổi trong một transaction. Khi một transaction được complete, tất cả thay đổi sẽ được gửi tới database như một big unit of work Bài […]
Laravel Request Lifecycle
Introduction Khi bạn sử dụng tools trong “thế giới thực”, bạn sẽ cảm thấy tự tin hơn nếu bạn hiểu cách mà tool đó hoạt động. Trong các ứng dụng phần mềm cũng vậy, khi bạn hiểu về chắc chức năng phần mềm của mình, bạn sẽ cảm thấy thoải mái và tự tin khi […]
Laravel Request Lifecycle
Introduction Khi bạn sử dụng tools trong “thế giới thực”, bạn sẽ cảm thấy tự tin hơn nếu bạn hiểu cách mà tool đó hoạt động. Trong các ứng dụng phần mềm cũng vậy, khi bạn hiểu về chắc chức năng phần mềm của mình, bạn sẽ cảm thấy thoải mái và tự tin khi […]
Route::Basic
Basic Routing Các routes cơ bản của Laravel chấp nhận một URI và một Closure, nó cung cấp một phương thức rất đơn giản và dễ hiểu để định nghĩa routes như sau: Route::get(‘foo’, function () { return ‘Hello World’; }); The Default Route Files Tất cả các routes của Laravel được định nghĩa trong file route được […]
Route::Basic 2
Route Parameters Required Parameters Đôi khi bạn cần control được các thành phần của URI trong route của bạn. Ví dụ bạn có thể cần truy cập dữ liệu user’s ID từ URL. Bạn có thể định nghĩa một route với tham số như sau: Route::get(‘user/{id}’, function ($id) { return ‘User ‘.$id; }); Bạn có thể định nghĩa nhiều tham số […]