Trang 1 trên tổng số 4 123... Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 33 kết quả

Đề tài: Tương lai của C++ : C++ 0x

  1. #1
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Mặc định Tương lai của C++ : C++ 0x

    Có ai thích thú với C++ thì hãy chờ đón 1 C++ cực kì mạnh mẽ sẽ ra đời nhé ! Chi tiết ở đây

  2. #2
    Ngày gia nhập
    09 2006
    Bài viết
    18

    Hỗ trợ regular expression thành tiêu chuẩn à , sướng nhỉ , chỉ chờ mỗi cái này

  3. #3
    Ngày gia nhập
    06 2007
    Nơi ở
    Hà Nội
    Bài viết
    361

    c# có regex lâu lắm rồi . Vừa thử cái vc++ 2008 xong , build 1 ứng dụng nó bắt cài cái gì mới chạy được (chắc runtime) . Rồi sau này nó mạnh như c# thì cũng có thư viện như framework thôi . Rồi cuối cùng nó hợp lại lấy tên là c# ).
    Rõ ràng các coder c++ rất thèm muốn các thư viện mạnh mẽ của c# nhưng không chịu từ bỏ c++ (hay ít ra là học song song) , mà cứ đợi bản c++ tiếp theo mà không biết nó đang gần lại với c#
    Đã được chỉnh sửa lần cuối bởi tienlbhoc : 01-10-2008 lúc 05:22 PM.
    Blog tổng quan kiến thức về viễn thông : http://tongquanvienthong.blogspot.com/

    mSPDict từ điển android hỗ trợ liên kết tra trên các trình đọc sách điện tử và tra sách giấy thông qua camera
    http://www.tinhte.vn/threads/691731/

  4. #4
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    C + +0 x là kế hoạch mới đạt tiêu chuẩn cho C + + ngôn ngữ lập trình. Nó có hiện có để thay thế các tiêu chuẩn C + +, ISO / IEC 14882, đã được công bố vào năm 1998 và được cập nhật vào năm 2003. Đây là trước thức được biết đến như là C + +98 và C + +03. Chuẩn mới sẽ bao gồm một số bổ sung cho các ngôn ngữ và cốt lõi sẽ mở rộng C + + tiêu chuẩn thư viện, hợp nhất của C + + kỹ thuật Thông báo thư viện 1 - nhiều khả năng với các ngoại lệ của thư viện của toán học đặc biệt chức năng. Kể từ khi tiêu chuẩn là chưa hoàn, bài này có thể không phản ánh gần đây nhất của nhà nước C + +0 x. Up-to-ngày kế tiếp của nhà nước C + + là tiêu chuẩn đã được công bố trên ISO C + + ban trang web. Các báo cáo mới nhất, N2705, đã được công bố vào tháng bảy 2008.

    Theo tiêu chuẩn ISO / IEC JTC1/SC22/WG21 C + + Ủy ban tiêu chuẩn nhằm mục đích giới thiệu các tiêu chuẩn mới vào năm 2009 (vì vậy các tiêu chuẩn đó là ngày hôm nay được gọi là C + +0 x sẽ trở thành C + +09) điều đó có nghĩa là các tài liệu phải được sẵn sàng để phê chuẩn của các thành viên trong tiểu bang của tiêu chuẩn ISO 2008. Để có thể kết thúc vào lịch trình, các ủy ban quyết định tập trung những nỗ lực trên các giải pháp được giới thiệu lên cho đến khi bỏ qua các năm 2006 và đề xuất mới hơn [1].

    Ngôn ngữ lập trình như C + + evolutionary sử dụng một quy trình để phát triển các định nghĩa của họ. Quá trình này inevitably tăng tính tương với các vấn đề mã hiện có, thỉnh thoảng có xảy ra trong quá trình C + + quá trình phát triển. Tuy nhiên, theo thông báo được thực hiện bởi Bjarne Stroustrup (công của C + + ngôn ngữ và thành viên của ủy ban), chuẩn mới sẽ được gần 100% hiện nay tương thích với các tiêu chuẩn [2].


    Ứng cử viên cho các thay đổi xảy đến trước mắt đạt tiêu chuẩn cập nhật

    Các sửa đổi, bổ sung cho C sẽ bao gồm cả hai lõi của ngôn ngữ và các tiêu chuẩn thư viện.

    Trong sự phát triển của tất cả các tiện ích của các tiêu chuẩn mới, các ủy ban đã áp dụng một số chỉ thị:

    * Duy trì ổn định và tính tương thích với C 98, và có thể với C;
    * Prefer giới thiệu về các tính năng mới thông qua các tiêu chuẩn thư viện, mở rộng hơn là cốt lõi của ngôn ngữ;
    * Prefer thay đổi, có thể tiến triển trong chương trình kỹ thuật;
    * Nâng cao C để thuận lợi cho các hệ thống và thư viện thiết kế, hơn là để giới thiệu các tính năng mới chỉ hữu ích cho các ứng dụng cụ thể;
    * Tăng cường an toàn bằng cách cung cấp các loại an toàn hơn để thay thế hiện nay, không an toàn kỹ thuật;
    * Tăng hiệu suất và khả năng để làm việc trực tiếp với phần cứng;
    * Cung cấp các giải pháp phù hợp cho các vấn đề thực tế thế giới;
    * Thực hiện "không-phí" nguyên tắc (hỗ trợ thêm bởi một số tiện ích yêu cầu phải được sử dụng chỉ nếu tiện ích được sử dụng);
    * Hãy C dễ dàng để giảng dạy và để tìm hiểu mà không cần loại bỏ bất kỳ tiện ích cần thiết bởi chuyên viên lập trình.

    Sự chú ý cho người mới bắt đầu là rất quan trọng, bởi vì họ sẽ luôn luôn chiếm đa số máy vi tính lập trình, và vì nhiều người mới bắt đầu không dự định mở rộng kiến thức của mình về C, hạn chế mình để hoạt động trong lĩnh vực mà ở đó họ có chuyên môn, [1]. Ngoài ra, xem xét vastness của C và công dụng của nó (bao gồm cả các khu vực của chương trình ứng dụng và phong cách), ngay cả trong hầu hết các kinh nghiệm lập trình có thể trở thành người mới bắt đầu trong một chương trình mới cận.

    [sửa] Mở rộng cho các ngôn ngữ C lõi

    Các chính tập trung của các ủy ban C là sự phát triển của ngôn ngữ cốt lõi. Trình bày ngày 0x của C phụ thuộc vào sự tiến bộ của phần này của tiêu chuẩn.

    Khu vực cốt lõi của ngôn ngữ đó sẽ được cải thiện đáng kể multithreading bao gồm các hỗ trợ, chương trình hỗ trợ chung chung, mặc đồng phục sở khởi, và hiệu suất cải tiến.

    Cho các mục đích của trang này, các tính năng ngôn ngữ cốt lõi và những thay đổi đang được nhóm chung vào 4 phần: runtime hiệu suất cải tiến, xây dựng thời gian hiệu quả hoạt động cải tiến, tiện ích cải tiến, hay tính năng mới. Một số tính năng có thể rơi vào nhiều nhóm, nhưng họ sẽ chỉ được đề cập trong các tính năng chủ yếu nhất mà đại diện.

    [sửa] Core ngôn ngữ runtime hiệu suất cải tiến

    Những tính năng ngôn ngữ chủ yếu tồn tại để cung cấp một số loại hiệu suất lợi ích. Điều này có thể được bộ nhớ hay tốc độ.

    [sửa] Rvalue tham chiếu và di chuyển semantics

    Trong tiêu chuẩn C, temporaries (termed "R-giá trị", như họ nằm ở bên phải của một giao) để có thể được thông qua chức năng, nhưng họ chỉ có thể được chấp nhận như const & loại. Như vậy, nó là impossible cho một chức năng để phân biệt giữa một giá trị thực tế-R và một đối tượng thường xuyên được thông qua như const &. Hơn nữa, từ khi có kiểu là const &, nó không phải là có thể thực sự thay đổi đối tượng.

    C 0x sẽ thêm một tham chiếu mới gọi là một loại R-giá trị tham khảo. Nó được định nghĩa là typename & &. Đây có thể được chấp nhận như non-const giá trị, mà cho phép một đối tượng để sửa đổi chúng. Điều này cho phép sửa đổi, bổ sung cho một số đối tượng để tạo ra di chuyển semantics.

    Ví dụ, một std:: véc tơ là, trong nội bộ, một bao xung quanh một phong cách C-mảng với một kích cỡ. Nếu một véc tơ tạm thời được tạo ra từ một hoặc trả lại chức năng, nó chỉ có thể được lưu trữ bằng cách tạo ra một véc tơ mới và nó có tất cả các bản sao của R-giá trị của dữ liệu vào đó. Sau đó, các tiêu huỷ là tạm thời, xóa dữ liệu của nó.

    R-với giá trị tham khảo, một "di chuyển constructor" của std:: véc tơ mà mất một R-giá trị tham khảo để một véc tơ có thể chỉ cần sao chép trỏ vào nội C-mảng ra phong cách của R-giá trị mới vào véc tơ, sau đó rời khỏi R-giá trị trong một nhà nước không có sản phẩm nào. Không có mảng sao chép, và sự tàn phá của trống rỗng, tạm thời không phá hủy bộ nhớ. Chức năng trả lại một véc tơ tạm thời chỉ cần trở lại một std:: véc tơ <>&&. Nếu không có véc tơ di chuyển constructor, sau đó sao chép constructor sẽ được invoked với một const std:: véc tơ <> & như bình thường. Nếu nó không có một constructor di chuyển, sau đó di chuyển constructor có thể được invoked, và đáng kể bộ nhớ phân bổ có thể tránh được.

    Vì lý do an toàn một tên biến sẽ không bao giờ được coi là một R-giá trị ngay cả khi điều đó tuyên bố như vậy, để nhận được một giá trị R-thư viện chức năng std:: di chuyển () nên được sử dụng.

    bool is_r_value(int &&) { return true; }
    bool is_r_value(const int &) { return false; }

    Code:
    void test(int && i)
    {
        is_r_value(i); // false
        is_r_value(std::move(i)); // true
    }
    mình đem nhờ dịch

  5. #5
    Ngày gia nhập
    01 2008
    Nơi ở
    Gameloft Studio
    Bài viết
    294

    Trích dẫn Nguyên bản được gửi bởi tienlbhoc Xem bài viết
    Rồi sau này nó mạnh như c# thì cũng có thư viện như framework thôi . Rồi cuối cùng nó hợp lại lấy tên là c# ).
    C++ và C# có 1 khoảng cách rất là xa. C++ là native còn (C#,VB..) .NET là managed. Do đó nên việc "sau này nó mạnh thì nó thành C#" là chuyện không thể bởi vì C++ luôn native (tự nhiên).

    Trích dẫn Nguyên bản được gửi bởi tienlbhoc
    Rõ ràng các coder c++ rất thèm muốn các thư viện mạnh mẽ của c# nhưng không chịu từ bỏ c++ (hay ít ra là học song song) , mà cứ đợi bản c++ tiếp theo mà không biết nó đang gần lại với c#
    C++ có framework riêng của nó và C# cũng vậy. Nhưng nói chính xác là chẳng có thư viện nào của C# hay C++ cả mà tất cả đều dùng chung.

    "Cái đầu" của Microsoft không phải đơn giản. Thay một bóng đèn họ còn có cả 1 kế hoạch nữa chứ nói chi là viết 1 thư viện, 1 framework.

    Khi viết ra 1 thư viện đâu phải luôn xác định thư viện đó cho ngôn ngữ nào là share với nhau. Tập hợp nhiều thư viện tạo nên nền tảng.

    Trích dẫn Nguyên bản được gửi bởi Zcoder87
    Đọc vài chữ của cậu thì hình như cậu nghĩ là 1 class ở C# không thể sử dụng được ở C++.
    Các đối tượng của .NET đều đóng gói ở dạng COM. Chỉ dùng dùng cái IDispatch Win32 là sử dụng được hết.

    Ví dụ ở C# cậu sử dụng WebRequest để gọi request. Chắc gì cậu biết cái WebRequest đó là Ajax. Mà Ajax là class Microsoft.XMLHTTP có CLSID {ED8C108E-4349-11D2-91A4-00C04F7969E8}. Chỉ cần Querry cái Interface này rồi Invoke tên các function của nó thì cũng có thể làm nên chuyện ở Native Code.

    Thật ra ở C++ cũng "có sẵn" mọi thứ. Vấn đề là lôi nó ra xài như thế nào lại là một chuyện. Buồn thay là các coder chuyển sang .NET sớm quá rồi xài các class của C# lại cho rằng C++ chả tới đâu. Gọi được vài cái hàm SetWindowHook này nọ rồi ẩn chương trình, bắt bàn phím... mà chẳng biết function đó là hàm của WINAPI native code.

    Trích dẫn Nguyên bản được gửi bởi ZCoder87
    Tóm lại với tôi mọi thứ C++ là quá đủ rồi. chả cần 0x hay 1x -> Mắc công học thêm. Trước khi có .NET MS cũng viết được Windows, Office có sao đâu. Rồi bi giờ có .NET đem cái .NET Reflector xem Source chương trình thấy cái nào cũng chạy trên Native Code!!! Bó tay.
    Đã được chỉnh sửa lần cuối bởi ZCoder87 : 01-10-2008 lúc 08:23 PM.

  6. #6
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    Mặc định Tương lai của C++ : C++ 0x

    Do tính chất của wording của R-giá trị tham khảo, và có một số sửa đổi để cho các wording L-giá trị tham khảo (thường xuyên tham khảo), R-giá trị tham khảo cho phép nhà phát triển để cung cấp chức năng chuyển tiếp hoàn hảo. Khi kết hợp với các mẫu variadic, khả năng này cho phép các mẫu cho các chức năng hoàn hảo, có thể chuyển tiếp đến một đối số chức năng rằng có những người đặc biệt là đối số. Đây là hữu ích nhất cho constructor tham số chuyển tiếp, để tạo ra chức năng rằng nhà máy sẽ tự động gọi đúng constructor cho những người đặc biệt là đối số.

    [sửa] Generalized cố expressions

    C + + luôn luôn có người đã có một khái niệm của việc biểu hiện. Đây là những biểu hiện như 3 +4 rằng sẽ luôn luôn mang cùng một kết quả và không có phản ứng phụ. Constant biểu hiện đang có cơ hội để tối ưu hóa compilers, compilers và thường xuyên thi công các công chúng tại thời gian biên soạn và lưu trữ các kết quả trong chương trình. Ngoài ra, còn có một số nơi mà các đặc điểm kỹ thuật C + + đòi hỏi việc sử dụng các biểu thức cố định. Xác định một mảng đòi hỏi phải là một biểu hiện, và enumerator giá trị cố định phải được biểu hiện.

    Tuy nhiên, cách nói luôn luôn luôn có một kết thúc bất cứ khi nào chức năng gọi hoặc constructor đối tượng đã được gặp. Vì vậy, cái gì như đơn giản như này là bất hợp pháp:
    Code:
    int GetFive() {return 5;}
     
    int some_value[GetFive() + 5]; //create an array of 10 integers. illegal C++

    Điều này là không hợp pháp C + +, bởi vì GetFive () + 5 không phải là một biểu hiện. Các biên đã không có cách nào biết nếu GetFive thực sự là cố định tại runtime. Trong lý thuyết, chức năng này có thể ảnh hưởng đến toàn cầu một biến, các cuộc gọi không-runtime cố định chức năng, vv

    C + +0 x sẽ giới thiệu các từ khóa constexpr, cho phép người dùng để bảo đảm rằng chức năng hay một đối tượng constructor là một biên-thời gian cố định. Ví dụ trên có thể được viết lại như sau:
    PHP Code:
    constexpr int GetFive() {return 5;}
     
    int some_value[GetFive() + 5]; //create an array of 10 integers. legal C++0x 
    Điều này cho phép các biên để hiểu, và xác minh, đó là một biên GetFive-thời gian cố định.

    Việc sử dụng các chức năng trên một constexpr phải rất nghiêm ngặt hạn chế về những gì mà chức năng có thể làm. Trước tiên, các chức năng cần phải có một người không phải void loại. Thứ hai, các chức năng phải được nội dung của các mẫu đơn, "expr trở lại". Thứ ba, expr phải là một biểu hiện, sau khi đối số thay thế. Điều này không ngừng biểu hiện chỉ có thể gọi các chức năng khác được xác định là constexpr, hoặc nó có thể sử dụng các dữ liệu các biến cố biểu hiện. Thứ tư, tất cả các hình thức của Đệ qui trong việc biểu hiện đang có cấm. Cuối cùng, một chức năng với nhãn này có thể không được gọi là cho tới khi nó được định nghĩa trong dịch này, đơn vị.

    Các biến cũng có thể được định nghĩa là biểu hiện giá trị cố định:
    PHP Code:
    constexpr double forceOfGravity 9.8;
    constexpr double moonGravity forceOfGravity 6
    Dữ liệu các biến cố biểu hiện đang có implicitly const. Họ chỉ có thể lưu trữ các kết quả của việc cách nói hay những biểu hiện cố constructors.

    Để xây dựng các công trình cố định biểu hiện giá trị dữ liệu từ người dùng xác định loại, constructors cũng có thể được tuyên bố với constexpr. Một biểu hiện constructor cố định phải được xác định trước khi sử dụng các đơn vị trong phiên dịch, như thường xuyên với biểu hiện chức năng. Nó phải có một chức năng cơ thể không có sản phẩm nào. Nó phải khởi tạo các thành viên của mình với các biểu thức cố định. Và các destructors cho như vậy nên được loại nhỏ.

    Sao chép constexpr đầu tư xây dựng các loại nên cũng có thể được xác định là constexpr một, để cho phép họ được trả lại bởi giá trị từ một constexpr chức năng. Bất kỳ thành viên chức năng của một lớp học, chẳng hạn như sao chép constructors, nhà điều hành overloads, etc, có thể được tuyên bố như constexpr, do đó lâu như họ phù hợp với những định nghĩa cho các chức năng không ngừng biểu hiện. Điều này cho phép các biên để sao chép các lớp học tại thời gian biên soạn, thực hiện các hoạt động trên chúng, vv

    Một biểu hiện chức năng cố định hay constructor có thể được gọi là không-constexpr với tham số. Chỉ cần như là một constexpr integer chữ có thể được giao cho một người không phải constexpr biến, vì vậy cũng có thể là một constexpr với chức năng được gọi là không-constexpr tham số, và các kết quả được lưu giữ trong không constexpr biến. Các từ khóa chỉ cho phép cho ra khả năng của biên-thời gian constancy khi tất cả các thành viên của một biểu hiện đang có constexpr.

    [sửa] Điều chỉnh để định nghĩa của đồng bằng dữ liệu cũ

    Trong tiêu chuẩn C, một struct phải được thực hiện theo một số quy tắc trong trật tự cho nó để được coi là một đồng bằng dữ liệu cũ (POD) loại. Có những lý do tốt muốn cho một số lượng lớn hơn loại để phù hợp với định nghĩa này. Loại phù hợp với định nghĩa này cho phép triển khai để sản xuất đối tượng được bố trí tương thích với C. Tuy nhiên, trong danh sách các quy tắc trong C 03 là quá nghiêm ngặt.

    C 0x sẽ thư giãn với một số quy định liên quan đến các POD định nghĩa.

    Một lớp / struct được coi là một POD nếu nó là nhỏ, tiêu chuẩn-bố trí, và nếu tất cả các thành viên không tĩnh có PODs. Một lớp học nhỏ hoặc struct được định nghĩa là một trong rằng:

    1. Có một nhỏ constructor mặc định. Điều này có thể sử dụng cú pháp constructor mặc định (SomeConstructor () = mặc định.
    2. Nhỏ có một bản sao constructor, trong đó có thể sử dụng cú pháp mặc định.
    3. Nhỏ có một bản sao giao nhà điều hành, trong đó có thể sử dụng cú pháp mặc định.
    4. Có một nhỏ destructor, trong đó có thể không được ảo.

    A-tiêu chuẩn bố trí lớp học hay struct được định nghĩa là một trong rằng:

    1. Không chỉ có dữ liệu tĩnh của thành viên được bố trí loại tiêu chuẩn -
    2. Có cùng một kiểm soát truy cập (công cộng, tư nhân, được bảo vệ) cho tất cả các thành viên không tĩnh
    3. Không có chức năng ảo
    4. Không có cơ sở các lớp học ảo
    5. Chỉ có các lớp học cơ sở được các tiêu chuẩn-bố trí kiểu
    6. Không có cơ sở các lớp học của cùng một loại như là người đầu tiên được xác định không-tĩnh thành viên
    7. Hoặc không có cơ sở với các lớp học không-tĩnh thành viên, hoặc không có dữ liệu non-tĩnh các thành viên trong hầu hết các lớp học và bắt nguồn từ một trong hầu hết các cơ sở với lớp học không-tĩnh các thành viên. Trong bản chất, có thể có chỉ có một lớp học trong lớp này của Hierarchy rằng không có thành viên tĩnh.

    [sửa] Core ngôn ngữ thời gian xây dựng cải tiến hiệu suất

    [sửa] Extern mẫu

    Trong tiêu chuẩn C, trong biên phải instantiate một mẫu bất cứ khi nào một xác định đầy đủ mẫu là gặp trong một đơn vị dịch thuật. Điều này có thể tăng đáng kể thời gian biên soạn, đặc biệt là nếu mẫu là instantiated dịch thuật trong nhiều đơn vị sử dụng cùng một tham số. Không có cách nào để nói cho C không để provoke Cài đặt một của một bản mẫu.

    C 0x sẽ giới thiệu những ý tưởng của mẫu bên ngoài. C đã có cú pháp cho các biên buộc để instantiate tại một địa điểm cụ thể:

    Code:
    template class std::vector<MyClass>;
    Điều gì C + + thiếu là khả năng ngăn chặn việc biên instantiating từ một mẫu dịch trong một đơn vị. C + +0 x sẽ đơn giản chỉ để mở rộng cú pháp này:
    Code:
    extern template class std::vector<MyClass>;
    Điều này cho các biên không để instantiate các mẫu trong dịch này, đơn vị.

    [sửa] Core ngôn ngữ tiện ích phụ kiện

    Các tính năng này tồn tại cho những mục đích chính của ngôn ngữ làm cho dễ dàng hơn để sử dụng. Những loại có thể cải thiện an toàn, giảm thiểu mã lặp lại, làm cho nó khó khăn hơn để erroneously sử dụng mã, hay tương tự.

    [sửa] Initializer danh sách

    Tiêu chuẩn C + + vay mượn initializer danh sách các khái niệm từ C. Ý tưởng là một mảng struct hoặc có thể được tạo ra cho một danh sách các đối số theo thứ tự của các thành viên 'định nghĩa trong struct. Những initializer danh sách đang có recursive, vì vậy một mảng của structs hay struct có chứa các structs có thể sử dụng chúng. Điều này là rất hữu ích cho các danh sách tĩnh, hoặc chỉ bắt đầu cho một struct cho một giá trị. C + + có constructors, mà có thể rộng các sở khởi của một đối tượng. Nhưng đó không phải một mình, không có gì thay thế tất cả các tiện ích của tính năng này. Tiêu chuẩn C + + cho phép này trên structs và các lớp học, ngoại trừ các đối tượng cần phải phù hợp với các dữ liệu Plain Old (POD) định nghĩa; không-POD các lớp học không thể sử dụng danh sách initializer, cũng chẳng có thể hữu ích C + +-phong cách container như std:: véc tơ và tăng:: mảng.

    C + +0 x sẽ ràng buộc các khái niệm về initializer danh sách để một loại, gọi là std:: initializer_list. Điều này cho phép constructors và các chức năng khác để có danh sách initializer như tham số. Ví dụ:
    Đã được chỉnh sửa lần cuối bởi AlexF : 01-10-2008 lúc 08:21 PM.

  7. #7
    Ngày gia nhập
    02 2008
    Bài viết
    88

    Thật ra ở C++ cũng "có sẵn" mọi thứ. Vấn đề là lôi nó ra xài như thế nào lại là một chuyện.
    Vấn đề là chỗ đó đấy, có sẵn nhưng xài rắc rối--> chán, nên vì thế C-- > C++ với nhiều hỗ trợ để xài hơn và cứ thế.
    Buồn thay là các coder chuyển sang .NET sớm quá rồi xài các class của C# lại cho rằng C++ chả tới đâu. Gọi được vài cái hàm SetWindowHook này nọ rồi ẩn chương trình, bắt bàn phím... mà chẳng biết function đó là hàm của WINAPI native code.
    Quá tự phụ rồi đó, đừng cho mình là giỏi, hiểu được người khác.
    Tóm lại với tôi mọi thứ C++ là quá đủ rồi. chả cần 0x hay 1x -> Mắc công học thêm.
    Ngôn ngữ nào rồi cũng phải phát triển nói như cậu C đủ rồi, tôi chẳng cần C++ làm gì nữa, mắc công học thêm.
    Trước khi có .NET MS cũng viết được Windows, Office có sao đâu. Rồi bi giờ có .NET đem cái .NET Reflector xem Source chương trình thấy cái nào cũng chạy trên Native Code!!! Bó tay.
    Vậy mai mốt viét chương trình có nhiều giao diện, hay database thì cứ C++ mà táng đừng dùng MFC (nó tạo cho sẳn control rồi còn gì, vậy cách biết với C# còn bao nhiêu đây.), hay C# làm gì cả.
    C++ và C# đều dùng thư viện nên mạnh hay ko là do cái thư viện chứ chả phải ngôn ngữ.
    Mỗi cái đều có lĩnh vực ứng dụng riêng, thế mạnh riêng, cái này C++ hợp nhưng cái khác C# thì hợp.
    Đọc qua cái của cậu thì thấy rõ rằng cậu quá tôn sùng C++ mà chẳng chịu xem xét các lĩnh vực mà nó phù hợp
    Chẳng ai hơi đâu viết một chương trình quản lý mà lại đi dùng C++, mà hầu hết đều xài C#, VB.Net
    Trong thời đại bây giờ, xem tuyển dụng thì biết:
    - System Developer : C++
    - Software Developer C#
    Đã được chỉnh sửa lần cuối bởi anhtuyenbk : 01-10-2008 lúc 08:30 PM.
    Mình từ Caulacbovb qua)
    Giã từ VB6 đến với VB.Net, C# và Java.

  8. #8
    Ngày gia nhập
    09 2008
    Nơi ở
    Kĩ viện
    Bài viết
    169

    Cùng một project, làm trên dot net bao giờ cũng xướng hơn C++(Không bảo tốt hơn đâu nhá ). Bựa nhất ở thằng C++ là vụ con trỏ(ý nói phải new với delete thủ công ấy, project nhỡ thì chưa nhằm nhò gì, project hơi lớn một tí là ...HELL . Lại phải ôm SmartPointer hay GC vào. Mà lạy cụ GC, code của cụ nhìn hoa cả mắt luôn, cú pháp siêu củ chuối ).

    Ấy mà nói thế thôi. So đi so lại, vẫn cứ thích C++. Chả hiểu tại sao, C# thì sướng thật chứ nhưng mà bảo bỏ C++ thì ..còn lâu.
    Phá toái hư không - Bạch nhật thăng thiên.

  9. #9
    Ngày gia nhập
    01 2008
    Nơi ở
    Gameloft Studio
    Bài viết
    294

    Cái mà C# có được cũng chỉ là kéo thả mà thôi. Mà cậu cũng đừng nghĩ là tôi không biết C#. Tôi cũng học CNTT và cũng lập trình C# hay VB.NET, chảng qua nó dễ lập trình hơn mà thôi.

    Nói thật là bi giờ Code C++ tôi chả thèm dùng MFC nữa, Mà từ cái Win32 app.

    Chương trình không chỉ ở giao diện như cậu nói. Giao diện cậu kéo thả thì cũng mất chừng 1 ngày. Tôi dùng tay code thì mất 1 tuần.

    Nhưng tuổi thọ 1 chương trình mới đáng nói. Các phần mềm lớn đều tồn tại và phát triển. Yahoo cũng có tuổi thọ gần 10 năm. Office, hay Photoshop... cũng tương tự. Rõ ràng cái thời gian kéo thả hay code chả thấm vào đâu trong thời gian phát triển phần mềm.

    Cái hồn của chương trình là ở những đoạn code. Cậu không biết chia nhỏ vấn đề để xử lý, cậu không biết phát triển theo hướng nào để có thể cập nhật, cậu không biết hợp lực nhân sự thì mà chỉ lo kéo thả cái giao diện thì chả bao giờ thành công.

  10. #10
    Ngày gia nhập
    01 2008
    Nơi ở
    UIT
    Bài viết
    129

    giọng văn giống như đc dịch bằng google translate

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn