Skip to content
Showing 101-150 of 228 items.
@renovate
Admin 18/03/2021 10:20
Swift, nâng cao kĩ thuật với 8 tips

Link bài viết gốc: https://medium.com/codex/swift-upgrade-your-skills-with-these-8-tips-da612111668 1. Cách viết lệch If...else ngắn hơn với Ternary Operators Ternary Operators cho phép chúng ta viết if...else ngắn hơn. Cấu trúc là: condition ? true : false. Hãy cùng xem ví dụ dưới đây: let money = 100 if money > 0 { print("Some money") } else { print("No money") } Phần if...else có thể viết lại với 1 ternary operator với chỉ 1...

Happy New Year Swift Tips
@renovate
Admin 18/03/2021 12:50
Điểm mặt 10 project đang làm mưa làm gió trên Github trong lĩnh vực phát triển web

Nguồn: https://iainfreestone.hashnode.dev/10-trending-projects-on-github-for-web-developers-12th-march-2021 Sweet Alert Một công cụ giúp bạn tạo ra các thông báo (alert) đẹp hơn so với alert mặc định của JavaScript. URL https://github.com/t4t5/sweetalert Anime.js Đây là một library chứa các hiệu ứng JavaScript rất nhẹ nhưng vẫn có một API đơn giản mà mạnh mẽ. Hoạt động hiệu quả với thuộc tính CSS, SVG, thuộc tính...

Happy New Year GitHub add css - js tool for web developers
@renovate
Admin 18/03/2021 16:00
Lazy loading Image - P1

Hello mn. Trong bài viết này mình sẽ chia sẽ 1 cách tối ưu peformance cho hình ảnh. Ở phần 1 này, mình sẽ xây dựng một component React component Image bằng custom hook, hiển thị một hình ảnh có độ phân giải thấp thay thế cho hình ảnh có độ phân giải cao khi hình ảnh đang dowload về client. Trong phần 2 chúng ta sẽ trì hoãn download hình ảnh cho đến khi mà hình ảnh đó được hiển thị trên màn...

Happy New Year auto-create-image
@renovate
Admin 18/03/2021 18:10
Keys trong Flutter

KHi nào thì tôi nên sử dụng Key Để hiểu về key mình có ví dụ sau. Cho 2 stateless Titles, mỗi Titles có một màu được được tạo random. Trong Row và StatefulWidget sẽ gọi Positionedkey để lưu vị trí của title. Tôi thực hiện ấn nút FloatingActionButton sẽ thực hiện swap vị trí của chúng trong list. Code : class PositionedKey extends StatefulWidget { @override State<StatefulWidget> createState() =>...

Happy New Year Flutter
@renovate
Admin 18/03/2021 18:40
Animation trong SwiftUI

1. Basic animation SwiftUI tích hợp cho các animation với công cụ animation() có sẵn. Để sử dụng, hãy đặt nó sau bất kỳ công cụ sửa đổi nào khác cho chế độ xem của bạn và đưa vào loại animation mà bạn muốn. Ví dụ: Tạo nút bấm làm scale tỉ lệ của nó lên 1 khi bấm: struct ContentView: View { @State private var scale: CGFloat = 1 var body: some View { Button("Press here") { scale +=...

Happy New Year Animation SwiftUI
@renovate
Admin 18/03/2021 21:40
Những lệnh command shell linux cơ bản có thể bạn chưa biết - Phần 2

locate Khi bạn muốn tìm một file được lưu trữ trên máy tính, nhưng không nhớ rõ là được lưu ở đâu, chỉ nhớ mang máng tên file. Thì không cần lo lắng mất thời gian đi tìm, câu lệnh locate sẽ giúp bạn tìm những chỗ có file giống với tên bạn muốn tìm locate ten_can_tim Sử dụng thêm option -i thì locate sẽ tìm mà không phân biệt chữ hoa chữ thường locate -i ten_muon_tim Trong trường hơp bạn...

Linux Happy New Year Shell
@renovate
Admin 18/03/2021 21:50
Python: Từng bước tiếp cận Decorator

Khi làm việc với Python, chúng ta thường gặp rất nhiều function @ trước khi định nghĩa một hàm hay 1 class. Đây là 1 feature đặc biệt của Python. Nên mình và các bạn cùng nhau hiểu để rõ hơn về nó nha Nhưng trước tiên, chúng ta hãy cùng quay lại và bắt đầu từ những Function của Python. 1. Function Một function trong Python được định nghĩa như sau: def function_name(name): return 'My name is %s' %...

Happy New Year Python Decorator Pattern
@renovate
Admin 18/03/2021 22:20
What Is Docker & Docker Container ? A Deep Dive Into Docker (3/9)

1. Docker & Docker Container là gì? Docker là gì và tại sao cần có Docker? - Docker là một nền tảng container hóa gói ứng dụng của bạn và tất cả các phần phụ thuộc của nó lại với nhau dưới dạng một docker container để đảm bảo rằng ứng dụng của bạn hoạt động liền mạch trong mọi môi trường. Container là gì? - Docker Container là một đơn vị tiêu chuẩn hóa có thể được tạo nhanh chóng...

Happy New Year Docker
@renovate
Admin 19/03/2021 08:00
Amazon EBS vs EFS vs S3: Chọn kiểu lưu trữ AWS tốt nhất cho nghiệp vụ của bạn

Chiến lược lưu trữ bạn chọn đóng một vai trò quan trọng trong hiệu suất bạn nhận được cũng như chi phí bạn sẽ bỏ ra. Để đạt được hiệu quả cao nhất, bạn phải phù hợp với nhu cầu điện toán, ứng dụng và xử lý của hệ thống với công nghệ lưu trữ thích hợp. Nhưng lựa chọn nào phù hợp với bạn? Để trả lời câu hỏi này, chúng ta sẽ khám phá sự khác biệt giữa Amazon Elastic...

Happy New Year Amazon S3 Amazon Web Services (AWS)
@renovate
Admin 19/03/2021 08:50
Vì sao phần mềm có Bug ?

Hầu như tất cả các Software Tester đều có một câu hỏi trong đầu rằng “Tại sao phần mềm lại có Bug ? ” và " Những bug này xảy ra như thế nào?” Câu hỏi này sẽ được giải đáp trong bài viết dưới đây. Trong bài viết này, chúng ta sẽ biết 20 lý do hàng đầu tại sao Bug xảy ra trong phần mềm. Thế nào là 1 Bug trong phần mềm ? Bug phần mềm là một lỗi hoặc lỗ hổng trong phần mềm...

Happy New Year DocumentQA
@renovate
Admin 19/03/2021 08:50
[Series Pandas DataFrame] Phân tích dữ liệu cùng Pandas (Phần 4)

Thêm và xóa dữ liệu Pandas cung cấp một số thuật toán thêm và xóa dữ liệu ở row hoặc column. Dựa trên nhu cầu của bạn và có thể chọn ra những cách thức phù hợp để áp dụng. Thêm và xóa dữ liệu của row (dòng) Nếu bạn muốn thêm một người mới vào danh sách dữ liệu của mình. Bạn có thể bắt đầu bằng cách tạo một Series object mới đại diện cho người mới này: >>> data =...

Happy New Year Python Pandas DataFrame
@renovate
Admin 19/03/2021 09:10
Tìm hiểu về Ethereum Virtual Machine (EVM)

Hẳn những ai đã từng tìm hiểu Ethereum chắc sẽ chẳng xa lạ gì với khái niệm Ethereum Virtual Machine (EVM). Nhưng để thực hiểu sự cơ chế nó hoạt động như thế nào thì không phải chuyện đơn giản, mình trước giờ thấy nó khá phức tạp và lằng nhằng nên cũng chưa bao giờ tìm hiểu sâu. Trong bài viết ngày hôm nay, mình sẽ cùng các bạn đi kỹ hơn về cấu trúc, cách hoạt động của EVM 1. EVM...

Happy New Year Ethereum
@renovate
Admin 19/03/2021 10:50
Upload files lên Firebase Cloud Storage với Vue.js và Node.js

File uploads là một phần quan trọng trong ứng dụng web ngày này. Trong bài viết này, chúng ta sẽ cùng nhau xây dựng một function upload file nho nhỏ và đẩy lên Firebase Cloud Storage với sự kết hợp giữa Vue và Node.js. Set up Firebase project Đầu tiên, chúng ta cần có một tài khoản firebase (chúng ta có thể đăng ký tại đây). Truy cập https://console.firebase.google.com/ và tạo một project mới. Chọn Storage và lựa...

Happy New Year Node.js
@renovate
Admin 19/03/2021 10:50
Tích hợp Cloud Services cho Image Upload trong Node.js và React Web app

Với những kiểu lưu trữ thông tin hình ảnh, video truyền thống hiện nay là lưu trực tiếp trên server, chúng ta có thể gặp một số vấn đề như server quá tải, tràn bộ nhớ hay mất toàn bộ tài nguyên do hỏng hóc server gây ra nếu không được backup thường xuyên. Trên thực tế hiện nay chắc hẳn chúng ta cũng được nghe nói nhiều về dịch vụ điện toán đám mây (Cloud Service) phổ biến như Amazon...

Happy New Year
@renovate
Admin 19/03/2021 11:20
What’s new in Swift 5.3?

Với các bạn làm iOS thì chắc đã quá quen thuộc với việc update các phiên bản mới nhất của iOS, swift, xcode. Trong bài viết này chúng ta sẽ cùng tìm hiểu về những điểm mới trên Swift 5.3 - verison mới nhất của ngôn ngữ Swift. Nào chúng ta cùng tìm hiểu nhé! Multi-pattern catch clauses Ở version swift này chúng ta đã có thể thực hiện bắt được nhiều trường hợp lỗi bên trong quá trình xử lý lỗi...

Happy New Year AndroidiOS
@renovate
Admin 19/03/2021 11:50
GetX - Flutter - Using GetService (Part 5)

Giới thiệu Ở phần trước mình giới thiệu về GetConnect, và hướng dẫn cách sử dụng GetConnect để handle các api request. Ở phần này mình sẽ giới thiệu component mới trong Getx là GetService Để có thể hiểu nội dung của bài viết này bắt buộc các bạn phả đọc thêm về GetX ở các bài dưới đây: -Get - Make Flutter easy (Part 1) Get - Make Flutter easy (Part 2) GetX - Flutter - Multiple language support with...

Happy New Year Flutter flutterroute getservice getx
@renovate
Admin 19/03/2021 12:20
Bảo mật mail SMTP logs trong rails app

Bài viết được dịch từ bài Secure your SMTP logs in Rails application của tác giả Kavita Jadhav. Tất cả chúng ta đều biết lợi ích của việc ghi log. Nó cho phép các nhà phát triển nhanh chóng khắc phục sự cố ngay cả trước khi tái hiện nó. Vấn đề Trong các hệ thống phân tán, log được lưu trữ trong bộ nhớ dùng chung hoặc đôi khi trên chính các máy chủ phân tán. Sau đó, các bản ghi này...

Happy New Year
@renovate
Admin 19/03/2021 14:10
Viết UnitTest cho ứng dụng JS với mocha, chai, supertest

Trong bài viết này, chúng ta sẽ cùng khám phá cách để test ứng dụng ExpressJS + Sequelize không gây rủi ro với database của bạn, đảm bảo bạn có đủ dữ liệu để test và không chỉ bao gồm các cases thông thường mà còn các cases khác nữa. Hãy cùng bắt tay vào xây dựng test cho ứng dụng của mình nào. ExpressJS + Sequelize Đầu tiền, chúng ta sẽ bắt đầu tạo một dự án Sequelize mới. Trong ví dụ này,...

Happy New Year UnitTest Mochajs Supertest
@renovate
Admin 19/03/2021 14:20
12 Git Repository tiêu biểu dành cho các kỹ sư Web chân ướt chân ráo vào ngành muốn học hỏi

Source: Webエンジニアが勉強できるGit Repository 10選 Đây là bài tuyển chọn 12 Git Repository các kỹ sư Web có thể học hỏi được từ đó, của một kỹ sư Web tên là hedrall trên Qiita. Cái hồi tác giả quyết chí dấn thân vào thế giới programming bao la và rộng nhớn, thì cậu ta biết được rằng trên thế giới có rất nhiều Repository dành cho việc học, và hơn thế nữa, những Repository đó còn nhận...

Happy New Year GitRepository
@renovate
Admin 19/03/2021 14:30
Những tính năng của CSS mới nhất năm 2021

Một trang web sẽ không thể thực hiện được nếu không có CSS. Ngôn ngữ chịu trách nhiệm về mặt tiền của trang web, có bố cục đẹp mắt và mọi yếu tố đều ở đúng vị trí của nó. Tuy nhiên, bạn có biết rằng các tính năng CSS mới luôn được cập nhật không? Trong những năm qua, CSS đã vượt xa background colors, borders, text styling, margins, và the box model . CSS hiện đại có khả năng cung cấp...

Happy New Year CSS3 CSS News
@renovate
Admin 19/03/2021 14:50
Tạo sao nên dùng Axios hơn Fetch

Khi làm Frontend, chúng ta luôn phải có yêu cầu request API, hoặc request file từ server, đây đều gọi chung là tạo các HTTP request. Có nhiều thư viện hỗ trợ cho việc này, đó có thể là fetch() hoặc axios. Trong bài viết này, chúng ta sẽ cùng tìm hiểu công cụ nào hỗ trợ tốt hơn trong việc này. Tổng quan và cú pháp Fetch fetch() là một hàm của đối tượng window trong javascript, cho phép chúng ta lấy dữ...

Happy New Year JavaScript axios Fetch
@renovate
Admin 19/03/2021 15:00
So sánh các đặc điểm của Dev khi làm việc tại Nhật và tại nước ngoài (2)

Lần trước, tác giả đã viết bài nêu một số so sánh khi làm developer ở Nhật và ở nước ngoài ở góc nhìn cá nhân tác giả. Bài viết đó đã nhận được sự quan tâm khá lớn từ bạn đọc, vậy nên lần này tác giả muốn viết thêm đôi điều chi tiết hơn về những kinh nghiệm mà tác giả đã thu nhặt được trong quá trình làm việc. Và cũng giống như lần trước, không phải là những đặc...

Happy New Year
@renovate
Admin 19/03/2021 15:10
Authentication cho Vapor Swift

Trong bài viết này, tôi sẽ hướng dẫn các bạn cách áp dụng Authentication cho server-side Swift Vapor Đầu tiên bạn tải về source code ở đây Trong project này, trong thư mục Models bạn sẽ thấy các class sau: *- User : Đại diện cho các đối tượng user trong server cuả bạn. Dinner: Đại diện cho một bữa tối được book. DinnerInvitePivot: Link bữa tôí và các user được mời ** Cơ chế của Authentication...

Happy New Year Vapor Swift Server Side
@renovate
Admin 19/03/2021 15:40
React Hook Form with yup resolver

Trong lúc làm dự án, chắc hẳn các bạn cũng nhiều lần bối rối trong việc xử lý các form như thế nào, quản lý nó ra sao cho hợp lí. Theo thông thường bạn phải quản lý từng state của từng field input điều đó rất tốn thời gian và dễ bị nhầm lẫn phải không còn chưa tính đến việc validate cho nó nữa chứ. Hiện nay đã có rất nhiều library hỗ trợ việc quản lý form rất thuận tiện và dễ...

Happy New Year react-hook-form Yup
@renovate
Admin 19/03/2021 16:20
Các cách để cải thiện chất lượng phần mềm

Cách bạn quản lý chất lượng phần mềm đã trở thành một yếu tố quan trọng của mọi giai đoạn quản lý dự án. Bạn có thường xuyên tìm kiếm các cách để cải thiện chất lượng phần mềm của mình không? Chất lượng phần mềm tốt sẽ làm giảm đáng kể chi phí. Tìm cách thực hiện các chiến lược kiểm thử hiệu quả ở giai đoạn sớm nhất có thể sẽ giúp bạn phát hiện và giải...

Happy New Year
@renovate
Admin 19/03/2021 20:50
Deploy ReactJs app lên Firebase trong 5 phút (hoặc hơn)

Ở bài này, vì thời gian có hạn nên mình sẽ không giới thiệu lại Firebase là gì nữa và sẽ đi thẳng luôn vào việc làm thế nào để có thể deploy được ReactJs app lên Firebase một cách nhanh nhất. Chuẩn bị: Trước khi bắt đầu, hãy chắc chắn rằng bạn đã cài đặt 2 module create-react-app và firebase-tools Ở terminal, chạy 2 lệnh sau: npm i -g create-react-app npm i -g firebase-tools Tiếp theo, hãy chuẩn...

Happy New Year Firebase ReactJS
@renovate
Admin 19/03/2021 22:10
4 Tính năng rất hay từ TypeScript

Xin chào các bạn hôm nay mình xin chia sẽ những tính năng rất hay của TypeScript (TS), các bạn cùng tìm hiểu nhé! Nói về TypeScript thì hiện nay cũng rất phổ biến, nhiều dự án như React đã áp dụng TypeScript (TS) thay vì Javascript (JS) như bình thường và nhiều bạn mới tìm hiểu sơ qua (như mình trước đây) rất là bức xúc và khó chịu khi mà lúc code đã mệt rồi mà còn phải đi fix mấy cái lỗi của...

Happy New Year TypeScript
@renovate
Admin 19/03/2021 22:30
Toxic Span Detection

Giới thiệu bài toán Toxic Span Detection là bài toán phát hiện các từ/cụm từ độc hại trong văn bản, cụ thể là các bình luận, bài đăng trên mạng xã hội. Mặc dù một số bộ dữ liệu và mô hình phát hiện toxic đã được nghiên cứu nhưng hầu hết chúng đều phân loại toàn bộ văn bản và không xác định được các dấu hiệu khiến một văn bản trở nên độc hại. Trong khi đó, việc phát...

Happy New Year Flair SemEval 2021 Span Detection Named Entity Recognition
@renovate
Admin 19/03/2021 22:40
SemEval 2021 Task 5: Toxic Span Detection

Giới thiệu bài toán Toxic Span Detection là bài toán phát hiện các từ/cụm từ độc hại trong văn bản, cụ thể là các bình luận, bài đăng trên mạng xã hội. Mặc dù một số bộ dữ liệu và mô hình phát hiện toxic đã được nghiên cứu nhưng hầu hết chúng đều phân loại toàn bộ văn bản và không xác định được các dấu hiệu khiến một văn bản trở nên độc hại. Trong khi đó, việc phát...

Happy New Year Flair SemEval 2021 Span Detection Named Entity Recognition
@renovate
Admin 19/03/2021 23:40
Android Kotlin dễ dàng hơn với Higher Order Funcion

Giới thiệu Bài viết với chủ đề Higher Order Functions dành cho những người mới tiếp cận với Kotlin. Nếu như các bạn là một lập trình viên Android đi lên từ Java, chắc chắn sẽ nhận xét rằng Kotlin thật sự rất "kool ngầu". Một trong những thứ tạo nên điều diệu kỳ này chính là việc hỗ trợ lập trình hàm. Tức là các hàm (functions) có thể được truyền vào như một biến của hàm...

Happy New Year android kotlin
@renovate
Admin 20/03/2021 03:30
Triển khai EFK Stack trên Kubernetes

EFK stack on K8S Giới thiệu Một hệ thống có thể chạy nhiều dịch vụ hoặc ứng dụng khác nhau, vì vậy việc theo dõi hệ thống là vô cùng cần thiết. Logging là một công cụ đơn giản nhưng lại rất tiện lợi giúp ghi lại toàn bộ hoạt động của hệ thống. Nhờ có logging, ta có thể tra cứu lại trạng thái của hệ thống trong quá khứ và có thể tìm và fix lại lỗi dễ dàng hơn. Hiện nay đã...

Happy New Year Kubernetes Logging
@renovate
Admin 20/03/2021 08:40
Building a WebRTC video broadcast using Javascript (P2)

Xin chào các bạn lại là tôi đây . Ở bài trước chúng ta đã triển khai Socket.io trên server. Bây giờ chúng ta sẽ tiếp tục với việc triên khai các kết nối dưới client Layouts Layouts của chúng ta bao gồm hai tệp HTML cơ bản chứa chế độ xem video mà sau này sẽ hiển thị luồng video mà chúng ta đang gửi và tệp CSS cho một số kiểu cơ bản. Tệp index.html chứa một chế độ xem video sẽ hiển thị...

Happy New Year Node.js Javascrip webrtc
@renovate
Admin 20/03/2021 10:00
Sử dụng sự kiện onBackPressed hiệu quả trong Activity và Fragment

Hiện tại việc lắng nghe sự kiện back từ device Android chỉ được thực hiện ở Activity bằng cách override hàm onBackPressed() và implement các phương thức cần thiết. Vậy còn Fragment thì sao? Chúng ta không thể sử dụng cùng phương thức như ở Activity vì đơn giản là không có hàm đó để cho chúng ta override . Vậy làm cách nào để lắng nghe sự kiện back từ hệ thống, cách làm hay sử dụng nhất là...

Happy New Year back pressed
@renovate
Admin 20/03/2021 14:30
Top 10 extension mà Front-end developer nên biết

Hầu hết các lập trình viên web thường làm việc với Chrome. Theo Wikipedia, khoảng 65% người dùng internet thường xuyên sử dụng Chrome, đây là một trong những lý do tại sao các nhà phát triển chọn Chrome để phát triển ứng dụng. Vì vậy, nếu bạn là một lập trình viên web nói chung và front-end nói riêng thì khả năng cao bạn sẽ làm việc với Chrome nhiều, do đó sau đây mình sẽ giới thiệu cho các...

Happy New Year Front-end
@renovate
Admin 20/03/2021 14:50
Kỹ thuật kiểm thử chuyển đổi trạng thái (State Transition testing)

1. Kỹ Thuật Kiểm Thử Chuyển đổi Trạng Thái Là Gì? Kỹ thuật chuyển đổi trạng thái là một kỹ thuật kiểm tra Hộp đen, được sử dụng khi hệ thống được xác định dưới dạng một số trạng thái hữu hạn và quá trình chuyển đổi giữa các trạng thái được điều chỉnh bởi các quy tắc của hệ thống. Hay nói cách khác, kỹ thuật này được sử dụng khi các tính năng của một hệ thống...

Happy New Year QA
@renovate
Admin 20/03/2021 16:30
Reactjs advanced hooks (phần 1)

Trong bài chia sẻ lần trước mình có nói về một hooks là useMemo. Hôm nay mình sẽ giới thiệu thêm cho các bạn về một chút Advance Hooks trong React. Chúng mình cùng đi tìm hiểu nhé. useState import React, {useState} form 'react'; function Count() { const [count, setCount] = useState(0); return( <div> <p>Click {count}</> <button onClick={() => setCount(count + 1)}> Click me </button> <div> ) } Trên đây là một...

Happy New Year ReactJS
@renovate
Admin 20/03/2021 16:50
Triển khai ứng dụng Elixir Phoenix (P1)

Giới thiệu Elixir là một ngôn ngữ lập trình hàm phát triển bởi Jose Valim, cựu thành viên phát triển Rails & Devise. Elixir dựa trên Erlang và chạy trên nền máy ảo BEAM Phoenix là một Elixir web framework, sử dụng Elixir và được inspired từ Rails Cài đặt Elixir Để cài đặt elixir ta làm theo hướng dẫn https://elixir-lang.org/install.html macOS brew install elixir ubuntu/debian wget...

Happy New Year elixir phoenix
@renovate
Admin 20/03/2021 18:10
10 Tips và Tricks khi sử dụng Javascripts

Giới thiệu Để phát triển web hoặc phát triển đa nền tảng, JavaScript đang trở nên phổ biến rộng rãi. Trước đây nó chỉ được coi là một ngôn ngữ kịch bản front-end nhưng giờ đây nó cũng trở nên phổ biến với tư cách là back-end. Ngay cả Facebook’s React Native cũng dựa trên JavaScript. Do đó, chắc chắn sẽ rất hữu ích nếu biết một số thủ thuật trong JavaScript không chỉ ngăn chúng ta viết...

Happy New Year JavaScript Tips Tricks
@renovate
Admin 20/03/2021 21:20
Tạm quên "nàng thơ" React, vọc vạch một chút với MithrilJS

Dạo này ăn dầm nằm dề với "nàng" React nhiều quá, lắm khi không ngóc đầu lên được. Ông bà ta có câu "Chán cơm thèm phở", nên lang thang trên các blog để mong tìm được 1 chút thú vui khác React đã khá quen thuộc, thì vô tình thấy một frameworkJS là MithrilJS, tuy nó chưa quá nổi tiếng trên cộng đồng Frontend, nhưng đọc lướt qua phần giới thiệu lại thấy khá ấn tượng... 1....

Happy New Year Front-end JavaScript
@renovate
Admin 20/03/2021 21:50
Nhanh hơn với PNPM

Với các bạn đã làm việc với javascript thì sẽ thường xuyên làm việc với các package manager như npm, yarn. Trong bài viết lần này mình sẽ giới thiệu với các bạn về một package mannager có tốc độ đáng kể so với các package managerkhác là pnpm. Bắt đầu nào PNPM là gì? PNPM là package manager cho javascript tương tự như npm, yarn, cung cấp những cải tiến đáng kể về tốc độ và sử dụng dung lượng...

Happy New Year PNPM
@renovate
Admin 20/03/2021 23:10
Redux: Sử dụng selector

Khi học qua Redux có thể bạn đã từng nghe "giữ state đơn giản nhất, và sử dụng nó khi cần', một phần trong bài học đó bạn cũng có thể đã sử dụng đến redux selector. Một selector function nhận vào input là state và trả về một giá trị mong muốn dựa trên state đó. ví dụ const selectEntities = state => state.entities; function selectItemIds(state) { return state.items.map(item => item.id); } const...

Happy New Year React-Redux Reselect
@renovate
Admin 21/03/2021 02:10
Microservice với Golang, NodeJS và gRPC (Phần 2)

Tiếp tục phần 1, phần này mình sẽ tạo một con node server để connect đến core server và cũng chỉ để hiển thị hello world Node Server Cũng tương tự như phần trước, phần này mình sẽ tạo một folder proto nhưng bên trong nó phức tạp hơn chút vì phải compile proto sang js. Tạo một file package.json ngang cấp với helloworld.proto package.json { "name": "node-server-proto", "version":...

Happy New Year node golang gRPC
@renovate
Admin 21/03/2021 09:00
Parsing complex JSON in Flutter

Khi mới bắt đầu làm việc với các API trong Flutter, việc phân tích cú pháp JSON thực sự đã khiến tôi phải vật lộn rất nhiều. Và tôi chắc chắn, nó làm rất nhiều bạn mới bắt đầu cũng rơi vào hoàn cảnh như vậy. Ở bài viết này, tôi sẽ giới thiệu cho các bạn một số cách làm việc với json trong Flutter. Ở đây tôi sẽ sử dụng thư viện dart: convert. Đây là phương pháp phân tích cú pháp...

Happy New Year Flutter JSON
@renovate
Admin 21/03/2021 10:30
Tìm hiểu sơ lược về Firebase

Firebase là gì? Đầu tiên, chúng ta hãy cùng xem qua phần Introducing của Firebase đã nhé! Để trả lời cho câu hỏi Firebase là gì thì trước hết chúng ta hãy cùng đi ngược lại những năm 2011, trước khi Firebase ra đời. Tiền thân của nền tảng Firebase chính là Envolve. Envolve đến với người dùng dưới mô hình startup, họ cung cấp cho người dùng những API để dễ dàng tích hợp tính năng chat vào trang...

Happy New Year Firebase
@renovate
Admin 21/03/2021 11:00
Tăng tốc React app của bạn với dynamic imports và code splitting

Tối ưu hóa hiệu suất là một phần phát triển quan trọng mà mọi lập trình viên phải đối mặt Chúng ta không thể có một lượng người dùng lớn nếu như trang web của chúng ta xử lí các tác vụ một cách chậm chạp, hoặc là khi cố gắng điều hướng sang một trang khác trong ứng dụng, người dùng ngay lập tức nhận thấy thời gian tải cao. Tại thời điểm đó, chúng ta biết là cần phải bắt...

Happy New Year JavaScript React dynamic import code spliting
@renovate
Admin 21/03/2021 11:30
So sánh imperative programming và declarative programming

I. Giới thiệu Trong quá trình làm việc, chắc hẳn đã nhiều lần chúng ta thấy nhắc đến khái niệm imperative programming (lập trình mệnh lệnh) và declarative programming (lập trình khai báo). Tuy nhiên, liệu các bạn có chắc chắn được câu trả lời cho các câu hỏi: 2 loại lập trình này khác nhau chỗ nào? code mình viết ra là lập trình loại nào?… bài viết này sẽ giúp bạn tự tin hơn khi trả lời cho...

Happy New Year Swift iOS declarative programming imperative programming
@renovate
Admin 21/03/2021 11:30
7 khái niệm bạn nên biết nếu là một javascript developer

1. Design Patterns A Pattern is a Reusable solution that can be applied to commonly occurring problems in Software Engineering. Câu này có thể hiểu đơn giản là: mô hình là một giải pháp có thể tái sử dụng, có thể được áp dụng cho vấn đề thường xảy ra trong kỹ thuật phần mềm. Việc sử dụng tốt Design Patterns sẽ giúp code của bạn ngắn gọn nhiều hơn. Đặc biệt nếu bạn làm việc theo team, mọi người đều...

Happy New Year
@renovate
Admin 21/03/2021 15:20
Một chút về Firebase realtime database & ReactJS

Nhắc tới Firebase thì không thể không nhắc tới Realtime Database. Đây cũng là dịch vụ trung tâm trong hệ thống các dịch vụ khác của Firebase. Với ưu điểm cực kì lớn là tính realtime được cấu hình và thực hiện sẵn, các lập trình viên chỉ còn mỗi công việc vận dụng các hàm có sẵn để dựng ứng dụng mà thôi. Ở bài viết này mình sẽ giới thiệu sơ lược về Firebase Realtime Database trên...

Happy New Year
@renovate
Admin 21/03/2021 18:20
Seeding model rows based on the user input in Laravel

1.Giới thiệu Laravel cung cấp phương pháp dễ dàng tạo dữ liệu mẫu trong database bằng các lớp seed. Nhưng sẽ rất hữu ích nếu bạn có thể nhập số lượng record ưa thích mỗi khi seeder, tức là bạn không hard code or setting .env nữa . Thay vồ đó, bạn chỉ cần nhập số record mỗi khi chạy command, kiểu như thế này: How many books you want to create? 2.Bắt đầu Tạo Factory BookFactory.php trong...

Happy New Year Laravel
@renovate
Admin 21/03/2021 18:40
Laravel IoC Container

Laravel là một trong những khung ứng dụng web open-source hiện đại được sử dụng nhiều nhất, được sử dụng nhiều nhất. Nó cung cấp các tính năng độc đáo như Eloquent ORM, Query builder, Homestead là những tính năng hiện đại, chỉ có trong Laravel. Tôi thích Laravel vì thiết kế kiến ​​trúc độc đáo của nó. Đằng sau Laravel sử dụng các design pattern như Singleton, Factory, Builder, Facade, Strategy,...

Happy New Year Laravel IoC