Bối cảnh / Kịch bản
Tôi bắt đầu viết một ứng dụng CLI hoàn toàn bằng C (chương trình C hoặc C ++ thích hợp đầu tiên của tôi không phải là "Hello World" hoặc một biến thể của chúng). Khoảng giữa chừng tôi đã làm việc với "chuỗi" đầu vào của người dùng (mảng char) và tôi phát hiện ra đối tượng truyền phát chuỗi C ++. Tôi thấy rằng tôi có thể lưu mã bằng cách sử dụng chúng, vì vậy tôi đã sử dụng chúng thông qua ứng dụng. Điều này có nghĩa là tôi đã thay đổi phần mở rộng tệp thành .cpp và bây giờ biên dịch ứng dụng g++
thay vì gcc
. Vì vậy, dựa trên điều này, tôi sẽ nói rằng ứng dụng này về mặt kỹ thuật là một ứng dụng C ++ (mặc dù 90% + mã được viết bằng cái mà tôi sẽ gọi là C, vì có rất nhiều giao thoa giữa hai ngôn ngữ với kinh nghiệm hạn chế của tôi về cả hai). Nó là một tệp .cpp duy nhất dài khoảng 900 dòng.
Yếu tố quan trọng
Tôi muốn chương trình này miễn phí (như tiền) và tự do phân phối và có thể sử dụng cho tất cả mọi người có. Mối quan tâm của tôi là ai đó sẽ xem mã và nghĩ gì đó về tác dụng của:
Hãy nhìn vào mã hóa, thật kinh khủng, chương trình này không thể giúp tôi
Khi có khả năng nó có thể! Một vấn đề khác là mã có hiệu quả (nó là một chương trình để kiểm tra kết nối Ethernet). Không nên có phần mã nào kém hiệu quả đến mức chúng có thể cản trở nghiêm trọng hiệu năng của ứng dụng hoặc đầu ra của nó. Tuy nhiên, tôi nghĩ đó là một câu hỏi cho Stack Overflow khi yêu cầu trợ giúp với các chức năng, phương thức, cuộc gọi đối tượng cụ thể, v.v.
Câu hỏi của tôi
Có (theo ý kiến của tôi) đã trộn lẫn C và C ++, có lẽ tôi không nên. Tôi có nên tìm cách viết lại tất cả trong C ++ không mang tất cả "trở lại" vào mã C? Có một cách tiếp cận đúng ở đây? Tôi bị lạc và cần một số hướng dẫn về cách giữ cho ứng dụng này "Tốt" trong mắt số đông, vì vậy họ sẽ sử dụng nó và hưởng lợi từ nó.
Mã - Cập nhật
Đây là một liên kết đến mã. Đó là khoảng 40% ý kiến, tôi bình luận gần như mọi dòng cho đến khi tôi cảm thấy trôi chảy hơn. Trong bản sao tôi đã liên kết đến, tôi đã loại bỏ khá nhiều ý kiến. Tôi hy vọng điều này không làm cho nó quá khó để đọc. Tôi hy vọng rằng không ai cần phải hiểu đầy đủ về nó. Nếu tôi đã tạo ra các lỗi thiết kế nghiêm trọng, tôi hy vọng chúng có thể được nhận dạng dễ dàng. Tôi cũng nên đề cập, tôi đang viết một vài máy tính để bàn và máy tính xách tay Ubuntu. Tôi không có ý định chuyển mã sang các hệ điều hành khác.
LICENSE
tập tin. Bạn có thể nhận được phản hồi thú vị.