Một câu hỏi thú vị khi tôi sắp tới kỷ niệm 10 năm lập trình C++ cho tiền xu.
Quan điểm cá nhân của tôi là tôi hơi cảnh giác - nhưng chỉ một chút - vì tôi chưa từng thấy tất cả (mặc dù tôi nghĩ mình có thể đoán nó như thế nào) - chú ý đến internet buồng vang. Đó là sự thật, một số người đã đi đầy đủ cho phong cách hiện đại của C + +, với tất cả mọi thứ hoàn toàn mẫu và sử dụng các kỹ thuật hiện đại để có được trình biên dịch làm điều Prolog của nó để có hiệu quả tốt nhất. Tuy nhiên điều này chắc chắn không phải là phổ quát, và, trong chính, mã C++ tôi thấy ngày nay là rất giống nhau trong hầu hết các cách để mã C++ tôi thấy mười năm trước đây.Sẽ là một ý tưởng hay khi đánh vào thời trang hiện đại, bởi vì một số thứ hiếm hoi cách đây mười năm (con trỏ thông minh, sử dụng thường xuyên RAII, thùng chứa và thư viện chuẩn) hiện nay phổ biến hơn. Nhưng trừ khi bạn chắc chắn rằng mã bạn sẽ làm việc với được festooned với các mẫu và thúc đẩy và như vậy, bạn đứng một cơ hội tốt để làm việc với một cái gì đó là trái tim rất giống như những gì bạn sử dụng để làm việc với.
Có thể không thể hiểu được điều đó, nhưng điều đó không làm cho nó kém hiệu quả hơn: bất kể trình độ kỹ năng, nhiều người không quan tâm đến C++ hiện đại. Một số, bởi vì họ không hiểu nó. Một số, bởi vì họ hiểu nó. Và đối với một số người, có lẽ "chăm sóc" thậm chí không phải là từ đúng - họ thậm chí không biết nó tồn tại. Và như bạn có thể mong đợi những người này tất cả các mã cho phù hợp.
Có lẽ tôi di chuyển trong vòng kết nối sai, nhưng kinh nghiệm của tôi là những người không hoặc không thể hoặc không viết mã theo phong cách hiện đại cao hơn những người có thể thực hiện bởi một số lợi nhuận lớn. Và những người có thể làm, thường thì không, bởi vì họ đông hơn. Mã của họ được viết lại, hoặc bỏ qua, cho đến khi họ bắt đầu viết những thứ mà người khác có thể hiểu được. Vì vậy, có lẽ điều này là tốt, hoặc có thể điều này là xấu - nó hầu như không liên quan, theo quan điểm của tôi, bởi vì kết quả là như nhau: rằng nếu kinh nghiệm của bạn hóa ra là bất cứ thứ gì giống tôi, bạn có cơ hội gặp phải mã ngày hôm nay khá giống với những gì bạn đã thấy trong năm 1999.
PS Nicolai Josuttis đã viết một vài cuốn sách mà chuyên gia mẫu cư trú của chủ nhân cuối cùng của tôi có vẻ thích. Ngoài ra hãy thử Modern C++ Design (Alexandrescu) - có thể là một chút ngày nay, nhưng nó giải thích nhiều nguyên tắc. Herb Sutter's Exceptional C++ cho, như tôi nhớ lại từ một skim của một bản sao làm việc, một cái nhìn tổng quan tốt về một số kỹ thuật hiện đại mà không đi quá hạt trên mặt trước mẫu. Và dĩ nhiên, boost thể hiện tất cả những thứ như thế này (và nhiều hơn thế nữa - sau đó là một số vật liệu tiền thưởng) được đưa vào thực hành trên một loạt các trình biên dịch.
(Hy vọng rằng danh sách trên không phải là quá đề ngày;. Như câu trả lời của tôi có thể đề nghị, tôi đã tìm thấy ít nhiều của một nhu cầu để theo kịp cập nhật với các xu hướng mới nhất trong C++ hơn tôi sẽ không bao giờ có dự kiến)
Bạn đang hỏi về tiêu chuẩn hiện tại, trong trường hợp đó câu trả lời là "không nhiều" hoặc tiêu chuẩn sắp tới, trong trường hợp đó câu trả lời là "khá nhiều". Điều tốt nhất trong trường hợp thứ hai là kiểm tra trang web của Stroustrup để có mô tả tốt về các tính năng mới. –
Tôi hỏi về tiêu chuẩn hiện tại (thực sự là của VS2008) –
Nó bắt đầu trông giống như perl chỉ phức tạp hơn. – msw