Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Trang 3 của 5 Đầu tiênĐầu tiên 12345 CuốiCuối
Kết quả 21 đến 30 của 42
  1. #21
    Ngày tham gia
    Feb 2014
    Bài viết
    0
    Trích dẫn Gửi bởi Kevin Hoang
    Mình cần biết ai nói cho bạn câu này?

    Theo mình, C# chỉ là một ngôn ngữ sử dụng một cách hạn chế. Cái mà MS làm là học theo Java, xây dựng một .NET Frameworks và C# chỉ chạy nếu có nó. Mục tiêu của MS là làm cho ai cũng có thể lập trình nếu sử dụng công cụ lập trình của MS. Biến công việc lập trình dễ dàng như việc gõ văn bản trên Microsft Office Word, hay làm một phép tính trên Excel. Rõ ràng là .NET Frameworks và C# đã làm một việc rất cao siêu, nhưng người sử dụng nó lại là tầm thường (Đây là thành công của MS)

    Hãy nhớ một điều là: Microsoft là một công ty kinh doanh, mục tiêu của họ là thu về lợi nhuận nhiều nhất. Trong công ty Microsft vẫn sử dụng C/C++ là ngôn ngữ chính để phát triển sản phẩm đấy, còn C# và .NET chỉ để viết các tools, ứng dụng loằng ngoằng.
    1. "Có điều là Microsoft góp nhặt những sáng kiến của người khác, kết hợp với sáng kiến của mình để làm nên một sản phầm hoàn thiện cả bên trong lẫn bên ngoài."
    Không chính xác lắm, nhưng cũng một ý._http://dethi.violet.vn/present/show/entry_id/4203309
    2. Cái này thấy Admin nói vậy nên cũng có ý kiến:
    Tầm thường được cũng khối người theo không được. Nếu sử dụng được C/C++ thì am hiểu sâu hơn, nhưng diện rộng thì sẽ không bằng. Mặt khác, học ngôn ngữ ngoài để hiểu biết ra thì mục đích chính là dùng nó để kiếm tiền. Nếu dùng ngôn ngữ A làm việc và kiếm tiền dễ hơn thì tại sao lại chạy đi sử dụng ngôn ngữ B.
    Còn Admin nói lập trình mà như gõ trên Word? Có cố cũng không được thế đâu. Đó chỉ là phần hỗ trợ thôi, còn tư duy, kỹ thuật lập trình mới là cái quan trọng. Tại sao chúng ta dành thời gian để suy nghĩ, sáng tạo ra những cái mới để lấy công cụ hỗ trợ tốt nhất ra mà làm mà cứ dành thời gian để đi tìm tòi thật sâu nhưng yếu tố riêng biệt. Nói điều này cũng là do học theo ông thầy, không biết có phiến diện quá không. Nhưng mình học được từ ông ấy những điều thực tế. Ông ấy luôn cố gắng làm những cái mà người khác chưa làm hoặc làm chưa tốt. Điều này thiên về công việc nhưng mình đang xét trên khía cạnh mục đích của việc sử dụng ngôn ngữ. Có gì sai sót mọi người thông cảm cho.

  2. #22
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Kevin cũng có được nghe trình diễn về cái Java Processor và mối liên hệ giữa java bytecode và machine code, cùng ý tưởng đưa mã này vào trong CPU. Tuy nhiên là Kevin chưa thấy ai giới thiệu là nó đã được đưa vào sử dụng chưa, hay vẫn còn là ý tưởng. Nếu ZCoder87 biết thì giới thiệu cho mọi người đầy đủ luôn nhé!

    Còn cái .NET thì chắc chờ các bạn nghiên cứu .NET Processor nhỉ? Ý tưởng ngon lành này đang chờ bạn đấy...

    Từ lâu rồi C++ vẫn biên dịch sang mã máy luôn mà. Ngoài lề một chút: nếu bạn có thời gian có thể xem cái VLC code, cái này sử dụng C nhưng vẫn mô hình hóa thành OO được, cách thức của nó rất là thú vị đấy.

    Objective-C là một hướng của sự phát triển OO cho C, cùng thời với C++. Object-C nó gần giống với một số ngôn ngữ OO trước đó, nên tạo ra nhiều sự khó hiểu, nhưng nó là một hướng rõ ràng. Object-C không hề phát triển, chỉ có duy nhất Apple phát triển và sử dụng được mọi người biết đến.

    Còn đây là những gì mà Kevin sẽ nghĩ:
    C++ được đưa ra vào năm 1983, trong khi đó Linux được bắt đầu viết vào năm 1991, Java thì released năm 1995, PHP cũng năm 1995 ... Từ trước năm 1992 C++ đã rất phổ biến, sức mạnh của C++ đã được công nhận khắp nơi. Tại sao người ta vẫn sử dụng C để viết mà không phải là C++?

  3. #23
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    C++ được đưa ra vào năm 1983, trong khi đó Linux được bắt đầu viết vào năm 1991, Java thì released năm 1995, PHP năm 1995 ... lúc đó C++ cũng đã rất phổ biến, sức mạnh của C++ đã được công nhận. Tại sao người ta vẫn sử dụng C để viết mà không phải là C++?
    Vào khoảng thời gian đó, C++ vẫn còn rất fragile. Các compiler của C++ cũng rất unstable. Rất khó có thể thích ứng với một ngôn ngữ chỉ trong thời gian ngắn như vậy, và đặc biệt cấu trúc của C++ rất complex. Trong khi C đã ra đời từ năm 1970. Đó là lý do chính tại sao Linux được viết = C.
    Cái điểm yếu nhất của C++ là vì nó quá uyển chuyển, và phức tạp làm cho những người viết compiler gặp rất nhiều khó khăn. Điểm rõ ràng nhất là C++0x, cái standard này vẫn còn đang được thảo luận rất nhiều, có những đặc điểm có thể đưa vào, nhưng nó sẽ break những cái đã có sẵn.

  4. #24
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Java, PHP và rất nhiều ngôn ngữ khác là based trên C, ngay cả C# là ngôn ngữ rất mới cũng là ngôn ngữ based C và Java mà không phải là C++. Còn compiler unstable, Kevin nghĩ là không liên quan gì đến chuyện các ngôn ngữ tiếp sau lại chọn C làm cơ sở. Kevin chỉ là nghĩ thôi. Không biết mọi người nghĩ sao?

  5. #25
    Ngày tham gia
    Sep 2015
    Đang ở
    24 Rạch Bùng Binh , P10,Q3 , HCM
    Bài viết
    0
    @all:
    Dù cho Microsoft có ra công nghệ tuyệt vời gì đi chăng nữa, thì chỉ phục vụ phần lớn cho các cty con, chứ không thể nào cho tụi cty lớn được. Lý do vì sao?
    - Cty lớn cần sự ổn định và phải có người build internal tool. Ví dụ thằng Google hay Adobe, không bao giờ hai thằng này xài .NET, vì tụi nó có thừa nhân lực để tạo ra framework và library riêng, và cách này sẽ hiệu quả hơn cho công việc của tụi nó. Vì khi có bug, tụi nó có thể thọc ngay xuống dưới và tìm mà không phải qua trung gian từ các cty khác. Không lẽ bug của .NET mà sản phẩm của Google phải đợi ngày release sao? Impossible!
    - Đã là dân lập trình, khi đi làm thì chúng ta hiểu ngay, software không phải như các sản phẩm khác. Chỉ có người build nó, mới hiểu nó 100% mà thôi. Cụ thể, mình làm .NET được, nhưng mình thấy bị giới hạn khi không hiểu qui chế của Win32. Có thể là vấn đề do mình, tuy vậy có một điểm mà mình thấy là, cái software nào cũng vậy, build trên library mà chúng ta hiểu rõ hoặc chính chúng ta build sẽ làm cho việc fix bug và improvement dễ dàng hơn. Các cty nhỏ thì không có khả năng này, vì không phải cty nào cũng để năng lực để build their own framework.
    - Còn việc so sánh công nghệ và ngôn ngữ là vớ vẩn, vì sao? Nói .NET chậm hơn C++ là không đúng, vì nó làm nhiều việc hơn, phải dịch từ JIT xuống Native. Nói C nhanh hơn C++ là tầm bậy, vì C++ là đối tượng, nó luôn làm nhiều việc hơn C.
    @dream:

    Hãy nhớ một điều là: Microsoft là một công ty kinh doanh, mục tiêu của họ là thu về lợi nhuận nhiều nhất. Trong công ty Microsft vẫn sử dụng C/C++ là ngôn ngữ chính để phát triển sản phẩm đấy, còn C# và .NET chỉ để viết các tools, ứng dụng loằng ngoằng.
    Cái này không chính xác, dân trong Microsoft vẫn dùng C# và .NET rất nhiều, tùy công việc nó mới quyết định chọn ngôn ngữ nào để dùng.
    Không nên để một ngôn ngữ làm bạn mù quáng. Học các ngôn ngữ khác sẽ làm cho đầu óc bạn sáng tạo hơn khi design một library hay một application. Và GUI chỉ là một phần nhỏ xíu trong lập trình mà thôi, không phải cứ ngôn ngữ làm hình với console là lỗ thời. Library, framework, compiler, ... không cần dùng GUI.
    Một chút tin tức ngoài lề
    Sáng nay mới đọc báo thì cái team Visual C++ 6.0 đã viết ra một compiler mới có tên là Team Developer để chuyển cái chương trình từ Win32 sang MIL ( Microsoft Intermediate Language ), vì vậy Win32 sẽ không chỉ được port sang .NET mà còn sang cloud nữa. ( trích SD Times )
    Còn thằng Ozzie, chief software architect của Microsoft đã ra đi rồi, vì nó thấy tương lai của Mobile và Cloud trong khi Microsoft chỉ lo tập trung vào Desktop App.

  6. #26
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi Kevin Hoang
    Kevin cũng có được nghe trình diễn về cái Java Processor và mối liên hệ giữa java bytecode và machine code, cùng ý tưởng đưa mã này vào trong CPU. Tuy nhiên là Kevin chưa thấy ai giới thiệu là nó đã được đưa vào sử dụng chưa, hay vẫn còn là ý tưởng. Nếu ZCoder87 biết thì giới thiệu cho mọi người đầy đủ luôn nhé!
    Mình cũng không chắc lắm nhưng hình như con chip CPU ARM-CortexA8 (1ghz) (tích hợp trên IPhone4 và một số phone chạy hdh Android) đã hỗ trợ công nghệ Run Time Compilation Target để chạy mã ảo. Đó là lý do tại sao hệ điều hành Windows Phone 7 của Microsoft viết thuần bằng bằng C# nhưng tốc độ thực thi của nó vẫn chạy nhanh không thua gì Windows Mobile 6.5 được viết bằng C.

    Tuy nhiên đó là công nghệ về mobile vì thực tế CPU trên phone ko đủ mạnh để nó chạy máy ảo một cách tốt nhất, nên đòi hỏi nó phải được hỗ trợ từ phần cứng. Còn Intel và AMD vẫn chưa thấy động tĩnh gì thay vì họ vẫn cố gắng optimize mã máy trên CPU sao cho chạy nhanh nhất.

    Mình may mắn được làm việc với những hệ thống khác máy tính nhiều và theo như mình biết thì có một sỗ hdh nhỏ nó vẫn chưa phát triển hoàn chỉnh để có 1 compiler dịch ngôn ngữ C++. Do đó phải viết bằng C vì chtr viết bằng C và chtr viết bằng ASM nó gần như giống nhau tới 70%.

  7. #27
    Nói chung chỉ cần master 1 trong những thứ C# (.NET), Java (J2EE) hay C/C++ (Tùy từng cty nó sử dụng công nghệ gì) thì cũng ko bị thất nghiệp ở Việt Nam... Muốn lên lead thì phải master ít nhất 4 platforms (đó là rule cty mình). Cái chính do mỗi người có 1 suy nghĩ, một hướng đi riêng.

    Thật tế có project nó được phát triển tới 2,3 công nghệ. Như trên thiết bị này thì phải viết bằng C/C++ hoặc Java, còn trên server thì có thể làm bằng ASP# hoặc PHP cho tiện lợi....

    Còn riêng mình thì love C/C++ 4ever =))

  8. #28
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi ZCoder87
    Mình cũng không chắc lắm nhưng hình như con chip CPU ARM-CortexA8 (1ghz) (tích hợp trên IPhone4 và một số phone chạy hdh Android) đã hỗ trợ công nghệ Run Time Compilation Target để chạy mã ảo. Đó là lý do tại sao hệ điều hành Windows Phone 7 của Microsoft viết thuần bằng bằng C# nhưng tốc độ thực thi của nó vẫn chạy nhanh không thua gì Windows Mobile 6.5 được viết bằng C.

    Tuy nhiên đó là công nghệ về mobile vì thực tế CPU trên phone ko đủ mạnh để nó chạy máy ảo một cách tốt nhất, nên đòi hỏi nó phải được hỗ trợ từ phần cứng. Còn Intel và AMD vẫn chưa thấy động tĩnh gì thay vì họ vẫn cố gắng optimize mã máy trên CPU sao cho chạy nhanh nhất.

    Mình may mắn được làm việc với những hệ thống khác máy tính nhiều và theo như mình biết thì có một sỗ hdh nhỏ nó vẫn chưa phát triển hoàn chỉnh để có 1 compiler dịch ngôn ngữ C++. Do đó phải viết bằng C vì chtr viết bằng C và chtr viết bằng ASM nó gần như giống nhau tới 70%.
    Đấy là do người xây dựng compiler đó thế nào thôi, hoặc là hạn chế của CPU đó như thế nào đó khiến cho việc xây dựng compiler không tốt. Nhưng xét cho cùng thì cũng thấy hơi vô lý.

    Còn cái CPU ARM-CortexA8 mà ZCoder87 đưa ra là có hỗ trợ Java-acceleration technology có tác dụng ở dạng gọi là multi-tasking Java Virtual Machine, trong nhiều điện thoại của Tung Kủa cũng đã giới thiệu công nghệ này, cái này không phải là cái Java Processor nêu trên đâu.

  9. #29
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi Kevin Hoang
    Còn đây là những gì mà Kevin sẽ nghĩ:
    C++ được đưa ra vào năm 1983, trong khi đó Linux được bắt đầu viết vào năm 1991, Java thì released năm 1995, PHP cũng năm 1995 ... Từ trước năm 1992 C++ đã rất phổ biến, sức mạnh của C++ đã được công nhận khắp nơi. Tại sao người ta vẫn sử dụng C để viết mà không phải là C++?
    Mình nghĩ ngôn ngữ mới cần có thời gian và nhất là phải phù hợp trình độ phát triển công nghệ, trước C++ khá lâu đã có ngôn ngữ hướng đối tượng rồi nhưng vẫn không phát triển được vì nếu với thập niên 60-70 thì hướng đối tượng là không hợp thời, ngôn ngữ dạng hướng đối tượng thời đó như một công nghệ vượt thời gian có nghĩa là nó sẽ phát triển trong tương lai còn lúc đó thì không thể, không biết thời đó có khái niệm hướng đối tượng chưa nữa ấy.
    Cũng giống như C#, mình rất hi vọng nó kết liễu Java càng sớm càng tốt.nhưng với C/C++ chắc không đâu.

  10. #30
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    @a KenVin: Cái công nghệ mà e nói chính xác là JAZELLE-RCT (http://pdf.directindustry.com/pdf/ar...-37287-_2.html)

    Nói chung thì thực tế cho thấy công nghệ phần cứng nó đang cố gắng làm mọi thứ để mã ảo có thể thực thi nhanh hơn hiện tại và e đoán rằng rồi dần dần C# hay Java nó cũng được dịch ra mã máy (có thể là 10 hay 20 năm nữa). Tuy nhiên với kiến trúc CPU x86 và x64 hiện tại thì việc thay đổi nó là cả 1 quá trình dài vì sự tương thích mã ASM hiện nay trên PC đang rất ổn định.

    Như vậy e khẳng định: C và C++ never die, còn C# và Java sẽ là cũng sẽ là nền tảng mạnh của tương lai [IMG]images/smilies/biggrin.png[/IMG]

    @bạn Trăng khuyết: Rất tiếc là C# nó ko bao giờ kết liễu được Java [IMG]images/smilies/biggrin.png[/IMG]
    - Thứ nhất C# + .NET là công nghệ độc quyền của M$ và nó chỉ chạy trên thiết bị hỗ trợ M$
    - Thứ hai là Google và Oracle sẽ ko để cho M$ làm được điều đó =)) tự hiểu.

 

 
Trang 3 của 5 Đầu tiênĐầu tiên 12345 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •