Gần đây tôi đã học C và muốn bắt đầu một dự án để củng cố kiến thức của mình. Tôi đã quyết định làm một trình soạn thảo văn bản rất đơn giản, giống như vim. Vấn đề tôi gặp phải là tôi thực sự không biết làm thế nào một trình soạn thảo văn bản thậm chí hoạt động và tôi không biết phải tìm kiếm google để tìm hiểu về nó.
Googling về nó đã dẫn đến repo GitHub của vim, điều này là vô ích đối với tôi bởi vì cơ sở mã là rất lớn và mã đang làm tôi bối rối. Tôi cũng tìm thấy các hướng dẫn để tạo một trình soạn thảo văn bản trong C có chức năng giống như vim.
Mặc dù tôi nghĩ về việc làm theo các hướng dẫn, nó cảm thấy như gian lận. Làm thế nào mà các nhà phát triển vim tìm ra cách mã hóa vim mà không có hướng dẫn cụ thể? Hay họ đã bắt đầu từ các trình soạn thảo văn bản đơn giản hơn? Làm thế nào mà họ tìm ra điều đó chỉ từ kiến thức về ngôn ngữ và tài liệu của họ?
Chính xác thì tôi cần gì để bắt đầu viết trình soạn thảo văn bản này mà không cần trực tiếp làm theo hướng dẫn? Một ví dụ khác tôi muốn nghĩ đến là: Dennis Ritchie và Ken Thompson đã mã hóa Unix như thế nào? Tôi có một ý tưởng về cách thức hoạt động của hệ điều hành, nhưng tôi không biết làm thế nào để đưa nó vào mã. Tôi đang thiếu cái gì vậy? Làm thế nào để tôi chuyển kiến thức về ngôn ngữ này vào sử dụng thực tế, thực tế?